TW201722116A - 基於軟體定義網路之多重路徑封包分流繞送方法 - Google Patents

基於軟體定義網路之多重路徑封包分流繞送方法 Download PDF

Info

Publication number
TW201722116A
TW201722116A TW104140915A TW104140915A TW201722116A TW 201722116 A TW201722116 A TW 201722116A TW 104140915 A TW104140915 A TW 104140915A TW 104140915 A TW104140915 A TW 104140915A TW 201722116 A TW201722116 A TW 201722116A
Authority
TW
Taiwan
Prior art keywords
network
data
packet
node
load
Prior art date
Application number
TW104140915A
Other languages
English (en)
Other versions
TWI621343B (zh
Inventor
Shi-Chun Tsai
Yi-Ren Chen
Cyuan-Bin Ye
Shih-Che Chien
Original Assignee
Chunghwa Telecom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chunghwa Telecom Co Ltd filed Critical Chunghwa Telecom Co Ltd
Priority to TW104140915A priority Critical patent/TWI621343B/zh
Publication of TW201722116A publication Critical patent/TW201722116A/zh
Application granted granted Critical
Publication of TWI621343B publication Critical patent/TWI621343B/zh

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本發明有關於一種基於軟體定義網路之多重路徑封包分流繞送方法,包括一個伺服器網路拓樸,用以部署計算伺服器與OpenFlow網路交換器於高密度的機房,再利用時間準位與分流權重演算法,用以對於已知的網路拓樸,依據各節點間的資料傳輸量,計算出資料到達各節點的時間準位,以及各節點對於資料的分流權重,再通過管線式封包繞送表,用以在分流權重演算法計算完成後,判斷封包繞送方向,並利用OpenFlow之規則實現依權重分流的效果。

Description

基於軟體定義網路之多重路徑封包分流繞送方法
本發明係關於一種封包處理方法,特別係指一種建立於軟體定義網路上之多重路徑封包分流繞送方法。
虛擬網路管理係為資訊科技產業的重點技術,而彈性的網路管理,更為建構網路拓樸時所需規劃之重點,會對網路的使用效率產生極大之影響。
而在US 7233574號專利Multi-path dynamic routing algorithm中,其提出了一種利用各種影響網路效率的因素以計算一種量度(metric),並根據該量度決定如何分流網路流量之方法,然而該專利無法處理網路有迴路(loop)之狀況,該迴路狀況可能造成ARP廣播風暴(ARP broadcast storm),而為了避免廣播風暴,就僅能使用STP(Spanning Tree Protocol)傳送封包來解決此缺點,但其亦衍伸出許多缺點,例如:部份線路過於擁塞,導致封包碰撞增加造成網路延遲;部份線路過於閒置,成為沉沒成本(Sunk Cost),最甚者,線路如果故障,將沒有替代路徑可以繞送封包,造成網路中斷。
由上述理由可見,先前技術中存在著如此缺失,實亟待加以改良。
本發明係一種基於軟體定義網路之多重路徑封包分流繞送方法。
本發明之概念前提係理想網路模型應似簡單電路,若每一個傳輸封包大小相同,且在傳送期間不會遺失,且在此網路中只有單點傳播(unicast)的封包,例如最常見的TCP封包,那麼在這種網路中,最佳的路由方式就應如同電流在線性、非時變(time-invariance)、塊狀式(lumped)且被動(passive)元件的簡單電路中傳導的方式;而根據歐姆定律(Ohm’s law),電壓(電位差)等於電阻乘以電流,而電流等於電導乘以電壓,故本發明之發明人提出之方法,係將資料量類比為電流,頻寬類比為電導,而傳輸資料的時間期間(time period)視為電位差,如此一來,資料量就等於頻寬乘以時間,亦符合歐姆定律,而延遲係為頻寬之倒數,所以也可以說是時間等於延遲乘以資料量。
在串聯電路中,等效電阻其意義係為所有電阻之總和,對應於串接的網路下,等效延遲則是所有網段的延遲之總和;而在並聯電路中,等效電導是所有電導的總和,對應於平行網路中,等效頻寬意為所有連線的頻寬總和。
克希荷夫電路定律(Kirchhoff’s Current Laws)指出:在任意時間下,所有離開某節點之分支(branch)電流總和必為零。而理想網路若遵守流之守恆(flow conservation),也就應如同電路一樣符合克希荷夫電路定律,因此在電路學上所使用之電流節點公式就可運用在網路中,讓單點傳播封包利用所有可到達的路徑來傳送,理想的情形下應該是最小化時間除以數據量(time/quantity of data)之值或是最大化數據 量除以時間(quantity of data/time)之值,即可讓封包像電流一樣以最有效率的途徑到達目的地。
本發明之目的係根據前述理論提出一演算法,套用於已知的網路拓樸,俾使反矩陣運算能預先完成。同時,利用矩陣乘法結果快速求得分流權重,以提供後續設定OpenFlow網路交換器的分流表作為參考,並透過封包流量統計的回饋做為調整分流權重之依據,以提供一快速且精確之分流權重計算方法。
本發明所提出之基於軟體定義網路之多重路徑封包分流繞送方法包括三大主要單元,包括一個伺服器網路拓樸,用以部署計算伺服器與OpenFlow網路交換器於高密度機房,以及一個時間準位(time level)與分流權重演算法,用以對於已知的網路拓樸,依據各節點間的資料傳輸量,計算出資料到達各節點的時間準位,以及各節點對於資料的分流權重,再有一個管線式(pipelined)封包繞送表,用以在分流權重演算法計算完成後,判斷封包繞送方向,並利用OpenFlow之規則實現依權重分流的效果。
本發明之步驟可包含:一網路交換器通過複數實體線路將複數計算單元連接為具有迴路之一網路拓樸,該網路拓樸係用以傳輸封包資料,該網路交換器係採OpenFlow介面協定,而各該計算單元係為支援TCP/IP傳輸協定之封包收發單元;該網路交換器內之一分流計算模組根據該網路拓樸計算產生一頻寬矩陣以及一資料傳輸矩陣;該分流計算模組將該頻寬矩陣以及該資料傳輸矩陣通過一網路節點演算法計算以產生一時間準位矩陣,該網路節點演算法係一種利用歐姆定律得出之演算法;該分流計算模組根據該時間準位矩陣 計算,以得出通過各該計算單元之封包資料的流向以及流量,該分流計算模組更根據最大流量問題解法產生複數路徑分流權重;以及該網路交換器根據各該路徑分流權重以分流控制具有迴路之該網路拓樸中的封包傳輸。
其中,該資料傳輸矩陣係根據各該計算單元所欲分流發送封包之資料量以定義,該計算單元的淨資料量若大於零者表示該計算單元係傳送資料,淨資料量小於零者表示該計算單元係接收資料。
本發明之功效係在資料中心建置網路拓樸時,利用SDN(Software-Defined Networking)技術控制實體或虛擬的網路交換器,並結合演算法,以達到TCP/IP封包之分流繞送方法;其欲解決之問題係使用無迴路連結方式來傳送單播(unicast)封包時,可能有線路故障時無替代路徑的缺點,以及若使用STP(Spanning Tree Protocol)之方式來解決線路故障時無替代路徑之缺點時,可能發生部分線路壅塞而部分線路卻閒置之狀況。
本發明使TCP/IP封包能透過多重路徑進行繞送(routing)並分流(load-balancing)以充分利用已建置的頻寬,可有效解決上述缺點,本發明更可提供一種特定的網路拓樸,以便快速計算TCP/IP封包的多重繞送路徑,而獲得網路效能與建置成本間之平衡。
本發明與先前技術相比所需要之條件以及可達成之功效詳列如下:
1. 使用SDN技術讓資料中心的網路端點(node)可以以迴路(loop)方式互相連接而不必擔心廣播封包風暴(broadcast storm)。
2. 網路端點需連接以Out-of-band組態連結的OpenFlow網路交換器。
3. 利用電流節點公式,不需使用搜尋演算法來探索最佳路徑即可有效率地計算出多重路徑繞送方法。
4. 透過OpenFlow協定及本發明之演算法來分流封包,可充分利用已建置的線路頻寬,進而提升網路傳輸效率及提供線路故障時有替代路徑的能力。
5. 透過封包流量統計的回饋,可動態調整OpenFlow網路交換器的分流權重,使得資料中心網路控管更具彈性。
6. 提供一種特定的網路拓樸,以便快速計算TCP/IP封包的多重繞送路徑,而獲得網路效能與建置成本間之平衡。
H‧‧‧第一電流節點
L‧‧‧第二電流節點
A‧‧‧第一網路節點
B‧‧‧第二網路節點
1‧‧‧節點
2‧‧‧節點
3‧‧‧節點
4‧‧‧節點
N1‧‧‧端點
N2‧‧‧端點
N3‧‧‧端點
N4‧‧‧端點
111‧‧‧電路
211‧‧‧網路線路
312‧‧‧電路
313‧‧‧電路
314‧‧‧電路
323‧‧‧電路
324‧‧‧電路
334‧‧‧電路
412‧‧‧網路線路
413‧‧‧網路線路
414‧‧‧網路線路
423‧‧‧網路線路
424‧‧‧網路線路
434‧‧‧網路線路
501‧‧‧交換器
502‧‧‧交換器
511‧‧‧伺服器
512‧‧‧伺服器
513‧‧‧伺服器
514‧‧‧伺服器
515‧‧‧伺服器
516‧‧‧伺服器
521‧‧‧伺服器
522‧‧‧伺服器
523‧‧‧伺服器
524‧‧‧伺服器
525‧‧‧伺服器
526‧‧‧伺服器
S601~S633‧‧‧步驟流程
圖1為並聯電路架構之示意圖;圖2為網路並聯架構之示意圖;圖3為本發明之電流節點公式中電路連接之示意圖;圖4為本發明之分流權重演算範例圖;圖5為本發明之資料中心網路拓樸配置範例圖;圖6為本發明之封包繞送之步驟流程圖。
本發明係一種基於軟體定義網路之多重路徑封包分流繞送方法,首先,參閱圖1所示,圖1為並聯電路架 構之示意圖,H為係為第一電流節點,L係為第二電流節點,第一電流節點H與第二電流節點L透過電路111並聯,其中,節點H的電位為v H ,節點L的電位為v L ,當節點H與節點L之間並聯的各個電路111電導值表示為g H,L 時,其直接總電導為Σ g H,L 。節點H可以傳送給節點L的電流為Σ g H,L ×(v H -v L )。由於電導並無方向性,故節點H與節點L的直接總電導Σ g H,L g L,H
再請參閱圖2,圖2係為網路並聯架構之示意圖,A為第一網路節點,B為第二網路節點,節點A與節點B透過兩條網路線路211並聯,若節點A的時間準位係為t A,則節點B的時間準位為t B,節點A與節點B之間的並聯的各個網路線路211頻寬為w A,B ,則其直接之總頻寬係為Σ w A,B ,節點A可傳送至節點B之資料量為Σ w A,B ×(t A -t B );而正常狀況下,資料量應係由過去向未來之方向流動,若類比於電路之中,電流係由高電位向低電位流動,故本發明定義「與過去相較」之時間準位的數值比「與未來相較」的時間準位的數值大。
請參閱圖3所示,圖3為本發明之電流節點公式中電路連接之示意圖,其中,包含有4個電流節點,分別為節點1、節點2、節點3與節點4。各節點兩兩之間皆有互相連接之電路,分別為連接節點1與節點2之電路312、連接節點1與節點3之電路313、連接節點1節點4之電路314、連接節點2和節點3之電路323、連接節點2與節點4之電路324、連接節點3和節點4之電路334。根據克希荷夫電路定律,在單一節點上的淨電流為零,可以引申解釋為在電路中的節點的淨電流和為零,節點的淨電流若大於零者表示該節點輸出電流,淨電流小於零者表示該節點輸入電流;而若節 點與節點間係斷路(沒有直接連線),則設Σ g=0,不影響以下演算法中之方程式形式。而根據歐姆定律:電流=電導×電壓,以圖1中電路符號定義,v代表的是節點電位值,g代表的是兩節點間的電導值,i代表節點,現列出圖3中各節點的淨電流方程式如下: 整理後的形式為: 化成矩陣形式為: 若以節點4做為參考節點時,節點4電壓等於零,即v4=0,則i4=i1+i2+i3,矩陣可化簡為: 若將圖3視為網路連接示意圖,並將電流節點公式運用於網路時,表示為D=W×T,意即資料量(D)=頻寬(W)×時間(T): 當節點4做為資料傳送或接收之時間點參考節點,即t 4=0,當向量D(即[d 1d 2d 3])的某一分量大於零時,其絕對值代表參考節點對此節點的淨傳送資料量,而向量D(即[d 1d 2d 3])的某一分量小於零時,其絕對值代表參考節點對此節點的淨接收資料量。
再請參閱圖4所示,圖4為本發明之分流權重演算範例圖,包含左側之網路連接範例圖與右側之分流權重演算結果圖,網路連接範例圖為假定有四個OpenFlow協定之網路交換器端點,分別為端點N1、端點N2、端點N3與端點N4;其中,端點間之網路拓樸以全網狀(full mesh)方式連接且各線路頻寬一致,即端點N1與端點N2透過網路線路412連接、端點N1與端點N3透過網路線路413連接、端點N1與端點N4透過網路線路414連接、端點N2與端點N3透過網 路線路423連接、端點N2與端點N4透過網路線路412連接、端點N3與端點N4透過網路線路434連接。
根據已知網路拓樸,加上上述頻寬矩陣之表示方式,可定義頻寬矩陣為 假設現有一資料流由端點N1流入,該資料分別為欲傳送往端點N2有4單位之資料量、欲傳往端點N3有1單位之資料量以及欲傳往端點N4有1單位之資料量,則可根據本方法定義資料傳輸矩陣為[-6 4 1 1],進一步列出網路節點方程式為 令N1為資料傳輸起始點,則t 1=0,解出網路節點方程式可得 即[t 2 t 3 t 4]=[2.5 1.75 1.75]。
以資料傳輸矩陣以及網路節點方程式計算各資料流,並利用最大流量問題(Maximum Flow Problem Solution),以計算得出各分流之權重分別為:經由網路線路412從端點N1流向端點N2分流之權重為2.5、經由網路線路413從端點N1流向端點N3分流之權重為1.75、經由網路線路414從端點N1流向端點N4分流之權重為1.75、經由網路線路423從端點N3流向端點N2分流之權重為0.75,經由網路線路424從端點N4流向端點N2分流之權重亦為0.75,其中,網路線 路413與網路線路414權重之0.75為端點N1流往端點N2之資料量,其餘為端點N1流往端點N3以及端點N1流往端點N4之資料量,亦即2.5減去1.75,得到0.75。
再請參閱圖5所示,圖5為利用本發明之資料中心網路拓樸配置範例圖,伺服器511、伺服器512、伺服器513、伺服器514、伺服器515、伺服器516、伺服器521、伺服器522、伺服器523、伺服器524、伺服器525及伺服器526係為總數12台之1U計算伺服器,交換器501及交換器502為2台1U/48埠(ports)的OpenFlow網路交換器,該網路拓樸中,每8個ports劃分為一個網路群組:分別為O、P、Q、R、S、T、U、V、W、X、Y與Z共12個網路群組,各個群組各自隔離,並分別連接至一台計算伺服器;群組之間透過實體網路線雙向連通:群組O與群組P、Q、S、U、W、Y及Z連通,群組P與群組Q、R、T、V、X、Z及O連通,群組Q與群組R、S、U、W、Y、O及P連通,群組R與群組S、T、V、X、Z、P及Q連通,群組S與群組T、U、W、Y、O、Q及R連通,群組T與群組U、V、X、Z、P、R及S連通,群組U與群組V、W、Y、O、Q、S及T連通,群組V與群組W、X、Z、P、R、T及U連通,群組W與群組X、Y、O、Q、S、U及V連通,群組X與群組Y、Z、P、R、T、V及W連通,群組Y與群組Z、O、Q、S、U、W及X連通,群組Z與群組O、P、R、T、V、X及Y連通。
當本發明中之資料中心使用網路拓樸建立網路環境,即可推出頻寬矩陣,再根據欲傳輸之資料流量即可推算出分流權重,將分流權重設定至OpenFlow網路交換器之管線分流表(pipeline flow table),即使此網路拓樸內含有迴路, 網路交換器亦可實現封包的多重路徑繞送。
再請參閱圖6所示,圖6為本發明之封包繞送之步驟流程圖,起始點(start point/terminator)為步驟S601:OpenFlow網路交換器接收一封包;步驟S611、S612、S613、S614與S615係為決策(decision)步驟,分列如下:步驟S611:判斷封包是否為廣播(broadcast)封包,步驟S612封包是否來自本地端交換器,步驟S613封包是否擁有PBB(Provider Backbond Bridges)header,步驟S614:eth_dst欄位值是否與本地端交換器相同,步驟S615:eth_dst欄位值是否能被本地端交換器辨識。
再來,步驟S621與S622係為交換器動作(action)行為,步驟S621:移除封包之PBB header,步驟S622加入PBB header至封包中,步驟S631、S632、S633本發明流程之為結束點(stop point/terminator),分列如下:步驟S631:交換器將根據eth_dst欄位將封包送至交換器本地端之對應埠(port),步驟S632:交換器根據eth_dst欄位將封包送至遠端OpenFlow交換器之群組表(group table),步驟S633:交換器根據eth_dst欄位將封包送至本地端交換器之群組表。
本發明即通過圖6之步驟流程完成軟體定義網路之多重路徑封包分流繞送方法,即便網路拓樸中存有迴圈設置,本發明之方法亦可在不需重新配置實體路之狀況下正確的運輸封包。
而上述之說明乃針對本發明之較佳實施例進行詳細的具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。
綜上所述,本發明於技術思想上實屬創新,也具備先前技術不及的多種功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出專利申請,懇請 貴局核准本件發明專利申請案以勵發明,至感德便。
S601~S633‧‧‧步驟流程

Claims (3)

  1. 一種基於軟體定義網路之多重路徑封包分流繞送方法,其步驟包含:一網路交換器通過複數實體線路將複數計算單元連接為一網路拓樸,係用以傳輸封包資料,該網路交換器係採OpenFlow介面協定,而各該計算單元係為支援TCP/IP傳輸協定之封包收發單元;該網路交換器內之一分流計算模組根據該網路拓樸計算產生一頻寬矩陣以及一資料傳輸矩陣;該分流計算模組將該頻寬矩陣以及該資料傳輸矩陣通過一網路節點演算法計算以產生一時間準位矩陣,該網路節點演算法係一種利用歐姆定律得出之演算法;該分流計算模組根據該時間準位矩陣計算,以得出通過各該計算單元之封包資料的流向以及流量,該分流計算模組更根據最大流量問題解法產生複數路徑分流權重;以及該網路交換器根據各該路徑分流權重以分流控制具有迴路之該網路拓樸中的封包傳輸。
  2. 如申請專利範圍第1項所述之軟體定義網路之多重路徑封包分流繞送方法,其中該網路拓樸中係以至少一迴路連接各該計算單元。
  3. 如申請專利範圍第1或2項所述之軟體定義網路之多重路徑封包分流繞送方法,其中該資料傳輸矩陣係根據各該計算單元所欲分流發送封包之資料量以定義,該計算 單元的淨資料量若大於零者表示該計算單元傳送資料,淨資料量小於零者表示該計算單元接收資料。
TW104140915A 2015-12-07 2015-12-07 Multi-path packet shunting and routing method based on software-defined network TWI621343B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW104140915A TWI621343B (zh) 2015-12-07 2015-12-07 Multi-path packet shunting and routing method based on software-defined network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW104140915A TWI621343B (zh) 2015-12-07 2015-12-07 Multi-path packet shunting and routing method based on software-defined network

Publications (2)

Publication Number Publication Date
TW201722116A true TW201722116A (zh) 2017-06-16
TWI621343B TWI621343B (zh) 2018-04-11

Family

ID=59687415

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104140915A TWI621343B (zh) 2015-12-07 2015-12-07 Multi-path packet shunting and routing method based on software-defined network

Country Status (1)

Country Link
TW (1) TWI621343B (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE502004004504D1 (de) * 2003-01-28 2007-09-13 Siemens Ag Zuordnung von verteilungsgewichten zu verbindungsabschnitten in einem paketnetz mit verkehrsverteilung
US9071541B2 (en) * 2012-04-25 2015-06-30 Juniper Networks, Inc. Path weighted equal-cost multipath
PL404986A1 (pl) * 2013-08-05 2015-02-16 Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Urządzenie do rutingu pakietów wieloma ścieżkami w sieciach teleinformatycznych oraz sposób jego zastosowania

Also Published As

Publication number Publication date
TWI621343B (zh) 2018-04-11

Similar Documents

Publication Publication Date Title
CN107360092B (zh) 用于数据网络中的平衡负载的系统和方法
US8040906B2 (en) Utilizing betweenness to determine forwarding state in a routed network
EP2614618B1 (en) Automated traffic engineering for multi-protocol label switching (mpls) with link utilization as feedback into the tie-breaking mechanism
JP5668759B2 (ja) 通信システム、制御装置、パケット転送経路の制御方法およびプログラム
US20060133282A1 (en) Systems and methods for multipath routing
CN109787913A (zh) 一种基于sdn的数据中心网络动态负载均衡方法
US20150032871A1 (en) Automated traffic engineering based upon the use of bandwidth and unequal cost path utilization
Gholami et al. Congestion control in software defined data center networks through flow rerouting
EP3266166A1 (en) Method and apparatus for load balancing in network switches
CN105897575A (zh) 一种sdn下基于多约束路径计算策略的路径计算方法
US20140140210A1 (en) Network system and load balancing method
CN107135158A (zh) 一种多路径传输中最优路径选择方法
CN104518899B (zh) 网络路由流量仿真方法和装置
Rhamdani et al. Equal-cost multipath routing in data center network based on software defined network
Zhang et al. Load balancing in IP networks using generalized destination-based multipath routing
CN107872385A (zh) 一种sdn网络路由计算与控制方法
CN107046504A (zh) 用于通信网络中的流量工程的方法和控制器
TWI621343B (zh) Multi-path packet shunting and routing method based on software-defined network
Liu et al. Flow splitting scheme over link‐disjoint multiple paths in software‐defined networking
Li et al. On the fast-convergence of delay-based load balancing over multipaths for dynamic traffic environments
CN107431656A (zh) 控制设备、通信系统、控制方法及程序
WO2015011648A1 (en) Automated traffic engineering based upon the use of bandwidth and unequal cost path utilization
CN107809393A (zh) 一种基于sdn网络的链路负载均衡算法及装置
Todorov et al. Shortest path routing algorithm with dynamic composite weights in SDN networks
Patel et al. Extensive reviews of ospf and eigrp routing protocols based on route summarization and route redistribution