一種提高層次分布式sdn控制平面路由效率的機制的制作方法
【專利摘要】本發(fā)明公開了一種提高層次分布式SDN控制平面路由效率的機制,以解決在大規(guī)模OpenFlow網(wǎng)絡環(huán)境下的SDN控制器部署所存在的可擴展性問題。本發(fā)明將網(wǎng)絡中的路由請求根據(jù)數(shù)據(jù)包的源IP地址和目的IP地址分成三個級別,對局域網(wǎng)中的路由請求采用集中控制路由(CSR)算法,對全局路由請求被作為完全分布式控制路由進行處理。本發(fā)明通過采用阻斷島范式(BI)理論建立BI圖和對全局網(wǎng)絡進行拓撲聚合以降低路由算法的搜索空間。
【專利說明】
-種提高層次分布式SDN控制平面路由效率的機制
技術領域
[0001] 本發(fā)明公開了一種對層次分布式軟件定義網(wǎng)絡(SDN)控制平面路由效率進行改進 的機制,用于解決在大規(guī)模網(wǎng)絡環(huán)境下,控制器如何配置網(wǎng)絡資源和處理路由請求,從而提 高控制平面可擴展性的問題。本發(fā)明屬于網(wǎng)絡數(shù)據(jù)傳輸領域。
【背景技術】
[0002] 隨著互聯(lián)網(wǎng)的規(guī)模和復雜性日益增長W及應用范圍的不斷擴大,許多新興網(wǎng)絡業(yè) 務對網(wǎng)絡所能提供的服務提出了更加苛刻的要求。例如:數(shù)據(jù)中屯、中巨量數(shù)據(jù)的傳輸對網(wǎng) 絡帶寬提出了更高要求;在線實時交互式應用要求網(wǎng)絡延遲控制在數(shù)毫秒內;網(wǎng)絡電話對 丟包率非常敏感。然而,互聯(lián)網(wǎng)中傳統(tǒng)的盡力而為的傳送機制難W提供基于每個業(yè)務流的 細粒度控制及優(yōu)秀的區(qū)分服務,原因在于現(xiàn)有網(wǎng)絡的控制功能分散于各個網(wǎng)絡設備中,采 用的分布式路由協(xié)議并不適宜實現(xiàn)端對端的有軟件服務質量(QoS)保證的路由,并且由于 傳統(tǒng)網(wǎng)絡架構僵化和缺乏全局網(wǎng)絡視圖,目前并沒有一種基于傳統(tǒng)網(wǎng)絡的資源管理框架能 解決所有問題。
[0003] 基于上述問題,SDN日益興起并迅速吸引了學術界和工業(yè)界注意。SDN將控制平面 與轉發(fā)平面分離,網(wǎng)絡層和控制層之間通過化enFlow協(xié)議提供的安全信道交換信息,控制 層通過REST API提供的北向接口向應用層提供服務。SDN控制器負責執(zhí)行網(wǎng)絡決策任務,如 負載均衡、接入控制和路由計算,網(wǎng)絡設備在控制器的指導下進行數(shù)據(jù)轉發(fā)。網(wǎng)絡管理者能 夠通過編寫應用程序來配置、管理和優(yōu)化底層的網(wǎng)絡資源,從而實現(xiàn)靈活可控的網(wǎng)絡W及 提供高質量、可區(qū)分的服務。
[0004] 然而SDN在帶來諸多優(yōu)點和機遇的同時也帶來了挑戰(zhàn)。SDN控制器是整個網(wǎng)絡的大 腦,負責所有的網(wǎng)絡決策任務,例如負載均衡、網(wǎng)絡接入、流量調度、路由計算等,而沉重的 計算負擔會降低網(wǎng)絡路由決策的效率并增加路由的時延。此外,OpenFlow交換機的流表空 間是有限的(約4K),為了在有限的流表空間中匹配更多的流,采用了硬超時和空閑超時等 流表項超時機制,從而導致流表項的重復計算,加重控制平面的負擔。網(wǎng)絡中存在大量老鼠 流,運些老鼠流的傳輸時間短暫且會頻繁調用控制器,極端情況下會導致控制器巖機。限制 條件下的最優(yōu)路徑?jīng)Q策是NP-完全問題,需要采用啟發(fā)式或演進式算法。針對在大規(guī)模網(wǎng)絡 中SDN控制器所存在的可擴展性問題,目前在學術界提出了=類解決方案:1.通過使用高規(guī) 格硬件及應用多線程技術來提高單個控制器的性能,或提出高性能路由算法來提高集中式 路由的效率;2.通過預先配置通配符流表項,為一部分業(yè)務流預先分配靜態(tài)路由,從而將部 分控制器工作轉移到轉發(fā)平面,通過降低路由請求次數(shù)提高控制器吞吐量;3.通過采用多 個控制器相互協(xié)作的分布式控制平面,將邏輯上統(tǒng)一的控制平面在物理上分散開來。目前 在學術界已經(jīng)有一些分布式控制平面的討論,但是運些控制平面通常較少關注其在大規(guī)模 網(wǎng)絡中應用時可能遇到的性能瓶頸問題。
[0005] 本發(fā)明主要針對SDN層次分布式控制平面存在的可擴展性問題,提出一種改進機 審IJ。為討論方便,假設層次分布式SDN網(wǎng)絡中,各種異構的局域網(wǎng)絡稱為LA,每個LA由一個底 層控制器LC管理,上層控制器稱為UC,上層控制器管理的網(wǎng)絡區(qū)域稱為UA,每個上層控制器 管理若干個底層控制器。首先,本發(fā)明利用分治法依據(jù)網(wǎng)絡層次和數(shù)據(jù)包的IP地址將網(wǎng)絡 中的路由分為S個級別進行處理,其中LA內和UA內部的路由被作為集中控制路由(CSR),而 源IP地址和目的IP分屬不同UA的路由請求被作為全局分布式路由進行處理;其次,將CSR作 為一個限制條件下最短路徑(CSP)問題,通過應用阻斷島范式理論(BI)為LA建立BI圖W降 低CSR算法的捜索空間從而降低其時間復雜度;最后,通過對網(wǎng)絡進行聚合W降低全局分布 式路由算法的復雜度。LC計算并上傳 LA聚合網(wǎng)絡到對應UC并且由UC將網(wǎng)絡拓撲和網(wǎng)絡狀態(tài) 同步至其它控制器,全局分布式路由的計算基于除去源UA和目的LA的聚合網(wǎng)絡,假設全局 分布式路由被作為I個有序的CSR問題進行處理,每個CSR依賴于一個除去源UA和目的LA的 全局聚合網(wǎng)絡。通過運種降低SDN路由算法的平均復雜度的機制,提高層次分布式控制器平 面的可擴展性。
【發(fā)明內容】
[0006] [發(fā)明目的]:針對現(xiàn)有SDN層次分布式控制平面在大規(guī)模網(wǎng)絡應用中存在性能瓶 頸問題,提出一種對其路由計算效率進行改進的機制。通過本發(fā)明,可W有效的提高SDN層 次分布式控制平面的處理能力,提高其在大規(guī)模網(wǎng)絡環(huán)境中的可擴展性和處理能力,從而 充分利用其所帶來的可編程性和靈活性。
[0007] [技術方案]:本發(fā)明采用了 W下技術方案:
[0008] 1)對網(wǎng)絡路由按照網(wǎng)絡層次和IP地址劃分為=個級別進行處理。
[0009] 將網(wǎng)絡路由劃分為S個級別能夠降低路由算法的平均時間復雜度,其中LA內部路 由和UA內部路由被作為集中控制路由進行處理,跨UA的路由被作為全局分布式路由進行處 理。CSR在本發(fā)明中被作為一個CSP問題進行處理,并且采用拉格朗日松弛變量算法(LARAC) 來解決該問題。本發(fā)明對路由計算請求的處理步驟為:
[0010]步驟一:LC收至睞自LA的路由請求時,LC會判斷路由請求數(shù)據(jù)包PACKET_IN的目的 IP地址是否位于該LA中,如果目的IP地址也位于該LC所管理的LA內部,則會發(fā)起一次WLC 為控制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng)絡為LAi,要求的最小帶寬為Bmin,其 最優(yōu)路徑可W表示為^ =〔51?他1,(5,1'),8。1。),其中〔51?他1,(5,1'),8。1。)為本發(fā)明所使用 的符號,表示使用LARAC算法解決CSP問題獲得的最優(yōu)路徑,Gii表示第i個局域網(wǎng)絡LA, i = 1, 2,. . .,L,L是LA的個數(shù);
[0011] 步驟二:當LC判斷目的IP地址和源IP地址不再同一個LA中,LC會將PACKET_IN數(shù)據(jù) 包上傳到其對應的UC進行處理。類似的,UC收到路由計算請求時,如果判斷目的IP地址位于 其對應的UA中,將會發(fā)起一次W該UC為控制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng) 絡為UAi,要求的最小帶寬為Bmin,則其最優(yōu)路徑可W表示為^ =〔51?倘1,(5,1'),8。1。),其中 Gui表示第i個局域網(wǎng)絡UA,i = l,2,. . .,U,U為UA的個數(shù);
[001 ^ 步驟S :當UC判斷目的IP地址不再其管理的UA中時,UC首先將PACKET_IN路由請求 數(shù)據(jù)包同步到其它上層控制器,并發(fā)起一次全局分布式路由請求。全局分布式路由請求被 作為一系列有序的CSR進行處理。在本發(fā)明中采用阻斷島范式理論降低CSR的復雜度并且對 全局網(wǎng)絡拓撲進行聚合W降低每個CSR的捜索空間,從而提高了全局分布式路由的處理效 率。假設全局分布式路由共分I次CSR路由,第i次路由的源節(jié)點為Im,則Im為源節(jié)點S,目的 節(jié)點為T,要求的最小帶寬為Bmin,對應的全局聚合網(wǎng)絡為^第i次的路由的源節(jié)點所在網(wǎng) 絡為UAi,則:
[0013] 第i次計算得到的路由如下:
[0014]
[0015] 第i次路由中源節(jié)點所在網(wǎng)絡的出節(jié)點如下:
[0016]
[0017]第i+1次路由的源節(jié)點如下:
[001 引 in(i) = {ini| (OUtiiim)EriI [0019]第i次路由得到的最終域問鏈路如下:
[0020] Iinki= (OUti,im)
[QQ21 ]分布式最優(yōu)路徑如下:
[0022]
[0023] 2)采用阻斷島范式理論降低CSR的捜索空間。
[0024] 限制條件下的路由優(yōu)化問題是一個NP-完全問題,本發(fā)明將其作為一個CSP問題并 使用LARAC作為路由優(yōu)化算法,總的平均時間復雜度為:口(04 + TV IogP2)。為了進一步提高 CSR的效率,本發(fā)明采用阻斷島范式理論為網(wǎng)絡建立BI圖,BI的主要思想是將可用的網(wǎng)絡資 源抽象為一個層次樹結構,而C-BI表示從節(jié)點S出發(fā)能夠滿足約束條件C的節(jié)點和對應鏈路 的集合。CSR算法基于BI圖進行,W降低最優(yōu)路徑的捜索空間,其步驟如下:
[0025] 步驟一:為網(wǎng)絡建立C-BI圖。本發(fā)明采用貪婪算法建立網(wǎng)絡C-BI圖。
[0026] 步驟二:降低CSR算法的捜索空間。假設已經(jīng)建立節(jié)點Si的Ci-BI圖,圖中包含N個節(jié) 點,分別編號為Si,S2,. . .,Sn,不包含節(jié)點T,此時發(fā)起從節(jié)點Si到節(jié)點Sn(n = l,2,. . .,N)且 帶寬小于Cl的路由請求,則此時算法會迅速返回路徑"存在",對于從Si到T的帶寬為Cl的路 由請求,則算法會迅速判斷路徑"不存在",而從節(jié)點Si到Sn(n = l,2,...,N)內的帶寬大于Cl 的路由請求,則算法會繼續(xù)建立C2-BI圖,其中C2含Cl,如果不存在C2-BI圖,則算法返回"不 存在",否則算法將返回"存在"。
[0027] 步驟對步驟二中得到的存在滿足服務質量(QoS)條件的C-BI圖執(zhí)行LARAC算 法,得到的最優(yōu)路徑表示為:r = CSR(G(N, A),( S,T ),Bmin)。
[0028] 3)對全局網(wǎng)絡拓撲進行聚合W提高全局分布式路由算法的效率:
[0029] 下層控制器在上傳 LA網(wǎng)絡同時計算并且上傳 LA聚合網(wǎng)絡,全局分布式路由由一系 列CSR組成,CSR基于全局聚合網(wǎng)絡可W提高總的路由算法的效率。層次分布式控制平面中 存在S種鏈路,分別為LA內鏈路,LA間鏈路和UA間鏈路,而聚合拓撲中的虛擬鏈路的QoS參 數(shù)取決于原網(wǎng)絡中的實際鏈路。在計算每條實際路徑的QoS參數(shù)時,帶寬為路徑上各個鏈路 帶寬的最小值,延遲和丟包率為各個鏈路的總和,抖動由延遲求導數(shù)獲得。本發(fā)明應用拓撲 聚合來降低全局分布式路由的捜索空間,其本質是將上層控制平面的部分工作轉移到下層 控制平面來進行。網(wǎng)絡拓撲聚合的例子如圖4所示。具體的步驟如下:
[0030] 步驟一:通過迪杰斯特拉算法計算K條非鄰接最小代價路徑ri,r2, ... JK,當計算 第k化=1,2,. . .,K)條路徑時,前k-1條路徑被從網(wǎng)絡中移除。
[0031] 步驟二:將ri,n,... JK的平均代價和平均QoS參數(shù)復制給鏈路(i,j),W帶寬為 例,假設路徑r的代價為C(r),帶寬為B(r),則
[0032] 聚合路徑的代價為:
[0033]
[0034] 聚合路徑的帶寬為:
[003引公。二 miM巧r,),公W ...,巧(r,)}
[0036] 步驟對步驟二所獲得的聚合網(wǎng)絡拓撲執(zhí)行CSR路由算法即可得到最優(yōu)路徑。
[0037] [有益效果]:本發(fā)明通過提出一種改進層次分布式SDN控制平面路由效率的機制, 克服了其在應用于大規(guī)模網(wǎng)絡中遇到的性能瓶頸問題。另外,世界范圍內正在展開下一代 網(wǎng)咯的研究和部署,SDN可能會從目前校園網(wǎng)和實驗環(huán)境逐步遷移到實際的網(wǎng)絡環(huán)境中,例 如數(shù)據(jù)中屯、、城域網(wǎng)甚至互聯(lián)網(wǎng)等大規(guī)模復雜網(wǎng)絡中,在各種SDN控制平面中,層次分布式 控制平面有著良好的發(fā)展前景。本發(fā)明可W緩解甚至解決層次分布式SDN控制平面在較大 規(guī)模網(wǎng)絡中存在的可擴展性問題。
【附圖說明】
[0038] 圖1是本發(fā)明所提出的SDN控制平面架構總流程圖;
[0039] 圖2是層次分布式SDN控制平面的拓撲示意圖,其中LA表示異構局域網(wǎng)絡,LC表示 底層控制器,UC表示上層控制器,UA表示上層控制器所管理的網(wǎng)絡;
[0040] 圖3是本發(fā)明中所使用的阻斷島范式理論的示例;
[0041] 圖4是本發(fā)明中所使用的網(wǎng)絡拓撲聚合的示例。
【具體實施方式】
[0042] 下面結合附圖對本發(fā)明的機制做進一步的詳細說明。
[0043] 本發(fā)明是針對層次分布式SDN控制平面在大規(guī)?;痚nFlow網(wǎng)絡環(huán)境中所存在的可 展性問題提出的,本發(fā)明提出一種改進層次分布式SDN控制平面路由效率的機制,采用分治 法將網(wǎng)絡和路由請求分而治之,通過拓撲聚合和阻斷島范式降低路由算法的捜索空間,此 外提出了詳細的分布式路由算法。網(wǎng)絡中的路由被分為=個級別,降低了路由算法的平均 時間復雜度,尤其適宜應用于諸如數(shù)據(jù)中屯、和校園網(wǎng)絡中。本發(fā)明的目標是通過對網(wǎng)絡資 源和網(wǎng)絡中的業(yè)務流進行細粒度的處理,通過分治法降低控制平面的時延,從而提高整個 層次分布式SDN控制平面的吞吐量,充分利用網(wǎng)絡帶寬等。具體的實施過程如下:
[0044] 步驟一:LC自動獲取局域網(wǎng)絡LA的鏈路信息,構建網(wǎng)絡拓撲,通過發(fā)送查詢數(shù)據(jù)包 查詢和計算網(wǎng)絡的帶寬、延遲、丟包率和抖動等QoS相關參數(shù);
[0045] 步驟二:下層控制器在上傳 LA網(wǎng)絡同時計算并且上傳 LA聚合網(wǎng)絡,全局分布式路 由由一系列CSR組成,CSR基于全局聚合網(wǎng)絡可W提高總的路由算法的效率。層次分布式控 制平面中存在S種鏈路,分別為LA內鏈路,LA間鏈路和UA間鏈路,而聚合拓撲中的虛擬鏈路 的QoS參數(shù)取決于原網(wǎng)絡中的實際鏈路。在計算每條實際路徑的QoS參數(shù)時,帶寬為路徑上 各個鏈路帶寬的最小值,延遲和丟包率為各個鏈路的總和,抖動由延遲求導數(shù)獲得。本發(fā)明 應用拓撲聚合來降低全局分布式路由的捜索空間,其本質是將上層控制平面的部分工作轉 移到下層控制平面來進行。網(wǎng)絡拓撲聚合的例子如圖4所示。具體的步驟如下:
[0046] (1):通過迪杰斯特拉算法計算K條非鄰接最小代價路徑ri,r2,... JK,當計算第k 化=1,2,. . .,K)條路徑時,前k-1條路徑被從網(wǎng)絡中移除。
[0047] (2):將ri,r2,... JK的平均代價和平均QoS參數(shù)復制給鏈路(i,j),W帶寬為例,假 設路徑r的代價為Cw,帶寬為Bw,貝。
[004引聚合路徑的代價為:
[0049]
[0050] 聚合路徑的帶寬為:
[0化1 ]
[0052] (3):對步驟二所獲得的聚合網(wǎng)絡拓撲執(zhí)行CSR路由算法即可得到最優(yōu)路徑。
[0053] 步驟根據(jù)獲得的帶寬TW及設定的最大帶寬B,計算每條鏈路的丟包率1(e),然 后再計算整個路徑的丟包率Ploss,其計算公式如下:
[0化4]
[0化5]
[0056] 其中e代表鏈路,P代表路徑,本發(fā)明假定鏈路最大帶寬為B,超過最大帶寬的80%, 認為鏈路發(fā)生擁塞的概率就會增大,導致發(fā)生丟包的概率會增大。所W假定,鏈路超過最大 帶寬的65%就會發(fā)生丟包,若鏈路沒有超過最大帶寬的80%,則認為該鏈路不會發(fā)生丟包, 所W鏈路的丟包率就為0。
[0057] 步驟四:設定約束條件,W帶寬為例約束如下:
[005引 b(p) > Bmin
[0059 ] 其中b (P)是路徑上的時延,Bmin是路徑上時延的約束;
[0060] 步驟五:限制條件下的路由優(yōu)化問題是一個NP-完全問題,本發(fā)明將其作為一個 CSP問題并使用LARAC作為路由優(yōu)化算法,總的平均時間復雜度為:0((^ + iVlog^z)。為了 進一步提高CSR的效率,本發(fā)明采用阻斷島范式理論為網(wǎng)絡建立BI圖,BI的主要思想是將可 用的網(wǎng)絡資源抽象為一個層次樹結構,而C-BI表示從節(jié)點S出發(fā)能夠滿足約束條件C的節(jié)點 和對應鏈路的集合。CSR算法基于BI圖進行,W降低最優(yōu)路徑的捜索空間,其步驟如下:
[0061] (1):為網(wǎng)絡建立C-BI圖。本發(fā)明采用貪婪算法建立網(wǎng)絡C-BI圖。
[00創(chuàng) (2):降低CSR算法的捜索空間。假設已經(jīng)建立節(jié)點Si的Ci-BI圖,圖中包含N個節(jié)點, 分別編號為Si,S2,. . .,Sn,不包含節(jié)點T,此時發(fā)起從節(jié)點Si到節(jié)點Sn(n=l,2,. . .,N)且?guī)?小于Cl的路由請求,則此時算法會迅速返回路徑"存在",對于從Si到T的帶寬為Cl的路由請 求,則算法會迅速判斷路徑"不存在",而從節(jié)點Si到Sn(n=l,2,...,N)內的帶寬大于Cl的路 由請求,則算法會繼續(xù)建立C2-BI圖,其中C2含Cl,如果不存在C2-BI圖,則算法返回"不存 在",否則算法將返回"存在"。
[00創(chuàng) (3):對步驟二中得到的存在滿足服務質量(QoS)條件的C-BI圖執(zhí)行LARAC算法,得 到 的最優(yōu)路徑表示為:r = CSR(G(N, A),( S,T ),Bmin )。
[0064] 步驟六:將網(wǎng)絡路由劃分為=個級別能夠降低路由算法的平均時間復雜度,其中 LA內部路由和UA內部路由被作為集中控制路由進行處理,跨UA的路由被作為全局分布式路 由進行處理。CSR在本發(fā)明中被作為一個CSP問題進行處理,并且采用拉格朗日松弛變量算 法(LARAC)來解決該問題。本發(fā)明對路由計算請求的處理步驟為:
[0065] (1) :LC收到來自LA的路由請求時,LC會判斷路由請求數(shù)據(jù)包PACKET_IN的目的IP 地址是否位于該LA中,如果目的IP地址也位于該LC所管理的LA內部,則會發(fā)起一次WLC為 控制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng)絡為LAi,要求的最小帶寬為Bmin,其最 優(yōu)路徑可W表示為:r = CSR(Gii,(S,T),Bmin),其中CSR(Gii,(S,T),Bmin)為本發(fā)明所使用的 符號,表示使用LARAC算法解決CSP問題獲得的最優(yōu)路徑,Gii表示第i個局域網(wǎng)絡LA, i = I, 2,. . .,L,L是LA的個數(shù);
[0066] (2):當LC判斷目的IP地址和源IP地址不再同一個LA中,LC會將PACKET_IN數(shù)據(jù)包 上傳到其對應的UC進行處理。類似的,UC收到路由計算請求時,如果判斷目的IP地址位于其 對應的UA中,將會發(fā)起一次W該UC為控制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng)絡 為UAi,要求的最小帶寬為Bmin,則其最優(yōu)路徑可W表示為^ =〔51?惦1,(5,1'),8。1。),其中6。1 表示第1個局域網(wǎng)絡1^,1 = 1,2,...,11,1]為1^的個數(shù);
[0067] (3):當UC判斷目的IP地址不再其管理的UA中時,UC首先將PACKET_IN路由請求數(shù) 據(jù)包同步到其它上層控制器,并發(fā)起一次全局分布式路由請求。全局分布式路由請求被作 為一系列有序的CSR進行處理。在本發(fā)明中采用阻斷島范式理論降低CSR的復雜度并且對全 局網(wǎng)絡拓撲進行聚合W降低每個CSR的捜索空間,從而提高了全局分布式路由的處理效率。 假設全局分布式路由共分I次CSR路由,第i次路由的源節(jié)點為Im,則Im為源節(jié)點S,目的節(jié) 點為T,要求的最小帶寬為Bmin,對應的全局聚合網(wǎng)絡為第i次的路由的源節(jié)點所在網(wǎng)絡 為UAi,則:
[006引第i次計算得到的路由化下:
[0069]
[0070] 第i次路由中源節(jié)點所在網(wǎng)絡的出節(jié)點如下:
[0071]
[0072] 第i+1次路由的源節(jié)點如下:
[0073] in(i) = {im I (OUti,im) Eril
[0074] 第i次路由得到的最終域間鏈路如下:
[0075] Iinki= (OUti,im)
[0076] 分布式最優(yōu)路徑如下:
[0077]
[0078] 步驟屯:判斷最終得到的最優(yōu)路徑是否滿足約束條件,如果滿足則將流量表裝載 到各個交換機的流表中,如果不滿足,則將PACKET_IN數(shù)據(jù)包緩存至調度隊列中等待下次路 由調度,僅當路由計算次數(shù)超過設定的闊值時,才會判定該路由計算失敗,相關的服務將會 被拒絕接入網(wǎng)絡。
[0079] 圖3表示了從節(jié)點Si的帶寬50-BI和40-BI圖,假設求Si到S2節(jié)點帶寬為50的最優(yōu)路 徑,則算法會迅速返回"不存在",因為Si和S2不再同一個50-BI中,此外如果求Si到S2節(jié)點帶 寬為40的最優(yōu)路徑,則算法會迅速返回"存在",并且集中式路由算法的捜索空間降低為40- BIo
[0080] 圖4是本發(fā)明中為降低全局分布式路由算法的捜索空間所應用的網(wǎng)絡拓撲聚合的 示例。在發(fā)明提出的分布式SDN控制平面中存在S種鏈路,分別為LA內鏈路,LA間鏈路和UA 間鏈路,而聚合拓撲中的虛擬鏈路的QoS參數(shù)取決于原網(wǎng)絡中的實際鏈路。在計算虛擬鏈路 的QoS參數(shù)時,本發(fā)明采用N條非鄰接路徑的最大參數(shù)值,在計算每條實際路徑的QoS參數(shù) 時,帶寬為路徑上各個鏈路帶寬的最小值,延遲和丟包率為各個鏈路的總和,抖動由延遲求 導數(shù)獲得。本發(fā)明應用拓撲聚合來降低全局分布式路由的捜索空間,其本質是將上層控制 平面的部分工作轉移到下層控制平面來進行,運是合理的,測試表明全局分布式路由的平 均時間為集中式路由的數(shù)十倍。
[0081] 上面對本發(fā)明作了詳細的說明,但是本發(fā)明并不限于上述的實施方式,在本領域 的技術人員可W根據(jù)自己所具備的知識,對本發(fā)明做各種變化W達到更優(yōu)的效果。
【主權項】
1. 一種提高層次分布式軟件定義網(wǎng)絡(SDN)控制平面路由效率的機制,其特征在于: 1) 網(wǎng)絡中的路由請求按照網(wǎng)絡層次和IP地址分為Ξ個級別進行處理; 2) 采用阻斷島范式理論降低集中控制路由(CSR)的捜索空間; 3) 對全局網(wǎng)絡進行拓撲聚合W降低分布式路由的復雜度。2. 如權利要求1所述的一種對層次分布式SDN控制平面路由效率改進的機制,其特征在 于控制器平面被分為兩個層次,上層控制平面采用完全分布式的結構。每個異構的局域網(wǎng) 絡分別由一個底層控制器負責管理,上層控制平面采用配對的方式對下層控制器進行管 理。假設局域網(wǎng)絡稱為LA,底層控制器稱為LC,上層控制器網(wǎng)絡稱為UA,上層控制器稱為UC。 將網(wǎng)絡路由劃分為Ξ個級別能夠降低路由算法的平均時間復雜度,其中LA內部路由和UA內 部路由被作為集中控制路由進行處理,跨UA的路由被作為全局分布式路由進行處理。CSR在 本發(fā)明中被作為一個CSP問題進行處理,并且采用拉格朗日松弛變量算法(LARAC)來解決該 問題。本發(fā)明對路由計算請求的處理步驟為: 步驟一 :LC收到來自LA的路由請求時,LC會判斷路由請求數(shù)據(jù)包PACKET_IN的目的IP地 址是否位于該LA中,如果目的IP地址也位于該LC所管理的LA內部,則會發(fā)起一次WLC為控 制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng)絡為LAi,要求的最小帶寬為Bmin,其最優(yōu) 路徑可W表示為:r = CSR(Gii,(S,T),Bmin),其中CSR(Gii,(S,T),Bmin)為本發(fā)明所使用的符 號,表示使用LARAC算法解決CSP問題獲得的最優(yōu)路徑,Gii表示第i個局域網(wǎng)路LA,i = 1, 2,...,L,L是LA的個數(shù); 步驟二:當LC判斷目的IP地址和源IP地址不再同一個LA中,LC會將PACKET_IN數(shù)據(jù)包上 傳到其對應的UC進行處理。類似的,UC收到路由計算請求時,如果判斷目的IP地址位于其對 應的UA中,將會發(fā)起一次W該UC為控制器的CSR。假設源節(jié)點為S,目的節(jié)點為T,局域網(wǎng)絡為 UAi,要求的最小帶寬為Bmin,則其最優(yōu)路徑可W表示為^ =〔51'(6心(5,1'),8。1。),其中6???示第i個局域網(wǎng)絡1^,1 = 1,2,...,1],1]為1^的個數(shù); 步驟Ξ:當UC判斷目的IP地址不再其管理的UA中時,UC首先將PACKET_IN路由請求數(shù)據(jù) 包同步到其它上層控制器,并發(fā)起一次全局分布式路由請求。全局分布式路由請求被作為 一系列有序的CSR進行處理。在本發(fā)明中采用阻斷島范式理論降低CSR的復雜度并且對全局 網(wǎng)路拓撲進行聚合W降低每個CSR的捜索空間,從而提高了全局分布式路由的處理效率。假 設全局分布式路由共分1次CSR路由,第i次路由的源節(jié)點為Im,則Im為源節(jié)點S,目的節(jié)點 為T,要求的最小帶寬為Bmin,對應的全局聚合網(wǎng)絡為^第i次的路由的源節(jié)點所在網(wǎng)絡為 UAi,則: 第i次計算得到的路由如下:第i次路由中源節(jié)點所在網(wǎng)絡的出節(jié)點如下:第i+1次路由的源節(jié)點如下: in(i) = {im| (outi,im)Eri} 第i次路由得到的最終域間鏈路如下: linki= (outi,im) 分布式最優(yōu)路徑如下:3. 如權利要求1所述的獲取源節(jié)點到目的節(jié)點的的帶寬T(e)、時延d,同時設定鏈路的最 大帶寬B(e),通過獲取到的帶寬T(e)W及設定的鏈路的最大帶寬B(e),來計算鏈路的丟包率。4. 如權利要求1所述的對于CSR,使用阻斷島范式理論為網(wǎng)絡建立BI圖。限制條件下的 路由優(yōu)化問題是一個NP-完全問題,本發(fā)明將其作為一個CSP問題并使用LARAC作為路由優(yōu) 化算法,總的平均時間復雜度為+ vVlog^2)。為了進一步提高CSR的效率,本發(fā)明采 用阻斷島范式理論為網(wǎng)絡建立BI圖,BI的主要思想是將可用的網(wǎng)絡資源抽象為一個層次樹 結構,而C-BI表示從節(jié)點S出發(fā)能夠滿足約束條件C的節(jié)點和對應鏈路的集合。CSR算法基于 BI圖進行,W降低最優(yōu)路徑的捜索空間,其步驟如下: 步驟一:為網(wǎng)絡建立C-BI圖。本發(fā)明采用貪婪算法建立網(wǎng)絡C-BI圖。 步驟二:降低CSR算法的捜索空間。假設已經(jīng)建立節(jié)點Si的C廣BI圖,圖中包含N個節(jié)點, 分別編號為Si,S2,. . .,Sn,不包含節(jié)點T,此時發(fā)起從節(jié)點Si到節(jié)點Sn(n=l,2,. . .,N)且?guī)?小于Cl的路由請求,則此時算法會迅速返回路徑"存在",對于從Si到T的帶寬為Cl的路由請 求,則算法會迅速判斷路徑"不存在",而從節(jié)點Si到Sn(n=l,2,...,N)內的帶寬大于Cl的路 由請求,則算法會繼續(xù)建立C2-BI圖,其中C2含C1,如果不存在C2-BI圖,則算法返回"不存 在",否則算法將返回"存在"。 步驟Ξ:對步驟二中得到的存在滿足服務質量(QoS)條件的C-BI圖執(zhí)行LARAC算法,得 到 的最優(yōu)路徑表示為:r = CSR(G(N, A),( S,T ),Bmin )。5. 如權利要求1所述的全局分布式路由是基于CSR和全局聚合網(wǎng)絡的路由序列。下層控 制器在上傳 LA網(wǎng)絡同時計算并且上傳 LA聚合網(wǎng)絡,全局分布式路由由一系列CSR組成,CSR 基于全局聚合網(wǎng)絡可W提高總的路由算法的效率。層次分布式控制平面中存在Ξ種鏈路, 分別為LA內鏈路,LA間鏈路和UA間鏈路,而聚合拓撲中的虛擬鏈路的QoS參數(shù)取決于原網(wǎng)絡 中的實際鏈路。在計算每條實際路徑的QoS參數(shù)時,帶寬為路徑上各個鏈路帶寬的最小值, 延遲和丟包率為各個鏈路的總和,抖動由延遲求導數(shù)獲得。本發(fā)明應用拓撲聚合來降低全 局分布式路由的捜索空間,其本質是將上層控制平面的部分工作轉移到下層控制平面來進 行。網(wǎng)絡拓撲聚合的例子如圖4所示。具體的步驟如下: 步驟一:通過迪杰斯特拉算法計算K條非鄰接最小代價路徑η,η,...,Γκ,當計算第k化 =1,2,...,Κ)條路徑時,前k-1條路徑被從網(wǎng)絡中移除。 步驟二:將^^2,...,^的平均代價和平均9〇5參數(shù)復制給鏈路。〇),^帶寬為例,假 設路徑r的代價為C(r),帶寬為B(r),貝。 聚合路徑的代價為:聚合路徑的帶寬為:步驟Ξ:對步驟二所獲得的聚合網(wǎng)絡拓撲執(zhí)行CSR路由算法即可得到最優(yōu)路徑。6.如權利3要求所述求鏈路丟包率的公式,本發(fā)明假定鏈路超過最大帶寬的80%,鏈路 發(fā)生擁塞的概率就會增大,導致發(fā)生丟包的概率會增大。所W假定,鏈路超過最大帶寬的 80 %就會發(fā)生丟包。
【文檔編號】H04L12/729GK105847146SQ201610146284
【公開日】2016年8月10日
【申請日】2016年3月11日
【發(fā)明人】陳兵, 朱向陽
【申請人】南京航空航天大學