專利名稱:主環(huán)多鏈路故障時子環(huán)rpl轉(zhuǎn)移的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通訊技術(shù)領(lǐng)域,尤其涉及一種G8032標(biāo)準(zhǔn)下主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法。
背景技術(shù):
ITU G. · 8032 定義了以太網(wǎng)環(huán)拓撲的 APS (Automatic ProtectionSwitching,自動保護切換)協(xié)議和自動保護切換機制 。G. 8032的第一個版本比較簡單,只提出了單個環(huán)的保護倒換模型,僅說明了信號故障的情況下觸發(fā)的倒換以及回切模式下的行為,對非回切模式以及人工倒換/強制倒換的情況在第一版中沒有提及。G. . 8032的修訂版在第一版的基礎(chǔ)上增加了多環(huán)互連的保護倒換模型,并對人工倒換/強制倒換的情況進行了詳細說明,因為考慮到多環(huán)互連的情況,環(huán)保護倒換的控制過程也相對比較復(fù)雜。環(huán)網(wǎng)保護是要對以太環(huán)網(wǎng)進行自動保護,如圖IA所示,在正常工作狀態(tài)下,在環(huán)網(wǎng)內(nèi)設(shè)置了防止成環(huán)的阻塞鏈路,即RPL(Ring Protecting State,環(huán)保護鏈路)。當(dāng)其他鏈路發(fā)生故障時,如圖IB和圖2所示,這段環(huán)保護鏈路打開,數(shù)據(jù)業(yè)務(wù)倒換到環(huán)保護鏈路上進行傳輸,實現(xiàn)倒換保護。并且當(dāng)故障恢復(fù)后,環(huán)保護鏈路重新被阻塞,數(shù)據(jù)業(yè)務(wù)切回至原來的鏈路。盡管如此,G. 8032標(biāo)準(zhǔn)目前只能保證單鏈路故障的連通性,并沒有解決主環(huán)多鏈路故障時通信的連通性問題,而在實際應(yīng)用中會出現(xiàn)主環(huán)多鏈路故障的情況,在多鏈路分段的情況中,必然會出現(xiàn)某幾個點間不能進行正常通信的問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供一種主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法,以保證在主環(huán)多鏈路發(fā)生故障時,主環(huán)和子環(huán)間的正常通信。為實現(xiàn)上述目的,本發(fā)明提出如下技術(shù)方案一種主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法,包括當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點檢測到主環(huán)節(jié)點上的多個環(huán)接口發(fā)生SF,且子環(huán)的RPL不是配置在所述主環(huán)節(jié)點的子環(huán)接口上時,所述中間節(jié)點發(fā)送數(shù)個SF-RT報文以通知所述子環(huán)的Owner進行RPL轉(zhuǎn)移,并阻塞所述子環(huán)接口 ;子環(huán)Owner收到由所述主環(huán)中間節(jié)點發(fā)送的SF-RT報文后,打開RPL并發(fā)送NR-RB-RT 報文;子環(huán)其它節(jié)點收到所述NR-RB-RT報文后刷新FDB。更進一步地,在環(huán)網(wǎng)正常工作狀態(tài)時,在子環(huán)的Owner上設(shè)置有主環(huán)中間節(jié)點的ID,當(dāng)子環(huán)Owner收到SF-RT報文時,通過所述主環(huán)中間節(jié)點的ID判斷所述SF-RT報文是否是由正確的中間節(jié)點發(fā)送的。當(dāng)子環(huán)Owner收到的所述SF-RT報文不是由所述主環(huán)中間節(jié)點發(fā)送時,則丟棄報文。
當(dāng)其他的中間節(jié)點收到所述NR-RB-RT報文時,則記錄鄰居故障,在發(fā)送SF-RT消息前需檢查鄰居故障值是否為零。當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點檢測到主環(huán)節(jié)點上的多個環(huán)接口發(fā)生SF,且所有子環(huán)的RPL配置在所述主環(huán)節(jié)點的子環(huán)接口上時,僅阻塞發(fā)生SF的接口,不作子環(huán)RPL轉(zhuǎn)移的相關(guān)處理。主環(huán)故障鏈路收到所述NR-RB-RT報文后,將與主環(huán)相連的所述子環(huán)接口記錄為RPL代理。當(dāng)主環(huán)故障鏈路恢復(fù)且主環(huán)WTR超時后,所述中間節(jié)點向子環(huán)RPL代理發(fā)送NR-RB-RT報文,當(dāng)子環(huán)Owner確認這個消息是由正確的RPL代理發(fā)送時,阻塞RPL鏈路,并發(fā)送NR-RB消息通知取消RPL代理。所述中間節(jié)點在收到子環(huán)Owner發(fā)送的NR-RB消息后,
重置鄰居故障值為零。
與現(xiàn)有技術(shù)相比,本發(fā)明所揭示的主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法,保證了在G8032中主環(huán)多鏈路故障時,通過轉(zhuǎn)移子環(huán)RPL的方法,且在主環(huán)故障消除后,重新恢復(fù)子環(huán)RPL的功能,保證了主環(huán)和子環(huán)間數(shù)據(jù)傳遞的連通性和正常的通信。
圖IA是設(shè)有RPL的以太環(huán)網(wǎng)中正常工作時的示意圖;圖IB是圖IA中主環(huán)的一段鏈路發(fā)生故障時啟動RPL后的不意圖;圖2是主環(huán)的一段鏈路發(fā)生故障時的流程圖;圖3A是本發(fā)明以太環(huán)網(wǎng)中主環(huán)上發(fā)生多鏈路故障時的示意圖;圖3B是圖3A中發(fā)生子環(huán)RPL轉(zhuǎn)移后的示意圖;圖4是本發(fā)明在子環(huán)RPL轉(zhuǎn)移時,主環(huán)中間接點狀態(tài)轉(zhuǎn)換的流程圖;圖5是本發(fā)明在子環(huán)RPL轉(zhuǎn)移時,子環(huán)Owner接點狀態(tài)轉(zhuǎn)換的流程圖;圖6是本發(fā)明主環(huán)故障解除時子環(huán)的狀態(tài)變化流程圖。
具體實施例方式下面將結(jié)合本發(fā)明的附圖,對本發(fā)明實施例的技術(shù)方案進行清楚、完整的描述。如圖3A所示的以太環(huán)網(wǎng)中,包括由節(jié)點C、D、E、F組成的主環(huán)Major鏈路和由節(jié)點E、F、G、H組成的子環(huán)Sub鏈路,節(jié)點E、F為主環(huán)Major和子環(huán)Sub共用的中間節(jié)點。子環(huán)Sub上設(shè)置有RPL,即圖2A中的節(jié)點G和節(jié)點H間的鏈路J為RPL,節(jié)點G為該段RPL的Owner的節(jié)點(即RPL的擁有節(jié)點)。環(huán)網(wǎng)保護組的工作狀態(tài)包括正常工作狀態(tài)和保護工作狀態(tài),當(dāng)網(wǎng)絡(luò)拓撲環(huán)節(jié)點的兩個環(huán)接口都正常工作時,保護組處于正常工作狀態(tài);在該狀態(tài)下,環(huán)網(wǎng)處于空閑狀態(tài),所有的節(jié)點以環(huán)的方式連接,通過阻塞RPL的Owner節(jié)點的方式來確保不會成環(huán),如圖3A中節(jié)點G和節(jié)點H間的鏈路J為RPL。結(jié)合圖3A、3B和圖4所示,當(dāng)網(wǎng)絡(luò)拓撲環(huán)中的任意一個接口發(fā)生故障時,保護組進入保護工作狀態(tài),此時,當(dāng)網(wǎng)絡(luò)拓撲為主環(huán)和子環(huán)時,主環(huán)和子環(huán)上的任意一個接口發(fā)生故障時,故障節(jié)點都會從環(huán)接口發(fā)送鏈路故障的SF (Signal Fail)報文給各自的Owner節(jié)點,通知Owner節(jié)點此時鏈路發(fā)生故障,準(zhǔn)備打開備鏈路RPL。這樣每個環(huán)上的單鏈路故障都不會影響主環(huán)和子環(huán)的通信。當(dāng)主環(huán)上的節(jié)點D和節(jié)點F間的鏈路及節(jié)點E和節(jié)點F間的鏈路上同時發(fā)生了故障,使得主環(huán)Major和子環(huán)Sub間的通信被中斷時,此時,通過本發(fā)明的子環(huán)RPL轉(zhuǎn)移的方法,將子環(huán)的業(yè)務(wù)鏈路轉(zhuǎn)移至子環(huán)RPL上,以實現(xiàn)主環(huán)與子環(huán)間的正常通信。具體來說,在G. 8032的子環(huán)自動保護切換APS報文中,在Status字段中用一個新bit位表示RPL是否轉(zhuǎn)移,即RT (RPL transferred),且該字段僅在子環(huán)的APS報文中才起作用,具體表示為RT = I時,表示RPL轉(zhuǎn)移;RT = O時,表示RPL未轉(zhuǎn)移。 報文結(jié)構(gòu)如下
j I ———一一.~~~~~.5
::':■:… ■" : : '■ : " : !"":
IIUELSMsm(X)CSpWeR^s _TIV Ofet ¢2)
6tkqMstSubOXte D(Boctsts)
息: η - η
Β!Ν P —
—..............................................................................................................L—L.L_...r...........................................................................................................................................................................................................................................................................................................
¥_ ID
I.}:R toI2C4o )
..;...... ..................................................................................................................................................................................................................:................................................................................................................
jMW I
.......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... 當(dāng)發(fā)生主環(huán)多鏈路故障時,如果此時仍然期望主環(huán)和子環(huán)通信,就可以采用子環(huán)RPL轉(zhuǎn)移技術(shù),在環(huán)網(wǎng)正常工作狀態(tài)時,在子環(huán)的Owner節(jié)點G上設(shè)置兩個其主環(huán)中間節(jié)點(如節(jié)點E和節(jié)點F)的node-id,以防止收到冒充主環(huán)發(fā)送的鏈路故障轉(zhuǎn)移報文SF-RT。如果子環(huán)的Owner收到冒充的SF-RT報文則丟棄。同時,在主環(huán)的中間節(jié)點(如節(jié)點E和節(jié)點F)上設(shè)置使能RPL轉(zhuǎn)移功能的子環(huán)ID,如圖3A中的子環(huán)Sub。當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點F檢測到主環(huán)節(jié)點上的兩個環(huán)接口都處理SF時,首先就檢查是否有子環(huán)的RPL配置在這個環(huán)節(jié)點的某個子環(huán)接口上,如果其所有子環(huán)的RPL都設(shè)置在該主環(huán)節(jié)點的子環(huán)接口,則不作任何處理;如果某個子環(huán)的RPL不是配置在這個主環(huán)節(jié)點的接口上,檢查此時的鄰居故障(Neighbor Fail)的值。如果Neighbor Fail的值為0,該中間節(jié)點快速的發(fā)送數(shù)個(本實施例中為3個)鏈路故障轉(zhuǎn)移報文SF-RT以通知該子環(huán)的owner進行RPL轉(zhuǎn)移,同時阻塞該子環(huán)接口,如圖2B。如果Neighbor Fail的值為1,那么即使該節(jié)點檢測到主環(huán)的兩個環(huán)接口故障也不會給子環(huán)發(fā)送SF-RT報文,只在Neighbor Fail為O才能發(fā)送SF-RT報文。每個互聯(lián)的中間節(jié)點都會用Neighbor FaiI來記錄其他互連的中間節(jié)點的兩個主環(huán)接口是否都發(fā)生故障。當(dāng)Neighbor Fail為I時是表示鄰居發(fā)生故障,為零時是表示故障消除,如圖2A中的節(jié)點E和F都會用Neighbor Fail表示對方的兩個主環(huán)接口是否都發(fā)生故障。結(jié)合圖5示,子環(huán)Owner收到鏈路故障轉(zhuǎn)移報文SF-RT后,首先通過預(yù)設(shè)的中間節(jié)點的node-id檢查該報文是不是由主環(huán)中間節(jié)點所發(fā)送,如果是,則將子環(huán)的RPL打開,快速的發(fā)送數(shù)個(本實施例中為3個)無請求環(huán)保護鏈路鎖定轉(zhuǎn)移報文NR-RB-RT,并將此時的狀態(tài)記錄為RPL已轉(zhuǎn)移(RPL Transferred)。子環(huán)其它節(jié)點收到子環(huán)Owner發(fā)送的NR-RB-RT報文時,執(zhí)行刷新FDB的動作;其他的中間節(jié)點(如圖3A中的節(jié)點E)收到子環(huán)的NR-RB-RT報文時,記錄鄰居故障(Neighbor Fail)的值為 I。主環(huán)故障鏈路收到子環(huán)的NR-RB-RT報文,則與主環(huán)相連的該子環(huán)接口所在子環(huán)鏈路開始充當(dāng)RPL的功能(如果3B中的F與H之間的鏈路J’),所述中間節(jié)點的狀態(tài)記錄為 RPL Proxy (RPL 代理)。結(jié)合圖6示,當(dāng)主環(huán)故障鏈路都恢復(fù)時,等待主環(huán)WTR(Wait to Restore,等待恢 復(fù)定時器)超時后,子環(huán)RPL Proxy發(fā)送NR-RB-RT報文,當(dāng)子環(huán)Owner收到報文后,對比node-id信息,確認這個消息是由正確的RPL Proxy發(fā)送時,阻塞RPL鏈路,并快速的發(fā)送無請求環(huán)保護鏈路鎖定的消息NR-RB,通知Proxy打開接口,取消RPL代理功能,整個拓撲恢復(fù)正常態(tài)。而當(dāng)Owner檢測到NR-RB-RT不是由正確的RPL Proxy發(fā)送時,則丟棄報文?;ミB中間節(jié)點收到子環(huán)Owner發(fā)送的NR-RB報文,在確認報文的有效性后,記錄鄰居故障(Neighbor Fail)的值為O。本發(fā)明的技術(shù)內(nèi)容及技術(shù)特征已揭示如上,然而熟悉本領(lǐng)域的技術(shù)人員仍可能基于本發(fā)明的教示及揭示而作種種不背離本發(fā)明精神的替換及修飾,因此,本發(fā)明保護范圍應(yīng)不限于實施例所揭示的內(nèi)容,而應(yīng)包括各種不背離本發(fā)明的替換及修飾,并為本專利申請權(quán)利要求所涵蓋。
權(quán)利要求
1.一種主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法,其特征在于 當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點檢測到主環(huán)節(jié)點上的多個環(huán)接口發(fā)生SF,且子環(huán)的RPL不是配置在所述主環(huán)節(jié)點的子環(huán)接口上時,所述中間節(jié)點發(fā)送數(shù)個SF-RT報文以通知所述子環(huán)的Owner進行RPL轉(zhuǎn)移,并阻塞所述子環(huán)接口 ; 子環(huán)Owner收到由所述主環(huán)中間節(jié)點發(fā)送的SF-RT報文后,打開RPL并發(fā)送NR-RB-RT報文; 子環(huán)其它節(jié)點收到所述NR-RB-RT報文后刷新FDB。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于環(huán)網(wǎng)正常工作時,在子環(huán)的Owner上設(shè)置有主環(huán)中間節(jié)點的ID,當(dāng)子環(huán)Owner收到SF-RT報文時,通過所述主環(huán)中間節(jié)點的ID判斷所述SF-RT報文是否是由正確的中間節(jié)點發(fā)送的。
3.根據(jù)權(quán)利要求I或2所述的方法,其特征在于當(dāng)子環(huán)Owner收到的所述SF-RT報文不是由所述主環(huán)中間節(jié)點發(fā)送時,則丟棄報文。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于所述中間節(jié)點通過設(shè)置鄰居故障值記錄其他中間節(jié)點的接口狀態(tài),并在發(fā)送SF-RT報文前需檢查鄰居故障值為零時才發(fā)送SF-RT報文。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于當(dāng)環(huán)網(wǎng)正常工作時,設(shè)置主環(huán)與子環(huán)相連的中間節(jié)點鄰居故障的初始值都為零;當(dāng)其他的中間節(jié)點收到所述NR-RB-RT報文時,則記錄鄰居故障值為I。
6.根據(jù)權(quán)利要求I所述的方法,其特征在于當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點檢測到主環(huán)節(jié)點上的多個環(huán)接口發(fā)生SF,且所有子環(huán)的RPL配置在所述主環(huán)節(jié)點的子環(huán)接口上時,則不作子環(huán)RPL轉(zhuǎn)移的處理。
7.根據(jù)權(quán)利要求I所述的方法,其特征在于主環(huán)故障鏈路收到所述NR-RB-RT報文后,將與主環(huán)相連的所述子環(huán)接口記錄為RPL代理。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于當(dāng)主環(huán)故障鏈路恢復(fù)且主環(huán)WTR超時后,所述中間節(jié)點向子環(huán)RPL代理發(fā)送NR-RB-RT報文,當(dāng)子環(huán)Owner確認這個消息是由正確的RPL代理發(fā)送時,阻塞RPL鏈路,并發(fā)送NR-RB消息通知取消RPL代理。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于所述中間節(jié)點在收到子環(huán)Owner發(fā)送的NR-RB消息后,重新設(shè)置鄰居故障值為零。
全文摘要
本發(fā)明揭示了一種主環(huán)多鏈路故障時子環(huán)RPL轉(zhuǎn)移的方法,當(dāng)主環(huán)與子環(huán)相連的中間節(jié)點檢測到主環(huán)節(jié)點上的多個環(huán)接口發(fā)生SF,且子環(huán)的RPL不是配置在所述主環(huán)節(jié)點的子環(huán)接口上時,所述中間節(jié)點發(fā)送數(shù)個SF-RT報文以通知所述子環(huán)的Owner進行RPL轉(zhuǎn)移,并阻塞所述子環(huán)接口;子環(huán)Owner收到由所述主環(huán)中間節(jié)點發(fā)送的SF-RT報文后,打開RPL并發(fā)送NR-RB-RT報文;子環(huán)其它節(jié)點收到所述NR-RB-RT報文后刷新FDB;主環(huán)故障鏈路收到所述NR-RB-RT報文后,將與主環(huán)相連的所述子環(huán)接口記錄為RPL代理,并在主環(huán)故障消除后,取消RPL代理,從而保證了主環(huán)多鏈路故障時主環(huán)和子環(huán)間的正常通信。
文檔編號H04L12/24GK102857398SQ20121038438
公開日2013年1月2日 申請日期2012年10月12日 優(yōu)先權(quán)日2012年10月12日
發(fā)明者陳蘭, 楊曙軍 申請人:盛科網(wǎng)絡(luò)(蘇州)有限公司