王 斌,馬 穎
(1.中國石油大學(華東) 計算機與通信工程學院,山東 青島 266580;2.中國石油大學(華東) 經濟管理學院,山東 青島 266580)
無線網絡架構中,基站通常是按簇分布的,且它們能夠處理數據流的數目是個定值。每個簇通過計算每個流的服務等級來對流進行限制。圖1顯示的是相同物理資源在不同拓撲結構中的資源利用率。由圖1可知,隨著簇的增加,系統的處理能力降低。假設總共有20個基站,當服務等級為0.01時,如果分為4個簇大概可以處理180個數據流。但是當20個基站分成2個簇的時候,452個數據流可以被處理。由此可知,盡管投入了更多的物理資源,但系統整體平均數據處理能力反而減弱。這是因為物理設備之間采用串聯單通道的處理方式,低效的協調能力降低了系統資源的利用率[1]。

圖1 物理資源簇與數據處理能力關系
這個問題的關鍵點是因為轉發時數據流的不均勻分配。現有技術在數據流超過一定強度的條件下,不能明顯優化系統性能。而如果根據緩沖區中數據流的服務等級在物理資源間進行自適應分配,并且從拓撲全局的角度在物理設備間進行協調,可預期服務質量將會比已有算法更有優勢。軟件定義網絡(software defined networks,SDN)是斯坦福大學提出的網絡架構,在此架構中,傳統路由器的路由控制功能被剝離,新的路由器組成只具有數據轉發功能的數據平面(data plane),而具備控制功能的則是掌控全局的控制平面(control plane)。軟件定義網絡的控制層不僅是單純一個路由器的控制剝離,還可以作為多個路由器控制功能組成的控制云,具有更好的全局性,能夠從更廣闊的視野實施路徑優化、查找、數據流分配、安全控制等功能[2,3]。
已有的解決數據流間資源競爭的經典方案是無線訪問技術(radio access technologies),例如:負載均衡、認知無線電、動態頻譜分配、終端直通等技術[4,5]。不同接入技術之間的流量均衡不僅能提高系統資源利用率還要保證被轉移流的服務質量,這是目前解決流量擁堵采用的主要方式。文獻[6]中,以提高能量利用率為目的,作者研究了異構認知網絡中無線頻譜共享和功率分配算法。認知網絡與微型網絡之間的能量分配被建模成斯塔克爾伯格博弈。文獻[7]中,作者提出了基于坐標的頻譜共享算法,并提出了感知容量優化網絡。模型是多個中繼節點的聚合,能夠增加次級用戶頻譜分配效率。而另一方面,文獻[8]為了保證資源最高效率分配,提出了網絡資源的競價機制。對于可利用的網絡資源進行需求用戶的競價,價高者得資源。上述研究是從用戶層面進行的資源重疊利用機制,也有文獻基于數據流進行系統優化研究。文獻[9]在第二層提出了基于流量的機會接入模型,平衡了資源利用率和用戶服務質量間的關系。文獻[10]權衡了用戶流調度公平性和資源利用之間的關系,提出了基于載波和功率的自適應資源分配算法。但是,受到物理資源能力的制約,如果某個節點負載超過設計能力時,這些技術并不能明顯改善資源短缺的狀況。基于上述研究,以關注設備資源協調處理能力為目的,本文提出基于軟件定義架構自適應數據流處理模型(簡稱為軟件定義流模型)。
軟件定義網絡體系的最大特點是采用不同實體中同質的網元集中化部署,實現了控制平面與數據平面的分離。網絡在智能編排管理器的控制下,能夠表現出高度的虛擬化和智能化特性。假設在數據層中,無線用戶有m個交換機對應。這些交換機并非傳統的交換機,而是支持軟件定義功能的新型交換機,只是具備數據轉發功能,且假設每個交換機的服務速率為Sj,所具有的物理資源數目為Cj。而且,對于每jth小區內有nj個數據流需要處理,每個數據流的強度為ρij。
控制平面負責控制整個網絡拓撲,且設計控制器分為兩部分:虛擬交換區和控制區(如圖2所示)。有m`個虛擬交換機分別對應m個實際交換機(對應關系為1∶n)。每個虛擬交換機負責對應交換機連接的所有物理交換簇。數據平面和控制平面采用軟件定義網絡專屬的OpenFlow協議。每個虛擬交換機采用主動式信息交換方式,周期性的與連接的物理交換機進行交互,獲取數據平面數據流的變化,并制定相應規則更新控制層的流表(flow table)。而控制平面內有拓撲控制器,根據每個交換機內的數據流,動態創建虛擬交換機。

圖2 系統結構框架
整個模型的終極目標要增加已有設備的處理能力,即是協調數據流的等待時間。一般用服務等級(grade of service)也被稱作阻塞概率來衡量數據流的資源等待時間,所以可以將數據平面和控制平面建模成M/M/C/K的馬爾科夫模型,其中C是物理資源(基站)的數目,而K-C是隊列長度。
在數據平面可以將交換機建模成馬爾科夫鏈:
定義:數據流
fi:?i∈(0,1,…,N), ?j∈(0,1,…,m)
其中,i是數據流編號,j是數據流前往的交換機編號,ρij是第i數據流的強度。
另外,假設數據層中所有的無線接入點都是M/M/Cj/K(其中?K>Cj)馬爾科夫模型。具有不同流量強度的數據流都被轉發到交換機的隊列當中。然后第j個交換機為Cj個物理資源分配數據流。因此,第j個交換機的服務等級(GoSj)可以被定義為M/M/Cj/K模型的第Pk個狀態

(1)
其中,nj表示第j個交換機內等待的數據流的編號,K-Cj則是交換內的隊列長度。每個流的服務等級為GoSj。
控制層中,控制器設計的基本原則是能夠根據交換機可用資源數公平的進行數據流分配。控制層可以被建模成m維的馬爾科夫鏈,所以將控制器中的馬爾科夫鏈與數據流公平分配的方式進行建模。
1.3.1 控制平面理論模型


圖3 控制平面的馬爾科夫鏈結構
為了計算整個系統期望的數據流數目,需要先計算系統的穩態概率。根據杰克遜定理,系統中存在的m個獨立的M/M/1/1系統,其穩態概率可以由不同的ρj求得。將獨立系統整合在一起,可以求得整個系統能處理數據的期望值為
P(s1,s2,s3,…,sm)=P(s1)P(s2)P(s3)…P(sm)
?sj∈0,1
(2)
式中:所有路由器到頂點負荷的表達式為
(3)
這就是圖3中的(1,1,1)狀態。在這一點的時候,Psj=1表示第j個路由器的PK個狀態。如前文所述,這個概率也表示該路由器的服務等級(grade of service)。因此,將路由器的服務等級代入,P1,1,1,…,1可以表示為
(4)

(5)
每個路由器的任務隊列長度為常數,在此定義為K,則系統能處理最大數據流可以表示為式(6)。超過這個數值,則虛擬控制器會建立新的虛擬路由,從而修改數據平面的流表,改變數據流入新的虛擬路由器中,從而達到了數據流的自適應處理
(6)
1.3.2 控制層架構設計
控制層由兩部分組成:虛擬路由器、網絡拓撲控制器。數據流會先被發送到動態管理表,控制區根據上節中定義的控制算法以及管理表中數據流對應的相應動作進行動態分配,將數據流轉發至相應虛擬路由器,從而實現效率最大化。虛擬路由器并非物理設備,由控制器內的拓撲控制算法動態創建及更改,而是否進行虛擬路由器的創建主要由網絡拓撲控制器負責,其職責主要是分析數據層中的數據最優組合。根據計算的服務等級,將實際交換機組合成多個虛擬交換機,保證虛擬交換機的最佳運行效率,提高系統數據處理能力。虛擬路由資源利用率ψ為

(7)
其中,ρmax是ρij的最大值,表示一個集合能夠處理的所有數據流。當虛擬路由滿載時資源利用率達到最大。因為在信息交換時,由于延遲和承載能力的瓶頸,本文設置了1%的閾值,達到閾值則創建新的虛擬路由器。由上式可得

(8)
模型的建立主要是保證數據流處理的公平性、系統的整體處理能力。為了評估提出的自適應數據流處理模型,建立拓撲為1000*1000節點,最多有60臺交換機為用戶提供數據傳輸服務。設定場景內最高數據流量為42 Erlang,發生在只有一個交換機,隊列長度為60的時候。由于網絡拓撲中運行交換機的數量從1到60進行遞增,每個交換機支持的隊列長度,隊列中用戶的傳輸速率都會發生相應變化,見表1。

表1 自適應數據流模型模擬數據
上述數據中第四行為虛擬交換機控制器根據數據流量在控制平面產生的虛擬交換機數量。可以發現根據網絡流量以及交換機數量的加入,虛擬交換機的數量從1至5也進行動態調整,較好執行了根據流量動態調節的目的。同時,從圖4中可以發現,本文提出的優化算法比傳統的傳輸模式具有更好的公平性,特別在數據平面內,參與傳輸的交換機增加時,傳統算法的用戶公平性和傳輸效率顯示了一種斷崖式的下降,而軟件定義流模型則呈現一種緩慢的下降趨勢。參照文獻[11]提出的用戶公平度公式,在20個交換機參與傳輸時,本文能夠提高大約15%的公平性。并且,當用戶的服務等級達到閾值0.05時會出發虛擬交換機控制器機制,進行虛擬交換機的重新分配,從而使服務等級維持在較低的水平,如圖5所示。

圖4 接入Openflow交換機與公平性關系

圖5 系統整體服務評價
基于軟件定義網絡的思想,本文提出了一種基于服務等級的自適應數據流管理架構,框架主要包括了拓撲控制器以及數據流控制器兩部分。拓撲控制器能夠根據交換機擁有的物理資源自動創建虛擬交換機,從邏輯上改變了網絡的拓撲結構,提高了資源利用率。而數據流控制器則針對創建的虛擬交換機數據流處理強度,并行、動態的從數據層進行數據流的調度。結果表明,自適應數據流管理架構模型的阻塞概率遠低于通用的系統架構,這降低了用戶平均等待時間,并能夠充分利用交換機的物理資源,提高系統的吞吐量。