[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

TWI676378B - 網路自動鏈結備援方法與網路系統 - Google Patents

網路自動鏈結備援方法與網路系統 Download PDF

Info

Publication number
TWI676378B
TWI676378B TW107127085A TW107127085A TWI676378B TW I676378 B TWI676378 B TW I676378B TW 107127085 A TW107127085 A TW 107127085A TW 107127085 A TW107127085 A TW 107127085A TW I676378 B TWI676378 B TW I676378B
Authority
TW
Taiwan
Prior art keywords
link
switch
backup
packet
ridge
Prior art date
Application number
TW107127085A
Other languages
English (en)
Other versions
TW202008756A (zh
Inventor
林銘賢
Ming Sian Lin
林志哲
Chih Che Lin
Original Assignee
思銳科技股份有限公司
Estinet Technologies Inc.
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 思銳科技股份有限公司, Estinet Technologies Inc. filed Critical 思銳科技股份有限公司
Priority to TW107127085A priority Critical patent/TWI676378B/zh
Priority to CN201810916511.6A priority patent/CN110798399A/zh
Priority to US16/454,260 priority patent/US20200044960A1/en
Application granted granted Critical
Publication of TWI676378B publication Critical patent/TWI676378B/zh
Publication of TW202008756A publication Critical patent/TW202008756A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一種網路自動鏈結備援方法,應用在一個具有至少兩個脊交換機的網路系統中,脊交換機之間建立一條備援鏈結,一旦於本鏈結失效,即執行交換機內的備援機制。在此網路系統中,各脊交換機中設有鏈結備援群組,當脊交換機接收來自於某一終端設備產生的封包,經解析封包後,判斷每一條到目的地的鏈結優先順序,能依據此鏈結順序,通過特定交換機通訊埠轉送封包,在脊交換機轉送封包失效時,即通過備援鏈結傳送封包至另一脊交換機,達到傳送封包到目的地的目的。

Description

網路自動鏈結備援方法與網路系統
說明書公開一種網路自動鏈結備援技術,特別是一種通過建立網路中脊交換機之間備援鏈結而達到自動鏈結備援目的的方法與相關網路系統。
建構一個網路系統,最重要的議題之一是網路路徑的可靠性,因此各式網路拓撲針對路徑失效都提出各種對應的備援(backup)或稱故障移轉(failover)的解決方案,甚至是要求在最短時間內完成故障移轉。
例如,在網路節點(如網路交換機)之間彼此僅有一條鏈結的網路中,提供單一鏈結備援(single-link failover),可以針對某條鏈結斷路時提供修復,在交換機內設定固定的規則,當在某個通訊埠或鏈結失效後,改由其他特定通訊埠轉送出去。然而,這樣的備援機制需要仰賴網路中交換機控制器修改資料流規則(flow rule),使得封包可以依照新的資料流規則傳送,迴避鏈結失效的路徑。如此,可能會造成備援完成時間較長,也會因為交換機更新資料流規則的效能而影響網路回復時間。
在另一成本較高的多鏈結備援(multiple-link failover)機制中,網路中節點(例如網路交換機)之間建立兩條鏈結,包括網路中的脊交換機(Spine Switch)與葉交換機(Leaf Switch),彼此 之間都用兩條鏈結連接,但傳統的脊交換機之間沒有設置資料傳輸的鏈結(data link)。在此架構下,可由網路控制器(如軟體定義網路控制器,SDN Controller)設定封包轉發規則,從葉交換機到葉交換機之間的封包由脊交換機轉送,而封包轉發規則由定義在快速故障群組內的鏈結依優先順序來選擇作為轉發鏈結而實現。亦即,當葉交換機有封包要轉發時,由群組規則決定第一優先及第二優先與脊交換機連接的轉發埠,若第一優先的脊交換機故障時,可立即改由第二優先的轉發埠轉送封包給第二優先的脊交換機。如此,當有某一鏈結失效,另一鏈結可以迅速取代,快速地完成備援以恢復網路路徑的可用性。
然而,上述節點間多鏈結備援的機制除了成本高,若是網路中仍有部分線路採用單一鏈結,仍有機會造成備援完成時間長,以及回復效率低的問題,無法以全局的概念執行備援。
舉例來說,如圖1所示為一個雙層的網路結構,第一層由脊交換機(第一脊交換機Spine1與第二脊交換機Spine2)組成,第二層有葉交換機:第一葉交換機Leaf1、第二葉交換機Leaf2、第三葉交換機Learf3與第四葉交換機Leaf4。此例顯示,當第二脊交換機Spine2與第四葉交換機Leaf4之間的鏈接101故障時,若第二脊交換機Spine2經鏈結102接收第一葉交換機Leaf1的封包,其目的地為第四葉交換機Leaf4的封包時,無法轉送封包給其目的地第四葉交換機Leaf4。網路系統中的控制器應需要避免第一葉交換機Leaf1的封包目的地為第四葉交換機Leaf4的封包送到第二脊交換機Spine2,才能迴避故障的鏈結101。同理,第二葉交換機Leaf2、第三葉交換機Leaf3也應該要避免將目的地為第四葉交換機Leaf4的封包送到第二脊交換機Spine2,否則第二脊交換機將會找不到可用鏈結可以將封包傳送到目的地第四葉交換機Leaf4。
但是在此系統下,其實葉交換機Leaf1、Leaf2與Leaf3並無法偵測第二脊交換機Spine2與第四葉交換機Leaf4之間的鍵結101 中斷,所以還是會把要到第四葉交換機Leaf4的封包往第二脊交換機Spine2傳送,導致封包無法到達目的地。
常見網路中的脊交換機之間不會有資料鏈結相連,因為這個鏈結在網路拓樸上形成了迴圈(loop),因此習知的網路協定,例如擴充樹協定(spanning tree protocol,STP)有一定機率會關閉這個資料鏈結,因而使得此鏈結無效。甚至,若擴充樹協議未關閉此資料鏈結,則會因避免迴圈而關閉某一脊交換機與葉交換機之間的資料鏈結,此為設計不良的網路拓樸並可能衍生其他問題。
如此,即便習知技術可能在脊交換機之間建立了鏈結,卻多半用於控制訊息交換,並且,欲使用備援機制時,需要管理者手動設定,耗時且易發生錯誤。
揭露書公開一種網路自動鏈結備援方法與相關網路系統,方法應用在一個具有至少兩個脊交換機(Spine Switch)(或加上多個葉交換機(Leaf Switch))的網路系統中,網路系統在相鄰兩個脊交換機之間建立一條備援鏈結,執行於交換機內的軟體程序可以自動偵測鏈結狀態,並能在原本鏈結線路失效後,通過交換機內備援機制自動執行備援。
根據實施例之一,網路自動鏈結備援方法運作於一網路系統中的多個脊交換機中,各脊交換機中設有為網路系統中每個終端設備建立的一鏈結備援群組,相鄰脊交換機之間建立一備援鏈結。
在方法中,第一脊交換機接收來自於一終端設備產生的封包,經交換機內軟體程序解析封包,得出鏈結備援群組內符合轉送封包至目的地的一鏈結順序,之後,依據鏈結順序中多個通訊埠的優先順序傳送封包。
在轉送過程中,第一脊交換機還判斷其通往封包目的地的鏈結或通訊埠是否失效,若鏈結或通訊埠失效,第一脊交換機即通 過備援鏈結傳送封包至第二脊交換機,由第二脊交換機同樣地解析封包,依據第二脊交換機內的鏈結備援群組內符合轉送封包至目的地的鏈結順序傳送封包;若鏈結沒有失效,第一脊交換機即根據其得出的鏈結順序完成轉送。
較佳地,各脊交換機通過鏈結備援群組設定每個交換機轉送封包的鏈結順序,鏈結可由交換機識別碼、通訊埠編號,以及/或脊交換機之間的備援鏈結代碼或編號等方法來表示。
更者,網路系統中各交換機之間的鏈結由各鏈結端點的交換機識別碼可區分定義為脊交換機之間的備援鏈結或現行資料鏈結。
在所述網路系統的實施例中,網路系統包括多個脊交換機,包括第一脊交換機與第二脊交換機,兩者之間建立一備援鏈結;多個葉交換機,各葉交換機與該多個脊交換機個別建立現行資料鏈結。其中,各脊交換機中設有為網路系統中每個終端設備建立的鏈結備援群組,並運行上述網路自動鏈結備援方法。
在另一實施例中,網路系統中的各葉交換機由虛擬通訊埠表示,虛擬通訊埠設有一可轉發埠集合,網路系統依照此可轉發埠集合的可能排列方式決定轉發埠的優先順序,並設定於各葉交換機的鏈結備援群組中,轉發埠中包括備援埠,如此,系統可依不同的排列方式建立快速故障轉移群組,讓各終端設備之間傳送的封包可通過共享快速故障轉移群組轉送,達到備援的目的。
為了能更進一步瞭解本發明為達成既定目的所採取之技術、方法及功效,請參閱以下有關本發明之詳細說明、圖式,相信本發明之目的、特徵與特點,當可由此得以深入且具體之瞭解,然而所附圖式僅提供參考與說明用,並非用來對本發明加以限制者。
Leaf1,Leaf2,Learf3,Leaf4‧‧‧葉交換機
101,102,103,104‧‧‧鍵結
21‧‧‧第一脊交換機
22‧‧‧第二脊交換機
23‧‧‧第一葉交換機
24‧‧‧第二葉交換機
202,203,204,205‧‧‧連線
201‧‧‧備援鏈結
Spine1‧‧‧第一脊交換機
Spine2‧‧‧第二脊交換機
L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12‧‧‧現行資料鏈結
Leaf1‧‧‧第一葉交換機
Leaf2‧‧‧第二葉交換機
Leaf3‧‧‧第三葉交換機
Leaf4‧‧‧第四葉交換機
H1,H2,H3,H4‧‧‧終端設備
Spine3‧‧‧第三脊交換機
SBL1‧‧‧第一備援鏈結
SBL2‧‧‧第二備援鏈結
71‧‧‧符合類型一的封包
72‧‧‧符合類型二的封包
73‧‧‧符合類型三的封包
74‧‧‧符合類型四的封包
701‧‧‧第一虛擬通訊埠
702‧‧‧第二虛擬通訊埠
703‧‧‧第一群組
704‧‧‧第二群組
步驟S301~S309‧‧‧網路系統初始化流程
步驟S401~S413‧‧‧網路自動鏈結備援流程
圖1顯示習知技術網路架構示意圖;圖2顯示網路系統的基本網路架構示意圖;圖3顯示網路系統初始化的實施例流程圖;圖4顯示實現網路自動鏈結備援方法的實施例流程;圖5所示為實施網路自動鏈結備援方法的網路系統的實施例示意圖之一;圖6所示為實施網路自動鏈結備援方法的網路系統的實施例示意圖之二;圖7顯示利用鏈結備援群組實現大量快速故障轉移封包的實施例示意圖。
根據揭露書所公開的網路自動鏈結備援方法與網路系統的實施方式,網路系統中多個交換機依照功能可分類為兩種交換機:脊交換機(Spine Switch)(亦或稱收容交換機)與葉交換機(Leaf Switch)(亦或稱邊緣交換機)。網路系統中具有至少兩個脊交換機與多個葉交換機,若適用於軟體定義網路(Software-Defined Network,SDN),另包括一個運行網路系統之自動備援程序的軟體定義網路控制器(下稱SDN控制器)。實現網路自動鏈結備援方法的主要措施是在脊交換機之間設置一備援鏈結(Spine Backup Link)此網路系統將脊交換機之間的備援鏈結與脊交換機到葉交換機之間的現行資料鏈結(Active Data Link)區分為兩類不同鏈結。一個鏈結的類別可以透過區分兩端點連接的交換機屬性,自動判別為備援鏈結或現行資料鏈結。
揭露書所提出的網路自動鏈結備援方法適用於軟體定義網路,此軟體定義網路採用的集中式控制器(即SDN控制器)可以實現拓樸(topology)的優化與較佳的路徑規劃等,其中通過開放流(OpenFlow)協定讓控制器和SDN交換機之間以一個標準且公 開的訊息格式通訊,讓控制器可以下達命令給予SDN交換機,並讓SDN交換機可以傳送資訊或攔截到的封包給予控制器。SDN交換機採用資料流表(Flow Table)控管資料平面(data plane),資料流表內由資料流條目(flow entry)組成,資料流條目經查找規則比對(lookups)選中後,決定交換機執行如信息傳送路徑、轉送(forwarding)等與查找(lookups)的動作。在資料平面上,SDN交換機則依此資料流表來判斷收到的封包該轉往哪一個通訊埠轉送,或執行其他與此封包相關聯的處理動作,因此利用控制器來撰寫SDN交換機的資料流表,網路管理者可以撰寫或優化自己想要的網路路由功能或網路監控功能,進而可達到符合自己特定需求的網路系統。
現行資料中心常採用軟體定義網路(SDN)作為運作的架構,SDN網路將資料平面(data plane)與控制平面(control plane)分開,其利用集中式的控制器(controller)取代過往分散式網路系統中交換機(switch)的控制平面,軟體定義網路讓其中的交換機只需負責資料平面的部分,使得集中式的控制器可以達到對控制需求的優化。
運行開放流協定的交換機(如SDN交換機)先與運行開放流協定的控制器(如SDN控制器)進行邏輯控制連線,之後SDN控制器即透過所建立的邏輯控制連線將資料流表(Flow Table)的條目下發到SDN交換機。之後,當資料平面上有封包進入SDN交換機時,SDN交換機採用查找資料流表的方式,來尋找是否有規則符合的資料流條目(flow entry),並依其規則執行如信息轉送(forwarding)等動作。
在交換機與SDN控制器連線後,有一流量需經由交換機傳送到其他主機,當此交換機接收到新的資料流,會查找記憶體中的資料流查表,如果在資料流表中有符合(matched)的資料流條目,交換機執行資料流條目的動作(action),並更新資料流表中資料 流條目的統計值;如果在資料流表中沒有符合的資料流條目,交換機產生「封包輸入(packet-in)」訊息,將接收到的資料流內容放入「封包輸入」的訊息封包中,傳送到SDN控制器,SDN控制器使用其控制邏輯(control logic)運算產生「資料流編輯(flow-mod)」訊息或「封包輸出(packet-out)」訊息,並傳送給交換機,讓交換機加入由資料流編輯訊息封包所記載之新的資料流條目,使得後續相關的資料流可以符合這個新增的資料流條目,就不需再次產生封包輸入訊息給SDN控制器來進行處理。在此架構下,交換機內處理器可以不用重複處理相似的資料流以及與控制器之間的訊息往來而影響效能。
然而,在此SDN網路系統中,除了通過脊交換機之間備援鏈結實現備援外,將以SDN控制器介入在有線路失效(斷線或通訊埠失效)的情況下通過修改資料流表中的資料流條目達到備援的目的。
所述網路自動鏈結備援方法可適用各種型態網路系統,並可應用於資料中心(data center)或是一般網路接取之用,相關網路系統如一種雙層式網路系統(Two-Tier Network System)如圖2所示網路系統的基本網路架構示意圖。所述雙層式網路的實現可為上述軟體定義網路(SDN),網路中包括有兩個脊交換機:第一脊交換機21與第二脊交換機22,以及兩個葉交換機:第一葉交換機23與第二葉交換機24。原本第一脊交換機21與第二脊交換機22分別與各葉交換機(23,24)建立鏈結(202,203,204與205),若根據各鏈結的兩端點連接的交換機屬性,可以彼此傳遞的交換機識別碼(Switch ID)得知,鏈結202,203,204以及205可判別屬於現行資料鏈結。
根據揭露書所提出的網路系統實施例中,第一脊交換機21與第二脊交換機22之間更建立了一鏈結(201),依據鏈結端點的交換機屬性可知,這是屬於連結兩個脊交換機的備援鏈結201。揭露 書所提出的網路自動鏈結備援方法即運作於脊交換機中。
根據所述雙層式網路為軟體定義網路的實施例,其中至少包括有一軟體定義網路控制器(SDN Controller,未示於圖中)、至少兩部脊交換機以及至少兩部葉交換機。這個雙層式網路系統中的脊交換機可作為網路之骨幹交換機,並可連線另一網路(如網際網路);而至少兩部葉交換機可作為終端連網裝置連線之用,各葉交換機與每個脊交換機皆建立資料鏈結(Data Link)。根據以上實施例描述,脊交換機(21,22)之間建立備援鏈結,可稱脊備援鏈結(Spine Backup Link,SBL)。
由以上至少兩個脊交換機、至少兩個葉交換機以及SDN控制器建構一個雙層式網路系統,雙層式網路系統中的各交換機以交換機識別碼(Switch ID)識別,各交換機中的每個通訊埠設有通訊埠編號,彼此之間的鏈結(具有鏈結編號)也根據鏈結端點的交換機識別碼與其通訊埠編號定義其屬性,包括為備援鏈結或是現行資料鏈結。
揭露書所提出的網路系統通過初始化彼此確認連線與角色,並建立鏈結備援群組,此群組包含了通過脊交換機之間的備援鏈結。鏈結備援群組是在各交換機中為每個終端設備(或主機)路由所建立的可用鏈結集合,其實現了網路系統中的快速備援群組(Fast Failover Group)概念。
根據實施例之一,建立此鏈結備援群組的交換機底層技術為採用一種開放流(OpenFlow)協定,此協定定義了如何讓網路設備運用軟體定義網路(SDN)的設計,達到網路控制抽象化的技術。其中通過SDN控制器在此開放流協定下訂立群組表(Group Table),一個群組表包含多筆群組條目(Group Entry),而一個群組條目可以包括「動作桶(Action Bucket)」所組成的清單。這清單中的多個動作桶有先後順序,每一個動作桶也包含一組多個執行動作。如同資料流表(Flow Table)一般,一個群組表包括多筆 群組條目。每一個SDN交換機內資料流表中的資料流條目(Flow Entry)指向一個群組。一旦網路封包經規則比對送到指定的某個群組,一個或多個相對應的動作桶中的動作就會被執行。例如,當交換機接收到新的資料流封包時,會查找記憶體中的資料流表,如果在資料流表中有符合(matched)的資料流條目,交換機執行資料流條目的動作(action),例如連結到某個群組表,之後根據群組表設定的通訊埠優先順序傳送該資料流封包。
群組條目與相關連的動作(action)將被群組中鏈結置入動作桶中,或可採用其他具備同等行為效果的交換機命令,如SNMP(Simple Network Management Protocol)命令、P4語言自動產生的交換機API(Application Programming Interface)等。其中,將群組中鏈結置入動作桶的規則包括:現行資料鏈結由前往後放入動作桶,以及備援鏈結由後往前放入動作桶中。
相關網路系統運作時,先執行網路系統初始化,程序的實施方式之一可參考圖3所示流程圖。
在步驟S301中,在網路系統中SDN控制器與SDN交換機先建立控制器與交換機之間的邏輯控制連線。接著,根據軟體定義網路的實施例,如步驟S303,網路系統中所有交換機需要在SDN控制器中註冊,在SDN控制器的記憶體中條目各交換機的交換機識別碼(Switch ID),接著如步驟S305,SDN控制器通過廣播封包或是特定協定下的偵測封包開始偵測網路中交換機鏈結關係,通過已知悉的各交換機識別碼與各交換機中通訊埠編號定義各交換機。如步驟S307所述,通過各鏈結的端點交換機的識別碼、通訊埠編號定義交換機之間的鏈結。鏈結關係包含脊交換機之間的備援鏈結,以及各葉交換機與不同脊交換機之間的現行資料鏈結等。
之後,如步驟S309,設定交換機內資料流表,以及為每個終端設備建立的鏈結備援群組,交換機查找資料流表內的條目,以 決定封包轉送(forwarding)的工作該如何執行。鏈結備援群組如前述的快速備援群組,設定每個交換機轉送封包的鏈結順序,包括一或多個交換機識別碼、一或多個通訊埠編號,以及脊交換機之間的備援鏈結的鏈結順序。
值得一提的是,實施所述網路自動鏈結備援方法時,SDN網路系統中的SDN控制器並無須介入整個使用鏈結移轉的備援程序,也就是說,所述備援方法並不同於習知技術的SDN網路,在習知的節點間僅有單一鏈結相連的SDN網路中,當有鏈結異常(失效)時,SDN控制器必須介入重新設定各交換機的路由路線。
當網路系統在正常運作時,脊交換機與葉交換機將通過現行資料鏈結傳送資料封包。當有任何鏈結失效(如斷線或交換機通訊埠故障),將依據所述鏈結備援群組或同等行為的交換機API所定義的行為,交換機可自動選擇群組中動作桶記載的下一條可用鏈結來進行封包轉送,達到備援的目的。
應用在包括至少兩個脊交換機的網路系統中的自動鏈結備援方法實施例流程可參考圖4。
在一般網路運作中,開始如步驟S401,脊交換機接收自某一終端設備傳送的封包,傳送過程亦可經由某一葉交換機轉送此封包到此脊交換機。在所述雙層式網路系統中,至少兩個脊交換機其中之一(如第一脊交換機)接收某個葉交換機傳送的封包,而且至少兩個脊交換機之間已具備備援鏈結。接收到封包後,第一脊交換機開始解析封包類型及標頭(步驟S403),得到符合的一或多個資料流條目,以及執行對應的群組表(步驟S405),得出鏈結備援群組內符合轉送封包至一目的地的鏈結順序,依照多個通訊埠優先順序傳送封包(步驟S407)。
再如步驟S409,交換機監視各通訊埠與鏈結的狀態(有效或失效),判斷現行資料鏈結是否有效?若現行鏈結有效(是),則如步驟S413,以現行鏈結傳送封包;反之,當現行鏈結失效(否), 即依據鏈結順序,如步驟S411,將下一順位鏈結設為現行鏈結,並繼續步驟S409,持續根據記錄的鏈結狀態判斷現行鏈結是否有效的步驟。
此例中,若是第一脊交換機到目的地(可通過另一葉交換機)的鏈結或通訊埠沒有失效(否),即完成封包轉送,流程回到S401,繼續下一個封包轉送的任務;若是有相關鏈結或通訊埠失效發生(是),如步驟S413,系統將根據群組表記載以下一順位連線傳送封包。
所述脊交換機取得通訊埠與鏈結狀態的方式之一,可以通過運作於交換機內的軟體程序通過硬體電力訊號偵測或是定時發出確認封包等方式知悉通訊埠與鏈結狀態,形成脊交換機偵測各通訊埠的條目,通過此條目判斷連向目的地的鏈結是否失效。
在以上步驟S413中,特別的是,當失效的連線為第一脊交換機與某通向目的地的葉交換機之間的現行資料鏈結,系統將採用群組表條目的下一條可用鏈結。此時,若第一脊交換機發現本身的下行通訊埠皆沒有鏈結可以達到封包指定的目的地時,則因脊備援鏈結在本案機制中已被放入在鏈結備援群組中,為優先權最低之鏈結選擇,因此在第一脊交換機本身下行通訊埠的鏈結都無法將此封包送往通往目的地的下一站時,第一脊交換機會將封包以此脊備援鏈結傳送到第二脊交換機,由第二脊交換機同樣解析封包,依據第二脊交換機內的鏈結備援群組內符合轉送封包至所述目的地的鏈結順序傳送封包,可通過與第二脊交換機連接的葉交換機轉送封包,最後可抵達封包標頭指定的目的地。
值得一提的是,當網路系統中有鏈結失效時,除了即時以鏈結備援群組機制執行鏈結備援外,此通過鏈結備援群組的機制更能在失效鏈結恢復後,無須網路中控制器(如SDN控制器)或人工介入下迅速回到原來網路設定的狀態。
應用揭露書所揭示的網路中備援機制的實施例可參照圖5所 示網路系統示意圖。
當網路系統啟用後,根據網路自動鏈結備援方法流程實施例,先依據管理者定義的交換機角色,脊交換機如圖示範例的第一脊交換機Spine1與第二脊交換機Spine2,葉交換機如圖示的第一葉交換機Leaf1、第二葉交換機Leaf2、第三葉交換機Leaf3與第四葉交換機Leaf4,並偵測出備援鏈結與現行資料鏈結等兩類鏈結,如圖5在第一脊交換機Spine1與第二脊交換機Spine2之間的第一備援鏈結SBL1,以及其餘與各葉交換機(Leaf1,Leaf2,Leaf3,Leaf4)有關的現行資料鏈結L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,所示範例的各葉交換機與第一脊交換機Spine1與第二脊交換機Spine2都建立至少一條現行資料鏈結。
在此實施例中,連結葉交換機(Leaf1,Leaf2,Leaf3,Leaf4)的終端設備H1,H2,H3,H4分別由網路系統建立一鏈結備援群組,各終端設備所屬鏈結備援群組包括如表一中的多筆群組條目,包括封包的來源、目的地、交換機識別碼與鏈結編號,各鏈結編號可與端點的交換機通訊埠編號一對一對照。此例中,表一描述了終端設備H1,H2,H3,H4中H1與H4之間的封包轉送的鏈結的應用。各終端設備所屬的鏈結備援群組可以獨立使用,亦可與其他相同網路系統的終端設備共用,但須要排除路徑衝突,因此管理者需要特別設計鏈結備援群組。
舉例來說,SDN控制器可以通過此類鏈結備援群組設定交換機封包轉發規則,設定符合特定條件的封包,如目的地,由群組規則處理轉發,以及由群組設定轉發通訊埠,決定由哪個通訊埠轉發封包。其中設定轉發通訊埠時,在群組設定轉發埠的優先順序,例如,當第一優先的通訊埠鏈接故障時,改由第二優先通訊埠轉送,第一、二優先通訊埠故障時,改由第三優先通訊埠轉送,以此類推。
根據表一描述的鏈結備援群組實施例,採用鏈結編號(Link ID)表示交換機傳輸封包的通訊埠選擇,而鏈結編號也可對應到交換機的通訊埠編號(Port number)。
根據表一所示範例,並參考圖5,在一般運作情況下,終端設備H1(來源)要通過現行資料鏈結L9傳送封包到終端設備H4(目的地),先經過第一葉交換機Leaf1,根據鏈結備援群組設定,備援順序顯示先以現行資料鏈結L1傳送封包,當封包抵達第一脊交換機Spine1,查詢鏈結備援群組中到終端設備H4的鏈結順序,此例顯示選擇現行資料鏈結L7傳送,封包抵達第四葉交換機Leaf4,再經現行資料鏈結L12,傳送到目的地終端設備H4。
反之,若終端設備H4要傳送封包到目的地終端設備H1,在正常狀態下,封包傳送的鏈結順序是現行資料鏈結L12、第四葉交換機Leaf4、現行資料鏈結L7、第一脊交換機Spine1、現行資料鏈結L1、第一葉交換機Leaf1及現行資料鏈結L9。
在異常狀態下,當其中鏈結L7失效,根據鏈結備援群組記載,若從終端設備H1傳送到H4的封包經鏈結L9、第一葉交換機Leaf與鏈結L1抵達第一脊交換機Spine1,對應的第二順位是兩個 脊交換機(Spine1與Spine2)之間的第一備援鏈結SBL1,將封包轉送到第二脊交換機Spine2,由連接到第二脊交換機Spine2的現行資料鏈結L8接續轉送到第四葉交換機Leaf4,最終到達目的地終端設備H4。此備援鏈結順序是:現行資料鏈結L9、第一葉交換機Leaf1、現行資料鏈結L1、第一脊交換機Spine1、第一備援鏈結SBL1、第二脊交換機Spine2、現行資料鏈結L8、第四葉交換機Leaf4與現行資料鏈結L12,若有封包自終端設備H4回傳H1,亦可以此路徑回傳。
如此可知,當現行資料鏈結L7失效,脊交換機(Spine1與Spine2)之間的第一備援鏈結SBL1通過鏈結備援群組設定完成了備援目的,否則原本封包傳送路線上的第一脊交換機Spine1將因為鏈結L7失效而無路徑可達到目的地,而可能依照協定選擇丟棄封包。所述備援機制也可免除在SDN網路系統中需要SDN控制器介入重新運算路徑所需要的較長中斷時間。
網路自動鏈結備援方法除適用以上實施例所述包括兩個脊交換機的網路系統,更可應用於具有三個或以上脊交換機的網路系統,而多個脊交換機可以形成鏈形網路(chain)、環形網路(ring)或網形網路(mesh),或者其他網路拓撲,在各種網路拓撲的系統中,脊交換機在不會產生迴圈的前提上,通過建立彼此的備援鏈結,配合鏈結備援群組,將可達到網路自動鏈結備援的目的。
圖6所示為實施網路自動鏈結備援方法的網路系統實施例示意圖,此例網路系統包括有三個脊交換機,第一脊交換機Spine1與第二脊交換機Spine2之間建立第一備援鏈結SBL1,以及第二脊交換機Spine2與第三脊交換機Spine3之間建立第二備援鏈結SBL2,每個葉交換機(Leaf1,Leaf2,Leaf3與Leaf4)都分別以現行資料鏈結連接每個脊交換機(Spine1,Spine2與Spine3),並服務終端設備(H1,H4)。在這樣的連接關係中,需要避免脊交換機之間網路迴圈產生廣播封包的問題,避免的方式例如通過鏈拓撲 (chain topology)配合備援路徑使用順序的設計,也就是通過前述鏈結備援群組的機制。其他避免迴圈造成廣播封包的方式是直接規定每個脊交換機轉送封包時,每次僅能使用脊交換機之間的備援鏈結一次,如果使用一次備援鏈結後仍轉送封包失敗,仍需要通過控制器處理。
在另一實施例中,鏈結備援群組的功能還可處理大量快速故障轉移群組問題,示意圖可參考圖7,所述設定各終端設備的鏈結備援群組可以共用。
其中每部葉交換機先由一個虛擬通訊埠代表,而每個虛擬通訊埠設有可轉發埠集合,如圖示第一虛擬通訊埠701設有可轉發埠集合,第二虛擬通訊埠702設有其可轉發埠集合,系統依可轉發埠集合的可能排列方式決定轉發埠的優先順序,設定於所屬與共享的鏈結備援群組內容中,如第一群組703中設有轉發埠順序為1至2(指備援埠),第二群組704設有轉發埠順序2至1(備援埠),如此,系統可依不同的排列方式建立快速故障轉移群組,讓各終端設備之間傳送的封包可通過共享快速故障轉移群組轉送,達到備援的目的。
運作時,在有鏈結失效而需要處理大量快速故障轉移封包時,可以區分符合類型一的封包71、符合類型二的封包72、符合類型三的封包73與符合類型四的封包74,可以設定分別通過不同虛擬化的葉交換機第一虛擬通訊埠701與第二虛擬通訊埠702轉送,並依照鏈結備援群組依照設定的第一群組703與第二群組704轉發埠順序轉送。
綜上所述,根據揭露書所提出的網路自動鏈結備援方法與相關網路系統,主要方式是在網路中脊交換機之間建立備援鏈結,並且僅需要單一鏈結,無須成本相對高的多鏈結備援連線,當脊交換機通過硬體電力訊號或是確認封包等方式知悉與封包的目的地葉交換機之間資料連線失效,即依照其中鏈結備援群組的通訊 埠順序以下一順位連線傳送封包,例如置換下一順位的鏈結編號或是選擇下一個通訊埠,能夠在沒有網路中控制器的運作下達到備援的目的。
以上所述僅為本發明之較佳可行實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。

Claims (15)

  1. 一種網路自動鏈結備援方法,運作於一網路系統中的多個脊交換機中,各脊交換機中設有為該網路系統中每個終端設備轉送路徑的一鏈結備援群組,包括:該多個脊交換機中的一第一脊交換機接收來自於一終端設備產生的一封包,其中該第一脊交換機與一第二脊交換機之間建立一備援鏈結;解析該封包,得出該鏈結備援群組內符合轉送該封包至一目的地的一鏈結順序;依據該鏈結順序中多個通訊埠的優先順序傳送該封包,其中還判斷連向該封包的目的地的現行鏈結或現行通訊埠是否失效,若該鏈結或該通訊埠失效,該第一脊交換機則依鏈結備援群組的優先順序,選擇次一優先的鏈結進行轉送;若無其他脊交換機與葉交換機的鏈結可用於轉送此封包,則該第一脊交換機使用其與一第二脊交換機之間的備援鏈結傳送該封包至該第二脊交換機,由該第二脊交換機解析該封包,依據該第二脊交換機內的鏈結備援群組內符合轉送該封包至該目的地的鏈結順序傳送該封包;若該鏈結沒有失效,即根據該第一脊交換機得出的鏈結順序完成轉送。
  2. 如請求項1所述的網路自動鏈結備援方法,其中各脊交換機通過該鏈結備援群組設定每個交換機轉送封包的鏈結順序,包括一或多個交換機識別碼、一或多個通訊埠編號,以及脊交換機之間的備援鏈結的鏈結順序。
  3. 如請求項2所述的網路自動鏈結備援方法,其中該網路系統中各交換機之間的鏈結由各鏈結端點的交換機識別碼定義為脊交換機之間的該備援鏈結或一現行資料鏈結。
  4. 如請求項3所述的網路自動鏈結備援方法,其中各交換機內該鏈結備援群組包括多筆群組條目,其中記載來源、目的地、交換機識別碼與鏈結編號,其中各鏈結編號與各交換機的交換機通訊埠編號一對一對照。
  5. 如請求項1所述的網路自動鏈結備援方法,其中是依據該第一脊交換機偵測各通訊埠的狀態判斷連向該封包的目的地的鏈結是否失效。
  6. 如請求項5所述的網路自動鏈結備援方法,其中該終端設備經一葉交換機傳送該封包至該第一脊交換機;該第一脊交換機轉送該封包至目的地的鏈結經過另一葉交換機。
  7. 如請求項1至6中之任一項所述的網路自動鏈結備援方法,其中該具有至少兩個脊交換機的網路系統為一雙層式網路系統。
  8. 一種網路系統,包括:多個脊交換機,包括一第一脊交換機與一第二脊交換機,該第一脊交換機與該第二脊交換機之間建立一備援鏈結;多個葉交換機,各葉交換機與該多個脊交換機個別建立一現行資料鏈結;其中,各脊交換機中設有為該網路系統中每個終端設備建立的一鏈結備援群組,並運行一網路自動鏈結備援方法,包括:該第一脊交換機接收來自於一終端設備產生的一封包;解析該封包,得出該鏈結備援群組內符合轉送該封包至一目的地的一鏈結順序;其中還判斷連向該封包的目的地的現行鏈結或現行通訊埠是否失效,若該鏈結或該通訊埠失效,該第一脊交換機則依鏈結備援群組的優先順序,選擇次一優先的鏈結進行轉送;若無其他脊交換機與葉交換機的鏈結可用於轉送此封包,則該第一脊交換機使用其與一第二脊交換機之間的備援鏈結傳送該封包至該第二脊交換機,由該第二脊交換機解析該封包,依據該第二脊交換機內的鏈結備援群組內符合轉送該封包至該目的地的鏈結順序傳送該封包;若該鏈結沒有失效,即根據該第一脊交換機得出的鏈結順序完成轉送。
  9. 如請求項8所述的網路系統,其中各脊交換機通過該鏈結備援群組設定每個交換機轉送封包的鏈結順序,包括一或多個交換機識別碼、一或多個通訊埠編號,以及脊交換機之間的備援鏈結的鏈結順序。
  10. 如請求項9所述的網路系統,其中各交換機內該鏈結備援群組包括多筆群組條目,其中記載來源、目的地、交換機識別碼與鏈結編號,其中各鏈結編號與各交換機的交換機通訊埠編號一對一對照。
  11. 如請求項8所述的網路系統,其中該網路系統中的各葉交換機由一虛擬通訊埠表示,該虛擬通訊埠設有一可轉發埠集合,該網路系統依照該可轉發埠集合的可能排列方式決定轉發埠的優先順序,並設定於各葉交換機的鏈結備援群組中。
  12. 如請求項11所述的網路系統,其中該網路系統通過各交換機內鏈結備援群組中不同的鏈結順序決定轉發埠的優先順序,其中包括一備援埠。
  13. 如請求項8至12中之任一項所述的網路系統,其中該具有至少兩個脊交換機的網路系統為一雙層式網路系統。
  14. 如請求項13所述的網路系統,其中該雙層式網路系統為一SDN,其中設有一SDN控制器。
  15. 如請求項13所述的網路系統,其中該多個脊交換機形成一鏈形網路、一環形網路或一網形網路。
TW107127085A 2018-08-03 2018-08-03 網路自動鏈結備援方法與網路系統 TWI676378B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW107127085A TWI676378B (zh) 2018-08-03 2018-08-03 網路自動鏈結備援方法與網路系統
CN201810916511.6A CN110798399A (zh) 2018-08-03 2018-08-13 网络自动链结备援方法与网络系统
US16/454,260 US20200044960A1 (en) 2018-08-03 2019-06-27 Network automatic link backup method and network system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107127085A TWI676378B (zh) 2018-08-03 2018-08-03 網路自動鏈結備援方法與網路系統

Publications (2)

Publication Number Publication Date
TWI676378B true TWI676378B (zh) 2019-11-01
TW202008756A TW202008756A (zh) 2020-02-16

Family

ID=69189101

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107127085A TWI676378B (zh) 2018-08-03 2018-08-03 網路自動鏈結備援方法與網路系統

Country Status (3)

Country Link
US (1) US20200044960A1 (zh)
CN (1) CN110798399A (zh)
TW (1) TWI676378B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938450B (zh) * 2021-09-01 2023-09-01 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 航电系统通信故障处理方法、装置、计算机设备和介质
CN114024907A (zh) * 2021-11-15 2022-02-08 中国电信集团系统集成有限责任公司 一种多口字环形结构下的流量调度方法和系统
CN116866160B (zh) * 2023-09-05 2023-11-21 空间液态金属科技发展(江苏)有限公司 提高航天器网络系统可靠性的设计方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201421232A (zh) * 2012-11-19 2014-06-01 Ibm 在一冗餘群組中實施故障備援的方法、裝置與電腦程式產品
US20150055650A1 (en) * 2013-08-20 2015-02-26 Cisco Technology, Inc. Group bundling priority dissemination through link-state routing protocol in a network environment
WO2016086693A1 (zh) * 2014-12-03 2016-06-09 华为技术有限公司 报文传输的方法、骨干交换机和接入交换机
US20170163473A1 (en) * 2015-12-04 2017-06-08 Arista Networks, Inc. Link aggregation split-brain detection and recovery

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190696B1 (en) * 2002-03-05 2007-03-13 Force10 Networks, Inc. System and method for distributing packets among a plurality of paths to a destination
US8300523B2 (en) * 2008-07-28 2012-10-30 Cisco Technology, Inc. Multi-chasis ethernet link aggregation
CN102201964B (zh) * 2010-03-22 2014-02-05 杭州华三通信技术有限公司 一种实现快速路径切换的方法和装置
CN104038362B (zh) * 2013-03-08 2018-03-23 中国移动通信集团广东有限公司 一种网络系统
US9288138B2 (en) * 2013-12-27 2016-03-15 Dell Products L.P. N-node virtual link trunking (VLT) systems and methods
CN104780097B (zh) * 2014-01-15 2017-12-22 中国联合网络通信集团有限公司 非全连接网络拓扑条件下的热备方法和第一路由设备
CN106899503B (zh) * 2015-12-18 2019-08-16 华为技术有限公司 一种数据中心网络的路由选择方法及网络管理器
CN107465611A (zh) * 2017-09-05 2017-12-12 北京东土科技股份有限公司 Sdn控制器和交换机控制链路的保护倒换方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201421232A (zh) * 2012-11-19 2014-06-01 Ibm 在一冗餘群組中實施故障備援的方法、裝置與電腦程式產品
US20150055650A1 (en) * 2013-08-20 2015-02-26 Cisco Technology, Inc. Group bundling priority dissemination through link-state routing protocol in a network environment
WO2016086693A1 (zh) * 2014-12-03 2016-06-09 华为技术有限公司 报文传输的方法、骨干交换机和接入交换机
US20170163473A1 (en) * 2015-12-04 2017-06-08 Arista Networks, Inc. Link aggregation split-brain detection and recovery

Also Published As

Publication number Publication date
US20200044960A1 (en) 2020-02-06
TW202008756A (zh) 2020-02-16
CN110798399A (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
US10868757B2 (en) Efficient routing in software defined networks
US7639605B2 (en) System and method for detecting and recovering from virtual switch link failures
JP5488980B2 (ja) コンピュータシステム、及び通信方法
CN100448209C (zh) 虚拟专用网络的容错
JP5488979B2 (ja) コンピュータシステム、コントローラ、スイッチ、及び通信方法
WO2013115177A1 (ja) ネットワークシステム、及びトポロジー管理方法
US9385944B2 (en) Communication system, path switching method and communication device
JP5404938B2 (ja) 通信装置、通信システムおよび通信方法
CN106170952A (zh) 用于在数据网络中部署最大冗余树的方法和系统
US20220255847A1 (en) Packet Sending Method and First Network Device
TWI676378B (zh) 網路自動鏈結備援方法與網路系統
WO2004070983A2 (en) Method and apparatus for fast re-configuration of a network topology
WO2017113929A1 (zh) 一种软件定义网络中控制转发设备集群的方法及控制器
US20230010837A1 (en) Fault diagnosis method and apparatus thereof
GB2485026A (en) Routed Split Multi-Link Trunking (RSMLT) resiliency for Wireless Local Area Network (WLAN) split-plane environments
WO2018161794A1 (zh) 一种设备升级方法及接入设备
CN107968753B (zh) 修改媒体接入控制地址转发表的方法和装置
US9571346B2 (en) Fault tolerant communication system, method, and device that uses tree searching
JP4659611B2 (ja) パスプロテクション方法及びレイヤ2スイッチ
CN104885417A (zh) 控制装置、通信系统、通信节点控制方法以及程序
CN109525492B (zh) 一种不依赖路由协议或算法的ip数据备份传输方法
JP4839334B2 (ja) 冗長プロトコル共存システム及び転送装置
KR20190136793A (ko) 소프트웨어 정의 네트워크 환경에서 소프트웨어 정의 네트워크 스위치, 이를 이용한 제어 채널의 인밴드 구성 및 유무선 이중화 방법
Sharma et al. Meshed tree protocol for faster convergence in switched networks
KR101880222B1 (ko) 오류 복구를 위한 오픈플로우 스위치, 오픈플로우 컨트롤러 및 오류 복구 방법

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees