唐 鑫,徐彥彥,潘少明,宋方振
(武漢大學 測繪遙感信息工程國家重點實驗室,湖北 武漢 430000)
垂直切換是指移動用戶在異構(gòu)無線網(wǎng)絡中實現(xiàn)網(wǎng)絡切換的技術(shù)[1]??紤]多屬性網(wǎng)絡參數(shù)的垂直切換算法能獲得較好的切換性能[2-7]。但目前大部分研究均采用分布式計算,切換結(jié)果容易集中指向少部分優(yōu)質(zhì)網(wǎng)絡,無法實現(xiàn)全局網(wǎng)絡資源的均衡利用。軟件定義網(wǎng)絡(software defined network,SDN)架構(gòu)可實現(xiàn)網(wǎng)絡設(shè)備的集中管理與控制[8],并能快速適應節(jié)點的位置變化,是開展面向全局網(wǎng)絡的多屬性垂直切換算法設(shè)計的關(guān)鍵[9]。但節(jié)點的移動性可能改變節(jié)點所處網(wǎng)絡環(huán)境,導致依據(jù)當前狀態(tài)進行的決策不再適用。事實上,可以利用馬爾可夫(Markov)模型開展網(wǎng)絡狀態(tài)轉(zhuǎn)移及預測[10,11],選擇未來時刻性能最優(yōu)網(wǎng)絡。研究結(jié)果表明,用戶網(wǎng)絡訪問行為具有長時間的周期性和短時間內(nèi)的突發(fā)性,其接入網(wǎng)絡帶來的網(wǎng)絡狀態(tài)變化也與時間序列密切相關(guān),考慮多個時刻的狀態(tài)將獲得最佳的網(wǎng)絡狀態(tài)屬性預測[12]。
本文提出一種基于SDN架構(gòu)的垂直切換算法,首先利用SDN數(shù)據(jù)平面收集全局網(wǎng)絡狀態(tài)和節(jié)點的參數(shù)信息,然后在控制平面通過所設(shè)計的模糊邏輯控制模型對網(wǎng)絡多屬性參數(shù)進行離散化和歸一化處理。在此基礎(chǔ)上,設(shè)計一種二階Markov模型[13],綜合考慮不同時刻的影響對未來全局網(wǎng)絡的實際狀態(tài)進行預測,并基于全局網(wǎng)絡回報評估開展垂直切換決策,最終實現(xiàn)在不同的節(jié)點移動條件下都能有效降低局部不可靠的切換決策,保證切換后的網(wǎng)絡性能。
算法利用SDN集中控制、數(shù)據(jù)平面與邏輯平面分離的架構(gòu),在數(shù)據(jù)平面采集全局網(wǎng)絡屬性參數(shù),控制平面通過模糊邏輯控制模型對全局網(wǎng)絡屬性參數(shù)進行歸一化決策處理、權(quán)重分布和網(wǎng)絡收益計算,再通過二階Markov預測模型對切換后的實際網(wǎng)絡回報進行預測,最終評估全局網(wǎng)絡回報后下發(fā)流表以完成切換決策,具體算法框架如圖1所示。其中,控制平面中的模糊控制和二階Markov過程為基于SDN框架引入的多屬性決策支撐算法,而SDN架構(gòu)為多屬性決策支撐算法提供輸入信息收集和決策實施支撐。

圖1 基于SDN的垂直切換算法框架與決策模型
如圖1所示,由SDN數(shù)據(jù)平面采集可達網(wǎng)絡與移動節(jié)點的多屬性信息(包括網(wǎng)絡數(shù)量、網(wǎng)絡參數(shù)、節(jié)點位置和移動速度),SDN控制器將收集到的多屬性信息傳遞到模糊推理系統(tǒng),進行離散化、歸一化、權(quán)重調(diào)節(jié)和收益更新得到網(wǎng)絡收益參數(shù)。根據(jù)所獲得的歷史網(wǎng)絡收益參數(shù),利用二階Markov轉(zhuǎn)移狀態(tài)矩陣和回報函數(shù),預測切換后的網(wǎng)絡狀態(tài)并據(jù)此進行全局網(wǎng)絡回報評估,以選擇全局范圍內(nèi)網(wǎng)絡整體收益最大的目標網(wǎng)絡。最終控制平面將決策結(jié)果以流表的形式下發(fā)至移動節(jié)點,移動節(jié)點根據(jù)指令完成網(wǎng)絡切換處理。
研究表明,考慮多屬性參數(shù)的垂直切換算法能實現(xiàn)較好的網(wǎng)絡切換性能[2-7],因此收集全局網(wǎng)絡的多屬性參數(shù)是實現(xiàn)最優(yōu)垂直切換的前提。為此,SDN的數(shù)據(jù)平面,以周期T來采集節(jié)點位置信息(X,Y)、節(jié)點移動速度v和網(wǎng)絡參數(shù)信息??刂破矫婀浪銦o線信號強度RSS、 網(wǎng)絡傳輸時延De、 網(wǎng)絡實際傳輸帶寬Bw、 丟包率Dr和多普勒頻移fd等網(wǎng)絡參數(shù)。
引入相應網(wǎng)絡的RSS計算模型獲得信號強度參數(shù)估計,RSS(dBm)計算模型為
RSS=Rj-RLij
(1)
其中,Rj表示無線接入點j的傳播功率(dBm),RLij為無線接入點j到移動終端i的傳輸信號衰減(dB),其可以通過式(2)進行計算
RLij=PL+10α×log(dij)+Z
(2)
其中,PL表示無線接入點的固定功率損耗(dB),α∈[2,4] 表示路徑損耗系數(shù),dij表示移動終端i和無線接入點j之間的距離(km),Z是均值為0的正態(tài)分布隨機變量,表示信號的衰落(dB)。
網(wǎng)絡實際傳輸帶寬Bw可采用瓶頸帶寬和往返傳輸時延(bottleneck bandwidth and round-trip propagation time,BBR)算法[14]進行估算,而丟包率Dr可以簡單的通過一段時間之內(nèi)的輸入輸出報文數(shù)量進行計算[14]
(3)
時延De計算
De=報文到達時間-報文發(fā)送時間
(4)
多普勒頻移fd越大,無線信號瑞利衰減的速度越快,影響無線通信的質(zhì)量[15],其計算式為
(5)
其中,λ為無線電波長,θ為無線電波入射方向與用戶移動方向的夾角,v為節(jié)點移動速度。
顯然,由于異構(gòu)網(wǎng)絡中各參數(shù)屬性值具有不同的意義,無法在一個尺度和平面上對所有屬性參數(shù)進行統(tǒng)一評估,如某些參數(shù)越大,表明切換后所獲得的實際網(wǎng)絡狀態(tài)性能越好;而反之另一些參數(shù)越大則表明切換后所獲得的實際網(wǎng)絡狀態(tài)性能越差。同時,由于不同網(wǎng)絡屬性參數(shù)的尺度不同、變化幅度各異,直接進行簡單對比難以突出不同屬性參數(shù)的差異化特點,因此所設(shè)計的模糊邏輯控制模型需要對所有屬性參數(shù)根據(jù)其不同特性進行歸一化處理,并在歸一化處理的基礎(chǔ)上形成統(tǒng)一尺度的評估輸出。
不失去一般性,設(shè)網(wǎng)絡模型收集獲得的多屬性參數(shù)個數(shù)為N,當前節(jié)點位置為(X,Y),對應的異構(gòu)網(wǎng)絡中包含有M個候選網(wǎng)絡和Z種不同的網(wǎng)絡模式。則在考慮網(wǎng)絡參數(shù)屬性對網(wǎng)絡狀態(tài)性能貢獻的基礎(chǔ)上,對任意網(wǎng)絡m的任意屬性n可設(shè)計如下的參數(shù)歸一化收益計算方法
(6)
式中:Qm,n表示第m個網(wǎng)絡的第n個屬性值,qm,n表示Qm,n的離散化取值,參數(shù)rn∈[1,-1] 為不同類型屬性的收益調(diào)節(jié)因子,對于值越大表示網(wǎng)絡狀態(tài)越好的屬性參數(shù),如帶寬、網(wǎng)絡信噪比等,其對應的收益為正收益,設(shè)置其rn=1; 相反對于值越大表示網(wǎng)絡狀態(tài)越差的屬性參數(shù),如丟包率、網(wǎng)絡開銷等,其對應的收益為負收益,設(shè)置其rn=-1, 其中m∈[1,…,M],n∈[1,…,N]。
考慮到不同網(wǎng)絡參數(shù)對不同網(wǎng)絡影響程度不同,針對M個網(wǎng)絡的Z種網(wǎng)絡模式以及其N個網(wǎng)絡參數(shù),構(gòu)建網(wǎng)絡決策因子矩陣
(7)

wm,n=uz,n·km,n
(8)
其中,m=1,…,M;n=1,…,N;z=1,…,Z。 即可得到時刻t,針對某網(wǎng)絡m多屬性總收益Tbenefit(m) 有
(9)
按照異構(gòu)無線網(wǎng)絡垂直切換的要求,為實現(xiàn)全局最優(yōu)的網(wǎng)絡性能,需要在切換后獲得最佳的網(wǎng)絡回報,因此根據(jù)切換后的實際網(wǎng)絡狀態(tài)評估網(wǎng)絡的總收益而非切換前的網(wǎng)絡狀態(tài)評估網(wǎng)絡總收益才是獲得最佳切換決策的關(guān)鍵。
為此,不失去一般性設(shè)網(wǎng)絡狀態(tài)可以離散化表示為有限的 {s1,s2,…,si,…,sl} 狀態(tài)集,其狀態(tài)空間為S, 其中si∈S(0≤i≤l) 表示網(wǎng)絡所處的一種狀態(tài),其由該網(wǎng)絡m的所有屬性參數(shù)進行描述,即
si={Qm,1,…,Qm,n}
(10)
若在當前時刻t的網(wǎng)絡狀態(tài)為s(t)∈S(0≤t≤l), 則預測的目的是獲得下一時刻t+1的網(wǎng)絡狀態(tài),以根據(jù)t+1時刻的網(wǎng)絡狀態(tài)計算切換后的網(wǎng)絡總收益,并根據(jù)所獲得評估收益進行切換決策。
由于網(wǎng)絡是一個隨時間變化的序列事件,因此,t+1時刻的網(wǎng)絡狀態(tài)可以根據(jù)歷史時刻的網(wǎng)絡狀態(tài)進行估計,即網(wǎng)絡的Markov狀態(tài)轉(zhuǎn)移滿足如下關(guān)系
P(s(t+1)|s(1),…,s(t))
(11)
綜合考慮網(wǎng)絡變化的長時間周期性和短時間內(nèi)突發(fā)性的特征,使用二階Markov模型,則網(wǎng)絡的下一時刻的狀態(tài)僅與當前時刻和上一時刻網(wǎng)絡狀態(tài)相關(guān),上式可簡化為
P(sk(t+1)|si(t),sj(t-1))
(12)
即t+1時刻的狀態(tài)僅僅與t時刻和t-1時刻的狀態(tài)相關(guān)。則對某網(wǎng)絡m,若設(shè)t-1時刻狀態(tài)為sj(t-1) 且t時刻狀態(tài)為si(t) 時,下一時刻t+1狀態(tài)為sk(t+1) 的概率為pi,j,k(m), 可以得到網(wǎng)絡m其不同狀態(tài)下的狀態(tài)轉(zhuǎn)移概率矩陣為
(13)
顯然,根據(jù)Markov基本原理有
(14)
式(14)表明,從t-1刻的狀態(tài)sj(t-1) 和t時刻的狀態(tài)si(t) 轉(zhuǎn)移到t+1時刻所有狀態(tài)的總概率為1。
基于式(9)給出的某網(wǎng)絡m的總網(wǎng)絡收益估計以及式(13)給出的切換后網(wǎng)絡狀態(tài)屬性概率,可以得到切換到該網(wǎng)絡后的整體回報為
(15)
其中,δj,i為當前狀態(tài)指示符,當s(t-1)=sj(t-1) 且s(t)=si(t) 時δj,i=1否則δj,i=0。
基于式(15),可以得到切換到不同網(wǎng)絡的不同回報,即R(sj(t-1),si(t))={r1(sj(t-1),si(t)),…,rM(sj(t-1),si(t))}, 則可以得到切換決策為
(16)
即選擇使網(wǎng)絡全局回報函數(shù)最大化的網(wǎng)絡m′, 作為狀態(tài)處于si(t) 和sj(t-1) 時的切換目標網(wǎng)絡。其中rm(sj(t-1),si(t)) 表示網(wǎng)絡m的整體回報函數(shù)取值,M為全局環(huán)境下的候選網(wǎng)絡數(shù)目。
具體的切換算法見算法1。
算法1:控制平面切換判決算法
輸入:移動節(jié)點信息,網(wǎng)絡參數(shù)信息
輸出:切換判決結(jié)果
(1)遍歷網(wǎng)絡,初始化模糊邏輯參數(shù)U、k、Qm,n, 確定網(wǎng)絡的二階Markov狀態(tài)轉(zhuǎn)移概率矩陣P(m)
(2)whilet
ift≥2T
1) 數(shù)據(jù)平面采集節(jié)點信息(X,Y),v和網(wǎng)絡參數(shù)
2) 控制平面:
for m from 1 toM
估算參數(shù)RSS,De,Bw,Dr,fd
模糊邏輯計算網(wǎng)絡m的總收益Tbenefit(m)
二階Markov預測全局回報rm(sj(t-T),si(t))
end for
切換決策←全局回報最大的網(wǎng)絡m′
控制平面下發(fā)決策流表
end if
t←t+T
end while
仿真實驗搭建在Ubuntu20.04.1操作系統(tǒng)上,利用Mininet-Wifi網(wǎng)絡仿真器,采用OpenFlow1.3協(xié)議版本,與基于SDN框架的Ryu控制器相結(jié)合,實現(xiàn)異構(gòu)網(wǎng)絡的垂直切換仿真。由于Mininet-Wifi仿真器的限制,仿真場景設(shè)置為4種采用工作802.11協(xié)議標準的無線接入網(wǎng)絡實現(xiàn)異構(gòu)組網(wǎng),具體參數(shù)見表1。盡管這些網(wǎng)絡協(xié)議標準因為工作頻段和編碼類型等原因,存在部分網(wǎng)絡互相兼容的情況,但由于網(wǎng)絡傳輸帶寬和信號覆蓋范圍不同,可認為組成異構(gòu)網(wǎng)絡。網(wǎng)絡環(huán)境配置了24個WLAN網(wǎng)絡(4種802.11標準的網(wǎng)絡各配置6個),每個網(wǎng)絡信號的覆蓋范圍是40 m~130 m。移動節(jié)點的移動速度變化范圍為[1,11] m/s,移動節(jié)點的數(shù)量變化范圍為[200,600]。實驗中,設(shè)置2.2節(jié)中所提網(wǎng)絡參數(shù)[3]標度k=5,決策因子排序[3]為RSS>fd>Bw>Dr>De。

表1 仿真網(wǎng)絡參數(shù)
實驗結(jié)果統(tǒng)計平均切換次數(shù)、切換失敗數(shù)量、網(wǎng)絡回報、平均切換時延和丟包率作為評判依據(jù):
(1)平均切換次數(shù)。切換次數(shù)越高,網(wǎng)絡越不穩(wěn)定,處理時延越高。切換將產(chǎn)生數(shù)據(jù)從原有的緩存列表發(fā)送到新的緩存通道的時延,隨著切換次數(shù)的提高,數(shù)據(jù)傳輸和處理時延將造成大量的數(shù)據(jù)排隊,在擁塞網(wǎng)絡中將導致緩存區(qū)溢出形成丟包。
(2)切換失敗次數(shù)。失敗次數(shù)越高,切換判決性能越差。當終端根據(jù)垂直切換判決結(jié)果對相應基站發(fā)起接入請求時,而當前網(wǎng)絡的接入節(jié)點數(shù)量已飽和,則終端的切換請求將被拒絕。
(3)網(wǎng)絡回報。異構(gòu)網(wǎng)絡中不同網(wǎng)絡的參數(shù)不可直接比較,通過模糊邏輯輸出網(wǎng)絡收益值,利用上文提到的網(wǎng)絡回報計算式(15),評估網(wǎng)絡的整體性能。
(4)平均切換時延和丟包率。垂直切換過程中,平均切換時延越低,用戶感知越低,越接近無縫切換的需求。平均丟包率越低,切換選擇的網(wǎng)絡質(zhì)量越高。
將所提出的算法與基于模糊控制的多屬性決策切換策略的TOPSIS算法[16]、基于改進Markov算法[10]來對比,驗證所提出的SDN控制器利用數(shù)據(jù)平面收集得到的數(shù)據(jù),通過二階Markov過程預測未來網(wǎng)絡回報值的效果。
圖2展示了3種算法多次實驗后算法產(chǎn)生的平均切換次數(shù)對比結(jié)果,其中,節(jié)點數(shù)固定為200,節(jié)點移動速率為10 m/s,實驗20次。從圖2中可以得出,本文提出的算法平均切換次數(shù)比單純使用模糊控制的TOPSIS算法和Markov算法更少,表明考慮多個時刻網(wǎng)絡狀態(tài)預測的有效性和SDN控制器位置管理和網(wǎng)絡管理的全局性和實時性,能夠提高算法的穩(wěn)定性和合理性。

圖2 平均切換次數(shù)實驗對比
如圖3所示,隨著移動節(jié)點數(shù)目增加,本文算法切換失敗次數(shù)明顯低于TOPSIS,說明算法中央控制有效,避免了移動節(jié)點集中切換到優(yōu)質(zhì)網(wǎng)絡。此外,算法失敗次數(shù)略小于Markov方法,切換決策實現(xiàn)了一定程度的長期收益最大化,以及SDN架構(gòu)能夠提高網(wǎng)絡信息管理,進一步提高網(wǎng)絡資源分配。

圖3 切換失敗次數(shù)實驗對比
圖4展示了隨著節(jié)點移動速度的增加,本文算法的網(wǎng)絡整體回報值依舊保持相對穩(wěn)定,而TOPSIS算法和改進Markov算法的回報值不斷降低。這是因為所提出的算法綜合考慮節(jié)點上一時刻和當前時刻的狀態(tài),對切換判決過程中可能產(chǎn)生的中斷進行預判。同時,TOPSIS算法和改進Markov算法每個節(jié)點需要額外的網(wǎng)絡信息采集和處理開銷,才會隨著節(jié)點速度增加性能降低。

圖4 移動速度增加時網(wǎng)絡總回報值實驗對比
圖5和圖6展示了在不同算法下的平均切換時延和平均丟包率的比較結(jié)果。本文算法優(yōu)于傳統(tǒng)的TOPSIS和改進Markov算法,說明結(jié)合SDN的算法能夠快速有效下發(fā)流表,降低節(jié)點處理數(shù)據(jù)和交互信令的時延,有效提高平緩效率。同時,得益于SDN高效統(tǒng)一管理網(wǎng)絡的優(yōu)點,與采用分布式管理的改進Markov算法相比,數(shù)據(jù)傳輸?shù)钠骄鶃G包率大大降低。

圖5 平均切換時延實驗對比

圖6 平均丟包率實驗對比
本文所提出來的基于SDN的垂直切換算法,雖然提高了切換性能,但相較傳統(tǒng)的分布式算法而言,增加了許多交換機和控制器之間交互的信令開銷,因此算法的性能瓶頸將依賴于控制器的處理能力。初始建立時的注冊信令、節(jié)點移動時的匹配信令、流表維護的下發(fā)信令等都是無法避免的,具體開銷的統(tǒng)計結(jié)果如圖7所示。

圖7 節(jié)點移動產(chǎn)生的信令開銷
本文算法與經(jīng)典TOPSIS相比,節(jié)點平均切換次數(shù)明顯降低,切換失敗次數(shù)明顯更少,網(wǎng)絡回報值也能保持穩(wěn)定,切換性能優(yōu)勢明顯;與單一時刻預測的改進Markov分布式算法相比,平均切換時延和丟包率降低,集中控制思想提高了用戶使用網(wǎng)絡的穩(wěn)定性,保證切換后的網(wǎng)絡質(zhì)量。同時,集中控制的思想會帶來的信令開銷,對控制器的處理能力有要求。
針對目前大部分垂直切換算法中采用分布式局部尋優(yōu)的“自私”策略,集中接入熱門網(wǎng)絡可能造成的網(wǎng)絡擁塞考慮現(xiàn)象,提出一種基于SDN架構(gòu)的垂直切換算法,結(jié)合二階Markov模型和模糊邏輯進行垂直切換決策。算法通過SDN控制器將收集到的移動節(jié)點和網(wǎng)絡信息參數(shù),利用模糊邏輯控制器動態(tài)更新多屬性參數(shù)的權(quán)值,二階Markov決策器根據(jù)模糊邏輯輸出結(jié)果預測網(wǎng)絡全局回報并切換判決。實驗結(jié)果表明,該算法在異構(gòu)網(wǎng)絡多屬性切換判決中,能夠有效減少局部、不可靠、無效和短收益的網(wǎng)絡切換決策,降低切換時延和丟包率,為用戶提供穩(wěn)定的網(wǎng)絡服務。