董芳,胡宇翔,李鷗
(1.信息工程大學,河南 鄭州 450001;2.通信網信息傳輸與分發技術重點實驗室,河北 石家莊 050081;3.國家數字交換系統工程技術研究中心,河南 鄭州 450002)
以傳感網、物聯網等泛在網絡為典型表現形式的自組織網絡既解決了無固定通信基礎設施下移動通信聯絡的需求,又可作為現有固定通信基礎設施的延伸來實現廣域覆蓋,是填補固定網絡“空白”的首選方式,在工業監控、環境監測、醫療監護、智能家居、交通管理等諸多領域得到廣泛應用。隨著用戶對網絡體驗的期望值越來越高,自組織網絡已不僅局限于傳統意義上的信息獲取功能,更向著信息傳輸、處理,甚至服務定制等更高層次發展。然而,自組織網絡鮮明的節點移動性特點,使時延、帶寬、吞吐量等參數的變化不可預測,導致數據傳輸可靠性降低甚至失效,進而無從保證網絡服務的有效性。另外,能量受限制約著自組織網絡節點提供服務的多樣化和復雜程度,成為阻礙自組織網絡整體服務質量提升的主要因素。
為了解決以上問題,研究者嘗試將最新的網絡技術用于新型自組織網絡的設計中,與軟件定義網絡(SDN,software defined networking)結合的自組織網絡研究就是其中熱點之一。SDN 起源于校園網,發展于互聯網,其初衷是把當今互聯網垂直緊耦合的體系結構解耦,以模塊化結構開放網絡核心功能,為打破現有網絡“結構決定應用”的僵局[1]提供可行方案。目前,SDN 向無線網絡擴展,較為成熟的研究成果集中于網絡核心網層面(如5G 核心網等),但應對底層無線復雜環境仍顯乏力。本文不回避無線接入的復雜性,在開放的控制平面內進行自由的網絡功能創新,以顯著增強自組織網絡在功能路由、網絡資源管理及規模化組網等方面的能力,其中定制化的路由設計是研究重點。
在自組織網絡路由模型方面,面向Ad Hoc 靈活QoS 模型(FQMM,flexible quality of service model for mobile Ad Hoc network)是一種典型的無線移動自組織網絡QoS 模型[2]。該模型以區分服務模型控制數據流,以集成服務模型對相似節點進行分類,能夠根據網絡流量及網絡特性自適應地調節數據業務量,但該模型受限于節點計算與容量狀況,只適用于小規模網絡。無狀態自組織網絡QoS 服務模型(SWAN,stateless wireless Ad Hoc network)[3]采用分布式算法為數據業務提供QoS 保障。和FQMM 不同的是,該模型獨立于路由協議,只需在源節點維護QoS 狀態。然而,SWAN 僅為實時業務和盡力而為業務提供服務,尚不能滿足除此之外的其他用戶應用需求。在支持服務質量的路由協議方面,研究人員從不同的路由策略如多徑傳輸、帶寬預留、跨層聯合、負載均衡等出發提出了大量路由協議,這些協議各具特點,考慮的參數也不盡相同,但大多是在原有盡力而為路由協議的基礎上進行改進與拓展[4-5],難于提升網絡整體效能。在SDN 下的自組織網絡功能革新方面,Gibb 等[6]提出了一種由外部特征提供商開發和部署的網絡架構,該架構通過提供商之間的競爭促進網絡功能創新。Mogul等[7]設計了一種控制平面,用于支持控制器上應用程序的組合,實現模塊組合和優化,該工作與本文研究的網絡分屬不同類型,SDN 下的自組織網絡可借鑒其思想。以上研究成果表明,自組織網絡現有的路由設計存在諸多問題,引入SDN 實現自組織網絡的路由定制優勢明顯,但同樣面臨著配置復雜等問題,目前鮮有明確思路與可行方案能夠圓滿解決以上問題。本文從基于SDN 的自組織網絡全局系統出發,探討SDN 下自組織網絡設計的新思路和新方法,并重點關注基于SDN 的自組織網絡路由設計框架及可行的構建方法。
SDN 下的網絡功能組合是提高網絡整體效能的主要方向之一[8],其思想是將當前“僵化的”按層劃分的網絡功能重新抽象并分解為更細粒度的功能單元,然后按需組合為復合的功能集。在這一思想下,自組織網絡設計發生了質的飛躍,即“網絡結構主動適配上層應用”,如圖1 所示。首先,網絡功能實現模塊化。在網絡節點上,網絡功能軟件化為基本單元,節點整體功能則體現為根據服務實時重構的基本功能單元集。其次,路由序列化。在端到端系統中,路由軟件化為滿足服務約束的節點和鏈路有序序列,在功能層面上也就體現為能夠承載網絡服務的有序節點和鏈路序列,稱為服務路徑(SP,service path)[9],服務路徑上的相鄰節點在功能層面上互為下一跳節點,但這樣的相鄰節點往往不是物理網絡的相鄰節點。由此,SDN 下的路由是由服務路徑及其服務路徑上相鄰有序節點間普通節點構成的矢量路徑,這里的難點在于獲取服務路徑上的有序節點和鏈路,而有序節點間的路由可由現有路由協議完成。本文聚焦于SDN 下基于服務路徑的路由構建,明確SDN 下自組織網絡控制系統架構,并以此架構全面分析SDN 自組織網絡路由的本質特點和全新方式,提出一種基于服務特征的分層次路由方法,重點設計路由關鍵節點和關鍵鏈路的選擇算法,以最優的方式將用戶定制的服務嵌入基礎物理網絡中,這里最優方式是指能夠讓具體網絡性能參數(如能耗、負載均衡、平均時延、網絡效能等)達到一個最佳狀態,從而構成業務數據傳輸的服務通道,為用戶定制服務提供承載支撐。最后,依托OpenFlow1.3 與NS-3 實現原型系統,驗證SDN 下自組織網絡路由實現的優勢。

圖1 服務路徑與路由示意
基于SDN 的自組織網絡相對成熟的應用場景是車載網(VANET,vehicular Ad Hoc network)[10],如圖2(a)所示。VANET 將網絡節點分為無線接入點(車輛)、路邊接入單元和SDN 控制器3 類。無線接入點在路邊接入單元控制范圍內,通過路邊接入單元接受SDN 控制器控制;在路邊接入單元覆蓋不到的地方,無線接入點完全以自組織的方式工作。SDN 控制器經由路邊接入單元至無線接入點的控制流承載于控制范圍較廣的LTE,無線接入點間的數據流則由高帶寬的Wi-Fi 承載。本文將VANET的結構抽象并擴展(如圖2(b)所示),作為基于SDN的自組織網絡的基礎控制架構。
如圖2(b)所示的基于SDN 的自組織網絡結構在集中式和分布式之間進行折中,是SDN 下自組織網絡的新型部署架構,可以概括為“物理上分布,邏輯上集中”網絡控制方式[11]。“物理上分布”指網絡節點所處的網絡分級地位不同,從邊緣網絡到核心網絡依次為獨立節點、接入控制器和全局控制器;“邏輯上集中”指不同級別的控制器運行相應級別的SDN 控制軟件和應用配置,在同一級上擁有同樣的控制能力和本地服務能力。全局控制器負責組建“流”的最高層分發系統,通過發布控制事件來同步各級控制器;接入控制器連接移動的獨立節點并對其問詢和管理。當獨立節點進入或移出接入控制器控制范圍時,接入控制器通過SDN 北向接口重新配置獨立節點,同時接入控制器還可以通過SDN 東西向接口與相鄰的活躍接入控制器建立連接。為了維護接入控制器面向獨立節點的全局性和相對于全局控制器的本地化,接入控制器采用“發布/訂閱”事件的方式完成狀態更新。
定制化路由是自組織網絡長遠發展的必然要求。SDN 的設計理念開放了網絡控制平面,從而為面向服務定制的路由提供了基礎網絡條件。同時,SDN 并不是具體技術(如 OSPF(open shortest path first)等),所以完成面向服務定制的路由需要現實的方法。基于SDN 的自組織網絡路由過程可以描述如下。首先,建立備選節點和鏈路集合。SDN 控制器將用戶需求映射為具備用戶服務特征的備選節點和鏈路的集合。其次,計算服務路徑。SDN 控制器根據掌握的節點和鏈路狀況(資源、網絡效能等)視圖,在備選節點和鏈路的集合中找出服務提供節點。以上提供服務的節點和鏈路是服務路徑上的相鄰節點,這些節點是定制化路由上必須存在的節點,本文將這些節點關鍵點和關鍵鏈路稱為路由關鍵點和關鍵鏈路,由SDN 控制器下發至網絡相應節點。最后,實現定制化路由。路由關鍵點和關鍵鏈路按照本地路由協議完成數據在源節點和目的節點上的傳輸。

圖2 VANET 與基于SDN 的自組織網絡控制架構示意
基于以上過程,從功能角度看,SDN 下的路由涵蓋了服務路徑,即服務路徑上的節點和鏈路作為路由關鍵節點和關鍵鏈路是物理路由的組成部分;從實現角度看,SDN 下的路由仍是節點運行路由協議計算下一跳的過程,只是下一跳集合中除必須包含路由關鍵點和關鍵鏈路外,還可能存在其他中間節點。所以,SDN 下的路由并不是顛覆路由的本質含義,而是基于服務路徑的路由實現方法擴展,這一擴展最重要環節在于找到路由關鍵節點和關鍵鏈路。當然,一般情況下,SDN 控制器能夠掌握本控制域內節點狀況,合理計算出定制路由。但由于自組織網絡獨立節點移動性、能量受限等不確定因素,不排除SDN 控制器對移動節點信息更新的滯后性,因此存在移動節點不能勝任路由關鍵節點和關鍵鏈路的個別異常情況。此時,由移動節點將自身狀況主動上報SDN 服務器,請求重新計算服務路徑和確定路由關鍵節點和關鍵鏈路,此時的服務路徑不一定是最優的,但在路由上卻是可實現的。
路由關鍵節點和關鍵鏈路在服務路徑上是連續的,但在端到端的路由上卻往往是離散的,受到自組織網絡拓撲變化較快的制約,由SDN 控制器計算出路由上的所有節點是不切實際的;同時,服務路徑已能夠完全呈現用戶需求,由SDN 控制器計算出路由關鍵節點和關鍵鏈路間的其他節點也是沒有必要的。基于以上分析,SDN 下自組織網絡的路由選擇可以被建模成為一種帶約束下的路由關鍵點和關鍵鏈路選擇問題(RKNLSP,routing key node and link selected problem),這個問題的特殊性在于路由關鍵節點和關鍵鏈路的SDN 控制器集中式選擇,以及以上節點和鏈路間分布式路由計算要并行實現。RKNLSP 優化目標為充分有效地利用網絡的有限資源,為業務請求提供更優的服務。這里,路由關鍵點和路由關鍵鏈路間路由按網絡常規路由協議配置。RKNLSP形式化描述如式(1)所示。其中,u是SDN 控制器計算的一種網絡資源可行的配置,ξ是網絡資源全部可行配置的集合;Nk和Lk分別表示備選路由關鍵節點和鏈路的集合,N表示網絡全部節點的集合,PROTOCOL 表示網絡可配置路由協議的集合;Demand(*)表示某業務要求關鍵節點或者鏈路能夠提供的資源,Remain(*)表示關鍵節點或者鏈路剩余的資源,Capability(*)表示關鍵節點或者鏈路總的資源量。

網絡架構是路由總體設計的主要依據,結合圖2(b)所示的網絡結構,基于SDN 的自組織網絡路由規則也是分層次的,即為接入控制器主導的獨立節點間路由和全局控制器主導的接入控制器間的路由。對網絡業務特點和網絡自身特點的分析是進行路由協議設計的前提,在接入控制器控制下由獨立節點組成的接入層面,網絡業務表現為數據的采集與回傳,具有明顯的方向性,自組織方式是實現多跳信息傳遞和網絡控制的手段,能量集約化是路由設計的重要因素;在接入控制器和全局控制器組成的核心平面,網絡業務表現為端到端的橫向業務,具有顯著的用戶服務特征,如何保證服務有效性是路由設計的關鍵問題。所以,RKNLSP 又可分為面向服務的2 個子優化問題,即在網絡接入層面的系統耗能最小化問題和在核心層面的網絡效能最大化問題。
傳統的自組織網絡中,每個獨立節點只掌握局部網絡拓撲信息,優化的目標卻是“多條傳輸路徑的端到端總功耗”的全局目標,而完成全局目標則要依賴源節點及中繼節點對相鄰節點的探測,不斷積累一跳外網絡的拓撲信息。此時節點能耗由兩部分組成:用于探測拓撲信息部分的和用于通信部分的,則節點能耗為。系統能耗優化模型為。假設節點i在ri范圍內以按需方式發送鄰居探測消息,收到包含目的節點位置信息的消息,如果節點的探測范圍ri擴大,則增加,但由于可能選擇到更優的路徑,可能減少,找到合適的ri,就使系統整體能耗最小化[12]。這個問題可以采用整數規劃的方法解決,但是復雜度偏高。
作為支持自組織網絡整體服務效能提升的一項關鍵技術,全局控制器域內的路由設計已不能僅考慮節點內簡單的數據轉發功能,伴隨著接入層面接入控制器節點性能的提升,路由的構建不僅需要考慮節點轉發能力,而且還要考慮節點的服務部署情況、網絡的總體效能等因素。由于滿足某一服務的節點和鏈路不唯一且提供服務的節點性能和鏈路代價不相同,路由計算將比現有網絡路由多采用的距離矢量或鏈路狀態算法更復雜。本文將全局控制器域內RKNLSP 抽象成為最優化問題,并建立與之相應的整數線性規劃模型,如式(2)~式(8)所示,符號及其含義如表1 所示,旨在滿足網絡效能最大化目標的條件下找到最優的路由[13]。節點和鏈路服務特征如式(3)~式(4)所示。式(5)是節點服務能力約束。式(6)是節點間鏈路能力約束。式(7)~式(8)約束針對某一服務,全局控制器最終下發的路由策略中所包含路由關鍵點和鏈路的唯一性。


表1 式(2)~式(8)的符號及其含義
基于以上論述可以看到,SDN 下自組織網絡路由問題從總體上看仍可歸結為一類典型的整數線性規劃(ILP,integer linear program)問題,通常情況下,這一類問題屬于NP-hard 問題,求解時復雜度較高。當問題中變量數較少時,可以采用窮舉算法遍歷搜索空間的所有可行解,以確定最優解。但是,當模型中變量數增加時,問題求解的復雜度是呈指數增加的,難以再通過窮舉遍歷的方式進行求解。因此,快速且優質地獲得模型解的關鍵在于約減變量數目。路由關鍵節點體現為2 種類型:一種是服務要求節點本身能夠提供某種功能服務;另一種是服務路徑要求兩節點之間的某段功能鏈路。所以節點與鏈路約束可統一為約簡為對節點的約束。另外,從工程角度而言,與獲取網絡全局信息相比,獲取網絡關鍵信息(節點和鏈路)的過程更具確定性、結果更具針對性,也可以進一步降低ILP 的求解復雜度。
SDN 下的自組織網絡在接入層面,獨立節點能量受限,節能成為此時服務特征的主要依據,伴隨著獨立節點的移動性,固化獨立節點與接入控制器的信息交互行為是節能的關鍵。在接入控制器控制范圍內,控制器管理多個與之直接相連的獨立節點,并通過間接查詢等方式管理其他非直連的獨立節點。接入控制器可以將所有的轉發規則一次性寫入獨立節點轉發流表,從而使其在任何數據分組到達之前便知道所有可達地址。主動模式中,接入控制器主動將流表進行更新和推送,節點不能將失配的數據分組轉發給接入控制器,因此不能發起一個新建的數據流業務。被動模式中,接入控制器不會主動地進行流表更新,只有接收到底層的獨立節點發送來的請求時,才會向相應的獨立節點下發流表更新信息。與傳統的自組織網絡由獨立節點“探測式”節能路由設計不同,接入控制器是這一層面路由決策者,接入控制器對獨立節點的“發布/訂閱”式信息更新,使獨立節點不確定的探測過程固化為有限次分階段的信息交互行為。節點能耗和系統能耗如圖3所示。

圖3 網絡接入層次節點能耗和系統能耗
從路由方面考慮的能量集約化有2 種思路:節能和能耗均衡。其中,節能即通過尋找節能的路由,減少路由建立和維護的控制開銷或提高路由可靠性方法,降低傳輸一定量的數據所需要的能量;能量均衡即通過合理地從空間上調度能源,使網絡中節點能量均衡消耗減少,從而延長網絡壽命。首先,接入控制器掌握所控獨立節點狀態,由接入控制器以最小能耗路徑(階段1、階段2 和階段3)[12]來引導節點間路由;其次,當節點被選為業務中繼節點時(階段4),一定是經過接入控制器完成控制范圍內能量均衡工作的結果;最后,接入控制器有持續的能量供給,實現能量均衡算法的復雜度和能量消耗都可不計入以移動節點生存性為目的路由開銷。所以,系統能耗最小化即每個節點能耗和最小化,從而使系統能耗由整數規劃問題約減為線性求和問題,大大降低了問題求解復雜度。假設節點收發損耗相同為Eelec(Eelec_sent=Eelec_receive=Eelec),交互信息長度相同為L(Lint=Lcon_cyc=Lcon_ini=Lchange=Lcom_charge=L),兼顧到節點移動性,接入控制器域內兩節點的距離最大值D為控制器的控制范圍,此時系統能耗存在最大值。另外,在接入層面上,選擇合適的參數去抽象無線設備錯綜復雜,且某些參數因為實時性和復雜性無法被控制器動態配置,所以本層面路由關鍵點間的物理路由(即若干段點到點的物理鏈路)仍采用現有協議完成,如AODV(Ad Hoc on-demand distance vector routing)等。
綜上所述,將本層面路由整體過程概括為算法1,具體步驟如下。
算法1基于節能的獨立節點映射路由算法
1)SDN 控制器計算控制域內節點能耗,周期性更新網絡能量視圖;
2)若節點發出路由請求,轉到步驟3),否則轉到步驟1);
3)SDN 控制器以最小能耗路徑引導路由,找到備選下一跳節點;
4)SDN 控制器通過能量均衡后確定下一跳節點;
5)重復步驟1)~步驟3)。
6)若找到最后一個路由關鍵點,轉到步驟7),否則,轉到步驟3);
7)SDN 控制器記錄路由關鍵點并下發相應網絡節點;
8)若網絡節點沒有異議,轉到步驟9),否則,網絡節點上報自身狀況給SDN 控制器,轉到步驟2);
9)路由關鍵點運行普通路由協議;
10)return;
SDN 下的自組織網絡在核心層面,以用戶為導向的服務有效性成為網絡服務能力的關鍵,此時路由的構建就是通過服務能力矩陣計算滿足服務需求服務路徑,繼而以網絡效能最大化將服務路徑上的節點映射為路由關鍵點集合。
4.2.1 效能函數
網絡效能函數是以節點服務能力為變量的函數。服務能力與網絡效用可能表現出相同的特性,即服務能力越大,效用越大,如節點能提供的帶寬越大,效用就趨向增大;服務能力與網絡效用也可能表現出相反的特性,即服務能力越大,效用越小,如節點耗能越大,效用就趨向減小。也就是說,一些服務能力越大,效能越優,另一些服務能力越小,效能越優,所以定義轉化函數(如式(9)和式(10)所示)以取得基于所有能力變量的一致性優化結果[13]。

不失一般性,本文將節點具備的服務能力歸一化為[0,1]。節點第k個服務能力矢量表示為中的最大值且為第j個元素的值,即。引入一個比值歸一化矢量,則得到簡記為r,轉化函數可以分段如式(11)和式(12)定義,滿足效能函數的歸一化單調性要求。

為此,效能函數可以定義為f+和f-的仿射組合如式(13)所示,wk≥0(1≤k≤t)為仿射系數且=1。

4.2.2 服務能力矩陣與服務請求矩陣
基于網絡圖GS=(NS,LS),Spe={p e|e=1,2,…,E}表示基本功能單元集合,那么節點Nn(Nn∈NS,1≤n≤N)對應的所有服務而產生的網絡效能為


4.2.3 節點(網絡核心側節點)映射
基于服務能力矩陣和服務請求矩陣計算備選擇矩陣Nsel=[si,r]N×E,該矩陣包含服務路徑需求中所需的各類服務,計算過程通過矩陣乘法得到,如式(16)所示。

其中,設矩陣Nsel的各列向量為sr=(s1,r,…,sN,r)T(r=1,2,…,E),因此選擇矩陣可簡化表示為Nsel=[s1,…,sE]。如果sr=0,表示沒有節點能夠滿足服務路徑需求;如果sr≠0且si,r≠0(si,r∈sr),表示有網絡節點ni能夠作為服務路徑需求的可選節點。
依據所得的選擇矩陣Nsel,可選擇出最優的網絡節點用于服務路徑需求的服務路徑構建。對于服務路徑需求的每一基本功能單元,選擇節點ni中能提供基本功能單元pe,且具有最大網絡效能的節點ni作為該基本功能單元的服務節點,該過程可以形式化表示為

4.2.4 基于節點(網絡核心側節點)映射的路由算法
綜上所述,將基于節點映射的路由算法概括為算法2[15],具體介紹如下。
算法2基于節點(網絡核心側節點)映射的路由算法


綜上,SDN 下的路由過程可概括為獨立節點依照接入控制器給出的能耗優化路徑,將服務請求經接入控制器上報至全局控制器,全局控制器接受服務請求后,開始啟動路由構建。路由構建經過3 個過程:首先,全局控制器以網絡效能最大化選擇核心層路由關鍵節點;然后,接入控制器以能耗集約化選擇接入層路由關鍵節點;最后,路由關鍵節點間路由構建。由于關鍵節點間路由采用現有的路由協議,對于這些協議研究的相關實驗參數已經相當豐富,本文不再重點關注。以下實驗以服務路徑構建為主要參考依據。
為了證明本文算法的有效性,設計并搭建了如圖4 所示的原型系統。基于SUMO(simulation of urban mobility)網絡模型[16],利用NS-3 模擬器在1 000 m×1 000 m 區域內布設5 個接入控制器,每個接入控制器最多控制30 個移動節點。該系統使用ONOS 作為SDN 控制器,使用OpenFlow 1.3 協議作為控制器與交換機之間的南向接口。ClickOS 是一種支持網絡中間件服務的軟件虛擬化服務實現平臺,因此原型系統利用其作為基本功能單元的運行平臺。接入控制器在原型系統中具備雙重功能,既是面向全局服務器的SDN 交換機,也是面向獨立節點的SDN 控制器。

圖4 基于SDN 的自組織網絡原型系統
區別于傳統的自組織網絡路由,SDN 下的自組織網絡路由是基于服務能力(本文主要指能耗和網絡效能)分級實施的,這樣的路由不僅要適應自組織網絡移動性的特點,更要發揮SDN 集中控制與服務定制化的優勢。所以,實驗驗證著力點在于:首先,接入層面評估各中路由方式下獨立節點移動中的能耗優劣;其次,核心層面對比服務路徑數目與網絡效能的關系;最后,評估SDN 控制器主導下的自組織網絡路由的總體效果。
5.2.1 接入級路由算法比較
節點移動性通常體現為節點移動速度;用戶業務流特性在接入層面體現為節點并發業務速率。為比較節點移動速度對路由能耗的影響,采用隨機路點模型[17]且業務流特性固定。基于圖4系統的接入層面,在單個接入控制器控制范圍內完成通信過程,每次通信的獨立節點及其數據流由NS-3 服務器/客戶端輪詢流序列產生,在設定相同節點數量(總節點數為20 個,活動節點數為10 個)且工作在速率0.25 packet/s(低業務速率)、25 packet/s(高業務速率)的情況下,節點速度按每3 m/s 的步長從0 增加到15 m/s。
圖5 每次配置參數的仿真持續時間5 min,共進行10 次仿真,取傳輸1 bit 分組的端到端能耗平均值。從整體趨勢上分析,各路由方式在不同業務速率下能耗曲線平穩,表明各路由方式對節點移動的適應性較強。其中,SDN 方式能耗均小于其他路由方式,是由于接入控制器避免了不確定的探測過程且總能選擇能耗最小的節點建立端到端路由。相對于圖5(a),圖5(b)的能耗曲線整體上移,是由于業務速率提升后加大了發送電路能耗;在能耗曲線整體上移的趨勢下,曲線間距離也增大,尤其是AODV 曲線上升更為明顯,說明能耗受業務特征影響是現實存在的,需要在網絡核心層面考慮業務特征因素。
圖6 每次配置參數的仿真持續時間50 min,共進行3 次仿真,獲取各節點剩余能量平均值。可以看出,節點剩余能量受業務特征影響,高業務速率下耗能稍高。SDN 方式下各節點平均能耗剩余柱狀圖較為規整,而其余路由方式節點平均能耗剩余柱狀圖呈鋸齒狀,說明SDN 方式下節點間能耗相對均衡,原因是接入控制器始終以負載均衡選擇關鍵點。
5.2.2 核心層次網絡效能評估

圖5 傳輸1bit 分組的端到端平均能耗

圖6 節點剩余能量
基于網絡配置簡便的目的,樸素的手動配置方式是構建路由的常用方法,其主要思路是同樣的服務盡可能地讓一個關鍵點提供,當一個節點的資源耗盡后,開始部署下一個節點,依次連續部署下去。本文依據式(14)和式(18)計算了每個關鍵點上資源占用率(ROR,resources occupied ratio)和網絡效用值的情況,并且將本文RKNLSP 解決方法所得結果與基于手工配置方法所得結果進行比較。ROR 定義為提供基本功能單元時節點或鏈路上每一資源的已使用量()與該資源的總量()的平均比值。其中,k(k=1,2,…,K)是資源種類,i(i=1,2,…,NS+LS)是網絡節點或鏈路的編號,NS和LS分別是網絡中節點和鏈路的總數目,δ()=1表示節點或鏈i上有資源種類k,否則δ()=0。

如圖7 所示,在路由數目分別為10 和104的條件下,本文RKNLSP 方法在不同服務路徑長度下,網絡節點的平均效用值分別約為0.69 和0.53,而相同條件下,手動方法的網絡平均效用值約為0.42 和0.38。比較而言,本文所提出的RKNLSP解決方法的網絡效能相比于手動配置方法整體提高約14%,但在路由數目相對較少的情況下,RKNLSP 解決方法優勢并不明顯。分析原因是本文RKNLSP 解決方法能夠協同調配全網范圍內的資源構建服務路徑,使不同網絡節點上的資源能夠得到較為充分的利用。但當路由數目較少時,由于RKNLSP 解決方法產生一定的計算開銷,所以網絡平均效用值相差不多。另外,RKNLSP 解決方法資源平均占有率低于手動配置方法,意味著SDN 控制器參與下為同一基本功能單元所付出的資源量更少或者說節點間的資源占有量更均衡。當路由數目較少時,路由長度增加并不顯著地增加資源占有率且2 種方法資源占有率相差也不大;當路由數目激增時,隨著路由長度增加手動配置方法資源平均占有率較RKNLSP 方法增長迅速。這是因為RKNLSP 的自適應性只有在網絡服務數量規模下才能顯現。
5.2.3 網絡整體性能效能評估
基于圖4 原型系統建立一個獨立節點間信息交換場景,源節點和目的節點之間的業務流量需要獲得一定的可靠性支持。實際實驗中,利用C#語言編寫一個自動機來產生大量的服務能力參數,其中每一路由分配有1~5 個不同的基本功能單元數目。每次實驗后,統計服務路徑的構建時間(接入控制器計算時間與全局控制器計算時間之和)、OpenFlow配置時間和流量在用戶和服務器之間的傳輸時延。重復統計多次得到平均值如圖8 所示。

圖7 不同路由數目條件下的網絡平均效用與資源利用率示意
比較圖8(a)和圖8(b)中的結果可以看出,服務路徑的構建時間、OpenFlow 配置時間和傳輸時延都伴隨服務路徑數目的增加而增長,并與服務路徑的長度增長趨勢一致。統計結果也顯示服務路徑構建時間在服務路徑的構建中占有重要的比例,并且該比例值隨網絡中路由數目的增加而提高。其原因是:一方面,當路由數目增加時,控制器需要處理更多的請求,從而使路由建立時間延長;另一方面,由于路由關鍵點的負載增加,從而需要更多的時間來完成服務處理。
同時,文獻[18]在互聯網環境下設計了一種集中調控的分布式路徑選擇算法,其中集中調控等價于本文中SDN 控制器計算服務路徑,分布式選擇等價于路由關鍵點間的路由過程。圖8(a)和圖8(b)中的結果與文獻[18]結果具有一致性,即服務響應時延(OpenFlow 配置時間與服務路徑計算時間之和)相對于其他算法普遍降低。

圖8 不同路由數目條件下的服務路徑建立時間示意
當前,在SDN 技術的推動下,新型網絡體系結構的設計成為未來網絡的研究熱點之一,與SDN結合的自組織網絡研究方興未艾。節點能量受限與移動性是自組織網絡的顯著特點,也是未來自組織網絡路由設計的制約因素,且定制化服務的更高要求使自組織網絡在路由層面尤其是功能路由設計上進展乏力。SDN 將網絡傳統的垂直緊耦合的體系結構解耦,重新構造模塊化的網絡功能結構。基于此SDN 下的自組織網絡路由可以描述為邏輯上的服務路徑和實現上的物理路由之疊加復合。首先,基于SDN 優勢進一步分析了SDN 下自組織網絡控制系統架構和全新的路由實現方式,建立了基于整數規劃模的分級路由模型。其次,在接入控制器基于優化目標(最小能耗路徑和能量均衡)引導路由的過程中固化了網絡接入層面的信息交互流程,提出一種基于服務能力的分層次路由思想,重點設計了路由關鍵點和關鍵鏈路集中式選擇問題的求解算法(稱為RKNLSP 算法),該算法通過服務關鍵點的映射以最優的方式(節能和網絡效能)將用戶定制的服務嵌入基礎物理網絡中,為用戶定制服務提供承載支撐。最后,在搭建的原型系統上驗證了RKNLSP 算法能夠實現的功能,同時在網絡接入層次評估了SDN 下的RKNLSP 方式路由相對于自組網傳統路由算法的性能,在網絡核心層次和網絡全局層面驗證了相對于手動配置方式實現“按需配置”服務的網絡效能整體優勢。
然而,在網絡實際運行中,核心層面的網絡拓撲變化一般慢于網絡流量的動態變化,服務路徑構建的輸入可由原始網絡拓撲簡化為離線計算的經驗服務路徑集合,當離線部署的服務路徑產生的網絡效能降低到一定門限后,再啟動服務路徑計算過程,從而降低算法實現復雜度。所以,作為對SDN下新型自組織網絡的初步探討,本文所提到路由思路、模型及算法仍值得進一步優化和完善。