專利名稱:一種路由切換的方法、設(shè)備及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種路由切換的方法、設(shè)備及系統(tǒng)。
背景技術(shù):
為了滿足IP網(wǎng)絡(luò)在任意節(jié)點或鏈路發(fā)生故障時,業(yè)務(wù)倒換時間小于50ms,端到端業(yè)務(wù)收斂時間小于1s的要求,目前主要使用MPLS TE FRR(Multi-Protocol Label Switching Traffic Engineering Fast Re-route,基于多協(xié)議標(biāo)簽交換流量工程的快速重路由)技術(shù)、VPN FRR(Virtual Private Network FastRe-route,基于虛擬專用網(wǎng)的快速重路由)技術(shù)來解決節(jié)點或鏈路的故障,實現(xiàn)路由的快速切換。
MPLS TE FRR技術(shù)的基本思想是在兩個PE(Provider Edge Router,運營商邊緣路由器)設(shè)備之間建立端到端的TE(Traffic Engineering,流量工程)隧道,并為需要保護(hù)的主用LSP(Label Switched Path,標(biāo)簽交換路徑)事先建立好備用LSP。當(dāng)設(shè)備檢測到主用LSP不可用時(節(jié)點故障或者鏈路故障),將流量倒換到備用LSP上,從而實現(xiàn)業(yè)務(wù)的快速倒換。MPLS TE FRR技術(shù)可以對TE隧道起始點和終結(jié)點的兩個PE設(shè)備之間的鏈路故障和節(jié)點故障,實現(xiàn)快速的業(yè)務(wù)倒換。
發(fā)明人經(jīng)過分析,發(fā)現(xiàn)MPLS TE FRR技術(shù)存在如下不足 MPLS TE FRR技術(shù)不能解決TE隧道之外的CE(Custom Edge Router,客戶邊緣路由器)設(shè)備故障或者PE-CE鏈路故障。一旦上述故障發(fā)生,只能先通過PE感知接口故障,再通過MP-IBGP(Multiprotocol-Interior Border Gatewayprotocol,多協(xié)議的內(nèi)部邊界網(wǎng)關(guān)協(xié)議)發(fā)布撤銷路由,通過BGP(BorderGateway protocol,邊界網(wǎng)關(guān)協(xié)議)重新計算最優(yōu)路由,最后通過刷新接口板轉(zhuǎn)發(fā)表來恢復(fù)業(yè)務(wù)。并且,業(yè)務(wù)收斂時間與MPLS VPN(Multi-Protocol LabelSwitching Virtual Private Network,基于多協(xié)議標(biāo)簽交換的虛擬專用網(wǎng))內(nèi)部路由的數(shù)量、IP網(wǎng)絡(luò)的跳數(shù)、傳輸距離密切相關(guān),例如典型組網(wǎng)中一般在5s左右,無法達(dá)到節(jié)點或者鏈路故障端到端業(yè)務(wù)收斂小于1s的要求。另外,對于TE隧道端點的PE故障,MPLS TE FRR技術(shù)也不能夠解決。
VPN FRR技術(shù)的基本思想是預(yù)先在本端PE中設(shè)置指向另一雙歸屬PE的備用轉(zhuǎn)發(fā)項,在主用轉(zhuǎn)發(fā)路由故障時,啟用備用轉(zhuǎn)發(fā)路由進(jìn)行業(yè)務(wù)轉(zhuǎn)發(fā)。VPNFRR技術(shù)不但可以對TE隧道起始點和終結(jié)點的兩個PE設(shè)備之間的鏈路故障和節(jié)點故障,實現(xiàn)快速的業(yè)務(wù)倒換,而且可以對TE隧道的端點PE故障進(jìn)行檢測和業(yè)務(wù)轉(zhuǎn)發(fā)。解決PE節(jié)點故障或者PE-PE鏈路故障時,VPN私網(wǎng)路由收斂時間與其承載的私網(wǎng)路由的數(shù)量相關(guān)的問題,在PE節(jié)點故障或者PE-PE鏈路故障情況下,端到端業(yè)務(wù)收斂時間可以小于1s。
發(fā)明人經(jīng)過分析,發(fā)現(xiàn)VPN FRR技術(shù)存在如下不足 VPN FRR技術(shù)是在隧道兩端的PE進(jìn)行PE間的外層隧道檢測,因此仍然無法檢測到CE節(jié)點和CE-PE鏈路的狀態(tài),與MPLS TE FRR技術(shù)一樣,該技術(shù)本身并不能解決CE設(shè)備故障或者PE-CE鏈路故障時路由切換時間換長,端到端業(yè)務(wù)收斂長的問題。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種路由切換的方法及系統(tǒng),用以在CE設(shè)備發(fā)生故障或者PE-CE鏈路發(fā)生故障時,實現(xiàn)端到端的快速重路由。
本發(fā)明實施例提供一種路由切換的方法,該方法包括步驟 第一運營商邊緣路由器接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息; 所述第一運營商邊緣路由器根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息; 所述第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由; 所述第一運營商邊緣路由器通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
較佳的,所述第一運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息;由備用路由對應(yīng)的第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述備用路由的轉(zhuǎn)發(fā)信息,所述第一運營商邊緣路由器從所述第二運營商邊緣路由器獲取所述備用路由的轉(zhuǎn)發(fā)信息。
較佳的,所述主用路由的相關(guān)信息包括主用路由對應(yīng)的出接口狀態(tài),在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與第一運營商邊緣路由器之間的鏈路發(fā)生故障時,第一運營商邊緣路由器檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
較佳的,所述第一運營商邊緣路由器將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
較佳的,所述備用路由為一個或多個。
較佳的,所述備用路由為多個時,所述第一運營商邊緣路由器根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由,并通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
較佳的,所述第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器撤銷到本設(shè)備的路由,再將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
本發(fā)明實施例還提供一種運營商邊緣路由器,包括 接收模塊,用于接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息; 查找模塊,用于根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息; 切換模塊,用于根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由; 發(fā)送模塊,用于通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
較佳的,所述運營商邊緣路由器還包括 第一獲取模塊,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息; 第二獲取模塊,用于從備用路由對應(yīng)的第二運營商邊緣路由器獲取所述備用路由的轉(zhuǎn)發(fā)信息,其中,所述備用路由的轉(zhuǎn)發(fā)信息由所述第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取。
較佳的,所述運營商邊緣路由器還包括 檢測模塊,用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用; 設(shè)置模塊,用于在檢測到主用路由對應(yīng)的出接口不可用后,在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
較佳的,所述運營商邊緣路由器還包括 去除模塊,用于在將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
較佳的,所述備用路由多個時,所述切換模塊進(jìn)一步包括 選擇單元,用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由; 切換單元,用于根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由; 所述發(fā)送模塊進(jìn)一步用于通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
較佳的,所述發(fā)送模塊進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器撤銷到本設(shè)備的路由。
本發(fā)明實施例還提供一種網(wǎng)絡(luò)系統(tǒng),包括 第一運營商邊緣路由器,用于接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包; 客戶邊緣路由器,用于接收所述第一運營商邊緣路由器轉(zhuǎn)發(fā)的數(shù)據(jù)包。
較佳的,所述第一運營商邊緣路由器進(jìn)一步用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息; 所述網(wǎng)絡(luò)系統(tǒng)還包括 第二運營商邊緣路由器,對應(yīng)于備用路由,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述備用路由的轉(zhuǎn)發(fā)信息,并向所述第一運營商邊緣路由器提供所述備用路由的轉(zhuǎn)發(fā)信息。
較佳的,所述第一運營商邊緣路由器進(jìn)一步用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
較佳的,所述第一運營商邊緣路由器進(jìn)一步用于在將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
較佳的,所述備用路由多個時,所述第一運營商邊緣路由器進(jìn)一步用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由,并通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
較佳的,所述網(wǎng)絡(luò)系統(tǒng)還包括 上一級運營商邊緣路由器,用于向所述第一運營商邊緣路由器發(fā)送所述數(shù)據(jù)包; 所述第一運營商邊緣路由器進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知所述上一級運營商邊緣路由器撤銷到本設(shè)備的路由。
本發(fā)明實施例中,第一運營商邊緣路由器在接收到攜帶有目的網(wǎng)絡(luò)地址信息的數(shù)據(jù)包后,根據(jù)目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,其中,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;在根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,無需向上一級運營商邊緣路由器上報主用路由故障,請求其重新計算轉(zhuǎn)發(fā)路由,而是直接根據(jù)本地保存的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由,通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器,保證了客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與第一運營商邊緣路由器之間的鏈路發(fā)生故障時,可以進(jìn)行快速的端到端的重路由,節(jié)省業(yè)務(wù)倒換時間和端到端業(yè)務(wù)收斂時間。
圖1為本發(fā)明實施例中路由切換的處理流程圖; 圖2為本發(fā)明實施例中L3VPN網(wǎng)絡(luò)典型的CE雙歸PE的組網(wǎng)結(jié)構(gòu)圖; 圖3為本發(fā)明實施例中具體實例的路由切換處理流程圖; 圖4a、圖4b、圖4c、圖4d為本發(fā)明實施例中運營商邊緣路由器的結(jié)構(gòu)示意圖; 圖5a、圖5b、圖5c為本發(fā)明實施例中網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式 下面結(jié)合附圖對本發(fā)明實施例方法進(jìn)行詳細(xì)說明。
本發(fā)明實施例中,一種路由切換的處理流程如圖1所示,包括 步驟10、第一運營商邊緣路由器接收數(shù)據(jù)包,該數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息。
步驟11、第一運營商邊緣路由器根據(jù)目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,該轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息。
步驟12、第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
步驟13、第一運營商邊緣路由器通過備用路由轉(zhuǎn)發(fā)數(shù)據(jù)包至客戶邊緣路由器。
在步驟11中,第一運營商邊緣路由器本地存儲的轉(zhuǎn)發(fā)信息中,主用路由的相關(guān)信息和備用路由的相關(guān)信息通過如下方式獲取 第一運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取主用路由的相關(guān)信息;由備用路由對應(yīng)的第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取備用路由的轉(zhuǎn)發(fā)信息,第一運營商邊緣路由器從第二運營商邊緣路由器獲取備用路由的轉(zhuǎn)發(fā)信息。
在步驟12中,第一運營商邊緣路由器可以根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用,一種實現(xiàn)方式為主用路由的相關(guān)信息包括主用路由對應(yīng)的出接口狀態(tài),在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與第一運營商邊緣路由器之間的鏈路發(fā)生故障時,第一運營商邊緣路由器檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。第一運營商邊緣路由器檢測主用路由對應(yīng)的出接口是否可用可以通過鏈路層檢測、BFD等技術(shù)感知。
為了更清楚地說明本發(fā)明實施例方法,下面給出一個具體實例,其中還給出現(xiàn)有技術(shù)與本發(fā)明實施例方法的實施對比 如圖2所示,在L3VPN網(wǎng)絡(luò)典型的CE雙歸PE的組網(wǎng)結(jié)構(gòu)中,為了確保某些重要業(yè)務(wù),如語音、視頻等的可靠性,采用兩個或兩個以上的CE連接到兩個或兩個以上的PE。當(dāng)CE1設(shè)備發(fā)生故障或者PE1-CE1鏈路發(fā)生故障時,業(yè)務(wù)可以切換到PE2上(PE1即為第一運營商邊緣路由器,PE2即為第二運營商邊緣路由器)。
典型網(wǎng)絡(luò)的測試數(shù)據(jù)表明,當(dāng)CE1發(fā)生故障或者PE1-CE1鏈路發(fā)生故障,從業(yè)務(wù)主機A到業(yè)務(wù)主機B方向的業(yè)務(wù)中斷時間約為1.5s,從業(yè)務(wù)主機B到業(yè)務(wù)主機A的業(yè)務(wù)中斷時間約為5s。這是由于,當(dāng)CE1設(shè)備發(fā)生故障或者CE1-PE1鏈路發(fā)生故障時,對于從業(yè)務(wù)主機A到業(yè)務(wù)主機B方向的業(yè)務(wù),只要CE1、CE2、PE2的IGP(ebgp、ospf、rip)(Interior Gateway protocol,內(nèi)部網(wǎng)關(guān)協(xié)議)收斂,流量即能恢復(fù)。
對于從業(yè)務(wù)主機B到業(yè)務(wù)主機A方向的業(yè)務(wù),需要由PE1感知到CE1故障或者PE1-CE1鏈路故障,如可以通過鏈路層上報、BFD(BidirectionalForwarding Detection,雙向轉(zhuǎn)發(fā)檢測)或者IGP的hello感知,現(xiàn)有技術(shù)中可以先通過MP-IBGP通告PE3撤銷目的地為業(yè)務(wù)主機A的網(wǎng)段,由PE3重新優(yōu)選PE2發(fā)布的路由,并重新下發(fā)轉(zhuǎn)發(fā)項,完成業(yè)務(wù)的端到端收斂。在PE3重新下發(fā)PE2發(fā)布的路由對應(yīng)的轉(zhuǎn)發(fā)項之前,由于轉(zhuǎn)發(fā)引擎的轉(zhuǎn)發(fā)項指向的外層LSP隧道的終點仍然是PE1,而CE1節(jié)點故障或者PE1-CE1鏈路故障,因此在這段時間之內(nèi),CE3是無法訪問CE1的,造成端到端業(yè)務(wù)中斷。
在MPLS TE FRR技術(shù)和VPN FRR技術(shù)中,進(jìn)行路由切換時,PE1先感知到CE1故障或者CE1-PE1鏈路故障;再發(fā)布撤銷路由。由PE3重新計算優(yōu)選PE2發(fā)布的VPN V4路由,并將新的轉(zhuǎn)發(fā)項下刷到轉(zhuǎn)發(fā)引擎中。明顯的,PE1發(fā)布撤銷路由和PE3重新計算路由并刷新轉(zhuǎn)發(fā)項的執(zhí)行速度與VPNV4路由的規(guī)模相關(guān)。
應(yīng)用本發(fā)明實施例方法的路由切換處理流程如圖3所示,包括 步驟30、PE1接收到數(shù)據(jù)包,該數(shù)據(jù)包中將發(fā)送至業(yè)務(wù)主機A,數(shù)據(jù)包中攜帶了業(yè)務(wù)主機A的地址信息。假設(shè)業(yè)務(wù)主機A所在的網(wǎng)段為10.40.6.0/24。
步驟31、PE1根據(jù)數(shù)據(jù)包中業(yè)務(wù)主機A的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,其中包括主用路由的相關(guān)信息和備用路由的相關(guān)信息。
PE1通過PE1-CE1鏈路學(xué)習(xí)將數(shù)據(jù)包發(fā)至業(yè)務(wù)主機A的路由,即主用路由;PE2通過PE2-CE2鏈路學(xué)習(xí)將數(shù)據(jù)包發(fā)至業(yè)務(wù)主機A的路由,即備用路由。PE1、PE2都會把該路由通過MP-IBGP宣告給對方。
不失一般性,我們考察PE1的路由情況。VPN路由表中,10.40.6.0/24通過IGP學(xué)到,出接口為f0接口。在BGP路由表中,存在到達(dá)目的網(wǎng)段10.40.6.0/24的兩條路由,最優(yōu)路由為BGP的網(wǎng)絡(luò)(network)或者重分布命令從VPN路由中引入的,次優(yōu)路由為從PE2學(xué)到的,支持PE1設(shè)備根據(jù)匹配策略選擇符合條件的VPNV4路由。對于這些路由,除了最優(yōu)的PE1發(fā)布的路由信息(包括轉(zhuǎn)發(fā)前綴、內(nèi)層標(biāo)簽、下一跳、外層標(biāo)簽、出接口)即主用路由的相關(guān)信息,次優(yōu)的PE2發(fā)布的路由協(xié)議(包括轉(zhuǎn)發(fā)前綴、內(nèi)層標(biāo)簽、下一跳、外層標(biāo)簽、出接口)即備用路由的相關(guān)信息也同樣填寫在轉(zhuǎn)發(fā)項中,如表1所示。
表1轉(zhuǎn)發(fā)信息 主用路由的相關(guān)信息
備用路由的相關(guān)信息 表2中,為了保證轉(zhuǎn)發(fā)引擎中轉(zhuǎn)發(fā)前綴的唯一性,主用路由的相關(guān)信息(轉(zhuǎn)發(fā)項)與備用路由的相關(guān)信息(轉(zhuǎn)發(fā)項)采用鏈表相連。
步驟32、PE1根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口f0接口不可用。當(dāng)CE1設(shè)備發(fā)生故障或PE1-CE1鏈路發(fā)生故障時,PE1通過鏈路層檢測、BFD等技術(shù),感知到PE1與CE1之間的f0接口不可用。在典型組網(wǎng)中,端到端故障感知時間小于50ms。
步驟33、當(dāng)PE1感知f0接口不可用之后,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
具體的,PE1可以將出接口f0的狀態(tài)標(biāo)志位設(shè)置為不可用(down)并下刷到存儲轉(zhuǎn)發(fā)信息的轉(zhuǎn)發(fā)引擎中。轉(zhuǎn)發(fā)引擎命中一個轉(zhuǎn)發(fā)項之后,檢查該轉(zhuǎn)發(fā)項對應(yīng)的出接口是否為不可用狀態(tài)。轉(zhuǎn)發(fā)引擎確定該轉(zhuǎn)發(fā)項對應(yīng)的出接口為不可用狀態(tài)時,根據(jù)備用路由的相關(guān)信息將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
步驟34、PE1通過備用路由轉(zhuǎn)發(fā)數(shù)據(jù)包至CE2,即使用轉(zhuǎn)發(fā)信息中攜帶的次優(yōu)路由的轉(zhuǎn)發(fā)信息進(jìn)行轉(zhuǎn)發(fā)。此時,數(shù)據(jù)包將打上PE2分配的內(nèi)層標(biāo)簽(本例中為20),沿著PE1與PE2之間的外層LSP隧道交換到PE2,再轉(zhuǎn)發(fā)給CE2,從而恢復(fù)主機B到主機A方向的業(yè)務(wù),實現(xiàn)CE1節(jié)點故障或PE1-CE1鏈路故障情況下端到端業(yè)務(wù)的快速重路由。
一個實施例中,第一運營商邊緣路由器將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,可以從轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。如在上述具體實例中,當(dāng)PE1感知到CE1節(jié)點故障或者PE1-CE1鏈路故障時,PE1、PE3的BGP都會重新計算優(yōu)選路由,刷新轉(zhuǎn)發(fā)表。PE1的表1的轉(zhuǎn)發(fā)表項將被替換成表2的轉(zhuǎn)發(fā)表項。
表2轉(zhuǎn)發(fā)表項
上述實施例中的備用路由為一個,當(dāng)然,備用路由也可以為多個。當(dāng)備用路由為多個時,第一運營商邊緣路由器根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)選擇的備用路由的相關(guān)信息,將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到選擇的備用路由,并通過選擇的備用路由轉(zhuǎn)發(fā)數(shù)據(jù)包至客戶邊緣路由器。
另外,上述具體實例中,如果PE1刷新轉(zhuǎn)發(fā)表的動作早于PE3完成,在PE1完成刷新轉(zhuǎn)發(fā)表而PE3未完成刷新轉(zhuǎn)發(fā)表這段時間內(nèi),PE3去往10.40.6.0/24網(wǎng)段的數(shù)據(jù)包仍然會丟失在PE1。因此,為了避免或減少丟包,較佳的,PE1需要先用BGP通告PE3撤銷路由,再計算自身的BGP優(yōu)選路由刷新轉(zhuǎn)發(fā)表項。不失一般性,一個實施例中,第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,可以先通知上一級運營商邊緣路由器(如上述具體實例中的PE3)撤銷到本設(shè)備的路由,再將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例還提供一種運營商邊緣路由器,如圖4a所示,該運營商邊緣路由器包括接收模塊40、查找模塊41、切換模塊42、發(fā)送模塊43;其中,接收模塊40,用于接收數(shù)據(jù)包,該數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;查找模塊41,用于根據(jù)目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,該轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;切換模塊42,用于根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;發(fā)送模塊43,用于通過備用路由轉(zhuǎn)發(fā)該數(shù)據(jù)包至客戶邊緣路由器。
如圖4b所示,一個實施例中,圖4a所示的運營商邊緣路由器還可以包括第一獲取模塊44、第二獲取模塊45;其中,第一獲取模塊44,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取主用路由的相關(guān)信息;第二獲取模塊45,用于從備用路由對應(yīng)的第二運營商邊緣路由器獲取所述備用路由的轉(zhuǎn)發(fā)信息,其中,備用路由的轉(zhuǎn)發(fā)信息由第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取。
如圖4c所示,一個實施例中,圖4a所示的運營商邊緣路由器還可以包括檢測模塊46、設(shè)置模塊47;其中,檢測模塊46,用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用;設(shè)置模塊47,用于在檢測到主用路由對應(yīng)的出接口不可用后,在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
如圖4d所示,一個實施例中,圖4a所示的運營商邊緣路由器還可以包括去除模塊48,用于在將數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
所述備用路由多個時,切換模塊42可以進(jìn)一步包括選擇單元,用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由;切換單元,用于根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由;此時發(fā)送模塊43可以進(jìn)一步用于通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
發(fā)送模塊43還可以進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器撤銷到本設(shè)備的路由。
基于同一發(fā)明構(gòu)思,本發(fā)明實施例還提供一種網(wǎng)絡(luò)系統(tǒng),如5a所示,該網(wǎng)絡(luò)系統(tǒng)包括第一運營商邊緣路由器50、客戶邊緣路由器51;其中,第一運營商邊緣路由器50,用于接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包;客戶邊緣路由器51,用于接收所述第一運營商邊緣路由器轉(zhuǎn)發(fā)的數(shù)據(jù)包。
如圖5b所示,一個實施例中,圖5a所示的網(wǎng)絡(luò)系統(tǒng)還可以包括第二運營商邊緣路由器52,對應(yīng)于備用路由,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述備用路由的轉(zhuǎn)發(fā)信息,并向第一運營商邊緣路由器50提供所述備用路由的轉(zhuǎn)發(fā)信息。第一運營商邊緣路由器50可以進(jìn)一步用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息。
第一運營商邊緣路由器50還可以進(jìn)一步用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
第一運營商邊緣路由器50還可以進(jìn)一步用于在將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
所述備用路由多個時,第一運營商邊緣路由器50還可以進(jìn)一步用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由,并通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
如圖5c所示,一個實施例中,圖5a所示的網(wǎng)絡(luò)系統(tǒng)還可以包括上一級運營商邊緣路由器53,用于向第一運營商邊緣路由器50發(fā)送數(shù)據(jù)包;第一運營商邊緣路由器50還可以進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器53撤銷到本設(shè)備的路由。
本領(lǐng)域普通技術(shù)人員可以理解上述實施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,該程序可以存儲于一計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括ROM、RAM、磁盤或光盤等。
本發(fā)明實施例中,第一運營商邊緣路由器在接收到攜帶有目的網(wǎng)絡(luò)地址信息的數(shù)據(jù)包后,根據(jù)目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,其中,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;在根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,無需向上一級運營商邊緣路由器上報主用路由故障,請求其重新計算轉(zhuǎn)發(fā)路由,而是直接根據(jù)本地保存的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由,通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器,保證了客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與第一運營商邊緣路由器之間的鏈路發(fā)生故障時,可以進(jìn)行快速的端到端的重路由,節(jié)省業(yè)務(wù)倒換時間和端到端業(yè)務(wù)收斂時間。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若對本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1、一種路由切換的方法,其特征在于,該方法包括步驟
第一運營商邊緣路由器接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;
所述第一運營商邊緣路由器根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;
所述第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;
所述第一運營商邊緣路由器通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
2、如權(quán)利要求1所述的方法,其特征在于,所述第一運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息;由備用路由對應(yīng)的第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述備用路由的轉(zhuǎn)發(fā)信息,所述第一運營商邊緣路由器從所述第二運營商邊緣路由器獲取所述備用路由的轉(zhuǎn)發(fā)信息。
3、如權(quán)利要求1所述的方法,其特征在于,所述主用路由的相關(guān)信息包括主用路由對應(yīng)的出接口狀態(tài),在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與第一運營商邊緣路由器之間的鏈路發(fā)生故障時,第一運營商邊緣路由器檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
4、如權(quán)利要求1所述的方法,其特征在于,所述第一運營商邊緣路由器將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
5、如權(quán)利要求1所述的方法,其特征在于,所述備用路由為一個或多個。
6、如權(quán)利要求5所述的方法,其特征在于,所述備用路由為多個時,所述第一運營商邊緣路由器根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由,并通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
7、如權(quán)利要求1至6任一項所述的方法,其特征在于,所述第一運營商邊緣路由器根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器撤銷到本設(shè)備的路由,再將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由。
8、一種運營商邊緣路由器,其特征在于,包括
接收模塊,用于接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;
查找模塊,用于根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;
切換模塊,用于根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;
發(fā)送模塊,用于通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
9、如權(quán)利要求8所述的運營商邊緣路由器,其特征在于,還包括
第一獲取模塊,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息;
第二獲取模塊,用于從備用路由對應(yīng)的第二運營商邊緣路由器獲取所述備用路由的轉(zhuǎn)發(fā)信息,其中,所述備用路由的轉(zhuǎn)發(fā)信息由所述第二運營商邊緣路由器通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取。
10、如權(quán)利要求8所述的運營商邊緣路由器,其特征在于,還包括
檢測模塊,用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用;
設(shè)置模塊,用于在檢測到主用路由對應(yīng)的出接口不可用后,在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
11、如權(quán)利要求8所述的運營商邊緣路由器,其特征在于,還包括
去除模塊,用于在將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
12、如權(quán)利要求8所述的運營商邊緣路由器,其特征在于,所述備用路由多個時,所述切換模塊進(jìn)一步包括
選擇單元,用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由;
切換單元,用于根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由;
所述發(fā)送模塊進(jìn)一步用于通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
13、如權(quán)利要求8至12任一項所述的運營商邊緣路由器,其特征在于,所述發(fā)送模塊進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知上一級運營商邊緣路由器撤銷到本設(shè)備的路由。
14、一種網(wǎng)絡(luò)系統(tǒng),其特征在于,包括
第一運營商邊緣路由器,用于接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包;
客戶邊緣路由器,用于接收所述第一運營商邊緣路由器轉(zhuǎn)發(fā)的數(shù)據(jù)包。
15、如權(quán)利要求14所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,所述第一運營商邊緣路由器進(jìn)一步用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述主用路由的相關(guān)信息;
所述網(wǎng)絡(luò)系統(tǒng)還包括
第二運營商邊緣路由器,對應(yīng)于備用路由,用于通過學(xué)習(xí)與客戶邊緣路由器之間的鏈路獲取所述備用路由的轉(zhuǎn)發(fā)信息,并向所述第一運營商邊緣路由器提供所述備用路由的轉(zhuǎn)發(fā)信息。
16、如權(quán)利要求14所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,所述第一運營商邊緣路由器進(jìn)一步用于在客戶邊緣路由器發(fā)生故障或客戶邊緣路由器與本設(shè)備之間的鏈路發(fā)生故障時,檢測到主用路由對應(yīng)的出接口不可用,并在主用路由的相關(guān)信息中將主用路由對應(yīng)的出接口狀態(tài)設(shè)置為不可用狀態(tài)。
17、如權(quán)利要求14所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,所述第一運營商邊緣路由器進(jìn)一步用于在將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由后,從所述轉(zhuǎn)發(fā)信息中去除主用路由的相關(guān)信息。
18、如權(quán)利要求14所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,所述備用路由多個時,所述第一運營商邊緣路由器進(jìn)一步用于根據(jù)系統(tǒng)策略或用戶指示,從多個備用路由中選擇一個備用路由,根據(jù)所述選擇的備用路由的相關(guān)信息,將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到所述選擇的備用路由,并通過所述選擇的備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。
19、如權(quán)利要求14至18任一項所述的網(wǎng)絡(luò)系統(tǒng),其特征在于,還包括
上一級運營商邊緣路由器,用于向所述第一運營商邊緣路由器發(fā)送所述數(shù)據(jù)包;
所述第一運營商邊緣路由器進(jìn)一步用于在確定主用路由對應(yīng)的出接口不可用時,先通知所述上一級運營商邊緣路由器撤銷到本設(shè)備的路由。
全文摘要
本發(fā)明公開了一種路由切換的方法,該方法包括第一運營商邊緣路由器接收數(shù)據(jù)包,所述數(shù)據(jù)包中攜帶有目的網(wǎng)絡(luò)的地址信息;以及,根據(jù)所述目的網(wǎng)絡(luò)的地址信息在本地查找對應(yīng)的轉(zhuǎn)發(fā)信息,所述轉(zhuǎn)發(fā)信息包括主用路由的相關(guān)信息和備用路由的相關(guān)信息;根據(jù)主用路由的相關(guān)信息確定主用路由對應(yīng)的出接口不可用時,根據(jù)備用路由的相關(guān)信息將所述數(shù)據(jù)包的轉(zhuǎn)發(fā)路由由主用路由切換到備用路由;通過備用路由轉(zhuǎn)發(fā)所述數(shù)據(jù)包至客戶邊緣路由器。本發(fā)明同時公開一種運營商邊緣路由器和網(wǎng)絡(luò)系統(tǒng)。采用本發(fā)明可以在客戶邊緣路由器發(fā)生故障或者運營商邊緣路由器與客戶邊緣路由器之間的鏈路發(fā)生故障時,實現(xiàn)端到端的快速重路由。
文檔編號H04L12/56GK101355486SQ20071011940
公開日2009年1月28日 申請日期2007年7月23日 優(yōu)先權(quán)日2007年7月23日
發(fā)明者澍 葛, 忠 戴, 孫金霞, 夢 尤, 孔令山, 董智純, 段立鴻, 斌 葉, 越 秦, 芳 韋, 黃昭銳 申請人:中國移動通信集團(tuán)公司