TW201739225A - 在多機箱鏈路聚合組的網路開關的自動組態 - Google Patents
在多機箱鏈路聚合組的網路開關的自動組態 Download PDFInfo
- Publication number
- TW201739225A TW201739225A TW106112608A TW106112608A TW201739225A TW 201739225 A TW201739225 A TW 201739225A TW 106112608 A TW106112608 A TW 106112608A TW 106112608 A TW106112608 A TW 106112608A TW 201739225 A TW201739225 A TW 201739225A
- Authority
- TW
- Taiwan
- Prior art keywords
- switch
- system information
- uplink port
- uplink
- aggregation group
- Prior art date
Links
- 230000002776 aggregation Effects 0.000 title claims abstract description 74
- 238000004220 aggregation Methods 0.000 title claims abstract description 74
- 238000000034 method Methods 0.000 claims abstract description 61
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000007429 general method Methods 0.000 description 1
- 238000000786 liquid-assisted grinding Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
各種實施例提出自動地組態一多機箱鏈路聚合組的方法,包含接收關於該多機箱鏈路聚合組的第一系統資訊;經由關於一第一開關的一第一上行鏈路埠接收一第一探索封包,其中該多機箱鏈路聚合組包含該第一開關,其中該第一探索封包包含關於該多機箱鏈路聚合組的第二系統資訊;決定該第一系統資訊是否匹配該第二系統資訊;其中如果該第一系統資訊匹配該第二系統資訊,則推斷該第一上行鏈路埠被包含在一內部同級鏈路,其中該內部同級鏈路連接該第一開關至一第二開關,其中該多機箱鏈路聚合組亦包含該第二開關;如果該第一系統資訊不匹配該第二系統資訊,則推斷該第一上行鏈路埠不被包含在該內部同級鏈路。本發明的優點為避免要求一使用者手動地輸入上百筆命令。
Description
本發明之實施例係關於網路開關,更具體地說,是關於在一多機箱鏈路聚合組(multi-chassis link aggregation group)的一網路開關的自動組態(automatic configuration)。
在乙太網路(Ethernet)開關系統,習知的鏈路聚合組(link aggregation group,簡寫為LAG)時常地代表連接至一單一實體(physical)開關的多重鏈路。一個共同的(common)媒體存取控制(media access control,簡寫為MAC)位址擔任在全部的聚合鏈路上的開關的位址,以允許通信量(traffic)被送至該開關,其中該開關在相同的媒體存取控制位址的任何一個聚合鏈路上。因此,該些聚合鏈路對於複數之傳送裝置表現為一單一鏈路,例如複數之伺服機(server machines),其中該些傳送裝置不知道經由該單一MAC位址連接有多重鏈路。習知的鏈路聚合組的優點為,如果聚合鏈路的其中一個失效,其他的聚合鏈路保持有效,以維持由該些聚合鏈路所提供的原始頻寬的一部分。然而,習知的鏈路聚合組的缺點為,如果該實體開關失效,所有的該些聚合鏈路被切斷,且失去所有的由該些聚合鏈路所提供的原始頻寬。
為了補救這個問題,一對實體開關(亦即,兩個不同的實體裝置或機箱)取代該單一開關,且一多機箱鏈路聚合組(multi-chassis link aggregation group,簡寫為MLAG)代表多重鏈路連接至該對實體開關。在一MLAG系統的情況下,每個傳送裝置具有兩個鏈路至該對開關,與連接至每個開關的一個鏈路。與習知的LAG相似,該相同的共同的MAC位址擔任在全部的聚合鏈路上的任一開關的位址。因此,對任一開關的該些聚合鏈路表現為一單一鏈路至該些傳送裝置,例如複數之伺服機,其中該些傳送裝置不知道經由該單一MAC位址連接有多重鏈路或多重開關。一個MLAG系統的優點類似於一個一般的LAG,如果該些聚合鏈路之一失效,其他的聚合鏈路保持有效,以維持由該些聚合鏈路所提供的原始頻寬的一部分。MLAG系統比習知的LAG額外優點為,如果一個實體開關(或機箱)失效,仍有其他的一個實體開關保持有效,以維持由該些聚合鏈路所提供的原始頻寬的一部分。因此,與習知的LAG相比,其中一個實體開關失效造成失去所有的由該些聚合鏈路所提供的原始頻寬,在一個MLAG系統,一個實體開關失效維持一些原始頻寬。
當建立一個MLAG系統時,該些開關與鏈路必須被組態(configured),例如,藉由在連接至該MLAG系統的一個計算裝置上的一命令行介面輸入命令。一個第一組態步驟為在兩個開關(亦即,一第一開關與一第二開關)之間配置共同的介面。此第一組態步驟需要輸入給每個該第一與第二開關的最低限度的五個命令,包含啟用在該些開關之間的MLAG通訊的命令,設定一系統識別符以作為兩個開關的一般MAC位址的命令,以及在第一及第二開關之間建立一個內部同級鏈路(inter peer link,簡稱為IPL)的命令。一個第二組態步驟為配置在該些開關與下行鏈路傳送裝置(例如伺服機)之間的全部的連接。此第二組態步驟需要輸入給在每個第一與第二開關之間的每個鏈路以及每個下行鏈路傳送裝置的最低限度的四個命令。因此,對於每個下行鏈路傳送裝置來說,那些四個命令必須被發出四次,一次是給該第一開關,一次是給該第二開關。
上述方法的缺點為需透過該CLI輸入大量的命令以配置該MLAG系統。在一個典型的實施例中,每個該第一及第二開關也許包含大量的(例如,高達56個或更多)下行鏈路埠(或到下行鏈路傳送裝置的鏈路)。在這個實施例中,配置該MLAG系統需要通過該CLI手動地輸入上百筆命令,顯得浪費時間且沉悶乏味,因此有人為失誤的傾向。再者,每當該MLAG系統有改變時,例如一電纜的改變或該些實體開關(或機箱)之一的改變,許多或全部的組態命令(configuration command)必須重新輸入一次。
如前所述,本技術領域所需要的是配置MLAG系統更有效率的方法。
本發明之各種實施例提出一種電腦執行方法以自動地組態一多機箱鏈路聚合組(multi-chassis link aggregation group,簡稱為MLAG),該方法包含接收關於該MLAG的第一系統資訊;經由關於一第一開關的一第一上行鏈路埠接收一第一探索封包,其中該MLAG包含該第一開關,其中該第一探索封包包含關於該MLAG的第二系統資訊;決定該第一系統資訊是否匹配該第二系統資訊;其中如果該第一系統資訊匹配該第二系統資訊,則推斷該第一上行鏈路埠被包含在一內部同級鏈路(inter peer link),其中該內部同級鏈路連接該第一開關至一第二開關,其中該MLAG亦包含該第二開關;如果該第一系統資訊不匹配該第二系統資訊,則推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
本發明的優點為自動地組態於此敘述之一MLAG的技巧允許一MLAG的所有連接被自動地設置而不需要一使用者手動地輸入上百筆命令,例如通過一CLI,而一使用者手動地輸入上百筆命令是浪費時間且沉悶乏味的,且因此有人為失誤的傾向。
本申請要求申請在2016年四月21號具有編號62/325,926的美國臨時專利申請案名稱“AUTOMATED MULTI-CHASSIS LINK AGGREGATION,”的內容;此相關申請的主旨內容通過引用的方式而被包含於此。
在以下的描述當中,提出了許多特定細節以使本發明能被更徹底地理解;然而,本領域技術人員明顯地應可在不需要其他更多特定細節下即能實施本發明。
系統概述:
圖1為執行本發明之一或更多方面之一系統100之一方塊圖。如圖1所示,系統100包含但不限制一第一開關110,藉由一內部同級鏈路(inter peer link,簡稱為IPL)150耦合至一第二開關120。每個該第一開關110與該第二開關120耦合至一網路130及一群下行鏈路裝置160~164,包含一下行鏈路裝置160(亦可稱為第一下行鏈路裝置)、一下行鏈路裝置162(亦可稱為第二下行鏈路裝置)及一下行鏈路裝置164(亦可稱為第n下行鏈路裝置)。此外,系統100也許包含一計算裝置140耦合至每個該第一開關110與該第二開關120。
在操作上,該第一開關110與該第二開關120為兩個實體開關(physical switches)或機箱(chassis),以組成一多機箱鏈路聚合組(multi-chassis link aggregation group,或稱為多鏈路聚合組multi-link aggregation group;皆可簡稱為MLAG)105。在各種實施例當中,該第一開關110與該第二開關120可為相同形式的開關且可具有相同的開關型號;該第一開關110與該第二開關120也可具有數量相同的上行鏈路埠與數量相同的下行鏈路埠。作為同一個MLAG 105的一部分,該第一開關110與該第二開關120共享一個共同的(common)MAC位址;因此,當和該第一開關110與該第二開關120通訊時,該些下行鏈路裝置160~164傳送通訊遞送至該共同的MAC位址。
該第一開關110可為任何型式的技術上可行的網路開關,包含一乙太網路(Ethernet)開關,以及其他型式的開關。該第一開關110包含但不限制下行鏈路埠118、上行鏈路埠119、一處理器112及一記憶體114。該第一開關110透過下行鏈路埠118耦合至該些下行鏈路裝置160~164。下行鏈路埠118可為任何技術上可行的埠連接以進行雙向通訊,包含RJ45連接、SFP連接、SFP+連接、QSFP28連接等等。該第一開關110透過上行鏈路埠119耦合至網路130。此外,一或更多個上行鏈路埠119形成該IPL 150以耦合該第一開關110至該第二開關120。上行鏈路埠119可為任何技術上可行的埠連接以進行雙向通訊,包含RJ45連接、SFP連接、SFP+連接、QSFP28連接等等。處理器112可為任何技術上可行形式的處理裝置以處理資料與執行程序代碼(program code);處理器112可為例如一中央處理單元(central processing unit,簡稱為CPU)、一圖形處理單元(graphics processing unit,簡稱為GPU)、一專用集成電路(application-specific integrated circuit,簡稱為ASIC)、一現場可編程閘陣列(field-programmable gate array,簡稱為FPGA)等等。記憶體114可為例如一硬碟、一隨機存取記憶體(random access memory,簡稱為RAM)模組、一唯讀記憶體(read-only memory,簡稱為ROM)等等。如圖1所示,記憶體114包含自動多機箱鏈路聚合組(可稱為auto-MLAG)模組116,係為一個軟體應用,當由處理器112執行時,使處理器112自動地在該第一開關110與該第二開關120之間配置該IPL 150,並自動地在該第一開關110與該些下行鏈路裝置160~164之間配置下行鏈路連接,如以下更詳盡的描述。
該第二開關120亦可為任何技術上可行的網路開關,包含乙太網路(Ethernet)開關,以及其他開關。該第二開關120包含但不限制下行鏈路埠128、上行鏈路埠129、一處理器122及一記憶體124。該第二開關120透過下行鏈路埠128耦合至該些下行鏈路裝置160~164。下行鏈路埠128可為任何技術上可行的埠連接以進行雙向通訊,包含RJ45連接、SFP連接、SFP+連接、QSFP28連接等等。該第二開關120透過上行鏈路埠129耦合至網路130。此外,一或更多個上行鏈路埠129形成該IPL 150以耦合該第二開關120至該第一開關110。上行鏈路埠129可為任何技術上可行的埠連接以進行雙向通訊,包含RJ45連接、SFP連接、SFP+連接、QSFP28連接等等。處理器122可為任何技術上可行形式的處理裝置以處理資料與執行程序代碼;處理器122可為例如一中央處理單元、一圖形處理單元、一專用集成電路、一現場可編程門陣列等等。記憶體124可為任何技術上可行的儲存媒體以儲存資料與軟體應用;記憶體124可為例如一硬碟、一隨機存取記憶體模組、一唯讀記憶體等等。如圖1所示,記憶體124包含自動多機箱鏈路聚合組(可稱為auto-MLAG)模組126,係為一個軟體應用,當由處理器122執行時,使處理器122自動地在該第二開關120與該第一開關110之間配置該IPL 150,並自動地在該第二開關120與該些下行鏈路裝置160~164之間配置下行鏈路連接,亦如以下更詳盡的描述。網路130可為任何技術上可行的一套互相連接的通訊鏈路,包含一區域網路(local area network,簡稱為LAN)、廣域網路(wide area network,簡稱為WAN)、全球資訊網(World Wide Web)或網際網路(Internet)及其他網路。
該些下行鏈路裝置160~164可為複數之伺服機(server machines)或任何其他技術上可行的網路裝置。
計算裝置140可包含但不限制一處理器142、一記憶體144及輸入輸出(input/output,簡稱為I/O)裝置146;處理器142可為任何技術上可行形式的處理裝置以處理資料與執行程序代碼;處理器142可為例如一中央處理單元、一圖形處理單元、一專用集成電路、一現場可編程門陣列等等。記憶體144可為任何技術上可行的儲存媒體以儲存資料與軟體應用;記憶體124可為例如一硬碟、一隨機存取記憶體模組、一唯讀記憶體等等。輸入輸出裝置146可包含用以接收輸入的裝置,包含例如,一鍵盤、一滑鼠等等。在各種實施例當中,計算裝置140與該第一開關110及該第二開關120透過任何技術上可行的電腦連接,例如一有線連接或一無線連接等等進行通訊。在另一實施例,計算裝置140可與該第一開關110透過一或更多個上行鏈路埠119進行通訊,及與該第二開關120透過一或更多個上行鏈路埠129進行通訊。
一使用者可透過該計算裝置140啟動該些自動多機箱鏈路聚合組模組116、126;例如,一使用者可透過一個命令行介面或其他介面輸入一或多個命令至該計算裝置140以啟動該些自動多機箱鏈路聚合組模組116、126;例如,在各種實施例當中,一使用者可透過該CLI輸入一單一命令以啟動該第一開關110之該自動多機箱鏈路聚合組模組116,及透過該CLI輸入另一個單一命令以啟動該第二開關120之該自動多機箱鏈路聚合組模組126。該些命令可包含MLAG 105的系統資訊,包含但不限制一自動MLAG系統識別符以作為該第一開關110及該第二開關120的共同的MAC位址,其中該第一開關110及該第二開關120組成該MLAG 105。一經啟動該第一開關110之該自動多機箱鏈路聚合組模組116,該第一開關110會在該記憶體114內設定一旗標以指出該第一開關110之該自動MLAG被啟用。在另一個實施例中,該計算裝置140沒有使用者的介入即啟動該些自動多機箱鏈路聚合組模組116、126;在其他實施例當中,一使用者會直接與該第一開關110及該第二開關120互動以分別地啟動該些自動多機箱鏈路聚合組模組116、126而不用該計算裝置140。
即使圖1顯示出儲存在該第一開關110的該記憶體114的該自動多機箱鏈路聚合組模組116,以及儲存在該第二開關120的該記憶體124的該自動多機箱鏈路聚合組模組126,在另一實施例當中,一個單一的自動多機箱鏈路聚合組模組只被儲存在該些開關的其中之一的記憶體當中;在其他實施例當中,一或更多個自動多機箱鏈路聚合組模組會部份地或完全地儲存在該計算裝置140之該記憶體144中;在其他實施例當中,全部或部份的一或更多個自動多機箱鏈路聚合組模組會透過該網路130被遠端地儲存與存取。
如下更詳盡的描述連同圖2~4,該自動多機箱鏈路聚合組模組116自動地判斷且/或接收該MLAG 105的附加的系統資訊,包含但不限制該第一開關110的型號,自動地重新得到關於該第一開關110之該下行鏈路埠118及該上行鏈路埠119的所有資訊,自動地配置在該第一開關110及該第二開關120之間的該IPL 150,以及自動地配置在該第一開關110及該些下行鏈路裝置160~164之間的連接。類似地,該自動多機箱鏈路聚合組模組126自動地判斷且/或接收該MLAG 105的附加的系統資訊,包含但不限制該第二開關120的型號,自動地重新得到關於該第二開關120之該下行鏈路埠128及該上行鏈路埠129的所有資訊,自動地配置在該第二開關120及該第一開關110之間的該IPL 150,以及自動地配置在該第二開關120及該些下行鏈路裝置160~164之間的連接。
該MLAG的自動組態:
圖2為依據本發明之各種實施例,圖1的自動MLAG模組之一的更詳細之圖例。如圖2所示,該第一開關110之該自動多機箱鏈路聚合組模組116包含但不限制一內部同級鏈路探索子模組210及一下行鏈路組態子模組220。即使該第一開關110之該自動多機箱鏈路聚合組模組116如圖所示與描述,本領域之技術人員應理解該第二開關120之該自動多機箱鏈路聚合組模組126大體上與該自動多機箱鏈路聚合組模組116相同。
首先該自動多機箱鏈路聚合組模組116接收該MLAG 105的系統資訊,包含但不限制一自動MLAG系統識別符,例如,來自一使用者命令透過一命令行介面輸入至該計算裝置140,其中此自動MLAG系統識別符建立由該第一開關110及該第二開關120所共享的該共同的MAC位址。該內部同級鏈路探索子模組210接著自動地配置該第一開關110及該第二開關120之間的該IPL 150。如此一來,該內部同級鏈路探索子模組210判斷且/或接收該MLAG 105的附加的系統資訊,包含但不限制該第一開關110的型號,在各種實施例當中,該第一開關110的型號可被編碼在與重新得到自該內部同級鏈路探索子模組210或該自動多機箱鏈路聚合組模組116。在其他實施例當中,該第一開關110的型號可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
接著,該內部同級鏈路探索子模組210基於接收到的系統資訊,例如該第一開關110的型號,重新得到關於該第一開關110之該上行鏈路埠119的資訊。關於該上行鏈路埠119的資訊包含但不限制上行鏈路埠的總數、特殊配置參數(configuration parameters)及/或任何其他關於該上行鏈路埠119的資訊。在各種實施例當中,基於該第一開關110的型號,關於該上行鏈路埠119的資訊可被編碼在與重新得到自該內部同級鏈路探索子模組210或該自動多機箱鏈路聚合組模組116。在其他的實施例當中,關於該上行鏈路埠119的資訊可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
對於被包含在該上行鏈路埠119的每個上行鏈路埠“P”,該內部同級鏈路探索子模組210週期性地傳送探索封包在該上行鏈路埠“P”上。在各種實施例當中,由該第一開關110所傳送的探索封包包含MLAG 105的系統資訊,包含但不限制接收到的自動MLAG系統識別符及/或該第一開關110的型號。在其他的實施例當中,由該第一開關110所傳送的探索封包亦包含一旗標以指出該第一開關110之該自動MLAG被啟用。該內部同級鏈路探索子模組210會在每個週期區間,例如一時間TX_limit,傳送一個探索封包;因此,藉由該第一開關110及該第二開關120通過該IPL 150連接,如果該上行鏈路埠“P”是該IPL 150的一部分,則該第二開關120接收由該第一開關110所週期性地傳送之該探索封包。類似地,如果該第一開關110及該第二開關120同時執行相應的內部同級鏈路探索子模組210,則該第一開關110接收由該第二開關120週期性地在一個上行鏈路埠上,例如在該上行鏈路埠“P”上,所傳送之任何探索封包,其中上行鏈路埠是該IPL 150的一部分。相應地,在各種實施例當中,從該第二開關120所接收到的該些探索封包包含MLAG 105的相應的系統資訊,例如該自動MLAG系統識別符及/或該第二開關120的型號。
該內部同級鏈路探索子模組210更判斷,對於每個上行鏈路埠“P”來說,該第一開關110是否從該第二開關120收到探索封包;如果該第一開關110在一預設期間內沒有在該上行鏈路埠“P”上接收到任何探索封包,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”不是該IPL 150的一部分。例如,接收一探索封包的該預設期間是一個期間RX_limit,其中RX_limit大於TX_limit。在各種實施例當中,RX_limit大體上大於TX_limit,例如是TX_limit的值的倍數,以允許該IPL 150被維持,儘管一或更多個探索封包在傳送或接收時遭遇到一延遲或一失敗事件。
當該第一開關110在該上行鏈路埠“P”上接收到一探索封包時,該內部同級鏈路探索子模組210判斷該第一開關110所接收的該MLAG 105的系統資訊,例如該自動多機箱鏈路聚合組模組116所接收之該自動MLAG系統識別符及/或該第一開關110的型號,是否匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如該自動MLAG系統識別符及/或該第二開關120的型號。例如,如果該第一開關110所接收的該MLAG 105的系統資訊匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如如果該自動多機箱鏈路聚合組模組116所接收之該自動MLAG系統識別符匹配被包含在所接收到的探索封包的自動MLAG系統識別符,且該第一開關110的型號匹配被包含在所接收到的探索封包的該第二開關120的型號,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”形成該IPL 150的一部分。在這種情況下,如果該上行鏈路埠“P”還沒被指派為該IPL 150的一部分,則該內部同級鏈路探索子模組210增加該上行鏈路埠“P”至上行鏈路埠清單(其中上行鏈路埠建立該IPL 150),且該內部同級鏈路探索子模組210配置該上行鏈路埠“P”為該IPL 150的一部分以連接該第一開關110及該第二開關120。相反地,如果該第一開關110所接收的該MLAG 105的系統資訊不匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如如果該些自動MLAG系統識別符或該些開關型號不匹配,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”不形成該IPL 150的一部分。在這種情況下,如果該上行鏈路埠“P”已經被指派為該IPL 150的一部分,則該內部同級鏈路探索子模組210自上行鏈路埠清單(其中上行鏈路埠建立該IPL 150)移除該上行鏈路埠“P”。
該下行鏈路組態子模組220自動地配置該第一開關110與該些下行鏈路裝置160~164之間的連線;如此一來,該下行鏈路組態子模組220判斷且/或接收該MLAG 105的系統資訊,包含但不限制該第一開關110的型號。在各種實施例當中,該第一開關110的型號可被編碼在與重新得到自該下行鏈路組態子模組220或該自動多機箱鏈路聚合組模組116。在其他實施例當中,該第一開關110的型號可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
該下行鏈路組態子模組220接著基於所接收到的系統資訊重新得到關於該第一開關110之該下行鏈路埠118的資訊,例如該第一開關110的型號。關於該下行鏈路埠118的資訊包含但不限制下行鏈路埠的總數、特殊配置參數及/或任何其他關於該下行鏈路埠118的資訊。在各種實施例當中,基於該第一開關110的型號,關於該下行鏈路埠118的資訊可被編碼在與重新得到自該下行鏈路組態子模組220或該自動多機箱鏈路聚合組模組116。在其他實施例當中,關於該下行鏈路埠118的資訊可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
接著該下行鏈路組態子模組220藉由一回路演算法配置該些下行鏈路裝置160~164的每個下行鏈路連接;更具體地說,該下行鏈路組態子模組220初始化一或更多個回路參數,例如一回路計數器以透過被包含在該些下行鏈路埠118的每個下行鏈路埠回路。在一回路的每個重複,該下行鏈路組態子模組220增加該回路計數器並從被包含在該些下行鏈路埠118的一套中的一不同的下行鏈路埠配置一連接至該些下行鏈路裝置160~164中的不同的一個。該下行鏈路組態子模組220以此樣式繼續執行,直到該回路計數器達到下行鏈路埠的總數,表明從被包含在該些下行鏈路埠118的一套的所有下行鏈路埠到所有的該些下行鏈路裝置160~164已經被配置。
圖3為依據本發明之各種實施例,在一開關之一或更多個上行鏈路埠上執行內部同級鏈路(inter peer link,簡稱為IPL)探索之方法步驟之一流程圖。儘管該方法步驟與圖1及2被描述,本領域技術人員應瞭解被配置以執行該些方法步驟的任何系統,以任何形式,皆為本發明之範疇。此外,即使該第一開關110之該自動多機箱鏈路聚合組模組116之該內部同級鏈路探索子模組210執行該些描述的方法步驟,本領域技術人員應瞭解該第二開關120之該自動多機箱鏈路聚合組模組126操作大體上為相同方式,如下所述。
如圖3所示,一方法300開始於步驟305,其中該第一開關110之該自動多機箱鏈路聚合組模組116之該內部同級鏈路探索子模組210接收該MLAG 105的系統資訊,包含但不限制一自動MLAG系統識別符,其中此自動MLAG系統識別符建立由該第一開關110及該第二開關120所共享的該共同的MAC位址。例如,此自動MLAG系統識別符從一使用者命令透過一命令行介面輸入至該計算裝置140所接收。該MLAG 105的系統資訊包含但不限制該第一開關110的型號。該第一開關110的型號提供,除了別的以外還有,該型號、任何其他種類的辨識碼,及/或該第一開關110的相關規格。在各種實施例當中,該第一開關110的型號可被編碼在與重新得到自該內部同級鏈路探索子模組210或該自動多機箱鏈路聚合組模組116。在其他實施例當中,該第一開關110的型號可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
在步驟310,該內部同級鏈路探索子模組210基於接收到的系統資訊,重新得到關於該第一開關110之該上行鏈路埠119的資訊,例如該第一開關110的型號。關於該上行鏈路埠119的資訊包含但不限制上行鏈路埠的總數、特殊配置參數及/或任何其他關於該上行鏈路埠119的資訊。在各種實施例當中,基於該第一開關110的型號,關於該上行鏈路埠119的資訊可被編碼在與重新得到自該內部同級鏈路探索子模組210或該自動多機箱鏈路聚合組模組116。在其他的實施例當中,關於該上行鏈路埠119的資訊可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
亦顯示出,對於被包含在該上行鏈路埠119的每個上行鏈路埠“P”,該內部同級鏈路探索子模組210執行以下步驟;在步驟315,該內部同級鏈路探索子模組210設定一個傳送計時器TX_timer為零;在步驟320,該內部同級鏈路探索子模組210設定一個接收計時器RX_timer為零;在步驟325,該內部同級鏈路探索子模組210增加該接收計時器RX_timer;在步驟330,該內部同級鏈路探索子模組210增加該傳送計時器TX_timer。
接著,在步驟335,該內部同級鏈路探索子模組210判斷該傳送計時器TX_timer是否大於等於一門檻時間傳送限制TX_limit;如果該傳送計時器TX_timer大於等於該門檻時間傳送限制TX_limit,則該方法300進入步驟340,該內部同級鏈路探索子模組210在該上行鏈路埠”P”上傳送一探索封包。如上所述,該第一開關110所傳送的該些探索封包包含MLAG 105的系統資訊,包含但不限制接收到的自動MLAG系統識別符及/或該第一開關110的型號。能被意識到的,這些前述步驟允許該內部同級鏈路探索子模組210週期性地在每個週期區間,例如在該門檻時間傳送限制TX_limit,傳送探索封包在該上行鏈路埠“P”上。因此,藉由該第一開關110及該第二開關120通過該IPL 150連接,如果該上行鏈路埠“P”是該IPL 150的一部分,則該第二開關120接收由該第一開關110所週期性地傳送之該探索封包。在步驟345中,該內部同級鏈路探索子模組210重置該傳送計時器TX_timer等於零;該方法300接著進入步驟350。
現在回到步驟335,如果該內部同級鏈路探索子模組210判斷該傳送計時器TX_timer不大於等於該門檻時間傳送限制TX_limit,則該方法300直接進入步驟350。
在步驟350,該內部同級鏈路探索子模組210判斷是否在該上行鏈路埠”P”上從該第二開關120接收到一探索封包。例如,如果該第一開關110及該第二開關120同時執行相應的內部同級鏈路探索子模組210,則該第一開關110接收由該第二開關120週期性地在一個上行鏈路埠上,例如在該上行鏈路埠“P”上,所傳送之任何探索封包,其中上行鏈路埠是該IPL 150的一部分。
如果在步驟350,該內部同級鏈路探索子模組210沒有在該上行鏈路埠”P”上接收到一探索封包,接著該方法300進入步驟355。在步驟355,該內部同級鏈路探索子模組210判斷該接收計時器RX_timer是否大於一門檻時間接收限制RX_limit。如上解釋,該門檻時間接收限制RX_limit也許會大於該門檻時間傳送限制TX_limit,並且在各種實施例當中,該門檻時間傳送限制TX_limit也許會大體上大於該門檻時間傳送限制TX_limit,例如是門檻時間傳送限制TX_limit的值的倍數,以允許該IPL 150被維持,儘管一或更多個探索封包在傳送或接收時遭遇到一延遲或一失敗事件。
如果該內部同級鏈路探索子模組210判斷該接收計時器RX_timer大於該門檻時間接收限制RX_limit,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”不是該IPL 150的一部分,且該方法300進入步驟380。在步驟380,該內部同級鏈路探索子模組210判斷該上行鏈路埠“P”是否已經被指派為該IPL 150的一部分;如果不是,則在步驟390,結束該上行鏈路埠“P”的內部同級鏈路探索流程。
現在回到步驟380,如果該內部同級鏈路探索子模組210判斷該上行鏈路埠“P”已經被指派為該IPL 150的一部分,則在步驟385,該內部同級鏈路探索子模組210自上行鏈路埠清單(其中上行鏈路埠建立該IPL 150)移除該上行鏈路埠“P”,且該方法300進入如上所述之步驟390。
現在回到步驟355,如果該內部同級鏈路探索子模組210判斷該接收計時器RX_timer不大於該門檻時間接收限制RX_limit,則該內部同級鏈路探索子模組210回到如上所述之步驟325。
現在回到步驟350,如果該內部同級鏈路探索子模組210在該上行鏈路埠”P”上接收到一探索封包,接著該方法300進入步驟365。在其他實施例當中,作為步驟350的一部分,一經接收一探索封包,該內部同級鏈路探索子模組210判斷是否從該第二開關120接收的該探索封包內的一旗標指出在該第二開關120之自動MLAG被啟用。在更進一步的其他實施例當中,作為步驟350的一部分,一經接收一探索封包,該內部同級鏈路探索子模組210判斷是否在該記憶體114內設定一旗標以指出該第一開關110之該自動MLAG被啟用。如果任何一個旗標指出該第一開關110或該第二開關120之自動MLAG沒有被啟用,接著該方法300直接進入如上所述之步驟390;否則,該方法300進入如上所述之步驟365。在步驟365,該內部同級鏈路探索子模組210判斷該第一開關110所接收的該MLAG 105的系統資訊,例如該自動多機箱鏈路聚合組模組116所接收之該自動MLAG系統識別符及/或該第一開關110的型號,是否匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如該自動MLAG系統識別符及/或該第二開關120的型號。如果該內部同級鏈路探索子模組210判斷該第一開關110所接收的該MLAG 105的系統資訊不匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如如果該些自動MLAG系統識別符或該些開關型號不匹配,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”不是該IPL 150的一部分,且該方法300進入如上所述之步驟380。
現在回到步驟365,如果該內部同級鏈路探索子模組210判斷該第一開關110所接收的該MLAG 105的系統資訊匹配被包含在所接收到的探索封包的該MLAG 105的相應的系統資訊,例如當被包含在所接收到的探索封包的自動MLAG系統識別符匹配該自動多機箱鏈路聚合組模組116所接收的自動MLAG系統識別符,且被包含在所接收到的探索封包的該第二開關120的型號匹配該第一開關110的型號,則該內部同級鏈路探索子模組210推斷該上行鏈路埠“P”形成該IPL 150的一部分。在步驟370,該內部同級鏈路探索子模組210判斷該上行鏈路埠“P”是否已經被指派為該IPL 150的一部分;如果是,則該方法300回到如上所述之步驟320。然而,如果在步驟370,該上行鏈路埠“P”沒有已經被指派為該IPL 150的一部分,則在步驟375,該內部同級鏈路探索子模組210增加該上行鏈路埠“P”至上行鏈路埠清單(其中上行鏈路埠建立該IPL 150),且該內部同級鏈路探索子模組210配置該上行鏈路埠“P”為該IPL 150的一部分以連接該第一開關110及該第二開關120。該方法接著回到如上所述之步驟320。
藉由回到步驟320,在推斷一被給定的上行鏈路埠“P”形成該IPL 150的一部分之後,該內部同級鏈路探索子模組210在一持續的基礎上,運行該上行鏈路埠“P”的該IPL探索程序;如此的方法啟動該內部同級鏈路探索子模組210以主動地監視該些上行鏈路埠的情形以不斷地形成該IPL 150且從該IPL 150移除任何閒置的(inactive)上行鏈路埠。在其他實施例當中,該內部同級鏈路探索子模組210回到步驟320,即使在步驟390在推斷一被給定的上行鏈路埠“P”不形成該IPL 150的一部分之後。再一次,此方法啟動該內部同級鏈路探索子模組210在一持續的基礎上主動地監視IPL 150的情況並使該IPL 150增加後來變成有效的(active)以及被該內部同級鏈路探索子模組210在那時候使用以交換探索封包的任何上行鏈路埠。
圖4為依據本發明之各種實施例,自動地配置一開關之一或更多個下行鏈路埠之方法步驟之一流程圖。儘管該方法步驟與圖1及2被描述,本領域技術人員應瞭解被配置以執行該些方法步驟的任何系統,以任何形式,皆為本發明之範疇。此外,即使該第一開關110之該自動多機箱鏈路聚合組模組116之該下行鏈路組態子模組220執行該些描述的方法步驟,本領域技術人員應瞭解該第二開關120之該自動多機箱鏈路聚合組模組126操作大體上為相同方式,如下所述。
如圖4所示,一方法400開始於步驟410,其中該下行鏈路組態子模組220判斷且/或接收該MLAG 105的系統資訊,包含但不限制該第一開關110的型號。如前所述,該第一開關110的型號提供,除了別的以外還有,該型號、任何其他種類的辨識碼,及/或該第一開關110的相關規格。在各種實施例當中,該第一開關110的型號可被編碼在與重新得到自該下行鏈路組態子模組220或該自動多機箱鏈路聚合組模組116。在其他實施例當中,該第一開關110的型號可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
在步驟420,該下行鏈路組態子模組220基於系統資訊,重新得到關於該第一開關110之該下行鏈路埠118的資訊,例如該第一開關110的型號。關於該下行鏈路埠118的資訊包含但不限制下行鏈路埠的總數、特殊配置參數及/或任何其他關於該下行鏈路埠118的資訊。在各種實施例當中,基於該第一開關110的型號,關於該下行鏈路埠118的資訊可被編碼在與重新得到自該下行鏈路組態子模組220或該自動多機箱鏈路聚合組模組116。在其他實施例當中,關於該下行鏈路埠118的資訊可自該第一開關110之該記憶體114重新得到,自該計算裝置140之該記憶體144重新得到,或是從該網路130下載。
在步驟430,該下行鏈路組態子模組220設定一或更多個回路參數;例如,該下行鏈路組態子模組220設定一個下行鏈路埠數量參數等於存在於該第一開關110之該些下行鏈路埠118的數量。在步驟440,該下行鏈路組態子模組220初始化一回路計數器參數,例如藉由設定該回路計數器等於零。
在步驟450,該下行鏈路組態子模組220在該些下行鏈路埠之一及該些下行鏈路裝置160~164之一之間配置一下行鏈路連接,其中該些下行鏈路埠被包含在該些下行鏈路埠118的一套且與回路計數器的數值一致,且該些下行鏈路裝置160~164亦與回路計數器的數值一致;例如,對於回路計數器的初始值來說,該下行鏈路組態子模組220執行一或更多個操作以配置被包含在該些下行鏈路埠118的一第一下行鏈路埠與一第一下行鏈路裝置160之間的一連接;接著,在步驟460,該下行鏈路組態子模組220增加回路計數器的數值。
該方法400接著進入步驟470,其中該下行鏈路組態子模組220判斷是否有額外的下行鏈路連接需要被配置,例如藉由判斷回路計數器的增加數值是否等於該下行鏈路埠數量參數;例如,如果該下行鏈路組態子模組220判斷沒有額外的下行鏈路連接需要被配置,例如當回路計數器的增加數值等於該下行鏈路埠數量參數,則該方法400進入步驟480,結束該些下行鏈路埠的該自動組態程序。
現在回到步驟470,如果該下行鏈路組態子模組220判斷有額外的下行鏈路連接需要被配置,例如當回路計數器的增加數值不等於該下行鏈路埠數量參數,則該方法400回到如上所述之步驟450以允許另一個下行鏈路連接被配置。
該下行鏈路組態子模組220以回路樣式繼續執行步驟450至470以配置所有的下行鏈路埠。在該回路的每個重複,一個下行鏈路連接被配置,且該回路計數器增加。該回路被重複直到所有的下行鏈路連接經過所有的下行鏈路埠都被配置,例如當該回路計數器達到下行鏈路埠的總數。一旦該回路計數器等於該下行鏈路埠數量參數,表明被包含在該些下行鏈路埠118的一套的所有下行鏈路埠已經被配置,該方法400結束。
在其他的實施例當中,一旦該方法400結束,且該MLAG 105被完全地配置,該下行鏈路組態子模組220適時地在某些提前點執行額外的操作以更新該MLAG 105的組態或再組態;那些操作包含但不限制判斷該MLAG 105是否有改變,例如一連接纜線的改變或該些實體開關之一的改變,或判斷該下行鏈路組態子模組220是否收到任何種類的重新啟動信號以更新該MLAG 105的組態或再組態。該下行鏈路組態子模組220週期性地執行此額外的操作;例如如果該下行鏈路組態子模組220判斷該MLAG 105有改變或該下行鏈路組態子模組220接收到一重新啟動信號,則該下行鏈路組態子模組220執行如上所述之步驟440到480以更新該MLAG 105的組態或再組態。此方法啟動該內部同級鏈路探索子模組210在一持續的基礎上主動地監視該MLAG的情況且/或在一持續的基礎上主動地監視是否接收到一重新啟動信號以確保該第一開關110的所有的該些下行鏈路埠118一直都被恰當地配置。
在各種實施例當中,MLAG功能可在該第一開關110及該第二開關120所有的通訊埠被啟動;在其他實施例當中,一使用者手動地覆蓋某些通訊埠的組態,使得MLAG功能在有些通訊埠被啟動,但在某些連接至某些下行鏈路裝置160~164的其他通訊埠不被啟動。
在各種其他實施例當中,該第一開關110及該第二開關120分別包含的該下行鏈路埠118及該下行鏈路埠128係被用於下行鏈路埠,而該第一開關110及該第二開關120分別包含的該上行鏈路埠119及該上行鏈路埠129係被用於上行鏈路埠。在其他的實施例當中,被包含在該第一開關110的該下行鏈路埠118及該上行鏈路埠119的每個埠,以及被包含在該第二開關120的該下行鏈路埠128及該上行鏈路埠129的每個埠,會被包含在通訊埠的通用池內,基於該通訊系統100的需求以被指定作為下行鏈路或上行鏈路。
在各種其他實施例當中,該第一開關110及該第二開關120具有相同的型號;在一些其他實施例當中,該第一開關110及該第二開關120具有不同的型號,但具有相同的通訊埠號碼;例如該些開關可為標準化的或複製的(clone)開關裝置,具有大體上相似的規格但不同的製造者及/或型號。在其他實施例當中,該第一開關110及該第二開關120具有不同的型號以及不同的通訊埠號碼;在此狀況下,該第一開關110的一下行鏈路埠118會跟該第二開關120的一相應的下行鏈路埠128配對,使得MLAG通訊在每個如此的下行鏈路埠的配對上被啟動,即使兩開關的通訊埠的總數不同。
總而言之,更有效地配置該IPL及一MLAG系統的鏈路的方法被揭露;特別是,依據一般的方法,被透過一CLI手動輸入的數百個命令可被少至兩個命令所取代,一個對該MLAG系統的每個開關;該兩個命令觸發一自動組態程序以配置該MLAG系統的該IPL介面以及至耦合至每個開關的下行鏈路傳送裝置的全部的鏈路。更具體地說,該兩個命令的每一個包含系統資訊,例如一系統識別符,以設定該系統識別符成為該MAC位址以應用於該MLAG系統。進一步地,該兩個命令的每一個對該開關啟動一IPL探索程序,其中探索封包係週期性地經由該開關的每個上行鏈路埠被傳送。在一個上行鏈路埠接收的每個如此的探索封包被分析以判斷該上行鏈路埠是否形成具有該同級(peer)開關的該IPL的一部分。因此,每個開關可以自動地正確地判斷哪個或哪些上行鏈路埠形成具有該同級開關的該IPL。進一步地,該兩個命令的每一個啟動該開關的下行鏈路連接組態程序,其中系統資訊,例如一特定開關的型號指出該開關的下行鏈路埠的號碼及安排;因此,該自動組態程序包含一回路操作以配置從不同的下行鏈路埠到各種下行鏈路傳送裝置,例如伺服機,的所有連接。
為說明之目的,各種實施例的描述已被呈現,但該些揭露之實施例不企圖詳盡無遺或被限制;許多修改與變化不脫離該範疇與描述的實施例的精神,對本領域技術人員來說是顯而易見的。
本實施例的方向被表現為一個系統、方法或電腦程式產品;因此,本揭露的方向採用一完全硬體實施例、一完全軟體實施例(包含韌體(firmware)、常駐軟體(resident software)、微碼(micro-code)等等)或結合軟體及硬體方面的實施例的型式,通常地稱為模組或系統。再者,本揭露的方向採用電腦程式產品的型式,體現在一或更多個電腦可讀媒體,其中該電腦可讀媒體具有電腦可讀程式碼體現在其上。
一或更多個電腦可讀媒體的任何組合可被利用;該電腦可讀媒體可為一電腦可讀訊號媒體或一電腦可讀儲存媒體。一電腦可讀儲存媒體可為例如但不限制為一電子的、磁的、光學的、電磁的、紅外線的,或半導體系統、裝置或設備,或任何前述內容的適當的組合。該電腦可讀儲存媒體的更特定的例子(一非全面的清單(non-exhaustive list))包含下列:具有一條或更多條線的一電氣連接、一可攜式電腦磁片(diskette)、一硬碟(hard disk)、一隨機存取記憶體(RAM)、ㄧ唯讀記憶體(ROM)、一可抹除可規劃唯讀記憶體(EPROM 或 Flash memory)、一光纖(optical fiber)、一可攜式光碟唯讀記憶體(CD-ROM)、一光學儲存裝置、一磁的儲存裝置、或任何前述內容的適當的組合。在本文件的上下文,一電腦可讀儲存媒體可為任何有形的媒體,可以包含或儲存專用於或與一指令執行系統、裝置或設備連結的一程式。
本揭露的方向參考流程圖說明及/或方法、裝置(系統)的方塊圖及依據本揭露之實施例之電腦程式產品描述如上;可被理解的是,流程圖說明及/或方塊圖的每一個以及流程圖說明及/或方塊圖的組合,可被電腦程式指令所實施。那些電腦程式指令可被提供至一普通目的的電腦的、特殊目的的電腦的或其他可程式資料處理裝置的一處理器,以生產一機器,使得該些指令啟動特定在流程圖及/或方塊圖方塊或複數方塊的功能/行動的體現,其中該些指令通過電腦的處理器或其他可程式資料處理裝置執行;此等處理器可為但不限制普通目的的處理器、特殊目的的處理器、特殊用途的處理器或現場可編程處理器。
圖示中的流程圖與方塊圖說明了依據本揭露的各種的實施例的系統、方法與電腦程式產品的架構、功能與可能實踐的操作。就這一點而言,在流程圖或方塊圖的每個方塊代表一個模組、部份或碼的部份,包含一或更多個可執行的指令以體現特定的邏輯功能。亦須知,在一些其他的實施例當中,記載在方塊內的功能也許會發生記載在圖示內的不尋常;例如,顯示在連續的兩個方塊也許會,事實上,被大體上同時地執行,或該些方塊依據有關的功能也許有時會以相反順序執行。亦須知,方塊圖及/或流程圖說明的每個方塊,以及方塊圖及/或流程圖說明的方塊的組合,可藉由特殊目的硬體式(hardware-based)系統實現,以執行特定的功能或行動,或特殊目的的硬體與電腦指令的結合。
本發明已被特定的實施例的參考描述如上;然而,本領域技術人員應明白各種修改與改變不脫離本發明的廣大的精神與範圍都可被實現,如以下請求項所示;因此,前述內容與圖示僅作為說明用而非限制功能。
前述內容係針對本揭露之具體實施例,而本揭露之其他及進一步的實施例可在不脫離其基本範疇下被設計,且該範疇係由下述請求項所決定。
100‧‧‧系統
105‧‧‧多機箱鏈路聚合組
110‧‧‧第一開關
112‧‧‧處理器
114‧‧‧記憶體
116‧‧‧自動多機箱鏈路聚合組模組
118‧‧‧下行鏈路埠
119‧‧‧上行鏈路埠
120‧‧‧第二開關
122‧‧‧處理器
124‧‧‧記憶體
126‧‧‧自動多機箱鏈路聚合組模組
128‧‧‧下行鏈路埠
129‧‧‧上行鏈路埠
130‧‧‧網路
140‧‧‧計算裝置
142‧‧‧處理器
144‧‧‧記憶體
146‧‧‧輸入輸出裝置
150‧‧‧內部同級鏈路
160‧‧‧下行鏈路裝置
162‧‧‧下行鏈路裝置
164‧‧‧下行鏈路裝置
210‧‧‧內部同級鏈路探索子模組
220‧‧‧下行鏈路組態子模組
300~390‧‧‧步驟
400~480‧‧‧步驟
因此,本發明之上述特徵的方式應可被詳細地明瞭,而本發明之更詳細的敘述以及簡略地總結上述內容則可藉由參考實施例以及顯示在附加的圖示的內容所明瞭。須知附加的圖示僅為本發明之典型的實施例而不該被認為限制本發明所欲保護之範疇,本發明還應包含其他具有相同功效之實施例。
圖1為執行本發明之一或更多方面之一系統之一方塊圖。
圖2為依據本發明之各種實施例,圖1的自動MLAG模組之一的更詳細之圖例。
圖3為依據本發明之各種實施例,在一開關之一或更多個上行鏈路埠上執行內部同級鏈路(inter peer link,簡稱為IPL)探索之方法步驟之一流程圖。
圖4為依據本發明之各種實施例,配置一開關之一或更多個下行鏈路埠之方法步驟之一流程圖。
300~390‧‧‧步驟
Claims (23)
- 一種電腦執行方法以自動地組態一多機箱鏈路聚合組,該方法包含: 接收關於該多機箱鏈路聚合組的第一系統資訊; 經由關於一第一開關的一第一上行鏈路埠接收一第一探索封包,其中該多機箱鏈路聚合組包含該第一開關,其中該第一探索封包包含關於該多機箱鏈路聚合組的第二系統資訊; 決定該第一系統資訊是否匹配該第二系統資訊; 如果該第一系統資訊匹配該第二系統資訊,則推斷該第一上行鏈路埠被包含在一內部同級鏈路,其中該內部同級鏈路連接該第一開關至一第二開關,其中該多機箱鏈路聚合組亦包含該第二開關;及 如果該第一系統資訊不匹配該第二系統資訊,則推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
- 如申請專利範圍第1項所述之電腦執行方法,其中該第一系統資訊包含關於該多機箱鏈路聚合組之一第一系統識別符,且該第二系統資訊包含關於該多機箱鏈路聚合組之一第二系統識別符。
- 如申請專利範圍第2項所述之電腦執行方法,其中相關於該多機箱鏈路聚合組之該第一系統識別符係藉由一命令行介面接收。
- 如申請專利範圍第2項所述之電腦執行方法,其中該第一系統資訊亦指出關於該第一開關的一第一型號,該第二系統資訊亦指出關於該第二開關的一第二型號。
- 如申請專利範圍第4項所述之電腦執行方法,其中如果該第一系統識別符匹配該第二系統識別符,且該第一型號匹配該第二型號,則該第一系統資訊匹配該第二系統資訊。
- 如申請專利範圍第4項所述之電腦執行方法,其中如果該第一系統識別符不匹配該第二系統識別符,或該第一型號不匹配該第二型號,則該第一系統資訊不匹配該第二系統資訊。
- 如申請專利範圍第1項所述之電腦執行方法,其中該第一系統資訊匹配該第二系統資訊,並更包含: 判斷該第一上行鏈路埠沒有已經被包含在該內部同級鏈路內; 增加該第一上行鏈路埠至上行鏈路埠清單,其中上行鏈路埠被包含在該內部同級鏈路內;及 配置該第一上行鏈路埠成為該內部同級鏈路的一部分,其中該內部同級鏈路連接該第一開關至該第二開關。
- 如申請專利範圍第1項所述之電腦執行方法,其中該第一系統資訊不匹配該第二系統資訊,並更包含: 判斷該第一上行鏈路埠已經被包含在該內部同級鏈路內;及 從上行鏈路埠清單移除該第一上行鏈路埠,其中上行鏈路埠被包含在該內部同級鏈路內。
- 如申請專利範圍第1項所述之電腦執行方法,更包含在具有一第一時間週期的週期的複數間隔經由該第一上行鏈路埠傳送複數之探索封包。
- 如申請專利範圍第9項所述之電腦執行方法,更包含: 自從經由該第一上行鏈路埠接收一最新的探索封包之後,判斷一第二時間週期已經過去,其中該第二時間週期大於該第一時間週期;及 推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
- 一種非暫時性的電腦可讀的儲存媒體,包含複數之指令使得當被一處理器執行時,引起該處理器自動地配置一多機箱鏈路聚合組,藉由執行步驟: 接收關於該多機箱鏈路聚合組的第一系統資訊; 經由關於一第一開關的一第一上行鏈路埠接收一第一探索封包,其中該多機箱鏈路聚合組包含該第一開關,其中該第一探索封包包含關於該多機箱鏈路聚合組的第二系統資訊; 決定該第一系統資訊是否匹配該第二系統資訊; 如果該第一系統資訊匹配該第二系統資訊,則推斷該第一上行鏈路埠被包含在一內部同級鏈路,其中該內部同級鏈路連接該第一開關至一第二開關,其中該多機箱鏈路聚合組亦包含該第二開關;及 如果該第一系統資訊不匹配該第二系統資訊,則推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
- 如申請專利範圍第11項所述之非暫時性的電腦可讀的儲存媒體,其中該第一系統資訊包含關於該多機箱鏈路聚合組之一第一系統識別符,且該第二系統資訊包含相關於該多機箱鏈路聚合組之一第二系統識別符。
- 如申請專利範圍第12項所述之非暫時性的電腦可讀的儲存媒體,其中關於該多機箱鏈路聚合組之該第一系統識別符係藉由一命令行介面接收。
- 如申請專利範圍第12項所述之非暫時性的電腦可讀的儲存媒體,其中該第一系統資訊亦指出關於該第一開關的一第一型號,該第二系統資訊亦指出關於該第二開關的一第二型號。
- 如申請專利範圍第14項所述之非暫時性的電腦可讀的儲存媒體,其中如果該第一系統識別符匹配該第二系統識別符,且該第一型號匹配該第二型號,則該第一系統資訊匹配該第二系統資訊。
- 如申請專利範圍第14項所述之非暫時性的電腦可讀的儲存媒體,其中如果該第一系統識別符不匹配該第二系統識別符,或該第一型號不匹配該第二型號,則該第一系統資訊不匹配該第二系統資訊。
- 如申請專利範圍第11項所述之非暫時性的電腦可讀的儲存媒體,其中該第一系統資訊匹配該第二系統資訊,並更包含: 判斷該第一上行鏈路埠沒有已經被包含在該內部同級鏈路內; 增加該第一上行鏈路埠至上行鏈路埠清單,其中上行鏈路埠被包含在該內部同級鏈路內;及 配置該第一上行鏈路埠成為該內部同級鏈路的一部分,其中該內部同級鏈路連接該第一開關至該第二開關。
- 如申請專利範圍第11項所述之非暫時性的電腦可讀的儲存媒體,其中該第一系統資訊不匹配該第二系統資訊,並更包含: 判斷該第一上行鏈路埠已經被包含在該內部同級鏈路內;及 從上行鏈路埠清單移除該第一上行鏈路埠,其中上行鏈路埠被包含在該內部同級鏈路內。
- 如申請專利範圍第11項所述之非暫時性的電腦可讀的儲存媒體,更包含在具有一第一時間週期的週期的複數間隔經由該第一上行鏈路埠傳送複數之探索封包。
- 如申請專利範圍第19項所述之非暫時性的電腦可讀的儲存媒體,更包含: 自從經由該第一上行鏈路埠接收一最新的探索封包之後,判斷一第二時間週期已經過去,其中該第二時間週期大於該第一時間週期;及 推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
- 一種系統,包含: 一微處理器,當執行儲存在一記憶體之複數之指令時: 接收關於一多機箱鏈路聚合組的第一系統資訊; 經由關於一第一開關的一第一上行鏈路埠接收一第一探索封包,其中該多機箱鏈路聚合組包含該第一開關,其中該第一探索封包包含關於該多機箱鏈路聚合組的第二系統資訊; 決定該第一系統資訊是否匹配該第二系統資訊; 如果該第一系統資訊匹配該第二系統資訊,則推斷該第一上行鏈路埠被包含在一內部同級鏈路,其中該內部同級鏈路連接該第一開關至一第二開關,其中該多機箱鏈路聚合組亦包含該第二開關;及 如果該第一系統資訊不匹配該第二系統資訊,則推斷該第一上行鏈路埠不被包含在該內部同級鏈路。
- 如申請專利範圍第21項所述之系統,其中該第一系統資訊包含關於該多機箱鏈路聚合組之一第一系統識別符,並亦指出關於該第一開關的一第一型號;該第二系統資訊包含關於該多機箱鏈路聚合組之一第二系統識別符,並亦指出關於該第二開關的一第二型號。
- 如申請專利範圍第22項所述之系統,其中該第一系統資訊匹配該第二系統資訊,包含該第一系統識別符匹配該第二系統識別符,且該第一型號匹配該第二型號,且其中該微處理器更: 判斷該第一上行鏈路埠沒有已經被包含在該內部同級鏈路內; 增加該第一上行鏈路埠至上行鏈路埠清單,其中上行鏈路埠被包含在該內部同級鏈路內;及 配置該第一上行鏈路埠成為該內部同級鏈路的一部分,其中該內部同級鏈路連接該第一開關至該第二開關。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662325926P | 2016-04-21 | 2016-04-21 | |
US62/325,926 | 2016-04-21 | ||
US15/265,719 US10454766B2 (en) | 2016-04-21 | 2016-09-14 | Automatic configuration of a network switch in a multi-chassis link aggregation group |
US15/265,719 | 2016-09-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201739225A true TW201739225A (zh) | 2017-11-01 |
TWI647937B TWI647937B (zh) | 2019-01-11 |
Family
ID=60090434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106112608A TWI647937B (zh) | 2016-04-21 | 2017-04-14 | 在多機箱鏈路聚合組的網路交換器的自動組態 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10454766B2 (zh) |
CN (1) | CN107395390B (zh) |
TW (1) | TWI647937B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9584413B2 (en) * | 2014-11-18 | 2017-02-28 | Gigamon Inc. | Systems and methods for determining input and out interfaces of a network device and copies of a same packet going through the network device |
US10374942B2 (en) * | 2017-09-06 | 2019-08-06 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd | Link aggregation group management |
US11245644B2 (en) * | 2018-01-19 | 2022-02-08 | Super Micro Computer, Inc. | Automatic multi-chassis link aggregation configuration |
US10470111B1 (en) * | 2018-04-25 | 2019-11-05 | Hewlett Packard Enterprise Development Lp | Protocol to detect if uplink is connected to 802.1D noncompliant device |
US11438279B2 (en) * | 2018-07-23 | 2022-09-06 | Pure Storage, Inc. | Non-disruptive conversion of a clustered service from single-chassis to multi-chassis |
TW202404318A (zh) | 2018-08-23 | 2024-01-16 | 美商阿爾克斯股份有限公司 | 網路運算環境中使用位址解析協定的第一跳轉閘道的冗餘機制系統 |
US11296979B2 (en) * | 2018-12-19 | 2022-04-05 | Arista Networks, Inc. | Method and system for symmetric integrated routing and bridging |
US10862794B2 (en) * | 2019-01-31 | 2020-12-08 | Dell Products L.P. | Automated link aggregation group configuration system |
JP7208458B2 (ja) * | 2019-02-27 | 2023-01-19 | 富士通株式会社 | 通信装置、通信システム、及び通信方法 |
US10965593B2 (en) * | 2019-06-12 | 2021-03-30 | Cisco Technology, Inc. | Optimizations for PE-CE protocol session handling in a multi-homed topology |
US11456969B2 (en) * | 2019-08-13 | 2022-09-27 | Hewlett Packard Enterprise Development Lp | Predictive handover of traffic in an aggregation network |
CN113572695B (zh) * | 2020-04-28 | 2023-11-14 | ***通信集团浙江有限公司 | 链路聚合方法、装置、计算设备及计算机存储介质 |
US11546184B2 (en) | 2021-04-27 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Selecting a rendezvous point in an IP multicast-capable network |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5517652A (en) * | 1990-05-30 | 1996-05-14 | Hitachi, Ltd. | Multi-media server for treating multi-media information and communication system empolying the multi-media server |
US20030061132A1 (en) * | 2001-09-26 | 2003-03-27 | Yu, Mason K. | System and method for categorizing, aggregating and analyzing payment transactions data |
US7729361B2 (en) * | 2006-02-24 | 2010-06-01 | Cisco Technology, Inc. | Method and system for power-efficient adaptive link aggregation |
US8503329B2 (en) * | 2009-08-05 | 2013-08-06 | Cisco Technology, Inc. | Signaling of attachment circuit status and automatic discovery of inter-chassis communication peers |
US8761005B2 (en) * | 2011-04-26 | 2014-06-24 | Dell Products L.P. | Multi-chassis link aggregation on network devices |
US9692686B2 (en) * | 2011-06-08 | 2017-06-27 | Dell Products L.P. | Method and system for implementing a multi-chassis link aggregation group in a network |
US8996350B1 (en) * | 2011-11-02 | 2015-03-31 | Dub Software Group, Inc. | System and method for automatic document management |
US8891561B2 (en) * | 2012-07-16 | 2014-11-18 | Broadcom Corporation | 50 Gb/s ethernet using serializer/deserializer lanes |
JP5821815B2 (ja) * | 2012-09-11 | 2015-11-24 | 日立金属株式会社 | 通信システムおよび通信システムの処理方法 |
US9660901B2 (en) * | 2012-11-14 | 2017-05-23 | Dell Products L.P. | Systems and methods for forming and using a group of link aggregation groups to reduce traffic on interconnect links |
JP6007819B2 (ja) * | 2013-02-13 | 2016-10-12 | 日立金属株式会社 | 通信システムおよびネットワーク中継装置 |
WO2014147746A1 (ja) * | 2013-03-19 | 2014-09-25 | 富士通株式会社 | スイッチ及びプログラム |
US9497074B2 (en) * | 2013-04-23 | 2016-11-15 | Telefonaktiebolaget L M Ericsson (Publ) | Packet data unit (PDU) structure for supporting distributed relay control protocol (DRCP) |
JP5809189B2 (ja) * | 2013-04-26 | 2015-11-10 | 株式会社日立製作所 | 通信経路切替装置、通信経路切替方法、および通信経路切替プログラム |
US9264302B2 (en) * | 2013-06-17 | 2016-02-16 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and systems with enhanced robustness for multi-chassis link aggregation group |
JP6173833B2 (ja) * | 2013-08-19 | 2017-08-02 | APRESIA Systems株式会社 | ネットワーク中継システムおよびスイッチ装置 |
US9385942B2 (en) * | 2014-04-30 | 2016-07-05 | Extreme Networks, Inc. | Methods, systems, and computer readable media for providing N-node multi-switch link aggregation groups (MLAGs) |
US9813290B2 (en) * | 2014-08-29 | 2017-11-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for supporting distributed relay control protocol (DRCP) operations upon misconfiguration |
CN105591916B (zh) * | 2014-10-22 | 2018-10-30 | 华为技术有限公司 | 一种报文传输方法及装置 |
CN104486124B (zh) * | 2014-12-19 | 2018-09-04 | 盛科网络(苏州)有限公司 | 使用逻辑端口实现多***链路聚合的装置及方法 |
CN104639464B (zh) * | 2015-01-09 | 2018-06-15 | 盛科网络(苏州)有限公司 | OpenFlow交换机上实现跨交换机链路聚合的***及方法 |
US10257019B2 (en) * | 2015-12-04 | 2019-04-09 | Arista Networks, Inc. | Link aggregation split-brain detection and recovery |
US10050855B1 (en) * | 2015-12-17 | 2018-08-14 | Juniper Networks, Inc. | Maintaining a tunnel liveness session in a multi-chassis link aggregation group topology |
US10819575B2 (en) * | 2016-02-26 | 2020-10-27 | Arista Networks, Inc. | System and method of configuring network elements |
US10200278B2 (en) * | 2016-03-02 | 2019-02-05 | Arista Networks, Inc. | Network management system control service for VXLAN on an MLAG domain |
-
2016
- 2016-09-14 US US15/265,719 patent/US10454766B2/en active Active
-
2017
- 2017-04-14 TW TW106112608A patent/TWI647937B/zh active
- 2017-04-21 CN CN201710266319.2A patent/CN107395390B/zh active Active
-
2019
- 2019-10-22 US US16/660,721 patent/US11212179B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
TWI647937B (zh) | 2019-01-11 |
US11212179B2 (en) | 2021-12-28 |
US10454766B2 (en) | 2019-10-22 |
CN107395390A (zh) | 2017-11-24 |
US20170310548A1 (en) | 2017-10-26 |
CN107395390B (zh) | 2020-08-25 |
US20200119990A1 (en) | 2020-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201739225A (zh) | 在多機箱鏈路聚合組的網路開關的自動組態 | |
EP2951957B1 (en) | Network switch simulation | |
JP2021057033A5 (zh) | ||
EP3382942B1 (en) | Network service configuration method and network management device | |
KR20180039465A (ko) | 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 서비스 기능 경로 설정 장치 및 방법 | |
US20170155717A1 (en) | Direct memory access for endpoint devices | |
US10516599B1 (en) | Link priority for loop-protect | |
KR20200039608A (ko) | 가상화 디바이스 | |
TW201916643A (zh) | 用於乙太網路交換器之角色型自動設定系統及方法 | |
US10084656B2 (en) | TRILL network establishing method, node, and system | |
CN104703211B (zh) | 一种虚拟化接入方法及设备 | |
US9912592B2 (en) | Troubleshooting openflow networks | |
US10778510B2 (en) | Coordinated network configuration system | |
US10270655B2 (en) | Method for running a computer network and computer network | |
KR101610031B1 (ko) | 소프트웨어 정의 네트워크에서 컨트롤러를 내장하는 오픈플로우 스위치의 제어방법 및 장치 | |
CN110086676A (zh) | 一种分布式路由器的配置方法及相关设备 | |
US20180324001A1 (en) | Real-time distributed engine framework of ethernet virtual connections | |
CN109951397B (zh) | 报文处理的方法和设备 | |
US10498832B2 (en) | Link-training auto-negotiation protocol with three-way handshake | |
US10193739B2 (en) | Communication device | |
WO2017143969A1 (zh) | 一种控制端口状态的方法、路由设备及网络处理器 | |
FR3028371B1 (fr) | Procede de surveillance et de controle deportes d'un cluster utilisant un reseau de communication de type infiniband et programme d'ordinateur mettant en oeuvre ce procede | |
CN106375357B (zh) | 软件定义网络设备与控制器连接状态的指示方法及装置 | |
CN115174654B (zh) | 一种基于FPGA和InfiniBand网络的异地通信方法及*** | |
JP2013115733A (ja) | ネットワークシステム、及びネットワーク制御方法 |