專利名稱:一種故障通告的方法及設備的制作方法
技術領域:
本發明涉及通信領域,特別涉及一種用于基于多播標簽分配協議建立的組 播標簽交換路徑的故障通告的方法及設備。
背景技術:
組播技術(Multicast)是一種一到多的多方通信方式。和普遍使用的單播 技術不同,組播技術通過建立最優的組播轉發路徑,減少數據內容的復制,可 以大幅度減少多方通信對網絡資源的消耗。組播技術的最核心問題即組播轉發 樹的構建。組播轉發樹是從一個(或者多個)源節點到多個接收節點建立起的 轉發路徑,組播數據通過組播轉發樹在網絡上進行傳送,達到優化轉發效率的 目的。
有多種網絡協議實現組播技術,可以分為單純IP方案和多協議標簽"t支術 (MPLS)方案。過去組播部署多采用IP方案,MPLS —般主要用于單播IP
轉發。隨著組播技術的發展,MPLS組播逐步成為一個研究熱點。通過MPLS
建立的組纟番轉發樹;故稱為點到多點(Point to Multipoint, P2MP)的標簽交換路徑 (Label Switch Path , LSP )。 MPLS P2MP的建立可以有兩種協議可供選擇
RSVP-TE協議和LDP協議。通常把擴展后支持組播的LDP協議成為mLDP協議。
無論是基于RSVP-TE還是mLDP協議,最終都可以形成一個P2MP LSP。 mLDP還可以生成多點到多點(Multipoint to multipoint, MP2MP)的LSP。為簡 單起見,本文描述一般采用MPLS技術中的P2MP LSP進行說明,相關技術原 理可以同樣適用于MPLS MP2MP LSP。
在實際的網絡應用中,組播樹的拓樸隨組播成員的變化而動態構建。加入 一個成員的時候,組播協議根據網絡拓樸加入分支路徑,即嫁接操作(Graft); 當組播成員離開的時候,會刪除不必要的分支路徑,即剪枝操作(Prune )。通 過嫁接和剪枝,形成一個動態的組播轉發樹。
基于mLDP構建P2MP LSP和基于RSVP-TE構建P2MP LSP有很多不同之處。mLDPP2MPLSP是通過葉子節點主動發起加入和剪枝操作,整個樹的 構建由多個葉子共同發起創建。主要是通過LDP協議的Label Mapping Message 和Label Withdraw Message來構造、刪除組播樹。
在各種技術中,組播轉發樹的構建都可以動態產生,并且有兩個基本特點
1) 葉子節點明確知道自己需要加入/離開此轉發樹;確定需要加入轉發樹 的時候,通過協議發起加入;確定離開的時候,發起剪枝,析構相應的轉發分 支;
2) 葉子發起加入請求, 一旦成功加入,則組播數據被轉發到相應的葉子 節點;葉子發起剪枝并成功,則相應的數據轉發中斷,并且相應的轉發分支被 撤銷。
這兩個基本特性保證了組播轉發樹可以根據接收者動態確定最優轉發樹。 但是同樣也帶來了相應的問題
1) 葉子發起加入請求之后,組播轉發樹開始創建,但是葉子節點無法知 道整個組播轉發路徑是否建立成功。如果某個葉子的上游節點(不是直接上游 節點,而是隔了一跳或者多跳的上游路由器)因某種原因無法成功處理加入請 求,轉發路徑無法建立成功,而葉子無法獲得建立轉發路徑失敗信息,無法進 一步采取動作;
2) —個建立好的mLDPP2MPLSP,當網絡拓樸發生變化的情況下,原有 mLDP P2MP LSP不可用。 一般情況下,mLDP可以自動根據路由計算新的路 徑。但是某些情況下,可能無法計算一新的路徑(如網絡設備故障),造成無 法正常轉發。這種情況下葉子也沒有辦法獲得故障信息,無法正確處理。
mLDP創建的P2MP LSP可以用于多種場景,如MVPN,或者Triple Play。 隨著視頻業務的興起,Triple Play、 VPN組播的需求增強,組播大規模部署已 經逐步展開,對組播可靠性要求越來越高。葉子節點一般是業務的接受者,或 者關鍵的PE設備,當發生故障的情況下,葉子節點需要獲知發生了故障以及 故障發生的原因,以便采取合適的措施,保證業務的正常進行。同時葉子節點 及時獲得網絡中的故障也有益于網絡管理員維護整個網絡。因此,mLDP應當 有相應的機制來通告葉子節點已經發生故障的種類。
在實現本發明過程中,申請人發現現有技術至少存在以下缺陷LDP/mLDP協議由Notification消息來通知協議處理過程中的故障,但是一般 僅僅限于相鄰兩個標簽交換路由器(Label Switch Router, LSR)之間的信息, 當發生故障的標簽交換路由器或發生故障的路徑的直接下游節點發現該故障 后,發現故障的節點通過Notification消息通知自身的上游節點,根據目前 LDP/mLDP協議的規定,無法將故障信息和原因繼續傳遞最終到達葉子節點, 無法使得葉子節點及時獲知故障信息
發明內容
性。
本發明實施例提供了一種故障通告的方法,該方法包括
當檢測到組播標簽交換路徑發生了故障時,向故障點所在的組播樹的下游 節點發送故障信息,所述組播標簽交換路徑基于多播標簽分配協議建立;
經過下游節點轉發,所述故障信息到達葉子節點。
本發明實施例還提供了一種交換設備,該交換機包括
檢測單元,用于檢測組播LSP是否發生故障,所述組播標簽交換路徑基于 多播標簽分配協議建立;
信息單元,用于當檢測到發生了故障,向故障點所在的組播樹的下游節點 發送故障信息;經過一個或一個以上的下游節點轉發,所述故障信息到達葉子 節點。
采用本發明實施例提供故障通告的方法及設備,檢測到基于多播標簽分配 協議建立的組播LSP發生故障后,向故障點所在的組播樹的下游節點發送故障 信息,接收到故障信息的下游節點根據情況繼續轉發該故障信息,從而最終將 該故障信息傳遞給葉子節點,葉子節點獲得故障信息后,可以采取適當的措施, 保證業務的正常運行,提高網絡的可靠性;網絡管理員也可以從葉子節點獲得 該故障信息,對整個網絡進行維護,進一步提高網絡的可靠性。
圖1是本發明實施例一中故障通告的方法的流程示意圖;圖2是本發明實施例一中P2MPLSP的結構示意圖; 圖3是本發明實施例二中交換設備的結構示意圖。
具體實施例方式
本發明以下各實施例中通過擴展現有mLDP的Notification消息或者定義 新的通知消息的方法,將故障信息通告給葉子節點。在以下各實施例中,中間 節點可以為LSR,也可以為其他的網絡設備,例如交換機等。
實施例一, 一種故障通告的方法,參見圖1,該方法包括
101、檢測組播LSP是否發生故障,該組播LSP基于多播標簽分配協議 (mLDP)建立。
在通過mLDP建立P2MP LSP的過程中和建立成功后檢測組播LSP是否 發生故障不同,下面分別介紹
在通過mLDP建立P2MP LSP的過程中,各中間節點才全測是否發生故障, 一般是對自身的直接上游節點的狀態或者與直接上游節點之間的路徑進行檢 測,故障原因可以包括是否沒有路由、標簽空間是否錯誤或者是否不支持 P2MP,其中,是否沒有路由可以包括是否無法計算出到頭節點的路由,標 簽空間是否錯誤可以包括標簽空間是否錯誤包括標簽空間是否不足、標簽空 間是否分配錯誤、標簽空間與標簽是否對應等。例如,對于沒有路由的情況, 是在通過mLDP建立P2MP LSP的過程中,接收到葉子節點的加入請求后,檢 測到無法繼續建立標簽交換路徑LSP,則檢測到發生了故障。
在通過mLDP建立MP2MP LSP的過程中,故障原因與建立P2MP LSP的 過程不同之處在于,是否不支持P2MP更改為是否不支持MP2MP。
P2MPLSP創建成功后,各中間節點檢測是否發生故障,故障原因可以為 沒有路由或者正在對標簽交換路徑進行維護,沒有路由可以包括到達頭節點 的路徑中斷且無法修復或者到達頭節點的路徑中斷且沒有替代路徑等情況,而 出現這種情況可能是因為網絡出現故障或者網絡正在維護。
MPLS P2MP LSP實現故障通告的原理可以同樣適用于MPLS MP2MPLSP,在通過mLDP建立MP2MP LSP的過程中和MP2MP LSP創建成功后, 也可以由中間節點檢測是否發生故障。 .
102、當檢測到發生了故障,向故障點所在的組播樹的下游節點發送故障 信息。
下面就建立P2MPLSP的過程中和建立成功之后兩種情況分別舉例說明 在通過mLDP建立P2MP LSP的過程中,接收到葉子節點的加入請求后, 檢測到無法繼續創建標簽交換路徑,則發生了故障;生成故障通告消息,并將 該故障通告消息發送給下游節點,故障通告消息用于攜帶故障信息,故障信息 中包括故障位置和故障原因,故障位置包括出現故障的節點的位置或者出現故 障的路徑的位置,例如是哪個節點出現了故障或者哪兩個節點之間的路由出現 了故障,在故障信息中攜帶出現故障的節點的IP地址、標識,或者攜帶出現 故障路徑端點節點的IP地址、標識;故障原因參見101。
在通過mLDP建立P2MPLSP的過程中,接收到任一葉子節點的加入請求 后,相應的上游節點處理該加入請求,發現故障,則將故障信息通過下游節點 發送或轉發給葉子節點,下面以兩個葉子節點分別發起加入請求為例進行說 明
參見圖2,葉子節點LSRR5和LSRR6發送加入請求,上游節點R3、 R2 依次處理該請求,但是R2發現路徑故障無法繼續創建LSP,并且沒有其它路 徑可達頭節點R1,因此主動通過故障通告消息通告下游節點R3,故障通告消 息用于攜帶故障信息,下游節點R3接收到故障通告消息后,將該故障通告消息 繼續向下游傳遞,最終到達葉子節點R5和R6,通過該故障通告消息告知葉子 節點R5和R6: R2與Rl之間的路徑故障及故障原因。
P2MPLSP創建后,由于網絡故障或者網絡進行維護等原因,檢測到達頭 節點的路徑中斷且無法修復,或者檢測到達頭節點的路徑中斷且沒有替代路 徑,則發生了故障;生成故障通告消息,并將該故障通告消息發送給下游節點, 故障通告消息用于攜帶故障信息。例如,參見圖2, P2MPLSP已經創建成功, 包含頭節點R1和中間節點R2、 R3、 R8和R4,以及葉子節點R5、 R6和R7。 由于中間節點R2故障,R3發現通過R2到達頭節點R1的路徑中斷,并且沒有其它路徑可以到達頭節點R1。此時R3產生故障通告消息并向下游節點發送, 經過一個或者多個下游節點處理后最終到達受影響的葉子節點R5和R6,通知 葉子節點R5和R6:節點R2故障及故障原因。
另外,為了進一步加強網絡的管理、維護能力,網絡管理員可以從葉子節 點上獲得故障信息,根據故障原因,所故障點進行相應的維護或者修復。
在實際網絡中,可能會出現葉子節點無需獲得故障通告消息的情況,例如, 葉子節點發送加入請求后,不需要通過組播轉發樹發送/接收組播數據。葉子 節點可以在加入請求中指明是否需要故障通告消息,檢測到故障發生,先判斷 葉子節點是否需要接收故障信息,當葉子節點需要接收故障信息時,生成故障 通告消息,故障通告消息用于攜帶故障信息,并將該故障通告消息通過下游節 點最終發送給葉子節點;當葉子節點不需要^^妄收故障信息時,則不生成故障通 告消息,從而避免發送無用的故障信息。
檢測到故障的節點將故障通告消息向故障點所在的組播樹的下游節點發 送,如果該下游節點為葉子節點,則該葉子節點接收到故障通告消息,從該故 障通告消息中獲得故障信息;如果該下游節點為中間節點,接收到故障通告消 息后,發現該故障通告消息中攜帶了故障信息,則將該故障通告消息轉發給自 身的下游節點,通過一跳或多跳的中間節點的轉發,最終將故障通告消息發送 到葉子節點。
當需要攜帶故障信息時,可以采用以下方式
可以定義新的通知消息,該新的通知消息中攜帶故障信息,例如,該新的 通知消息的格式包括標識位和信息位,標識位標識該通知消息中攜帶的是故障 信息,信息位的前M位表示出現故障的LSP,信息位的后N位表示故障的原 因,其中,M、 N為自然數。由于每個中間節點所在的路由可能有多個,需要 用信息位的前M位指明發生故障的究竟是哪條路由;故障的原因也有多種, 針對不同的故障原因,葉子節點要作的處理/:操作也不同,因此,用信息位的 后N位指明發生故障的具體原因。
也可以擴展現有mLDP的Notification消息實現故障通告。在擴展的
Notification消息中封裝故障通告元素(Failure Notification Element)和受到故障影響的轉發等價類(Optional LDP MP FECTLV),故障通告元素用于表示故障 的原.因,例如沒有路由、標簽空間錯誤、不支持P2MP或不支持MP2MP等,受 到故障影響的轉發等價類用于表示故障的位置,由于每個中間節點可能處于多 條LSP中,可以通過受到故障影響的轉發等價類指明是哪條P2MP LSP發生故 障,或者指明是哪條MP2MP LSP出現故障。Failure Notification Element的編碼 值和格式可以根據實際使用的情況具體調整,只要可以表示故障的位置和故障 原因即可。
以下舉一種Failure Notification Element的格式為例
0 1234567890 1234567890 123456 7890 1F一NOTI TypeLength = 1Error Code
F一NOTI Type = 2 Length = 1
Error Code:等于1時,表示沒有路由(No Route);等于2時表示標簽空 間錯誤,如空間不足(Label Space Error);等于3時表示不支持P2MP (MP Incapable);等于4時表示正在維護(Planned Maintenace )。
實施例二, 一種交換設備,用于通告基于多播標簽分配協議建立的組播標 簽交換路徑的故障,參見圖3,該交換設備包括(待方法權項修改確認后作適 應性^奮改)
檢測單元301,用于檢測組播LSP是否發生故障,所述組播標簽交換路徑 基于多播標簽分配協議建立;
信息單元302,用于當檢測到發生了故障,向故障點所在的組播樹的下游 節點發送故障信息;經過一個或一個以上的下游節點轉發,所述故障信息到達 葉子節點。其中,信息單元包括
信息生成子單元,用于生成故障通告消息,所述故障通告消息用于攜帶所
述故障信息;
發送子單元,用于將所述信息生成子單元生成的故障通告消息發送給故障 點所在的組播樹的下游節點;或者,
轉發子單元,用于當接收到來自故障點所在的組播樹的上游節點的故障通 告消息,將所述故障通告消息轉發給下游節點。
進一步的,交換設備還包括
判斷單元,用于判斷葉子節點是否需要接收故障信息;當判斷不需要時, 生成結束指令,所述結束指令用于控制所述信息單元停止工作;當判斷需要時, 生成執行指令,所述執行指令用于控制所述信息單元工作。本實施例中的交換 設備可以是交換機、二層路由器等具備交換功能的網絡設備
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發明 可借助軟件加必需的石更件平臺的方式來實現,當然也可以全部通過^5更件來實 施,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發明的技術方 案對背景技術做出貢獻的全部或者部分可以以軟件產品的形式體現出來,該計 算機軟件產品可以存儲在存儲介質中,如ROM/RAM、磁碟、光盤等,包括若 干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備
以上所述僅是本發明的優選實施方式,應當指出,對于本技術領域的普通 技術人員來說,在不脫離本發明原理的前提下,還可以作出若干改進和潤飾, 這些改進和潤飾也應視為本發明的保護范圍。
權利要求
1、一種故障通告的方法,其特征在于,該方法包括當檢測到組播標簽交換路徑發生了故障時,向故障點所在的組播樹的下游節點發送故障信息,所述組播標簽交換路徑基于多播標簽分配協議建立;經過下游節點轉發,所述故障信息到達葉子節點。
2、 根據權利要求1所述的方法,其特征在于,所述向故障點所在的組播 樹的下游節點發送故障信息包括生成故障通告消息,通過所述故障通告消息將所述故障信息發送給故障點 所在的組播樹的下游節點;或者,當接收到來自故障點所在的組播樹的上游節點的故障通告消息,將所述故 障通告消息轉發給下游節點。
3、 根據權利要求1或2所述的方法,其特征在于,所述向組播樹的下游 節點發送故障信息的步驟之前,該方法還包括判斷葉子節點是否需要接收故障信息;當不需要時,結束該方法;當需要 時,向故障點所在的組一番樹的下游節點發送故障信息。
4、 根據權利要求3所述的方法,其特征在于,所述判斷葉子節點是否需 要接收故障信息包括當葉子節點在加入請求中指明需要故障信息是,判斷所述葉子節點需要接 收故障信息;或者,當葉子節點在加入請求中未指明需要故障信息是,判斷所述葉子節點不需 要接收故障信息。
5、 根據權利要求1所述的方法,其特征在于,所述故障信息包括故障的 位置和故障的原因。
6、 根據權利要求5所述的方法,其特征在于,所述故障的原因包括沒 有路由、標簽空間錯誤、不支持點到多點、不支持多點到多點或者正在對標簽 交換路徑進行維護。
7、 根據權利要求6所述的方法,其特征在于,所述沒有路由包括無法計 算出到頭節點的路由、到達頭節點的路徑中斷且無法修復或者到達頭節點的路 徑中斷且沒有替代路徑,所述標簽空間錯誤為標簽空間不足、標簽空間分配錯 誤或者標簽空間與標簽不對應。
8、 根據權利要求6所述的方法,其特征在于,所述故障通告消息為擴展 的Notification消息,所述擴展的Notification消息中封裝故障通告元素和受到 故障影響的轉發等價類,所述故障通告元素用于表示故障的原因,所述受到故 障影響的轉發等價類用于表示故障的位置。
9、 一種交換設備,其特征在于,該交換機包括檢測單元,用于檢測組播LSP是否發生故障,所述組播標簽交換路徑基于 多播標簽分配協議建立;信息單元,用于當檢測到發生了故障,向故障點所在的組播樹的下游節點 發送故障信息;經過一個或一個以上的下游節點轉發,所述故障信息到達葉子 節點。
10、 根據權利要求9所述的交換設備,其特征在于,所述信息單元包括 信息生成子單元,用于生成故障通告消息,所述故障通告消息用于攜帶所述故障信息;發送子單元,用于將所述信息生成子單元生成的故障通告消息發送給故障 點所在的組播樹的下游節點;或者,轉發子單元,用于當接收到來自故障點所在的組播樹的上游節點的故障通 告消息,將所述故障通告消息轉發給下游節點。
11、 根據權利要求10所述的交換設備,其特征在于,所述交換設備還包括判斷單元,用于判斷葉子節點是否需要接收故障信息;當判斷不需要時, 生成結束指令,所述結束指令用于控制所述信息單元停止工作;當判斷需要時, 生成執行指令,所述執行指令用于控制所述信息單元工作。
全文摘要
本發明公開了故障通告的方法及設備,該方法包括當檢測到組播標簽交換路徑發生了故障時,向故障點所在的組播樹的下游節點發送故障信息,所述組播標簽交換路徑基于多播標簽分配協議建立;經過下游節點轉發,所述故障信息到達葉子節點。采用本發明實施例提供故障通告的方法及設備,檢測到基于多播標簽分配協議建立的組播LSP發生故障后,向故障點所在的組播樹的下游節點發送故障信息,接收到故障信息的下游節點根據情況繼續轉發該故障信息,從而最終將該故障信息傳遞給葉子節點,葉子節點獲得故障信息后,可以采取適當的措施,保證業務的正常運行,提高網絡的可靠性。
文檔編號H04L12/26GK101453385SQ200710195499
公開日2009年6月10日 申請日期2007年11月30日 優先權日2007年11月30日
發明者瑋 曹, 陳國義 申請人:華為技術有限公司