TWI672927B - 具有權重值的等價多路徑路由之方法及系統 - Google Patents
具有權重值的等價多路徑路由之方法及系統 Download PDFInfo
- Publication number
- TWI672927B TWI672927B TW107143657A TW107143657A TWI672927B TW I672927 B TWI672927 B TW I672927B TW 107143657 A TW107143657 A TW 107143657A TW 107143657 A TW107143657 A TW 107143657A TW I672927 B TWI672927 B TW I672927B
- Authority
- TW
- Taiwan
- Prior art keywords
- weight value
- path
- packet
- switch
- stream
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本發明之具有權重值的等價多路徑路由之方法及系統,係藉由P4 INT(Programming Protocol-Independent Packet Processors Inband Network Telemetry)的基礎,在一般流量中夾帶路徑壅塞資訊,以收集網路使用率,各枝葉(leaf)交換器藉由網路使用率,對於到達其他各枝葉交換器的路徑予以權重值,並且根據權重值,機率性地選擇路徑,以避免固定選擇最不壅塞的路徑,而使得各路徑都有被選擇的機會,進而達到負載平衡。
Description
本發明為一種用於網路路由負載平衡之方法及系統,其係用於資料中心的有權重的等價多路徑路由負載平衡之方法及系統。
在現有技術中,經常是選擇最適合的路由路徑,或是嘗試將被壅塞的資料流重新分配到其他不壅塞的路徑去。然而,這些方法容易造成把網路流量都轉移到當時狀況最好的路徑,因而造成該路徑快速地被壅塞。
如中國專利第CN106605391 A「帶寬加權的等價多路徑路由」,其係根據多條等價路徑中的第一條等價路徑的最小容量鏈路的最大頻寬容量,與多條等價路徑中的第二條等價路徑的最小容量鏈路的最大頻寬容量的比例,將流量在多條等價路徑中的第一條等價路徑與多條等價路徑中的第二條等價路徑之間分流。
如美國專利第US9419908 B2「Network congestion management using flow rebalancing」。該專利從源設備直接或間接接收的指令而生成的控制消息來執行流量的重新平
衡,將擁塞流量重新分配到新路徑。
但上述既有的分配路徑之方法皆有所不足,故本發明人鑑於上述習用方式所衍生的缺點,乃亟思加以改良創新。
本發明提供一種具有權重值的等價多路徑路由之系統,該系統包括:至少一個核心交換器;多個主幹交換器,係分別連接於該至少一個核心交換器;以及多個枝葉交換器,其係分別連接於該多個主幹交換器;其中,該至少一個核心交換器、該多個主幹交換器及該多個枝葉交換器係各包括:交換器鏈結使用率模組,其用以計算相鄰交換器之間路徑的頻寬使用率,以該頻寬使用率為基礎將權重值予以各該路徑、再將各該路徑的權重值紀錄於表格中;壅塞資訊傳遞模組,其用以根據各該路徑的權重值給予權重值至不屬於自身的封包,以透過P4 INT將各該路徑的權重值傳送至其他交換器;以及壅塞狀態資訊更新模組,其用以比較所接收的該封包的權重值與該表格所紀錄的權重值,其中,若該表格的權重值較大,則不更新該表格的權重值,若該封包的權重值較大,則更新該表格的權重值。
如前述之系統中,各該枝葉交換器更包括機率性路由選擇模組,其係根據各該路徑的權重值機率性地選擇路徑以傳遞該封包。
如前述之系統中,該機率性路由選擇模組係以較高機率選擇具有較高權重值的該路徑以傳遞該封包。
如前述之系統中,各該枝葉交換器更包括流分段(flowlet)偵測模組,其係透過相同的流中連續的封包計算封包之間的間隔,以判斷該流是否為新的流分段,若該流為新的流分段,由該機率性路由選擇模組計算機率以選擇路徑,若該流不為新的流分段,根據流分段表格選擇路徑。
如前述之系統中,該壅塞資訊傳遞模組係將該頻寬使用率附加至該封包的標頭。
本發明另提供一種具有權重值的等價多路徑路由之方法,該方法包括:計算交換器與相鄰交換器之間路徑的頻寬使用率,以該頻寬使用率為基礎將權重值予以各該路徑,再將各該路徑的權重值紀錄於表格中;根據各該路徑的權重值給予權重值至不屬於交換器的封包,以透過P4 INT將各該路徑的權重值傳送至其他交換器;以及比較所接收的該封包的權重值與該表格所紀錄的權重值,其中,若該表格的權重值較大,則不更新該表格的權重值,若該封包的權重值較大,則更新該表格的權重值。
如前述之方法中,更包括:根據各該路徑的權重值機率性地選擇路徑以傳遞該封包。
如前述之方法中,該根據各該路徑的權重值機率性地選擇路徑傳遞封包,其係以較高機率選擇具有較高權重值的該路徑以傳遞該封包。
如前述之方法中,更包括:透過在相同的流(flow)中連續的封包計算封包之間的間隔,以判斷該流是否為新的流分段(flowlet),若該流為新的流分段,則透過計算機率以
選擇路徑,若該流不為新的流分段,則根據流分段表格選擇路徑。
如前述之方法中,該根據各該路徑的權重值給予權重值至不屬於交換器的封包係包括將該頻寬使用率附加至該封包的標頭。
本發明之目的即在於提出具有權重值的等價多路徑路由(weighted equal-cost multi-path routing,W-ECMP)方法,在網路環境中,各路徑的壅塞程度不同,本發明藉由P4 INT(Programming Protocol-Independent Packet Processors In-band Network Telemetry)的概念,將路徑壅塞的情形資訊夾帶在正常的流量上,以收集每條路徑的網路使用率,根據網路的使用率,由各個枝葉(leaf)交換器計算到其他枝葉交換器的各路徑之權重值,藉由機率式選擇,使各路徑無論具有多少權重值,都有機率被選擇到,以避免因為全體選擇最不壅塞的路徑,而造成該最佳路徑的快速壅塞,進而以達到各路徑的負載平衡機制,而不會造成在壅塞後才重新分配新路徑的問題。
110‧‧‧枝葉交換器
111‧‧‧交換器鏈結使用率模組
112‧‧‧壅塞資訊傳遞模組
113‧‧‧流分段偵測模組
114‧‧‧機率性路由選擇模組
115‧‧‧壅塞狀態資訊更新模組
120‧‧‧主幹交換器
130‧‧‧核心交換器
S1111~S1120‧‧‧步驟
S1211~S1215‧‧‧步驟
第1圖為本發明之系統架構示意圖。
第2圖為本發明之枝葉交換器的模組示意圖。
第3圖為本發明之主幹交換器的模組示意圖。
第4圖為本發明之核心交換器的模組示意圖。
第5圖為本發明之枝葉交換器的運作流程圖。
第6圖為本發明之主幹以及核心交換器之運作流程
圖。
為利了解本發明之技術特徵、內容與優點及其所能達到之功效,茲將本發明配合附圖,並以實施例之表達形式詳細說明如下,而其中所使用之圖式,其主旨僅為示意及輔助說明之用,未必為本發明實施後之真實比例與精準配置,故不應就所附之圖式的比例與配置關係解讀、侷限本發明於實際實施上的權利範圍,合先敘明。
本發明之具有權重的等價多路徑負載平衡系統及方法,其係藉由利用交換器之間鏈結的網路頻寬使用率,給予不同的權重值,並且機率性地選擇路徑,來避免快速阻塞原本最不壅塞的路徑,以達到網路的負載平衡。
第1圖為本發明之具有權重的等價多路徑路由之系統架構示意圖。包含多個枝葉(leaf)交換器110(枝葉交換器、枝葉(leaf)P4(Programming Protocol-Independent Packet Processors)交換器)、多個主幹(spine)交換器120(主幹交換器、主幹(spine)P4交換器)、及多個核心(core)交換器130(核心交換器、核心(core)P4交換器),多個核心處理器130係連接於各主幹交換器120,且多個枝葉交換器110係連接於各主幹交換器120。
各該枝葉交換器110更新用於記錄本地至其他的枝葉交換器110之所有路徑的網路壅塞狀態的使用率的表格,各起始的枝葉交換器110根據該表格中的權重值,決定到達目的枝葉交換器110的路徑,較高權重值的路徑,將會
有較高的機率被選擇到,且所有路徑都有機會被選擇,除了該路徑的權重值為0之外;因此,各路徑將不會有快速地被壅塞的情況,主幹交換器120及核心交換器130將網路壅塞的頻寬使用率附加到封包的標頭。
第2圖至第4圖為本發明之枝葉交換器110、主幹交換器120及核心交換器130所組成之模組示意圖,流分段偵測模組113、機率性路由選擇模組114各至少包括交換器鏈結使用率模組111、壅塞資訊傳遞模組112、及壅塞狀態資訊更新模組115,而枝葉交換器110更包括流分段偵測模組113及機率性路由選擇模組114。
交換器鏈結使用率模組111為計算本地交換器到與相鄰交換器之間所有路徑上的網路頻寬使用情形以計算頻寬使用率,並且根據頻寬使用率給予權重值紀錄於表格中。
壅塞資訊傳遞模組112將交換器鏈結使用率模組111根據頻寬使用率所計算出的權重值,透過P4 INT(Programming Protocol-Independent Packet Processors In-band Network Telemetry)傳送給其他的交換器。
流分段(flowlet)偵測模組113利用同一個流連續的封包去計算它的間隔,界定該流是否為新的流分段,以避免切割流量會造成封包重新排序的問題。
機率性路由選擇模組114根據各個路徑的權重值,並且根據權重值以機率性地選擇其中一個傳送封包的路徑。
壅塞狀態資訊更新模組115將交換器內所記錄的權重值,與所接收的封包內的權重值做比較,若是交換器的權
重值比封包內的大,代表此路徑並不是目前最大壅塞值,因此不更新表格;反之,若是交換器的權重值比封包內的小,代表此路徑是目前最大壅塞值,故表格需要予以更新。
如第2圖所示,枝葉交換器110利用交換器鏈結使用率模組111計算各個路徑(鏈結)的頻寬使用率,使用壅塞資訊傳遞模組112將壅塞資訊透過P4 INT傳遞給其他的交換器,以及使用壅塞狀態資訊更新模組115更新壅塞的狀態,使用流分段偵測模組113界定同一個流的連續封包是否為新的流分段,並且使用機率性路由選擇模組114以機率性地挑選要傳送封包的路徑。
如第3圖所示,主幹交換器120利用交換器鏈結使用率模組111計算各個路徑(鏈結)的頻寬使用率,使用壅塞資訊傳遞模組112將壅塞資訊透過P4 INT傳遞給其他的交換器,以及使用壅塞狀態資訊更新模組115更新壅塞的狀態。
如第4圖所示,核心交換器130利用交換器鏈結使用率模組111計算各個路徑(鏈結)的頻寬使用率,使用壅塞資訊傳遞模組112將壅塞資訊透過P4 INT傳遞給其他的交換器,以及使用壅塞狀態資訊更新模組115來更新壅塞的狀態。
如第5圖之本發明的枝葉交換器110運作流程圖,步驟S1111,當枝葉交換器110收到封包;步驟S1112,計算路徑頻寬使用率;步驟S1114,判斷是否封包的目的地是本地或遠端端點;若目的地為本地,步驟S1113,更新資
訊封包直接送至主機(host);若目的地為遠端,步驟S1115,則在封包中增加標頭,以收集資訊和指定走哪條路徑,並且,步驟S1116,附加頻寬使用率;步驟S1117,判斷是否為新的流分段;若為是,步驟S1118,計算機率選擇路徑,若為否,步驟S1119,根據流分段表(flowlet table)選擇路徑,最後,步驟S1120,轉傳封包。
第6圖為本發明之主幹交換器120以及核心交換器130之運作流程圖。步驟S1211,當主幹交換器120或是核心交換器130收到封包時,步驟S1212,比較狀態資訊。若是主幹或核心交換器的表格中所記錄的權重值比所接收封包內的權重值大,代表此路經並非目前最大壅塞狀況,則步驟S1214,不更新表格;反之,若是主幹或核心交換器的表格中所紀錄的權重值比所接收封包內的權重值小,代表此路是目前最大壅塞狀況,步驟S1213,更新表格,最後,步驟S1215,根據封包內的資訊選擇路徑。
在本發明實施例的運作中,具有權重的等價多路徑路由的負載平衡使用權重以度量各個埠資料所反應的壅塞程度,各交換器將壅塞程度轉換成權重,例如下列表格1所示之壅塞程度轉換表,當使用率小於等於10%時,權重值為4,其餘可依此類推。
本發明利用P4 INT的概念來收集網路的使用情形,再
給予權重值以作為選擇路徑的依據,以發展出此可以負載平衡的多路徑路由方法,與傳統習用技術相比,更具備下列優點:給予路徑不同的權重值,而不論權重值多少,都有機率會被選擇到,本發明可以避免都只選擇最不壅塞的路徑;且利用P4 INT將路徑壅塞資料夾帶在正常流量上來取代傳送探針的方式,本發明可以增加頻寬使用率,資訊的即時性也可以隨著網路的負載而提升。
綜上所述,本案不僅於技術思想上確屬創新,並具備習用之傳統方法所不及之上述多項功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請貴局核准本件發明專利申請案,以勵發明,至感德便。
Claims (10)
- 一種具有權重值的等價多路徑路由之系統,該系統包括:至少一個核心交換器;多個主幹交換器,係分別連接於該至少一個核心交換器;以及多個枝葉交換器,其係分別連接於該多個主幹交換器;其中,該至少一個核心交換器、該多個主幹交換器及該多個枝葉交換器係各包括:交換器鏈結使用率模組,其用以計算任二相鄰之該核心交換器、主幹交換器及枝葉交換器之間路徑的頻寬使用率,俾以該頻寬使用率為基礎將權重值給予各該路徑,再將各該路徑的權重值紀錄於表格中;壅塞資訊傳遞模組,其用以根據各該路徑的權重值給予權重值至不屬於自身的封包,以透過P4 INT(Programming Protocol-Independent Packet Processors In-band Network Telemetry)將各該路徑的權重值傳送至其他之該核心交換器、主幹交換器或枝葉交換器;以及壅塞狀態資訊更新模組,其用以比較所接收的該封包的權重值與該表格所紀錄的權重值,若該表格的權重值較大,則不更新該表格的權重值, 若該封包的權重值較大,則更新該表格的權重值。
- 根據申請專利範圍第1項所述的系統,其中,各該枝葉交換器更包括機率性路由選擇模組,其係根據各該路徑的權重值機率性地選擇路徑以傳遞該封包。
- 根據申請專利範圍第2項所述的系統,其中,該機率性路由選擇模組係以較高機率選擇該路徑中權重值較高者來傳遞該封包。
- 根據申請專利範圍第2項所述的系統,其中,各該枝葉交換器更包括流分段偵測模組,其係透過相同的流中連續的封包計算封包之間的間隔,以判斷該流是否為新的流分段,若該流為新的流分段,由該機率性路由選擇模組計算機率以選擇該路徑,若該流不為新的流分段,則根據流分段表格選擇該路徑。
- 根據申請專利範圍第1項所述的系統,其中,該壅塞資訊傳遞模組係將該頻寬使用率附加至該封包的標頭。
- 一種具有權重值的等價多路徑路由之方法,該方法包括:計算交換器與相鄰交換器之間路徑的頻寬使用率,以該頻寬使用率為基礎將權重值予以各該路徑,再將各該路徑的權重值紀錄於表格中;根據各該路徑的權重值給予權重值至不屬於交換器的封包,以透過P4 INT(Programming Protocol-Independent Packet Processors In-band Network Telemetry)將各該路 徑的權重值傳送至其他交換器;以及比較所接收的該封包的權重值與該表格所紀錄的權重值,其中,若該表格的權重值較大,則不更新該表格的權重值,若該封包的權重值較大,則更新該表格的權重值。
- 根據申請專利範圍第6項所述的方法,更包括:根據各該路徑的權重值機率性地選擇路徑以傳遞該封包。
- 根據申請專利範圍第7項所述的方法,其中,該根據各該路徑的權重值機率性地選擇路徑傳遞封包,其係以較高機率選擇具有較高權重值的該路徑以傳遞該封包。
- 根據申請專利範圍第7項所述的方法,更包括:透過在相同的流中連續的封包計算封包之間的間隔,以判斷該流是否為新的流分段,若該流為新的流分段,則透過計算機率以選擇路徑,若該流不為新的流分段,則根據流分段表格選擇路徑。
- 根據申請專利範圍第6項所述的方法,其中,該根據各該路徑的權重值給予權重值至不屬於交換器的封包係包括將該頻寬使用率附加至該封包的標頭。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107143657A TWI672927B (zh) | 2018-12-05 | 2018-12-05 | 具有權重值的等價多路徑路由之方法及系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107143657A TWI672927B (zh) | 2018-12-05 | 2018-12-05 | 具有權重值的等價多路徑路由之方法及系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI672927B true TWI672927B (zh) | 2019-09-21 |
TW202023246A TW202023246A (zh) | 2020-06-16 |
Family
ID=68619146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107143657A TWI672927B (zh) | 2018-12-05 | 2018-12-05 | 具有權重值的等價多路徑路由之方法及系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI672927B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105706401A (zh) * | 2013-11-05 | 2016-06-22 | 思科技术公司 | 具有跨硬件模块的表管理的分层路由 |
US9712445B2 (en) * | 2006-08-22 | 2017-07-18 | Centurylink Intellectual Property Llc | System and method for routing data on a packet network |
-
2018
- 2018-12-05 TW TW107143657A patent/TWI672927B/zh active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9712445B2 (en) * | 2006-08-22 | 2017-07-18 | Centurylink Intellectual Property Llc | System and method for routing data on a packet network |
CN105706401A (zh) * | 2013-11-05 | 2016-06-22 | 思科技术公司 | 具有跨硬件模块的表管理的分层路由 |
Non-Patent Citations (1)
Title |
---|
P4, " In‐band Network Telemetry (INT)" , June 2016 (網址: https://p4.org/assets/INT-current-spec.pdf ) * |
Also Published As
Publication number | Publication date |
---|---|
TW202023246A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1929711B1 (en) | Method and apparatus for maximizing data transmission capacity of a mesh network | |
CN100405344C (zh) | 用于在交换结构中分发缓冲区状态信息的装置和方法 | |
EP1436951B1 (en) | Trunking inter-switch links | |
US8274887B2 (en) | Distributed congestion avoidance in a network switching system | |
US6510135B1 (en) | Flow-level demultiplexing within routers | |
US8081650B2 (en) | Method and system for selecting virtual lanes in fibre channel switches | |
US7835279B1 (en) | Method and apparatus for shared shaping | |
CN106533960A (zh) | 一种基于Fat‑Tree结构的数据中心网络路由方法 | |
US20060098573A1 (en) | System and method for the virtual aggregation of network links | |
US20090245112A1 (en) | Communication device, communication system, communication control method and recording medium | |
US20070248086A1 (en) | Network switching system having variable headers and addresses | |
CN102971996A (zh) | 带有分组突发的负载平衡的交换节点 | |
JP2004289799A (ja) | 弾性パケットのリングネットワークの帯域幅管理 | |
CN110351187A (zh) | 数据中心网络中路径切换粒度自适应的负载均衡方法 | |
US7307995B1 (en) | System and method for linking a plurality of network switches | |
US7480293B2 (en) | Method and system for preventing deadlock in fibre channel fabrics using frame priorities | |
JPH03131144A (ja) | パケットスイッチ | |
JP5630094B2 (ja) | 通信装置および通信方法 | |
EP1532775A2 (en) | Methods and apparatus for credit-based flow control | |
JP2006197473A (ja) | ノード | |
TWI672927B (zh) | 具有權重值的等價多路徑路由之方法及系統 | |
CA2015405C (en) | Packet synchronization utilizing a multi-length packet format including check sequence (s) | |
US7173901B2 (en) | Flow and congestion control in a switching network | |
JP5778098B2 (ja) | 通信装置 | |
KR20170110605A (ko) | 하이브리드 네트워크들에서 볼륨-기반 온라인 과금 |