專(zhuān)利名稱(chēng):一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法和系統(tǒng)。
背景技術(shù):
由于通信網(wǎng)絡(luò)運(yùn)營(yíng)商的競(jìng)爭(zhēng)重點(diǎn)已經(jīng)從骨干網(wǎng)轉(zhuǎn)向了城域網(wǎng),建立高效經(jīng)濟(jì)的支持多業(yè)務(wù)的城域傳送網(wǎng)已成為各大運(yùn)營(yíng)商的共同目標(biāo)。彈性分組環(huán)(RPR,Resilient Packet Ring)技術(shù)因其具有眾多優(yōu)勢(shì),逐漸走進(jìn)城域傳送網(wǎng)的領(lǐng)域,并成為熱點(diǎn)之一。
RPR技術(shù)是為了滿(mǎn)足基于分組城域網(wǎng)的要求而設(shè)計(jì)的新型網(wǎng)絡(luò)體系結(jié)構(gòu)和技術(shù);是一種由分組交換節(jié)點(diǎn)組成的環(huán)形網(wǎng)絡(luò),相鄰的節(jié)點(diǎn)通過(guò)一對(duì)光纖連接;其網(wǎng)絡(luò)拓?fù)涫腔趦蓚€(gè)相反方向傳輸?shù)沫h(huán)。
其中,環(huán)形網(wǎng)絡(luò)上的分組交換節(jié)點(diǎn)又分為跨環(huán)節(jié)點(diǎn)和非跨環(huán)節(jié)點(diǎn)。非跨環(huán)節(jié)點(diǎn),是多RPR環(huán)相交時(shí),在RPR環(huán)上,但沒(méi)有處于環(huán)交點(diǎn)的RPR設(shè)備,有三種工作狀態(tài)正常狀態(tài)normal,環(huán)回狀態(tài)wrap,以及直通狀態(tài)passthrough。跨環(huán)節(jié)點(diǎn),是多RPR環(huán)相交時(shí),處于環(huán)交點(diǎn)的RPR設(shè)備,當(dāng)跨環(huán)節(jié)點(diǎn)處理跨環(huán)業(yè)務(wù)轉(zhuǎn)發(fā)時(shí)處于主用master狀態(tài)。
雖然RPR具有帶寬的有效復(fù)用、快速的環(huán)保護(hù)倒換功能、拓?fù)涞淖詣?dòng)發(fā)現(xiàn)等很多的技術(shù)優(yōu)點(diǎn),但是隨著科學(xué)技術(shù)的不斷發(fā)展,人們對(duì)技術(shù)的要求就更高,在目前的RPR橋通信技術(shù)中,還有些不足之處,下面將對(duì)這些不足之處進(jìn)行說(shuō)明。
RPR橋設(shè)備通過(guò)Ethernet Over RPR的方式承載二層以太網(wǎng)報(bào)文,使用RPR擴(kuò)展幀在RPR環(huán)上轉(zhuǎn)發(fā)。如圖1所示,圖1為現(xiàn)有技術(shù)RPR橋環(huán)網(wǎng)絡(luò)通信示意圖。由于RPR上承載的是二層以太網(wǎng)報(bào)文,如果不對(duì)兩個(gè)跨環(huán)節(jié)點(diǎn)進(jìn)行控制的話(huà),則在兩個(gè)跨環(huán)節(jié)點(diǎn)會(huì)出現(xiàn)環(huán)路,很容易出現(xiàn)廣播風(fēng)暴。
當(dāng)前已經(jīng)存在能夠防止二層網(wǎng)絡(luò)形成環(huán)路的問(wèn)題通過(guò)生成樹(shù)協(xié)議(STP,Spanning Tree Protocol)、或者快速生成樹(shù)協(xié)議(RSTP,RapidSpanning Tree Protocol)進(jìn)行鏈路裁減,生成無(wú)環(huán)路的最小生成樹(shù),然后依據(jù)最小生成樹(shù)來(lái)轉(zhuǎn)發(fā)在二層以太網(wǎng)上的報(bào)文,以防止二層網(wǎng)絡(luò)通信形成環(huán)路。
但是,目前還沒(méi)有一種方法能夠解決以下問(wèn)題當(dāng)兩個(gè)RPR環(huán)中的一個(gè)環(huán)同時(shí)出現(xiàn)兩個(gè)故障的情況下,其中,兩個(gè)故障分別在RPR跨環(huán)節(jié)點(diǎn)的兩端,為確保兩個(gè)環(huán)之間任意點(diǎn)都是可達(dá)的,兩個(gè)RPR跨環(huán)節(jié)點(diǎn)都需要負(fù)責(zé)跨環(huán)業(yè)務(wù)的轉(zhuǎn)發(fā),即都處于master狀態(tài)。在這種情況下,當(dāng)其中有一個(gè)故障點(diǎn)恢復(fù)時(shí),容易形成環(huán)路。下面對(duì)其成因進(jìn)行說(shuō)明,如圖2所示。
在故障點(diǎn)1存在的情況下,非跨環(huán)節(jié)點(diǎn)1和非跨環(huán)節(jié)點(diǎn)2的工作模式都為wrap,在故障點(diǎn)不會(huì)有報(bào)文通過(guò),也不會(huì)有環(huán)路出現(xiàn)。如果故障點(diǎn)1恢復(fù),非跨環(huán)節(jié)點(diǎn)1和非跨環(huán)節(jié)點(diǎn)2相鄰區(qū)間沒(méi)有故障點(diǎn)存在,那么非跨環(huán)節(jié)點(diǎn)1和非跨環(huán)節(jié)點(diǎn)2的工作模式都會(huì)變化為normal,恢復(fù)后的故障恢復(fù)節(jié)點(diǎn)就可以轉(zhuǎn)發(fā)數(shù)據(jù)報(bào)文了。由于跨環(huán)節(jié)點(diǎn)1和跨環(huán)節(jié)點(diǎn)2不能立即感知到這個(gè)變化而不會(huì)進(jìn)行狀態(tài)的改變,仍然處于master狀態(tài),跨環(huán)節(jié)點(diǎn)1、非跨環(huán)節(jié)點(diǎn)1、非跨環(huán)節(jié)點(diǎn)2、跨環(huán)節(jié)點(diǎn)2、非跨環(huán)節(jié)點(diǎn)4、以及非跨環(huán)節(jié)點(diǎn)3就形成了一個(gè)環(huán)路,就容易造成廣播報(bào)文在環(huán)路中循環(huán)地傳遞,而導(dǎo)致廣播風(fēng)暴等危害發(fā)生。需要說(shuō)明的是,當(dāng)RPR環(huán)上的節(jié)點(diǎn)發(fā)生故障時(shí),發(fā)生故障的節(jié)點(diǎn)就為故障恢復(fù)節(jié)點(diǎn);當(dāng)RPR環(huán)上的兩節(jié)點(diǎn)之間的鏈路發(fā)生故障時(shí),離故障最近的能夠感知故障的兩節(jié)點(diǎn)為故障恢復(fù)點(diǎn)。在圖2中,非跨環(huán)節(jié)點(diǎn)1和非跨環(huán)節(jié)點(diǎn)2為故障恢復(fù)節(jié)點(diǎn)。
由上所述,在現(xiàn)有技術(shù)中并沒(méi)有一種方案能夠有效解決當(dāng)位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)的環(huán)路問(wèn)題。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法,解決在位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)環(huán)路的問(wèn)題。
本發(fā)明的第二個(gè)目的在于提供一種避免故障恢復(fù)后出現(xiàn)環(huán)路的系統(tǒng),解決在位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)環(huán)路的問(wèn)題。
為了解決上述第一個(gè)目的,本發(fā)明提供了一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法,其特征在于,該方法包括以下步驟故障恢復(fù)后,故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間,并從兩個(gè)RPR上向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn);延遲時(shí)間到時(shí),故障恢復(fù)節(jié)點(diǎn)將工作狀態(tài)設(shè)置為normal;跨環(huán)節(jié)點(diǎn)接收故障恢復(fù)節(jié)點(diǎn)發(fā)來(lái)的故障恢復(fù)通知報(bào)文,根據(jù)該報(bào)文設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài);所述故障恢復(fù)節(jié)點(diǎn)為非跨環(huán)節(jié)點(diǎn)。
較佳地,所述故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間之前進(jìn)一步包括判斷故障恢復(fù)節(jié)點(diǎn)是否要將工作狀態(tài)設(shè)置為normal;如果是,則繼續(xù)執(zhí)行設(shè)置延遲時(shí)間的步驟。
其中,所述延遲時(shí)間由所述故障恢復(fù)節(jié)點(diǎn)距離兩個(gè)跨環(huán)節(jié)點(diǎn)最遠(yuǎn)的跳數(shù)確定。
所述故障恢復(fù)通知報(bào)文采用新的協(xié)議類(lèi)型,或者在現(xiàn)有報(bào)文的基礎(chǔ)上進(jìn)行擴(kuò)充。
較佳地,所述從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)為從兩個(gè)RPR環(huán)向多次發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)。
其中,所述設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括根據(jù)該跨環(huán)節(jié)點(diǎn)的自身狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
更優(yōu)地,所述設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)進(jìn)一步包括根據(jù)該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí),以及在RPR環(huán)上與該跨環(huán)節(jié)點(diǎn)相連的另一跨環(huán)節(jié)點(diǎn)的狀態(tài)以及優(yōu)先級(jí)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
所述根據(jù)該跨環(huán)節(jié)點(diǎn)的自身狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括如果該跨環(huán)節(jié)點(diǎn)不是master狀態(tài),則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。
所述根據(jù)該跨環(huán)節(jié)點(diǎn)的狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)低,則該跨環(huán)節(jié)點(diǎn)退出master狀態(tài);和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)高,則該跨環(huán)節(jié)點(diǎn)狀態(tài)不發(fā)生改變;和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且在兩個(gè)RPR環(huán)上沒(méi)有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),則該跨環(huán)節(jié)點(diǎn)狀態(tài)不發(fā)生改變。
和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)相同,則根據(jù)跨環(huán)節(jié)點(diǎn)的設(shè)備ID決定該跨環(huán)節(jié)點(diǎn)的狀態(tài)。
為了解決上述第二個(gè)目的,本發(fā)明提供了一種避免故障恢復(fù)后出現(xiàn)環(huán)路的系統(tǒng),其特征在于,該系統(tǒng)包括故障恢復(fù)節(jié)點(diǎn)和跨環(huán)節(jié)點(diǎn);故障恢復(fù)節(jié)點(diǎn),在故障恢復(fù)后設(shè)置延遲時(shí)間,并從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn);延遲時(shí)間到時(shí),將故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為normal;跨環(huán)節(jié)點(diǎn),接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,并根據(jù)該報(bào)文設(shè)置自身的工作狀態(tài)。
其中,所述故障恢復(fù)節(jié)點(diǎn)進(jìn)一步包括狀態(tài)模塊,延時(shí)模塊,以及報(bào)文發(fā)送模塊;狀態(tài)模塊,在工作狀態(tài)將要發(fā)生改變時(shí),向延時(shí)模塊發(fā)送延時(shí)通知,并向報(bào)文發(fā)送模塊發(fā)送觸發(fā)通知;在接收到延遲模塊發(fā)送的通知后將工作狀態(tài)設(shè)置為normal;延時(shí)模塊,接收狀態(tài)模塊發(fā)送的延時(shí)通知后,設(shè)置延遲時(shí)間,并在延遲時(shí)間到時(shí)通知給狀態(tài)模塊;報(bào)文發(fā)送模塊,接收狀態(tài)模塊的觸發(fā)通知,然后從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)。
較佳地,所述故障恢復(fù)節(jié)點(diǎn)進(jìn)一步包括檢測(cè)模塊;檢測(cè)模塊,檢測(cè)故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)是否將要變化為normal,并將檢測(cè)結(jié)果發(fā)送給狀態(tài)模塊;狀態(tài)模塊,在接到檢測(cè)模塊發(fā)送的檢測(cè)結(jié)果后,向延遲模塊發(fā)送延時(shí)通知,并向報(bào)文發(fā)送模塊發(fā)送觸發(fā)通知。
其中,所述跨環(huán)節(jié)點(diǎn)進(jìn)一步包括報(bào)文接收模塊,以及狀態(tài)模塊;跨環(huán)節(jié)點(diǎn)中的報(bào)文接收模塊,接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,然后向狀態(tài)模塊發(fā)送設(shè)置工作狀態(tài)通知;跨環(huán)節(jié)點(diǎn)中的狀態(tài)模塊,接收?qǐng)?bào)文接收模塊發(fā)來(lái)的設(shè)置工作狀態(tài)通知,設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
較佳地,所述跨環(huán)節(jié)點(diǎn)進(jìn)一步包括判斷模塊;判斷模塊,判斷跨環(huán)節(jié)點(diǎn)的工作狀態(tài)以及優(yōu)先級(jí),并判斷與它相連的跨環(huán)節(jié)點(diǎn)的工作狀態(tài)以及優(yōu)先級(jí)的高低,并將判斷的結(jié)果發(fā)送給狀態(tài)模塊;狀態(tài)模塊,進(jìn)一步根據(jù)判斷模塊發(fā)來(lái)的判斷的結(jié)果,設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
由以上技術(shù)方案可以看出,故障恢復(fù)節(jié)點(diǎn)通過(guò)設(shè)置延遲時(shí)間,從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn),延遲過(guò)后,將工作狀態(tài)設(shè)置為normal;在延遲期間,跨環(huán)節(jié)點(diǎn)接收故障恢復(fù)節(jié)點(diǎn)發(fā)送的故障恢復(fù)通知報(bào)文,并根據(jù)狀態(tài)情況設(shè)置跨環(huán)節(jié)點(diǎn)工作狀態(tài)。由此解決了在位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)環(huán)路的問(wèn)題。
圖1為現(xiàn)有技術(shù)RPR橋環(huán)網(wǎng)絡(luò)通信示意圖;圖2為一個(gè)故障點(diǎn)故障恢復(fù)出現(xiàn)環(huán)路的示意圖;圖3為RPR中避免故障恢復(fù)后出現(xiàn)環(huán)路的系統(tǒng)結(jié)構(gòu)圖;圖4為RPR中避免故障恢復(fù)后出現(xiàn)環(huán)路的方法流程圖;圖5為RPR中避免故障恢復(fù)后出現(xiàn)環(huán)路的方法的詳細(xì)流程圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述。
首先對(duì)本發(fā)明所提供的系統(tǒng)做詳細(xì)的說(shuō)明,如圖3所示,圖3為避免故障恢復(fù)后出現(xiàn)環(huán)路的系統(tǒng)結(jié)構(gòu)圖。該系統(tǒng)主要由故障恢復(fù)節(jié)點(diǎn)300和跨環(huán)節(jié)點(diǎn)310組成。
此處,故障恢復(fù)節(jié)點(diǎn)是非跨環(huán)節(jié)點(diǎn)。
故障恢復(fù)節(jié)點(diǎn)300,故障恢復(fù)后設(shè)置延遲時(shí)間,然后從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn);延遲時(shí)間到時(shí),將故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為normal。
跨環(huán)節(jié)點(diǎn)310,接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,并設(shè)置自身的工作狀態(tài)。
故障恢復(fù)節(jié)點(diǎn)300和跨環(huán)節(jié)點(diǎn)310之間并不一定是相鄰連接的,其間可能有別的非跨環(huán)節(jié)點(diǎn)。
下面分別對(duì)故障恢復(fù)節(jié)點(diǎn)300和跨環(huán)節(jié)點(diǎn)310的結(jié)構(gòu)進(jìn)行說(shuō)明。
故障恢復(fù)節(jié)點(diǎn)300可以包括以下幾部分延時(shí)模塊301、報(bào)文發(fā)送模塊302、狀態(tài)模塊303和檢測(cè)模塊304,其中,延時(shí)模塊301,在故障恢復(fù)后,接收到狀態(tài)模塊發(fā)送的延時(shí)通知后,設(shè)置延遲時(shí)間,并在延遲時(shí)間到時(shí)通知給狀態(tài)模塊303。
所述設(shè)置延遲時(shí)間的目的是為了保證故障恢復(fù)節(jié)點(diǎn)300發(fā)送的故障恢復(fù)通知報(bào)文能夠被跨環(huán)節(jié)點(diǎn)310及時(shí)收到并做相應(yīng)狀態(tài)處理。
延遲時(shí)間的長(zhǎng)度,可以根據(jù)該故障恢復(fù)節(jié)點(diǎn)距離兩個(gè)跨環(huán)節(jié)點(diǎn)最遠(yuǎn)的跳數(shù)來(lái)設(shè)定。例如,如果所述跳數(shù)為N,則延遲時(shí)間為N*10ms,這里的10ms主要考慮了線(xiàn)路以及線(xiàn)路中各節(jié)點(diǎn)的處理延遲,是一個(gè)經(jīng)驗(yàn)值,另外,此值也可以根據(jù)具體的線(xiàn)路情況以及各節(jié)點(diǎn)設(shè)備情況做不同的設(shè)定。
報(bào)文發(fā)送模塊302,用于接收到狀態(tài)模塊303的觸發(fā)通知后,從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文,通知跨環(huán)節(jié)點(diǎn)310故障已經(jīng)恢復(fù)。
該故障恢復(fù)通知報(bào)文可以在現(xiàn)有的報(bào)文基礎(chǔ)上進(jìn)行擴(kuò)充,或者采用新的報(bào)文類(lèi)型。
狀態(tài)模塊303,用于設(shè)置故障恢復(fù)節(jié)點(diǎn)300的工作狀態(tài),在工作狀態(tài)將要發(fā)生改變時(shí),向延時(shí)模塊301發(fā)送延時(shí)通知,并向報(bào)文發(fā)送模塊302發(fā)送觸發(fā)通知;并且,在接收到延時(shí)模塊301發(fā)送的通知時(shí),將工作狀態(tài)設(shè)置為normal;更進(jìn)一步地,故障恢復(fù)節(jié)點(diǎn)300還包括檢測(cè)模塊304,用于檢測(cè)故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)是否將要變化為normal,并將檢測(cè)結(jié)果發(fā)送給狀態(tài)模塊303。
如果檢測(cè)結(jié)果是故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)將要變化為normal,則狀態(tài)模塊303向延時(shí)模塊301發(fā)送延時(shí)通知,延時(shí)模塊301開(kāi)始設(shè)置延遲時(shí)間,并且狀態(tài)模塊303向報(bào)文發(fā)送模塊302發(fā)送觸發(fā)通知。
跨環(huán)節(jié)點(diǎn)310可以包括以下幾部分報(bào)文接收模塊311、狀態(tài)模塊312和判斷模塊313,其中,報(bào)文接收模塊311,用于接收故障恢復(fù)節(jié)點(diǎn)300發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,然后向狀態(tài)模塊312發(fā)送設(shè)置工作狀態(tài)通知。
狀態(tài)模塊312,接收?qǐng)?bào)文接收模塊311發(fā)送的設(shè)置工作狀態(tài)通知,設(shè)置跨環(huán)節(jié)點(diǎn)310的工作狀態(tài)。
更進(jìn)一步地,跨環(huán)節(jié)點(diǎn)310還包括判斷模塊313判斷模塊313,用于判斷跨環(huán)節(jié)點(diǎn)310的工作狀態(tài),并判斷與它相連的跨環(huán)節(jié)點(diǎn)的工作狀態(tài),以及這兩個(gè)跨環(huán)節(jié)點(diǎn)優(yōu)先級(jí)的高低;并將這些判斷的結(jié)果發(fā)送給狀態(tài)模塊312。
狀態(tài)模塊312根據(jù)判斷模塊312發(fā)送過(guò)來(lái)的判斷的結(jié)果,設(shè)置跨環(huán)節(jié)點(diǎn)310的工作狀態(tài)。
如果跨環(huán)節(jié)點(diǎn)310不是master狀態(tài),則不改變跨環(huán)節(jié)點(diǎn)的工作狀態(tài);如果跨環(huán)節(jié)點(diǎn)310是master狀態(tài),且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)低,則將跨環(huán)節(jié)點(diǎn)設(shè)置為非master狀態(tài)的其他狀態(tài);如果該跨環(huán)節(jié)點(diǎn)310是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)高,則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài);如果該跨環(huán)節(jié)點(diǎn)310是master狀態(tài),并且在兩個(gè)RPR環(huán)上沒(méi)有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài);特殊地,如果該跨環(huán)節(jié)點(diǎn)310只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且它們的優(yōu)先級(jí)相同,那么可以按照設(shè)備ID來(lái)決定將誰(shuí)設(shè)置為非master狀態(tài)的其他工作狀態(tài),其先后順序按照規(guī)定進(jìn)行。
以上是對(duì)本發(fā)明所提供的系統(tǒng)所進(jìn)行的詳細(xì)描述,下面對(duì)本發(fā)明所提供的方法進(jìn)行描述。如圖4所示,圖4為RPR中避免故障恢復(fù)后出現(xiàn)環(huán)路的方法流程圖。該流程主要包括步驟401故障恢復(fù)后,故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間,然后從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)。
其中,所述延遲時(shí)間的目的是為了保證故障恢復(fù)節(jié)點(diǎn)發(fā)送的故障恢復(fù)通知報(bào)文能夠被跨環(huán)節(jié)點(diǎn)及時(shí)收到并做相應(yīng)狀態(tài)處理。
延遲時(shí)間的長(zhǎng)度,可以根據(jù)該故障恢復(fù)節(jié)點(diǎn)距離兩個(gè)跨環(huán)節(jié)點(diǎn)最遠(yuǎn)的跳數(shù)來(lái)設(shè)定。例如,如果所述跳數(shù)為N,則延遲時(shí)間為N*10ms,這里的10ms主要考慮了線(xiàn)路以及線(xiàn)路中各節(jié)點(diǎn)的處理延遲,是一個(gè)經(jīng)驗(yàn)值。
其中,該故障恢復(fù)通知報(bào)文是用來(lái)通知兩個(gè)跨環(huán)節(jié)點(diǎn)故障恢復(fù)了;
更優(yōu)地,在延遲期間,為了避免發(fā)送的故障恢復(fù)通知報(bào)文丟失,可以多次發(fā)送故障恢復(fù)通知報(bào)文,還可以要求對(duì)方回復(fù)響應(yīng)。
該故障恢復(fù)通知報(bào)文可以在現(xiàn)有的報(bào)文基礎(chǔ)上進(jìn)行擴(kuò)充,或者采用新的報(bào)文類(lèi)型。
步驟402在延遲期間內(nèi),跨環(huán)節(jié)點(diǎn)接收到故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文后,設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
所述設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)為根據(jù)該跨環(huán)節(jié)點(diǎn)本身的狀態(tài),與它相連的其它跨環(huán)節(jié)點(diǎn)狀態(tài),以及它們之間的優(yōu)先級(jí)高低來(lái)設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)??梢杂幸韵聨追N情況1)如果該跨環(huán)節(jié)點(diǎn)不是master狀態(tài),則不改變跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
因?yàn)槿绻摽绛h(huán)節(jié)點(diǎn)不是master狀態(tài),就不負(fù)責(zé)跨環(huán)業(yè)務(wù)的轉(zhuǎn)發(fā),也就不會(huì)形成環(huán)路,所以該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)不發(fā)生改變。
2)如果該跨環(huán)節(jié)點(diǎn)狀態(tài)是master狀態(tài),并且在兩個(gè)RPR環(huán)上都沒(méi)有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。
因?yàn)榇朔N狀況包括兩種情況其一,該跨環(huán)節(jié)點(diǎn)是master狀態(tài),另一個(gè)跨環(huán)節(jié)點(diǎn)是非master狀態(tài)的其他狀態(tài),那么不會(huì)有形成環(huán)路的情況發(fā)生,所以不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。其二,兩個(gè)跨環(huán)節(jié)點(diǎn)都是master狀態(tài),但是兩個(gè)跨環(huán)節(jié)點(diǎn)之間都存在故障點(diǎn),也就是在兩個(gè)環(huán)上的跨環(huán)節(jié)點(diǎn)兩端都存在故障點(diǎn),也就是兩個(gè)環(huán)上有四個(gè)故障點(diǎn),那么有一個(gè)故障點(diǎn)恢復(fù)時(shí),不會(huì)形成環(huán)路,所以不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。
3)如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)高,則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。
4)如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)低,則將該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為非master狀態(tài)的其他狀態(tài)。
3)和4)兩種情況都是兩跨環(huán)節(jié)點(diǎn)之間有一個(gè)故障節(jié)點(diǎn),因?yàn)閮煽绛h(huán)節(jié)點(diǎn)都是master狀態(tài),就容易在環(huán)上形成如圖2所示的環(huán)路,所以就按照優(yōu)先級(jí)將兩個(gè)跨環(huán)節(jié)點(diǎn)中的一個(gè)設(shè)置為master狀態(tài),另一個(gè)設(shè)置為非master狀態(tài)的其他狀態(tài),就不會(huì)形成環(huán)路了。
步驟403延遲時(shí)間到時(shí)后,故障恢復(fù)節(jié)點(diǎn)將工作狀態(tài)設(shè)置為normal。
以上是本發(fā)明所提供方法的主要流程,下面對(duì)該流程做詳細(xì)的描述,如圖5所示,圖5為避免故障恢復(fù)后出現(xiàn)環(huán)路的方法的詳細(xì)流程圖。該流程包括以下步驟步驟501故障恢復(fù)后,判斷故障恢復(fù)節(jié)點(diǎn)的工作模式是否將要設(shè)置為normal。如果是,執(zhí)行步驟502;如果否,則結(jié)束流程。
步驟502故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間,然后從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn),來(lái)通知跨環(huán)節(jié)點(diǎn)故障已經(jīng)恢復(fù)。
其中,所述延遲時(shí)間的目的是為了保證故障恢復(fù)節(jié)點(diǎn)發(fā)送的故障恢復(fù)通知報(bào)文能夠被跨環(huán)節(jié)點(diǎn)及時(shí)收到并設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
其中,該故障恢復(fù)通知報(bào)文是用來(lái)通知兩個(gè)跨環(huán)節(jié)點(diǎn)故障恢復(fù)了;更優(yōu)地,在延遲期間,為了避免發(fā)送的故障恢復(fù)通知報(bào)文丟失,可以多次發(fā)送故障恢復(fù)通知報(bào)文。
該故障恢復(fù)通知報(bào)文可以在現(xiàn)有的報(bào)文基礎(chǔ)上進(jìn)行擴(kuò)充,或者采用新的報(bào)文類(lèi)型。
步驟503跨環(huán)節(jié)點(diǎn)接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文。
該步驟是由圖3系統(tǒng)中的報(bào)文接收模塊311完成的。
步驟504判斷跨環(huán)節(jié)點(diǎn)是否為master狀態(tài),如果是,執(zhí)行步驟505;如果否,則執(zhí)行步驟507。
步驟505判斷是否該跨環(huán)節(jié)點(diǎn)只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且本跨環(huán)節(jié)點(diǎn)優(yōu)先級(jí)低,如果是,執(zhí)行步驟506;如果否,執(zhí)行步驟507。
在該步驟中有以下幾種情況如果該跨環(huán)節(jié)點(diǎn)在兩個(gè)RPR環(huán)上都沒(méi)有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),則執(zhí)行步驟507;
如果該跨環(huán)節(jié)點(diǎn)只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)優(yōu)先級(jí)高,則執(zhí)行步驟507;如果該跨環(huán)節(jié)點(diǎn)只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且本跨環(huán)節(jié)點(diǎn)優(yōu)先級(jí)低,如果是,執(zhí)行步驟506。
更進(jìn)一步地,如果該跨環(huán)節(jié)點(diǎn)只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),且它們的優(yōu)先級(jí)相同,那么可以按照設(shè)備ID來(lái)決定誰(shuí)退出master狀態(tài),其先后順序按照規(guī)定進(jìn)行。
步驟506將該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為非master狀態(tài)的其他狀態(tài)。
步驟507延遲時(shí)間到時(shí),將故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為normal。
由以上描述可見(jiàn),故障恢復(fù)節(jié)點(diǎn)通過(guò)設(shè)置延遲時(shí)間,從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn),延遲過(guò)后,將工作狀態(tài)設(shè)置為normal;在延遲期間,跨環(huán)節(jié)點(diǎn)接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,并根據(jù)狀態(tài)情況設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。本發(fā)明所提供的方法和系統(tǒng),解決了在位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)的環(huán)路問(wèn)題。
權(quán)利要求
1.一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法,其特征在于,該方法包括以下步驟故障恢復(fù)后,故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間,并從兩個(gè)彈性分組環(huán)RPR向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn);延遲時(shí)間到時(shí),故障恢復(fù)節(jié)點(diǎn)將工作狀態(tài)設(shè)置為正常狀態(tài)normal;跨環(huán)節(jié)點(diǎn),接收故障恢復(fù)節(jié)點(diǎn)發(fā)來(lái)的故障恢復(fù)通知報(bào)文,根據(jù)該報(bào)文設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài);所述故障恢復(fù)節(jié)點(diǎn)為非跨環(huán)節(jié)點(diǎn)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述故障恢復(fù)節(jié)點(diǎn)設(shè)置延遲時(shí)間之前進(jìn)一步包括判斷故障恢復(fù)節(jié)點(diǎn)是否要將工作狀態(tài)設(shè)置為normal;如果是,則繼續(xù)執(zhí)行設(shè)置延遲時(shí)間的步驟。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述延遲時(shí)間根據(jù)所述故障恢復(fù)節(jié)點(diǎn)距離兩個(gè)跨環(huán)節(jié)點(diǎn)最遠(yuǎn)的跳數(shù)確定。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述故障恢復(fù)通知報(bào)文采用新的協(xié)議類(lèi)型,或者在現(xiàn)有報(bào)文的基礎(chǔ)上進(jìn)行擴(kuò)充。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)為從兩個(gè)RPR環(huán)向多次發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括根據(jù)該跨環(huán)節(jié)點(diǎn)的自身狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)進(jìn)一步包括根據(jù)該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí),以及在RPR環(huán)上與該跨環(huán)節(jié)點(diǎn)相連的另一跨環(huán)節(jié)點(diǎn)的狀態(tài)以及優(yōu)先級(jí)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述根據(jù)該跨環(huán)節(jié)點(diǎn)的自身狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括如果該跨環(huán)節(jié)點(diǎn)不是master狀態(tài),則不改變?cè)摽绛h(huán)節(jié)點(diǎn)的工作狀態(tài)。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)該跨環(huán)節(jié)點(diǎn)的狀態(tài)設(shè)置該跨環(huán)節(jié)點(diǎn)的工作狀態(tài)包括如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)低,則該跨環(huán)節(jié)點(diǎn)退出master狀態(tài);和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)高,則該跨環(huán)節(jié)點(diǎn)狀態(tài)不發(fā)生改變;和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且在兩個(gè)RPR環(huán)上沒(méi)有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),則該跨環(huán)節(jié)點(diǎn)狀態(tài)不發(fā)生改變。和/或,如果該跨環(huán)節(jié)點(diǎn)是master狀態(tài),并且只在一個(gè)RPR環(huán)上有相連的master狀態(tài)的跨環(huán)節(jié)點(diǎn),并且該跨環(huán)節(jié)點(diǎn)的優(yōu)先級(jí)相同,則根據(jù)跨環(huán)節(jié)點(diǎn)的設(shè)備ID決定該跨環(huán)節(jié)點(diǎn)的狀態(tài)。
10.一種彈性分組環(huán)RPR中避免故障恢復(fù)后出現(xiàn)環(huán)路的系統(tǒng),其特征在于,該系統(tǒng)包括故障恢復(fù)節(jié)點(diǎn)和跨環(huán)節(jié)點(diǎn);故障恢復(fù)節(jié)點(diǎn),在故障恢復(fù)后設(shè)置延遲時(shí)間,并從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn);延遲時(shí)間到時(shí),將故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)設(shè)置為normal;跨環(huán)節(jié)點(diǎn),接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,并根據(jù)該報(bào)文設(shè)置自身的工作狀態(tài)。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述故障恢復(fù)節(jié)點(diǎn)進(jìn)一步包括狀態(tài)模塊,延時(shí)模塊,以及報(bào)文發(fā)送模塊;狀態(tài)模塊,在工作狀態(tài)將要發(fā)生改變時(shí),向延時(shí)模塊發(fā)送延時(shí)通知,并向報(bào)文發(fā)送模塊發(fā)送觸發(fā)通知;在接收到延遲模塊發(fā)送的通知后將工作狀態(tài)設(shè)置為normal;延時(shí)模塊,接收狀態(tài)模塊發(fā)送的延時(shí)通知后,設(shè)置延遲時(shí)間,并在延遲時(shí)間到時(shí)通知給狀態(tài)模塊;報(bào)文發(fā)送模塊,接收狀態(tài)模塊的觸發(fā)通知,然后從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn)。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其特征在于,所述故障恢復(fù)節(jié)點(diǎn)進(jìn)一步包括檢測(cè)模塊;檢測(cè)模塊,檢測(cè)故障恢復(fù)節(jié)點(diǎn)的工作狀態(tài)是否將要變化為normal,并將檢測(cè)結(jié)果發(fā)送給狀態(tài)模塊;狀態(tài)模塊,在接到檢測(cè)模塊發(fā)送的檢測(cè)結(jié)果后,向延時(shí)模塊發(fā)送延時(shí)通知,并向報(bào)文發(fā)送模塊發(fā)送觸發(fā)通知。
13.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述跨環(huán)節(jié)點(diǎn)進(jìn)一步包括報(bào)文接收模塊,以及狀態(tài)模塊;跨環(huán)節(jié)點(diǎn)中的報(bào)文接收模塊,接收故障恢復(fù)節(jié)點(diǎn)發(fā)送來(lái)的故障恢復(fù)通知報(bào)文,然后向狀態(tài)模塊發(fā)送設(shè)置工作狀態(tài)通知;跨環(huán)節(jié)點(diǎn)中的狀態(tài)模塊,接收?qǐng)?bào)文接收模塊發(fā)來(lái)的設(shè)置工作狀態(tài)通知,設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其特征在于,所述跨環(huán)節(jié)點(diǎn)進(jìn)一步包括判斷模塊;判斷模塊,判斷跨環(huán)節(jié)點(diǎn)的工作狀態(tài)以及優(yōu)先級(jí),并判斷與它相連的跨環(huán)節(jié)點(diǎn)的工作狀態(tài)以及優(yōu)先級(jí)的高低,并將判斷的結(jié)果發(fā)送給狀態(tài)模塊;狀態(tài)模塊,進(jìn)一步根據(jù)判斷模塊發(fā)來(lái)的判斷的結(jié)果,設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài)。
全文摘要
本發(fā)明提供了一種避免故障恢復(fù)后出現(xiàn)環(huán)路的方法和系統(tǒng),該方法和系統(tǒng)中,故障恢復(fù)節(jié)點(diǎn)通過(guò)設(shè)置延遲時(shí)間,從兩個(gè)RPR環(huán)向發(fā)送故障恢復(fù)通知報(bào)文給跨環(huán)節(jié)點(diǎn),延遲過(guò)后,將工作狀態(tài)設(shè)置為normal;在延遲期間,跨環(huán)節(jié)點(diǎn)接收故障恢復(fù)節(jié)點(diǎn)發(fā)來(lái)的故障恢復(fù)通知報(bào)文,并根據(jù)狀態(tài)情況設(shè)置跨環(huán)節(jié)點(diǎn)的工作狀態(tài),即根據(jù)跨環(huán)節(jié)點(diǎn)自身狀態(tài)以及RPR環(huán)上其它跨環(huán)節(jié)點(diǎn)的狀態(tài)確定是否改變自身的工作狀態(tài)。本發(fā)明所提供的方法和系統(tǒng),由此通過(guò)故障恢復(fù)節(jié)點(diǎn)和跨環(huán)節(jié)點(diǎn)的配合,解決了在位于跨環(huán)節(jié)點(diǎn)兩端的兩個(gè)故障點(diǎn)中的一個(gè)恢復(fù)的情況下容易出現(xiàn)環(huán)路的問(wèn)題。
文檔編號(hào)H04L12/24GK1968174SQ20061014035
公開(kāi)日2007年5月23日 申請(qǐng)日期2006年11月27日 優(yōu)先權(quán)日2006年11月27日
發(fā)明者張義龍, 張鐘凱, 何智峰 申請(qǐng)人:華為技術(shù)有限公司