王 斌,馬 穎
(1.中國石油大學(華東) 計算機與通信工程學院,山東 青島 266580;2.中國石油大學(華東) 經(jīng)濟管理學院,山東 青島 266580)
無線網(wǎng)絡架構中,基站通常是按簇分布的,且它們能夠處理數(shù)據(jù)流的數(shù)目是個定值。每個簇通過計算每個流的服務等級來對流進行限制。圖1顯示的是相同物理資源在不同拓撲結構中的資源利用率。由圖1可知,隨著簇的增加,系統(tǒng)的處理能力降低。假設總共有20個基站,當服務等級為0.01時,如果分為4個簇大概可以處理180個數(shù)據(jù)流。但是當20個基站分成2個簇的時候,452個數(shù)據(jù)流可以被處理。由此可知,盡管投入了更多的物理資源,但系統(tǒng)整體平均數(shù)據(jù)處理能力反而減弱。這是因為物理設備之間采用串聯(lián)單通道的處理方式,低效的協(xié)調(diào)能力降低了系統(tǒng)資源的利用率[1]。
圖1 物理資源簇與數(shù)據(jù)處理能力關系
這個問題的關鍵點是因為轉發(fā)時數(shù)據(jù)流的不均勻分配?,F(xiàn)有技術在數(shù)據(jù)流超過一定強度的條件下,不能明顯優(yōu)化系統(tǒng)性能。而如果根據(jù)緩沖區(qū)中數(shù)據(jù)流的服務等級在物理資源間進行自適應分配,并且從拓撲全局的角度在物理設備間進行協(xié)調(diào),可預期服務質(zhì)量將會比已有算法更有優(yōu)勢。軟件定義網(wǎng)絡(software defined networks,SDN)是斯坦福大學提出的網(wǎng)絡架構,在此架構中,傳統(tǒng)路由器的路由控制功能被剝離,新的路由器組成只具有數(shù)據(jù)轉發(fā)功能的數(shù)據(jù)平面(data plane),而具備控制功能的則是掌控全局的控制平面(control plane)。軟件定義網(wǎng)絡的控制層不僅是單純一個路由器的控制剝離,還可以作為多個路由器控制功能組成的控制云,具有更好的全局性,能夠從更廣闊的視野實施路徑優(yōu)化、查找、數(shù)據(jù)流分配、安全控制等功能[2,3]。
已有的解決數(shù)據(jù)流間資源競爭的經(jīng)典方案是無線訪問技術(radio access technologies),例如:負載均衡、認知無線電、動態(tài)頻譜分配、終端直通等技術[4,5]。不同接入技術之間的流量均衡不僅能提高系統(tǒng)資源利用率還要保證被轉移流的服務質(zhì)量,這是目前解決流量擁堵采用的主要方式。文獻[6]中,以提高能量利用率為目的,作者研究了異構認知網(wǎng)絡中無線頻譜共享和功率分配算法。認知網(wǎng)絡與微型網(wǎng)絡之間的能量分配被建模成斯塔克爾伯格博弈。文獻[7]中,作者提出了基于坐標的頻譜共享算法,并提出了感知容量優(yōu)化網(wǎng)絡。模型是多個中繼節(jié)點的聚合,能夠增加次級用戶頻譜分配效率。而另一方面,文獻[8]為了保證資源最高效率分配,提出了網(wǎng)絡資源的競價機制。對于可利用的網(wǎng)絡資源進行需求用戶的競價,價高者得資源。上述研究是從用戶層面進行的資源重疊利用機制,也有文獻基于數(shù)據(jù)流進行系統(tǒng)優(yōu)化研究。文獻[9]在第二層提出了基于流量的機會接入模型,平衡了資源利用率和用戶服務質(zhì)量間的關系。文獻[10]權衡了用戶流調(diào)度公平性和資源利用之間的關系,提出了基于載波和功率的自適應資源分配算法。但是,受到物理資源能力的制約,如果某個節(jié)點負載超過設計能力時,這些技術并不能明顯改善資源短缺的狀況?;谏鲜鲅芯浚躁P注設備資源協(xié)調(diào)處理能力為目的,本文提出基于軟件定義架構自適應數(shù)據(jù)流處理模型(簡稱為軟件定義流模型)。
軟件定義網(wǎng)絡體系的最大特點是采用不同實體中同質(zhì)的網(wǎng)元集中化部署,實現(xiàn)了控制平面與數(shù)據(jù)平面的分離。網(wǎng)絡在智能編排管理器的控制下,能夠表現(xiàn)出高度的虛擬化和智能化特性。假設在數(shù)據(jù)層中,無線用戶有m個交換機對應。這些交換機并非傳統(tǒng)的交換機,而是支持軟件定義功能的新型交換機,只是具備數(shù)據(jù)轉發(fā)功能,且假設每個交換機的服務速率為Sj,所具有的物理資源數(shù)目為Cj。而且,對于每jth小區(qū)內(nèi)有nj個數(shù)據(jù)流需要處理,每個數(shù)據(jù)流的強度為ρij。
控制平面負責控制整個網(wǎng)絡拓撲,且設計控制器分為兩部分:虛擬交換區(qū)和控制區(qū)(如圖2所示)。有m`個虛擬交換機分別對應m個實際交換機(對應關系為1∶n)。每個虛擬交換機負責對應交換機連接的所有物理交換簇。數(shù)據(jù)平面和控制平面采用軟件定義網(wǎng)絡專屬的OpenFlow協(xié)議。每個虛擬交換機采用主動式信息交換方式,周期性的與連接的物理交換機進行交互,獲取數(shù)據(jù)平面數(shù)據(jù)流的變化,并制定相應規(guī)則更新控制層的流表(flow table)。而控制平面內(nèi)有拓撲控制器,根據(jù)每個交換機內(nèi)的數(shù)據(jù)流,動態(tài)創(chuàng)建虛擬交換機。
圖2 系統(tǒng)結構框架
整個模型的終極目標要增加已有設備的處理能力,即是協(xié)調(diào)數(shù)據(jù)流的等待時間。一般用服務等級(grade of service)也被稱作阻塞概率來衡量數(shù)據(jù)流的資源等待時間,所以可以將數(shù)據(jù)平面和控制平面建模成M/M/C/K的馬爾科夫模型,其中C是物理資源(基站)的數(shù)目,而K-C是隊列長度。
在數(shù)據(jù)平面可以將交換機建模成馬爾科夫鏈:
定義:數(shù)據(jù)流
fi:?i∈(0,1,…,N), ?j∈(0,1,…,m)
其中,i是數(shù)據(jù)流編號,j是數(shù)據(jù)流前往的交換機編號,ρij是第i數(shù)據(jù)流的強度。
另外,假設數(shù)據(jù)層中所有的無線接入點都是M/M/Cj/K(其中?K>Cj)馬爾科夫模型。具有不同流量強度的數(shù)據(jù)流都被轉發(fā)到交換機的隊列當中。然后第j個交換機為Cj個物理資源分配數(shù)據(jù)流。因此,第j個交換機的服務等級(GoSj)可以被定義為M/M/Cj/K模型的第Pk個狀態(tài)
(1)
其中,nj表示第j個交換機內(nèi)等待的數(shù)據(jù)流的編號,K-Cj則是交換內(nèi)的隊列長度。每個流的服務等級為GoSj。
控制層中,控制器設計的基本原則是能夠根據(jù)交換機可用資源數(shù)公平的進行數(shù)據(jù)流分配??刂茖涌梢员唤3蒻維的馬爾科夫鏈,所以將控制器中的馬爾科夫鏈與數(shù)據(jù)流公平分配的方式進行建模。
1.3.1 控制平面理論模型
圖3 控制平面的馬爾科夫鏈結構
為了計算整個系統(tǒng)期望的數(shù)據(jù)流數(shù)目,需要先計算系統(tǒng)的穩(wěn)態(tài)概率。根據(jù)杰克遜定理,系統(tǒng)中存在的m個獨立的M/M/1/1系統(tǒng),其穩(wěn)態(tài)概率可以由不同的ρj求得。將獨立系統(tǒng)整合在一起,可以求得整個系統(tǒng)能處理數(shù)據(jù)的期望值為
P(s1,s2,s3,…,sm)=P(s1)P(s2)P(s3)…P(sm)
?sj∈0,1
(2)
式中:所有路由器到頂點負荷的表達式為
(3)
這就是圖3中的(1,1,1)狀態(tài)。在這一點的時候,Psj=1表示第j個路由器的PK個狀態(tài)。如前文所述,這個概率也表示該路由器的服務等級(grade of service)。因此,將路由器的服務等級代入,P1,1,1,…,1可以表示為
(4)
(5)
每個路由器的任務隊列長度為常數(shù),在此定義為K,則系統(tǒng)能處理最大數(shù)據(jù)流可以表示為式(6)。超過這個數(shù)值,則虛擬控制器會建立新的虛擬路由,從而修改數(shù)據(jù)平面的流表,改變數(shù)據(jù)流入新的虛擬路由器中,從而達到了數(shù)據(jù)流的自適應處理
(6)
1.3.2 控制層架構設計
控制層由兩部分組成:虛擬路由器、網(wǎng)絡拓撲控制器。數(shù)據(jù)流會先被發(fā)送到動態(tài)管理表,控制區(qū)根據(jù)上節(jié)中定義的控制算法以及管理表中數(shù)據(jù)流對應的相應動作進行動態(tài)分配,將數(shù)據(jù)流轉發(fā)至相應虛擬路由器,從而實現(xiàn)效率最大化。虛擬路由器并非物理設備,由控制器內(nèi)的拓撲控制算法動態(tài)創(chuàng)建及更改,而是否進行虛擬路由器的創(chuàng)建主要由網(wǎng)絡拓撲控制器負責,其職責主要是分析數(shù)據(jù)層中的數(shù)據(jù)最優(yōu)組合。根據(jù)計算的服務等級,將實際交換機組合成多個虛擬交換機,保證虛擬交換機的最佳運行效率,提高系統(tǒng)數(shù)據(jù)處理能力。虛擬路由資源利用率ψ為
(7)
其中,ρmax是ρij的最大值,表示一個集合能夠處理的所有數(shù)據(jù)流。當虛擬路由滿載時資源利用率達到最大。因為在信息交換時,由于延遲和承載能力的瓶頸,本文設置了1%的閾值,達到閾值則創(chuàng)建新的虛擬路由器。由上式可得
(8)
模型的建立主要是保證數(shù)據(jù)流處理的公平性、系統(tǒng)的整體處理能力。為了評估提出的自適應數(shù)據(jù)流處理模型,建立拓撲為1000*1000節(jié)點,最多有60臺交換機為用戶提供數(shù)據(jù)傳輸服務。設定場景內(nèi)最高數(shù)據(jù)流量為42 Erlang,發(fā)生在只有一個交換機,隊列長度為60的時候。由于網(wǎng)絡拓撲中運行交換機的數(shù)量從1到60進行遞增,每個交換機支持的隊列長度,隊列中用戶的傳輸速率都會發(fā)生相應變化,見表1。
表1 自適應數(shù)據(jù)流模型模擬數(shù)據(jù)
上述數(shù)據(jù)中第四行為虛擬交換機控制器根據(jù)數(shù)據(jù)流量在控制平面產(chǎn)生的虛擬交換機數(shù)量??梢园l(fā)現(xiàn)根據(jù)網(wǎng)絡流量以及交換機數(shù)量的加入,虛擬交換機的數(shù)量從1至5也進行動態(tài)調(diào)整,較好執(zhí)行了根據(jù)流量動態(tài)調(diào)節(jié)的目的。同時,從圖4中可以發(fā)現(xiàn),本文提出的優(yōu)化算法比傳統(tǒng)的傳輸模式具有更好的公平性,特別在數(shù)據(jù)平面內(nèi),參與傳輸?shù)慕粨Q機增加時,傳統(tǒng)算法的用戶公平性和傳輸效率顯示了一種斷崖式的下降,而軟件定義流模型則呈現(xiàn)一種緩慢的下降趨勢。參照文獻[11]提出的用戶公平度公式,在20個交換機參與傳輸時,本文能夠提高大約15%的公平性。并且,當用戶的服務等級達到閾值0.05時會出發(fā)虛擬交換機控制器機制,進行虛擬交換機的重新分配,從而使服務等級維持在較低的水平,如圖5所示。
圖4 接入Openflow交換機與公平性關系
圖5 系統(tǒng)整體服務評價
基于軟件定義網(wǎng)絡的思想,本文提出了一種基于服務等級的自適應數(shù)據(jù)流管理架構,框架主要包括了拓撲控制器以及數(shù)據(jù)流控制器兩部分。拓撲控制器能夠根據(jù)交換機擁有的物理資源自動創(chuàng)建虛擬交換機,從邏輯上改變了網(wǎng)絡的拓撲結構,提高了資源利用率。而數(shù)據(jù)流控制器則針對創(chuàng)建的虛擬交換機數(shù)據(jù)流處理強度,并行、動態(tài)的從數(shù)據(jù)層進行數(shù)據(jù)流的調(diào)度。結果表明,自適應數(shù)據(jù)流管理架構模型的阻塞概率遠低于通用的系統(tǒng)架構,這降低了用戶平均等待時間,并能夠充分利用交換機的物理資源,提高系統(tǒng)的吞吐量。