軟件定義網(wǎng)絡(luò)中的鏈路切換方法和裝置制造方法
【專利摘要】本發(fā)明實施方式提出一種軟件定義網(wǎng)絡(luò)(SDN)中的鏈路切換方法和裝置。所述方法應(yīng)用于SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,該方法包括:接收SDN控制器發(fā)送的主備流表項,在所述主備流表項中指定所述第一鏈路為到達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路;檢測所述第一鏈路的鏈路狀態(tài),其中當檢測到所述第一鏈路正常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備;當檢測到所述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
【專利說明】軟件定義網(wǎng)絡(luò)中的鏈路切換方法和裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明實施方式屬于軟件定義網(wǎng)絡(luò)(Software Defined Network, SDN)【技術(shù)領(lǐng)域】, 特別是一種SDN中的鏈路切換方法和裝置。
【背景技術(shù)】
[0002] SDN技術(shù)通過將網(wǎng)絡(luò)設(shè)備的控制平面與數(shù)據(jù)平面分離,從而實現(xiàn)網(wǎng)絡(luò)流量的靈活 控制。相應(yīng)地,SDN架構(gòu)中包括SDN控制器和SDN交換機,其中:SDN控制器和SDN交換機之 間通過優(yōu)選為開放流(OpenFlow協(xié)議)的SDN管理通道進行通信,SDN控制器根據(jù)用戶的 配置或者動態(tài)運行的協(xié)議生成流表下發(fā)到SDN交換機,SDN交換機依據(jù)SDN控制器下發(fā)的 流表進行報文處理。
[0003] 在現(xiàn)有技術(shù)的SDN架構(gòu)中,當SDN交換機與目的設(shè)備之間出現(xiàn)鏈路故障時,故障鏈 路兩端的SDN交換機在該故障鏈路上的接口會down掉,因此分別向SDN控制器上報故障 消息,SDN控制器接收到故障消息后,基于拓撲計算出SDN交換機與目的設(shè)備之間的備份鏈 路,并向SDN交換機下發(fā)優(yōu)先級別更高且指定該備份鏈路的流表項,SDN交換機再將報文轉(zhuǎn) 發(fā)切換到備份鏈路。
[0004] 然而,在鏈路出現(xiàn)故障與SDN控制器下發(fā)指定備份鏈路的流表項之間,SDN交換機 依然嘗試通過故障鏈路轉(zhuǎn)發(fā)報文,從而引起數(shù)據(jù)流量的中斷,并提高了丟包率。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實施方式提出一種SDN中的鏈路切換方法和裝置,以降低丟包率。
[0006] 本發(fā)明實施方式的技術(shù)方案如下:
[0007] 本發(fā)明實施方式的一方面,提供了一種SDN中的鏈路切換方法,所述方法應(yīng)用于 SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,該方法包括:
[0008] 接收SDN控制器發(fā)送的主備流表項,在所述主備流表項中指定所述第一鏈路為到 達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路;
[0009] 檢測所述第一鏈路的鏈路狀態(tài),其中當檢測到所述第一鏈路正常時,利用所述第 一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備;當檢測到所述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā) 報文到所述目的設(shè)備。
[0010] 本發(fā)明實施方式的一方面,提供了一種SDN中的鏈路切換裝置,所述裝置應(yīng)用于 SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,該裝置包括:
[0011] 流表項接收模塊,用于接收SDN控制器發(fā)送的主備流表項,在所述主備流表項中 指定所述第一鏈路為到達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè) 備的備用鏈路;
[0012] 鏈路切換模塊,用于檢測所述第一鏈路的鏈路狀態(tài),其中當檢測到所述第一鏈路 正常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備;當檢測到所述第一鏈路故障時,利用 所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
[0013] 本發(fā)明實施方式的一方面,提供了一種SDN中的鏈路切換方法,所述SDN包括SDN 控制器和SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,所述方 法應(yīng)用于SDN控制器,包括:
[0014] 生成主備流表項,其中在所述主備流表項中指定所述第一鏈路為到達所述目的設(shè) 備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路;
[0015] 向所述SDN交換機下發(fā)所述主備流表項,以當所述SDN交換機檢測到所述第一鏈 路正常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備,而且當所述SDN交換機檢測到所 述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
[0016] 本發(fā)明實施方式的一方面,提供了一種SDN中的鏈路切換裝置,所述SDN包括SDN 控制器和SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,所述裝 置應(yīng)用于SDN控制器,包括:
[0017] 主備流表項生成模塊,用于生成主備流表項,在所述主備流表項中指定所述第一 鏈路為到達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈 路;
[0018] 流表下發(fā)模塊,用于向所述SDN交換機下發(fā)所述主備流表項,以當所述SDN交換機 檢測到所述第一鏈路正常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備,而且當所述SDN 交換機檢測到所述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
[0019] 由此可見,應(yīng)用本發(fā)明實施方式之后,當鏈路出現(xiàn)故障時,無需等待SDN控制器下 發(fā)流表,SDN交換機可以快速切換到備用鏈路,從而減少了數(shù)據(jù)流量的中斷,并由此降低了 丟包率。
【專利附圖】
【附圖說明】
[0020] 圖1為SDN組網(wǎng)的示范性結(jié)構(gòu)圖;
[0021] 圖2為根據(jù)本發(fā)明一實施方式的SDN交換機側(cè)的鏈路切換方法流程圖;
[0022] 圖3為根據(jù)本發(fā)明一實施方式的SDN控制器側(cè)的鏈路切換方法流程圖;
[0023] 圖4為根據(jù)本發(fā)明一實施方式在圖1所示組網(wǎng)的鏈路切換示意圖;
[0024] 圖5為根據(jù)本發(fā)明一實施方式的應(yīng)用于SDN交換機的鏈路切換裝置結(jié)構(gòu)圖;
[0025] 圖6為根據(jù)本發(fā)明一實施方式的應(yīng)用于SDN控制器的鏈路切換裝置結(jié)構(gòu)圖。
【具體實施方式】
[0026] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖對本發(fā)明作進一步 的詳細描述。
[0027] 圖1為SDN組網(wǎng)的示范性結(jié)構(gòu)圖。
[0028] 如圖1所示,SDN網(wǎng)絡(luò)包含SDN控制器及4個SDN交換機,分別為SW1、SW2、SW3和 SW4。SW1與主機PC1連接;SW4與主機PC2連接。
[0029] SDN控制器向SW1下發(fā)第一流表,指定PC1的流量經(jīng)過鏈路SW1->SW2->SW4->PC2 轉(zhuǎn)發(fā)到PC2。如果SW2與SW4之間的鏈路出現(xiàn)故障,SW2和SW4分別發(fā)送故障消息到SDN控 制器。SDN控制器接收到故障消息后,基于網(wǎng)絡(luò)拓撲計算出備份鏈路SW1->SW3->SW4->PC2, 并向SW1下發(fā)第二流表,指定PCI的流量經(jīng)過備份鏈路SW1->SW3->SW4->PC2轉(zhuǎn)發(fā)到PC2,而 且第二流表的優(yōu)先級高于第一流表。
[0030] 然而,在鏈路出現(xiàn)故障與第二流表下發(fā)到SW1之間,SW1依然嘗試通過故障鏈路 SW1->SW2->SW4->PC2轉(zhuǎn)發(fā)到達PC2的報文,這就引起數(shù)據(jù)流量的中斷和丟包率的提升。
[0031] 在本發(fā)明實施方式中,當鏈路出現(xiàn)故障時,SDN交換機可以快速切換到備用鏈路。
[0032] 圖2為根據(jù)本發(fā)明一實施方式的SDN交換機側(cè)的鏈路切換方法流程圖。該SDN交 換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路。該SDN交換機上對應(yīng)于第一鏈路的第 一端口為P1,對應(yīng)于第二鏈路的第二端口為P1。
[0033] 如圖2所示,該方法包括:
[0034] 步驟201 :接收SDN控制器發(fā)送的主備流表項,在主備流表項中指定第一鏈路為到 達目的設(shè)備的主用鏈路以及第二鏈路為到達目的設(shè)備的備用鏈路。
[0035] 在一個實施方式中,SDN交換機從SDN控制器接收的主備流表項具體實施為一個 表項,其匹配項(Match Fields)包括目的設(shè)備的地址和入端口標識(P),動作包括指定對 應(yīng)于第一鏈路的第一端口和對應(yīng)于第二鏈路的第二端口為出端口(Output interface)。出 端口分別具有正常、備用和不可用等狀態(tài)。假定正常狀態(tài)的狀態(tài)值(State)為1 ;備用狀態(tài) 的狀態(tài)值為2 ;不可用狀態(tài)的狀態(tài)值為3。
[0036] 在主備流表項中,指定第一端口的狀態(tài)為正常,第二端口的狀態(tài)為備用。
[0037] 表1為主備流表項實施為一個表項的不范性結(jié)構(gòu)表。
[0038]
【權(quán)利要求】
1. 一種軟件定義網(wǎng)絡(luò)SDN中的鏈路切換方法,其特征在于,所述方法應(yīng)用于SDN交換 機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,該方法包括 : 接收SDN控制器發(fā)送的主備流表項,在所述主備流表項中指定所述第一鏈路為到達所 述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路; 檢測所述第一鏈路的鏈路狀態(tài),其中當檢測到所述第一鏈路正常時,利用所述第一鏈 路轉(zhuǎn)發(fā)報文到所述目的設(shè)備;當檢測到所述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文 到所述目的設(shè)備。
2. 根據(jù)權(quán)利要求1的方法,其特征在于,還包括: 向SDN控制器發(fā)送對應(yīng)于第一鏈路的第一端口標識和對應(yīng)于第二鏈路的第二端口標 識,以由SDN控制器基于所述第一端口標識和第二端口標識生成所述主備流表項。
3. 根據(jù)權(quán)利要求1的方法,其特征在于,所述主備流表項的匹配項包括所述目的設(shè)備 的地址,動作包括指定對應(yīng)于所述第一鏈路的第一端口和對應(yīng)于所述第二鏈路的第二端口 為出端口,其中所述第一端口的狀態(tài)為正常,第二端口的狀態(tài)為備用。
4. 根據(jù)權(quán)利要求1的方法,其特征在于,所述主備流表項包括主用流表項和備用流表 項,其中主用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于所述第一鏈路的 第一端口為出端口;備用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于所述 第二鏈路的第二端口為出端口;其中所述第一端口的優(yōu)先級大于所述第二端口的優(yōu)先級。
5. 根據(jù)權(quán)利要求1的方法,其特征在于,所述檢測所述第一鏈路的鏈路狀態(tài)包括: 監(jiān)聽所述第一鏈路上任意相鄰SDN交換機之間的檢測報文傳遞狀態(tài);或 監(jiān)聽所述第一鏈路上該SDN交換機與連接到所述目的設(shè)備的SDN交換機之間的檢測報 文傳遞狀態(tài)。
6. -種軟件定義網(wǎng)絡(luò)SDN中的鏈路切換裝置,其特征在于,所述裝置應(yīng)用于SDN交換 機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,該裝置包括: 流表項接收模塊,用于接收SDN控制器發(fā)送的主備流表項,在所述主備流表項中指定 所述第一鏈路為到達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的 備用鏈路; 鏈路切換模塊,用于檢測所述第一鏈路的鏈路狀態(tài),其中當檢測到所述第一鏈路正常 時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備;當檢測到所述第一鏈路故障時,利用所述 第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
7. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 端口標識發(fā)送模塊,用于向SDN控制器發(fā)送對應(yīng)于第一鏈路的第一端口標識和對應(yīng)于 第二鏈路的第二端口標識,以由控制器基于所述第一端口標識和第二端口標識生成所述主 備流表項。
8. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述主備流表項的匹配項包括所述目的 設(shè)備的地址,動作包括指定對應(yīng)于所述第一鏈路的第一端口和對應(yīng)于所述第二鏈路的第二 端口為出端口,其中所述第一端口的狀態(tài)為正常,第二端口的狀態(tài)為備用。
9. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述主備流表項包括主用流表項和備用 流表項,其中主用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于所述第一鏈 路的第一端口為出端口;備用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于 所述第二鏈路的第二端口為出端口;其中所述第一端口的優(yōu)先級大于所述第二端口的優(yōu)先 級。
10. 根據(jù)權(quán)利要求6所述的裝置,其特征在于, 鏈路切換模塊,用于監(jiān)聽所述第一鏈路上任意相鄰SDN交換機之間的檢測報文傳遞狀 態(tài);或監(jiān)聽所述第一鏈路上該SDN交換機與連接到所述目的設(shè)備的SDN交換機之間的檢測 報文傳遞狀態(tài)。
11. 一種軟件定義網(wǎng)絡(luò)SDN中的鏈路切換方法,其特征在于,所述SDN包括SDN控制器 和SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,所述方法應(yīng)用 于SDN控制器,包括: 生成主備流表項,其中在所述主備流表項中指定所述第一鏈路為到達所述目的設(shè)備的 主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路; 向所述SDN交換機下發(fā)所述主備流表項,以當所述SDN交換機檢測到所述第一鏈路正 常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備,而且當所述SDN交換機檢測到所述第 一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
12. 根據(jù)權(quán)利要求11所述的方法,其特征在于,還包括: 接收SDN交換機發(fā)送的對應(yīng)于第一鏈路的第一端口標識和對應(yīng)于第二鏈路的第二端 口標識; 基于所述第一端口標識和第二端口標識生成所述主備流表項。
13. 根據(jù)權(quán)利要求11所述的方法,其特征在于,還包括: 通過網(wǎng)絡(luò)拓撲發(fā)現(xiàn)生成所述SDN的物理拓撲圖; 根據(jù)所述物理拓撲圖確定對應(yīng)于第一鏈路的第一端口標識和對應(yīng)于第二鏈路的第二 端口標識,基于所述第一端口標識和第二端口標識生成所述主備流表項。
14. 根據(jù)權(quán)利要求11的方法,其特征在于,所述主備流表項的匹配項包括所述目的設(shè) 備的地址,動作包括指定對應(yīng)于所述第一鏈路的第一端口和對應(yīng)于所述第二鏈路的第二端 口為出端口,其中所述第一端口的狀態(tài)為正常,第二端口的狀態(tài)為備用。
15. 根據(jù)權(quán)利要求11的方法,其特征在于,所述主備流表項包括主用流表項和備用流 表項,其中主用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于所述第一鏈路 的第一端口為出端口;備用流表項的匹配項包括目的設(shè)備的地址,動作包括指定對應(yīng)于所 述第二鏈路的第二端口為出端口;其中所述第一端口的優(yōu)先級大于所述第二端口的優(yōu)先 級。
16. -種軟件定義網(wǎng)絡(luò)SDN中的鏈路切換裝置,其特征在于,所述SDN包括SDN控制器 和SDN交換機,該SDN交換機具有到達同一目的設(shè)備的第一鏈路和第二鏈路,所述裝置應(yīng)用 于SDN控制器,包括: 主備流表項生成模塊,用于生成主備流表項,在所述主備流表項中指定所述第一鏈路 為到達所述目的設(shè)備的主用鏈路以及所述第二鏈路為到達所述目的設(shè)備的備用鏈路; 流表下發(fā)模塊,用于向所述SDN交換機下發(fā)所述主備流表項,以當所述SDN交換機檢測 到所述第一鏈路正常時,利用所述第一鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備,而且當所述SDN交 換機檢測到所述第一鏈路故障時,利用所述第二鏈路轉(zhuǎn)發(fā)報文到所述目的設(shè)備。
17. 根據(jù)權(quán)利要求16的裝置,其特征在于,還包括:端口標識接收模塊,用于接收SDN 交換機發(fā)送的對應(yīng)于第一鏈路的第一端口標識和對應(yīng)于第二鏈路的第二端口標識; 主備流表項生成模塊,用于基于所述第一端口標識和第二端口標識生成所述主備流表 項。
【文檔編號】H04L12/24GK104301146SQ201410570350
【公開日】2015年1月21日 申請日期:2014年10月23日 優(yōu)先權(quán)日:2014年10月23日
【發(fā)明者】鄭萍萍, 蔣益群 申請人:杭州華三通信技術(shù)有限公司