一種sdn網(wǎng)絡(luò)的鏈路優(yōu)化方法
【專利說明】一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法
[0001]
技術(shù)領(lǐng)域
[0002]本發(fā)明涉及一種網(wǎng)絡(luò)的鏈路優(yōu)化技術(shù)領(lǐng)域,具體地說是一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法。
【背景技術(shù)】
[0003]隨著因特網(wǎng)技術(shù)的發(fā)展和普及,人們的工作、學(xué)習(xí)以及生活,已經(jīng)與網(wǎng)絡(luò)越來越緊密。在傳統(tǒng)的以太網(wǎng)中,交換機、路由器等網(wǎng)絡(luò)設(shè)備對于網(wǎng)絡(luò)的穩(wěn)定和快速性都至關(guān)重要。網(wǎng)絡(luò)各層次中各種協(xié)議規(guī)范,指導(dǎo)了數(shù)據(jù)包的轉(zhuǎn)發(fā)過程。與此對應(yīng),在SDN網(wǎng)絡(luò)中,控制器需要對網(wǎng)絡(luò)數(shù)據(jù)包的轉(zhuǎn)發(fā)提供指導(dǎo)作用。SDN網(wǎng)絡(luò),即為軟件定義網(wǎng)絡(luò),英文全稱為Software Defined Network。SDN網(wǎng)絡(luò)是Emulex網(wǎng)絡(luò)一種新型網(wǎng)絡(luò)創(chuàng)新架構(gòu),是網(wǎng)絡(luò)虛擬化的一種實現(xiàn)方式,其核心技術(shù)OpenFlow通過將網(wǎng)絡(luò)設(shè)備控制面與數(shù)據(jù)面分離開來,從而實現(xiàn)了網(wǎng)絡(luò)流量的靈活控制,使網(wǎng)絡(luò)作為管道變得更加智能。
[0004]在傳統(tǒng)的以太網(wǎng)中,鏈路優(yōu)化算法有很多,例如OSPF、RIP等等。特別是在靜態(tài)路由選擇算法中,最短路由選擇(Shortest Routing)算法是一種簡單易懂而應(yīng)用廣泛的技術(shù)。它的基本思想是:建立一個子網(wǎng)圖,圖中每一個節(jié)點代表一臺路由器,每條弧線代表一條通信線路(鏈路),弧上的數(shù)字代表該線路的權(quán)重。為了在一對給定的路由器之間選擇一條路由路徑,路由算法只需在圖中找到這對節(jié)點之間的最短路徑即可。對于路徑長度測量有多種方法,一種方法是計算站點數(shù)量,另外也可以計算距離、信道帶寬、平均通信量、通信開銷、隊列長度、傳播時延等。
[0005]在SDN網(wǎng)絡(luò)領(lǐng)域,交換機僅負(fù)責(zé)數(shù)據(jù)的高速轉(zhuǎn)發(fā),而如何依靠流表進行數(shù)據(jù)轉(zhuǎn)發(fā)則由控制器負(fù)責(zé)。如此可知,控制器在SDN架構(gòu)具有舉足輕重的地位??刂破魍ㄟ^OpenFlow協(xié)議對交換機進行集中管理、狀態(tài)監(jiān)測、轉(zhuǎn)發(fā)決策以及處理和調(diào)度數(shù)據(jù)平面的流量等。快速地獲得鏈路狀態(tài),并高效生成鏈路轉(zhuǎn)發(fā)流表,是體現(xiàn)控制器效率的重要方面,依據(jù)全局搜索算法實現(xiàn)上述過程,有利于提高數(shù)據(jù)包的轉(zhuǎn)發(fā)效率。
[0006]遺傳算法是模擬達(dá)爾文生物進化論的自然選擇和遺傳學(xué)機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優(yōu)解的方法。遺傳算法具有良好的全局搜索能力,可以快速地將解空間中的全體解搜索出,而不會陷入局部最優(yōu)解的快速下降陷阱;并且利用它的內(nèi)在并行性,可以方便地進行分布式計算,加快求解速度。但是遺傳算法的局部搜索能力較差,導(dǎo)致單純的遺傳算法比較費時,在進化后期搜索效率較低。
[0007]
【發(fā)明內(nèi)容】
本發(fā)明的技術(shù)任務(wù)是針對以上不足之處,提供一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法。從全局鏈路角度出發(fā),以鏈路帶寬作為約束條件,通過計算最小的鏈路代價為目標(biāo),獲得最短路徑,并自動設(shè)置每個節(jié)點交換機的轉(zhuǎn)發(fā)順序,從而快速優(yōu)化網(wǎng)路鏈路,提高網(wǎng)絡(luò)的傳輸速度。
[0008]本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法,所述方法是應(yīng)用于SDN網(wǎng)絡(luò)的基于遺傳算法的鏈路優(yōu)化方法,其核心在于建立鏈路優(yōu)化模型和實時求解獲得最短交換鏈路;SDN網(wǎng)絡(luò)的結(jié)構(gòu)為:控制器通過交換機連接到終端;包括如下步驟:
(1)、形成矩陣A、矩陣B、矩陣C:
①、控制器獲取SDN網(wǎng)絡(luò)內(nèi)某一區(qū)域全網(wǎng)交換機以及交換機的鏈接帶寬,以交換機作為節(jié)點,并根據(jù)交換機的編碼形成矩陣A ;
②、若交換機在一條鏈路中,則該節(jié)點取值為1,否則取值為0,獲得鏈路表示,形成矩陣B,例如[O, I,…,I];
③、每個節(jié)點與其他節(jié)點之間的路徑成本代價,根據(jù)鏈路帶寬與路徑成為的表格,形成路徑成本矩陣C,若兩節(jié)點之間沒有鏈路連接,則取值10000 ;
(2)、計算出最小路徑成本代價:
①、建立基于遺傳算法的鏈路優(yōu)化模型,變量為一條最短鏈路變量X;
②、若該節(jié)點在選擇的鏈路上為1,若該節(jié)點不在選擇的鏈路上為O;
③、該鏈路優(yōu)化模型的目標(biāo)是所求鏈路中路徑成本之和;
④、通過對比最短鏈路變量X和路徑成本矩陣C,計算出最小路徑成本代價;
(3)、輸出最短鏈路變量X:
①、將上述鏈路優(yōu)化模型轉(zhuǎn)化為最小路徑成本代價問題,初始化種群,采用輪盤賭選擇方式,單點交叉,單點變異,對種群進行操作;
②、若路徑成本找到最小值,且不變化或者循環(huán)操作達(dá)到最大規(guī)定值100,則跳出求解過程,此時輸出最短鏈路變量X ;
(4 )、通過輸出最短鏈路變量X,并形成流表下發(fā)到全局的交換機中,在流表中規(guī)定交換機的轉(zhuǎn)發(fā)順序,指導(dǎo)數(shù)據(jù)包轉(zhuǎn)發(fā)。
[0009]步驟(I)的①中,矩陣A為[1,2,…,η],其中數(shù)字表示全網(wǎng)的交換機的編碼,η為自然數(shù)。
[0010]步驟(3 )的①中,設(shè)置交叉算子為0.7,變異算子為0.2。
[0011]在控制器中獲得全局網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和流量信息,根據(jù)遺傳算法計算出交換機的最優(yōu)路徑,具體步驟如下:
(1)、控制器使用LLDP協(xié)議,發(fā)送LLDP報文獲得該局域網(wǎng)絡(luò)中各個交換機信息,以及它們之間的帶寬信息;
(2)、在控制器中建立基于遺傳算法的鏈路優(yōu)化模型,并進行實時求解,獲得最優(yōu)路徑,確定交換機的轉(zhuǎn)發(fā)順序;
(3)、控制器將交換機的轉(zhuǎn)發(fā)順序表即流表,下發(fā)到全部交換機中,那么交換機按照流表進行數(shù)據(jù)轉(zhuǎn)發(fā)即可;如果SDN網(wǎng)絡(luò)拓?fù)浒l(fā)生變化,則在控制器中重新計算新的鏈路,并形成流表,再下發(fā)給各個交換機。
[0012]本發(fā)明的一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法和現(xiàn)有技術(shù)相比,具有以下優(yōu)點:
1、有效提高尋找最優(yōu)路徑的效率,特別是在SDN網(wǎng)絡(luò)中,將全局搜索算法應(yīng)用于鏈路選擇中,極大提高數(shù)據(jù)轉(zhuǎn)發(fā)的效率;
2、從全局鏈路角度出發(fā),以鏈路帶寬作為約束條件,通過計算最小的鏈路代價為目標(biāo),獲得最短路徑,并自動設(shè)置每個節(jié)點交換機的轉(zhuǎn)發(fā)順序,從而快速優(yōu)化網(wǎng)路鏈路,提高網(wǎng)絡(luò)的傳輸速度;
3、獲取SDN全網(wǎng)的拓?fù)浣Y(jié)構(gòu),并在拓?fù)浣Y(jié)構(gòu)的基礎(chǔ)之上,采用基于遺傳算法的鏈路優(yōu)化方法獲得最短鏈路.對比傳統(tǒng)的路徑最短算法(OSPF),本專利方法能夠做到實時更新鏈路情況,指導(dǎo)交換機的轉(zhuǎn)發(fā)順序,更加快速完成數(shù)據(jù)轉(zhuǎn)發(fā)。
【附圖說明】
[0013]下面結(jié)合附圖對本發(fā)明進一步說明。
[0014]附圖1為一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法的流程圖;
附圖2為一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法的SDN網(wǎng)絡(luò)拓?fù)鋱D。
【具體實施方式】
[0015]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明。
[0016]實施例1:
如圖1、圖2所示,其中圖1左側(cè)流程是鏈路優(yōu)化的整體流程,圖1右側(cè)是基于遺傳算鏈路優(yōu)化算法的建立和求解過程。
[0017]本發(fā)明的一種SDN網(wǎng)絡(luò)的鏈路優(yōu)化方法,所述方法是應(yīng)用于SDN網(wǎng)絡(luò)的基于遺傳算法的鏈路優(yōu)化方法,其核心在于建立鏈路優(yōu)化模型和實時求解獲得最短交換鏈路;SDN網(wǎng)絡(luò)的結(jié)構(gòu)為:控制器通過交換機連接到終端;包括如下步驟:
(1)、形成矩陣A、矩陣B、矩陣C:
①、控制器獲取SDN網(wǎng)絡(luò)內(nèi)某一區(qū)域全網(wǎng)交換機以及交換機的鏈接帶寬,以交換機作為節(jié)點,并根據(jù)交換機的編碼形成矩陣A ;
②、若交換機在一條鏈路中,則該節(jié)點取值為1,否則取值為0,獲得鏈路表示,形成矩陣B,例如[O, I,…,I];
③、每個節(jié)點與其他節(jié)點之間的路徑成本代價,根據(jù)鏈路帶寬與路徑成為的表格,形成路徑成本矩陣C,若兩節(jié)點之間沒有鏈路連接,則取值10000 ;
(2)、計算出最小路徑成本代價:
①、建立基于遺傳算法的鏈路優(yōu)化模型,變量為一條最