專利名稱:鏈路故障快速檢測(cè)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種鏈路故障快速檢測(cè)方法及裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,許多新的網(wǎng)絡(luò)服務(wù)對(duì)故障檢測(cè)時(shí)間的要求越來(lái)越嚴(yán) 格,單純依靠上層協(xié)議提供的故障檢測(cè)已經(jīng)無(wú)法滿足要求了,因此,雙向轉(zhuǎn)發(fā)檢測(cè)(BFD, Bidirectional Forwarding Detection)技術(shù)應(yīng)運(yùn)而生。BFD提供了一個(gè)通用的、標(biāo)準(zhǔn)化的、 介質(zhì)無(wú)關(guān)、協(xié)議無(wú)關(guān)的快速鏈路故障檢測(cè)機(jī)制,可以為多種上層協(xié)議如各路由協(xié)議(0SPF、 ISIS、RIP、BGP)等統(tǒng)一地快速檢測(cè)兩臺(tái)路由器間雙向轉(zhuǎn)發(fā)路徑的故障。以采用OSPF協(xié)議的網(wǎng)絡(luò)為例,現(xiàn)有OSPF利用BFD檢測(cè)鏈路故障并進(jìn)行相應(yīng)處理 的流程如下0SPF通過(guò)協(xié)議原有的鄰居發(fā)現(xiàn)和數(shù)據(jù)同步機(jī)制建立起完全(Full)的鄰居關(guān) 系,鄰居關(guān)系建立好后,OSPF向BFD提供需要檢測(cè)的目的地址,即Full狀態(tài)鄰居的IP地址, BFD根據(jù)這個(gè)地址創(chuàng)建會(huì)話,對(duì)該地址進(jìn)行檢測(cè)。當(dāng)鏈路出現(xiàn)故障,BFD檢測(cè)到目的地址不 可達(dá)時(shí),對(duì)應(yīng)的BFD會(huì)話斷開(kāi),并向上通知OSPF鏈路不可達(dá),OSPF收到通知后斷開(kāi)到相應(yīng) 鄰居的鏈路,更新路由狀態(tài)廣播(Router LSA),觸發(fā)路由計(jì)算,繞過(guò)出問(wèn)題的鏈路。從上述對(duì)OSPF及BFD聯(lián)動(dòng)檢測(cè)并處理鏈路故障的描述可見(jiàn),現(xiàn)有的OSPF協(xié)議中 只有在建立了 Full狀態(tài)的鄰居關(guān)系后才會(huì)通知BFD創(chuàng)建會(huì)話進(jìn)行鏈路檢測(cè),而在OSPF協(xié) 議中網(wǎng)絡(luò)內(nèi),并不是所有路由之間都會(huì)建立Full狀態(tài)的鄰居關(guān)系,例如OSPF協(xié)議中定義的 廣播網(wǎng)和非廣播多路訪問(wèn)網(wǎng)絡(luò)(NBMA)網(wǎng)絡(luò)類型的鏈路上,為了減少OSPF協(xié)議報(bào)文的交互, OSPF對(duì)路由器定義了不同的角色指定路由器(DR)、備份指定路由器(BDR)和非指定路由 器(DROther)。其中DR和BDR、DR和DROther、BDR和DROther之間的OSPF鄰居關(guān)系都會(huì) 到達(dá)Full狀態(tài),而DROther之間的OSPF鄰居關(guān)系根據(jù)協(xié)議規(guī)定只會(huì)停留在2_Way狀態(tài)。圖1為一個(gè)典型路由組網(wǎng)示意圖,在圖1中,有三臺(tái)路由器A、B、C,A、B、C之間的 鏈路類型為廣播網(wǎng),其中A、B為DROther,而C為DR,因此A與C將會(huì)建立起Full狀態(tài)的鄰 居關(guān)系,而AB之間則建立的是2-Way狀態(tài)的鄰居關(guān)系,此時(shí),在進(jìn)行A到B的路由路徑選擇 時(shí),因?yàn)锳與B之間的路由代價(jià)相比經(jīng)過(guò)C中轉(zhuǎn)再到B的路由代價(jià)要小,因此最終選擇的A 到B的路由路徑將是AB之間直接連接的廣播網(wǎng)鏈路。如果當(dāng)A設(shè)備和B設(shè)備之間廣播網(wǎng) 鏈路出現(xiàn)問(wèn)題,導(dǎo)致A、B之間報(bào)文不通時(shí),由于AB之間建立的是2-Way狀態(tài)的鄰居關(guān)系,無(wú) 法通過(guò)BFD檢測(cè)到鏈路問(wèn)題,因此A設(shè)備將無(wú)法快速得到鏈路問(wèn)題的通知,也就無(wú)法及時(shí)改 變路由路徑來(lái)解決鏈路問(wèn)題。在某些極端情況下,如A、B之間組播報(bào)文轉(zhuǎn)發(fā)正確而單播報(bào) 文無(wú)法轉(zhuǎn)發(fā)時(shí),會(huì)造成從A到B的流量長(zhǎng)時(shí)間中斷,而無(wú)法檢測(cè)到鏈路問(wèn)題,而這時(shí)A、B之 間還是可以通過(guò)C作為中轉(zhuǎn)的路徑可用的。這種情況同樣會(huì)發(fā)生在NBMA網(wǎng)絡(luò)類型的鏈路 檢測(cè)中??梢?jiàn),對(duì)于廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的DROther設(shè)備,由于OSPF協(xié)議規(guī)定其鄰居關(guān)系 不是Full狀態(tài),因此不能利用BFD檢測(cè)鏈路故障,無(wú)法對(duì)鏈路故障進(jìn)行及時(shí)處理。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種鏈路故障快速檢測(cè)方法,對(duì)于廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的 DROther設(shè)備,也可以使用BFD進(jìn)行鏈路檢測(cè)。本發(fā)明實(shí)施例提供一種鏈路故障快速檢測(cè)裝置,對(duì)于廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的 DROther設(shè)備,也可以使用BFD進(jìn)行鏈路檢測(cè)。為達(dá)到上述目的,本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的一種鏈路故障快速檢測(cè)處理方法,該方法包括非指定路由設(shè)備檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到Full 狀態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD,建立與所述鄰 居之間的BFD會(huì)話;若非指定路由設(shè)備與鄰居之間的BFD會(huì)話檢測(cè)到鏈路故障,則解除與所述故障鏈 路對(duì)應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最大。一種鏈路故障快速檢測(cè)處理裝置,該裝置包括會(huì)話控制模塊,用于檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到 Full狀態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD會(huì)話模 塊;BFD會(huì)話模塊,與所述會(huì)話控制模塊相連,用于接收所述會(huì)話建立模塊的通知,建 立與通知中的目的地址對(duì)應(yīng)的鄰居之間的BFD會(huì)話;故障處理模塊,與BFD會(huì)話模塊相連,若BFD會(huì)話檢測(cè)到鏈路故障,則解除與所述 故障鏈路對(duì)應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最大。由上述的技術(shù)方案可見(jiàn),本發(fā)明的這種鏈路故障快速檢測(cè)方法及裝置,對(duì)于非 Full鄰居狀態(tài)的鄰居也建立BFD會(huì)話,使所有鄰居都納入BFD檢測(cè)范圍,并在BFD會(huì)話檢 測(cè)到鏈路故障時(shí),通過(guò)對(duì)Router LSA的設(shè)置,觸發(fā)路由的重新計(jì)算,并繞過(guò)故障鏈路,使非 Full鄰居狀態(tài)的鏈路故障得到及時(shí)有效的處理。
圖1為一個(gè)典型路由組網(wǎng)示意圖;圖2為本發(fā)明的鏈路故障快速檢測(cè)方法流程圖;圖3為本發(fā)明第一實(shí)施例的鏈路故障快速檢測(cè)裝置結(jié)構(gòu)示意圖;圖4為本發(fā)明第二實(shí)施例的鏈路故障快速檢測(cè)裝置結(jié)構(gòu)示意圖;圖5為本發(fā)明第一實(shí)施例的會(huì)話控制模塊結(jié)構(gòu)示意圖;圖6為本發(fā)明第二實(shí)施例的會(huì)話控制模塊結(jié)構(gòu)示意圖;圖7為本發(fā)明第三實(shí)施例的會(huì)話控制模塊結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì) 本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。本發(fā)明主要是在不改變現(xiàn)有OSPF及BFD協(xié)議的基礎(chǔ)上對(duì)于非Full狀態(tài)的鄰居也 建立BFD會(huì)話,從而使非Ful 1狀態(tài)的鏈路故障也可以檢測(cè)到。同時(shí),在BFD檢測(cè)到鏈路故障時(shí),對(duì)Router LSA進(jìn)行設(shè)置,將Router LSA中描述鏈路的路由代價(jià)的字段設(shè)置為最大值, 使Router LSA的更改觸發(fā)路由計(jì)算,同時(shí)在重新進(jìn)行路由計(jì)算時(shí),故障鏈路的路由代價(jià)被 設(shè)為最大,還會(huì)使故障鏈路在路由選擇中被最大可能地排在最低優(yōu)先級(jí),從而達(dá)到繞過(guò)故 障鏈路的目的,使非Full狀態(tài)的鏈路故障得到及時(shí)有效的處理。本發(fā)明針對(duì)廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的DROther設(shè)備,除特殊說(shuō)明外以下所有的流程 都是針對(duì)廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的DR Other設(shè)備進(jìn)行的。下文中提到的穩(wěn)定在2_Way狀態(tài) 的鄰居特指DR Other設(shè)備之間所建立的鄰居。首先,現(xiàn)有技術(shù)對(duì)于沒(méi)有達(dá)到Full狀態(tài)的鄰居并不會(huì)建立BFD會(huì)話,因此首先本 發(fā)明設(shè)計(jì)了一套針對(duì)沒(méi)有達(dá)到Full狀態(tài)的鄰居建立BFD會(huì)話的流程,具體如圖2所示,其 流程如下步驟201,非指定路由設(shè)備檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有 達(dá)到Full狀態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD,建立 與所述鄰居之間的BFD會(huì)話。其中,當(dāng)DROther和DR設(shè)備的鄰居關(guān)系達(dá)到Full狀態(tài)時(shí),檢查廣播網(wǎng)或NBMA網(wǎng) 接口下的鄰居列表,找出所有達(dá)到Full狀態(tài)或穩(wěn)定在2-Way狀態(tài)的鄰居,將這些鄰居的接 口地址作為目的地址通知給BFD ;BFD接收到目的地址后,可以按照現(xiàn)有的流程建立BFD會(huì) 話,實(shí)現(xiàn)非Full狀態(tài)的DROther設(shè)備鄰居的BFD會(huì)話建立。另外,在DROther和非DR設(shè)備的鄰居關(guān)系達(dá)到Full或穩(wěn)定在2_Way狀態(tài),例如 DROther設(shè)備和其它DROther設(shè)備建立的2_Way狀態(tài)鄰居關(guān)系或DROther設(shè)備和BDR設(shè) 備建立的Full狀態(tài)鄰居關(guān)系時(shí);可以檢查廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,如果此時(shí) DROther設(shè)備已經(jīng)和某一個(gè)DR設(shè)備建立了 Full狀態(tài)的鄰居關(guān)系,則將上述的達(dá)到Full狀 態(tài)或穩(wěn)定在2-Way狀態(tài)的鄰居的接口地址作為目的地址通知給BFD,以建立BFD會(huì)話;否 則,不做任何處理;也就是說(shuō),在DROther設(shè)備和某一個(gè)DR設(shè)備建立了 Full狀態(tài)的鄰居關(guān) 系之前,對(duì)于DROther設(shè)備和其它DROther設(shè)備建立的2_Way狀態(tài)鄰居關(guān)系或DROther設(shè) 備和BDR設(shè)備建立的Full狀態(tài)鄰居關(guān)系不予理會(huì)。當(dāng)然這一步并不是必須的,但通過(guò)本步 驟可以將所有建立有鄰居關(guān)系的設(shè)備都建立BFD會(huì)話,每一個(gè)BFD會(huì)話對(duì)應(yīng)一個(gè)鄰居或者 說(shuō)對(duì)應(yīng)一條鏈路。至此,BFD會(huì)話已經(jīng)全部建立完畢,但是鄰居關(guān)系并不是不變的,如果鄰居關(guān)系改 變,則應(yīng)適應(yīng)性地調(diào)整BFD會(huì)話,例如鄰居關(guān)系已經(jīng)不再存,此時(shí)則沒(méi)有必要保持對(duì)應(yīng)的 BFD會(huì)話存在,下面將詳細(xì)描述本發(fā)明對(duì)于BFD會(huì)話的刪除調(diào)整過(guò)程。當(dāng)DROther和DR設(shè)備的鄰居關(guān)系從Full狀態(tài)出現(xiàn)了回退,此時(shí),可以通知BFD刪 除以DR設(shè)備接口地址為目的地址的BFD會(huì)話,同時(shí)遍歷廣播網(wǎng)或NBMA網(wǎng)接口下所有的鄰 居,找出其余穩(wěn)定在Full和2-Way狀態(tài)的鄰居,通知BFD找出其余鄰居對(duì)應(yīng)目的地址的BFD 會(huì)話,并將對(duì)應(yīng)的會(huì)話刪除。此時(shí)相當(dāng)于刪除了所有的BFD會(huì)話,因?yàn)闆](méi)有DR設(shè)備作為鄰 居,那么說(shuō)明已經(jīng)不在網(wǎng)絡(luò)內(nèi),那么就沒(méi)有必要保留其它BFD會(huì)話了。當(dāng)DROther和非DR設(shè)備的鄰居關(guān)系從穩(wěn)定狀態(tài)出現(xiàn)了回退,例如和BDR設(shè)備從 Full狀態(tài)出現(xiàn)回退,或者和其余DROther設(shè)備從2-Way狀態(tài)出現(xiàn)回退;此時(shí)可以檢查廣播 網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,如果此時(shí)DROther設(shè)備和DR設(shè)備的鄰居關(guān)系依然處于 Full狀態(tài),則找出回退的鄰居,通知BFD僅刪除回退鄰居對(duì)應(yīng)的BFD會(huì)話;否則不做任何處理。通過(guò)上述對(duì)于BFD會(huì)話的建立和刪除流程,可以很好地控制BFD會(huì)話,實(shí)現(xiàn)所有鄰 居所有鏈路納入BFD會(huì)話的故障檢測(cè)。另外,除了能通過(guò)BFD會(huì)話快速檢測(cè)到非Full狀態(tài) 的鄰居之間的鏈路故障外,對(duì)于故障鏈路的處理也是非常重要的,下面將介紹本發(fā)明對(duì)于 鏈路故障的具體處理方法。在DROther設(shè)備創(chuàng)建的BFD會(huì)話檢測(cè)到轉(zhuǎn)發(fā)路徑不可達(dá)時(shí),現(xiàn)有流程將會(huì)通知 OSPF斷開(kāi)Full的鄰居關(guān)系,由于Full的鄰居關(guān)系斷開(kāi)后會(huì)造成Router LSA的更新,從而 觸發(fā)路由的重新計(jì)算,使得故障鏈路被繞開(kāi)。但由于現(xiàn)有OSPF協(xié)議中,廣播網(wǎng)或NBMA網(wǎng)絡(luò) 上的DROther設(shè)備之間的鄰居關(guān)系斷開(kāi)后并不會(huì)造成Router LSA的更新,也就無(wú)法觸發(fā)路 由的重新計(jì)算,使得廣播網(wǎng)或NBMA網(wǎng)絡(luò)上的DROther設(shè)備之間的鏈路故障無(wú)法得到及時(shí)處 理。對(duì)此,本發(fā)明提出了一種在無(wú)需改變OSPF協(xié)議的前提下實(shí)現(xiàn)鏈路故障的處理方法,具 體如下步驟202,若非指定路由設(shè)備與鄰居之間的BFD會(huì)話檢測(cè)到鏈路故障,則解除與所 述故障鏈路對(duì)應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最 大。對(duì)于非Full狀態(tài)的鄰居,如果檢測(cè)到鏈路故障,可以將檢測(cè)到故障的鄰居關(guān)系斷 開(kāi),并且對(duì)Router LSA進(jìn)行設(shè)置,將Router LSA中描述故障鏈路的路由代價(jià)的字段,如 MATRIC字段的值設(shè)置為65535,即最大值,此時(shí),由于Router LSA改變,將會(huì)觸發(fā)路由計(jì)算, 同時(shí),由于故障鏈路的路由代價(jià)最大,則路由計(jì)算時(shí)將會(huì)盡可能不選擇故障鏈路進(jìn)行通信, 從而達(dá)到繞過(guò)故障鏈路的目的,實(shí)現(xiàn)故障鏈路的及時(shí)有效處理。另外,故障鏈路的路由代價(jià)值修改后,只有在Router LSA重新產(chǎn)生時(shí)才會(huì)恢復(fù)正 常值,很可能造成故障鏈路的故障解除后不能及時(shí)恢復(fù)使用,影響路由鏈路的快速收斂,為 解決這一問(wèn)題,本發(fā)明還設(shè)計(jì)了一個(gè)Router LSA的恢復(fù)流程,以清除修改Router LSA造成 的影響,使路由快速收斂,具體為在DROther設(shè)備創(chuàng)建的BFD會(huì)話正常建立后,檢查Router LSA中與BFD會(huì)話對(duì)應(yīng) 的鏈路的路由代價(jià),如果對(duì)應(yīng)鏈路的路由代價(jià)為最大值,則重新產(chǎn)生Router LSA,恢復(fù)對(duì)應(yīng) 鏈路的路由代價(jià)為正常值;否則的話,不做任何處理。經(jīng)上述流程,實(shí)現(xiàn)了非Full狀態(tài)鄰居鏈路故障的檢測(cè)、處理和恢復(fù),且無(wú)需改變 現(xiàn)有OSPF及BFD協(xié)議處理流程,易于實(shí)現(xiàn),彌補(bǔ)了現(xiàn)有技術(shù)中對(duì)于非Full狀態(tài)的鄰居無(wú)法 進(jìn)行快速有效的鏈路故障檢測(cè)的缺陷。另外,在此基礎(chǔ)上,對(duì)于鄰居關(guān)系的變化,也可以根 據(jù)不同的情況進(jìn)行調(diào)整,適應(yīng)性好,應(yīng)用廣泛。根據(jù)上述方法,本發(fā)明還提供了一種鏈路故障快速檢測(cè)處理裝置,圖3為本發(fā)明 第一實(shí)施例的鏈路故障快速檢測(cè)處理裝置,如圖3所示,該裝置包括會(huì)話控制模塊301,用于檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá) 到完全(Full)狀態(tài)或穩(wěn)定O-Way)狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通 知BFD會(huì)話模塊302 ;BFD會(huì)話模塊302,與所述會(huì)話控制模塊301相連,用于接收所述會(huì)話建立模塊的 通知,建立與通知中的目的地址對(duì)應(yīng)的鄰居之間的BFD會(huì)話;故障處理模塊303,與BFD會(huì)話模塊302相連,若BFD會(huì)話檢測(cè)到鏈路故障,則解除與所述故障鏈路對(duì)應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最大。圖4為本發(fā)明第二實(shí)施例的鏈路故障快速檢測(cè)處理裝置,如圖4所示,與實(shí)施例一 相比,該鏈路故障快速檢測(cè)處理裝置進(jìn)一步包括標(biāo)簽恢復(fù)模塊304,與所述BFD會(huì)話模塊302相連,接收到所述BFD會(huì)話模塊發(fā)送 的BFD會(huì)話建立成功的通知后,檢查Router LSA中對(duì)應(yīng)該BFD會(huì)話的路由鏈路的路由代價(jià), 若路由代價(jià)被設(shè)置為最大值,則重新產(chǎn)生Router LSA,恢復(fù)所述路由代價(jià)為正常值;所述BFD會(huì)話模塊302,進(jìn)一步向路由標(biāo)簽恢復(fù)模塊204發(fā)送BFD會(huì)話建立成功的 通知。圖5為本發(fā)明第一實(shí)施例的會(huì)話控制模塊的具體結(jié)構(gòu)圖,如圖5所示,會(huì)話控制模 塊包括初始會(huì)話建立單元401,與所述BFD會(huì)話模塊302相連,用于在非指定路由設(shè)備與 指定路由設(shè)備的鄰居關(guān)系達(dá)到Full狀態(tài)時(shí),檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找 出所有達(dá)到Full狀態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知 BFD會(huì)話模塊302 ;新增會(huì)話建立單元402,與所述BFD會(huì)話模塊302相連,用于在非指定路由設(shè)備與 指定路由設(shè)備以外的其它路由設(shè)備的鄰居關(guān)系達(dá)到Full或2-Way狀態(tài)時(shí),檢查其廣播網(wǎng)或 NBMA網(wǎng)接口下的鄰居列表,若存在鄰居關(guān)系已達(dá)到Full狀態(tài)的指定路由設(shè)備,則將新增的 達(dá)到Full狀態(tài)或2-Way狀態(tài)的鄰居的接口地址作為目的地址通知給BFD會(huì)話模塊302。圖6為本發(fā)明第二實(shí)施例的會(huì)話控制模塊的具體結(jié)構(gòu)圖,如圖6所示,與實(shí)施例一 相比,該會(huì)話控制模塊進(jìn)一步包括初始會(huì)話刪除單元403,與所述BFD會(huì)話模塊302相連, 若所述非指定路由設(shè)備和指定路由設(shè)備的鄰居關(guān)系從Full狀態(tài)出現(xiàn)了回退,則通知BFD會(huì) 話模塊302刪除以所述鄰居關(guān)系回退的指定路由設(shè)備的接口地址為目的地址的BFD會(huì)話; 遍歷接口下所有的鄰居,找出其余處于Full和2-Way狀態(tài)的鄰居,并通知BFD會(huì)話模塊302 將所有處于Full和2-Way狀態(tài)的鄰居對(duì)應(yīng)的BFD會(huì)話刪除。圖7為本發(fā)明第三實(shí)施例的會(huì)話控制模塊的具體結(jié)構(gòu)圖,如圖7所示,與實(shí)施例二 相比,該會(huì)話控制模塊又進(jìn)一步包括新增會(huì)話刪除單元404,與所述BFD會(huì)話模塊302相 連,若非指定路由設(shè)備和指定路由設(shè)備以外的其它路由設(shè)備的鄰居關(guān)系出現(xiàn)了回退,則檢 查廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,如果此時(shí)非指定路由設(shè)備和指定路由設(shè)備的鄰居 關(guān)系依然處于Full狀態(tài),則找出鄰居關(guān)系回退的鄰居,通知BFD會(huì)話模塊302刪除所述回 退的鄰居對(duì)應(yīng)的BFD會(huì)話。由上述實(shí)施例可見(jiàn),本發(fā)明的這種鏈路故障快速檢測(cè)方法及裝置,實(shí)現(xiàn)了非Full 狀態(tài)鄰居鏈路故障的檢測(cè)、處理和恢復(fù),且無(wú)需改變現(xiàn)有OSPF及BFD協(xié)議處理流程,易于實(shí) 現(xiàn),彌補(bǔ)了現(xiàn)有技術(shù)中對(duì)于非Full狀態(tài)的鄰居無(wú)法進(jìn)行快速有效的鏈路故障檢測(cè)的缺陷。 另外,在此基礎(chǔ)上,對(duì)于鄰居關(guān)系的變化,也可以根據(jù)不同的情況進(jìn)行調(diào)整,適應(yīng)性好,應(yīng)用 廣泛。所應(yīng)理解的是,以上所述僅為本發(fā)明的較佳實(shí)施方式而已,并不用于限定本發(fā)明 的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含 在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種鏈路故障快速檢測(cè)處理方法,其特征在于,該方法包括非指定路由設(shè)備檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到完全 (Full)狀態(tài)或雙向O-Way)狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD, 建立與所述鄰居之間的BFD會(huì)話;若非指定路由設(shè)備與鄰居之間的BFD會(huì)話檢測(cè)到鏈路故障,則解除與所述故障鏈路對(duì) 應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最大。
2.如權(quán)利要求1所述的鏈路故障快速檢測(cè)處理方法,其特征在于,所述非指定路由設(shè) 備檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到完全Full狀態(tài)或雙向2-Way 狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD,建立與所述鄰居之間的BFD 會(huì)話,包括若非指定路由設(shè)備與指定路由設(shè)備的鄰居關(guān)系達(dá)到Full狀態(tài),則非指定路由設(shè)備檢 查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到Full狀態(tài)或2-Way狀態(tài)的鄰居,并 將所述鄰居的接口地址作為目的地址通知BFD,建立與所述鄰居之間的BFD會(huì)話;若非指定路由設(shè)備與指定路由設(shè)備以外的其它路由設(shè)備的鄰居關(guān)系達(dá)到Full或 2-Way狀態(tài),則檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,若存在鄰居關(guān)系已達(dá)到Full狀 態(tài)的指定路由設(shè)備,則將新增的達(dá)到Full狀態(tài)或2-Way狀態(tài)的鄰居的接口地址作為目的地 址通知給BFD,建立與新增路由設(shè)備之間的BFD會(huì)話。
3.如權(quán)利要求1或2所述的鏈路故障快速檢測(cè)處理方法,其特征在于,該方法進(jìn)一步包括若所述非指定路由設(shè)備和指定路由設(shè)備的鄰居關(guān)系從Full狀態(tài)出現(xiàn)了回退,則通知 BFD刪除以所述鄰居關(guān)系回退的指定路由設(shè)備的接口地址為目的地址的BFD會(huì)話;遍歷接 口下所有的鄰居,找出其余處于Full和2-Way狀態(tài)的鄰居,并通知BFD將所有處于Full和 2-Way狀態(tài)的鄰居對(duì)應(yīng)的BFD會(huì)話刪除。
4.如權(quán)利要求1或2所述的鏈路故障快速檢測(cè)處理方法,其特征在于,該方法進(jìn)一步包括若非指定路由設(shè)備和指定路由設(shè)備以外的其它路由設(shè)備的鄰居關(guān)系出現(xiàn)了回退,則檢 查廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,如果此時(shí)非指定路由設(shè)備和指定路由設(shè)備的鄰居 關(guān)系依然處于Full狀態(tài),則找出鄰居關(guān)系回退的鄰居,通知BFD刪除所述回退的鄰居對(duì)應(yīng) 的BFD會(huì)話。
5.如權(quán)利要求1或2所述的鏈路故障快速檢測(cè)處理方法,其特征在于,該方法進(jìn)一步包括所述BFD會(huì)話建立成功后,非指定路由設(shè)備檢查Router LSA中對(duì)應(yīng)該BFD會(huì)話的路由 鏈路的路由代價(jià),若路由代價(jià)被設(shè)置為最大值,則重新產(chǎn)生RouterLSA,恢復(fù)所述路由代價(jià) 為正常值。
6.一種鏈路故障快速檢測(cè)處理裝置,其特征在于,該裝置包括會(huì)話控制模塊,用于檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá)到Full狀 態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD會(huì)話模塊;BFD會(huì)話模塊,與所述會(huì)話控制模塊相連,用于接收所述會(huì)話建立模塊的通知,建立與 通知中的目的地址對(duì)應(yīng)的鄰居之間的BFD會(huì)話;故障處理模塊,與BFD會(huì)話模塊相連,若BFD會(huì)話檢測(cè)到鏈路故障,則解除與所述故障 鏈路對(duì)應(yīng)的鄰居的鄰居關(guān)系,并將Router LSA中所述故障鏈路的路由代價(jià)設(shè)為最大。
7.如權(quán)利要求6所述的鏈路故障快速檢測(cè)處理裝置,其特征在于,所述會(huì)話控制模塊, 包括初始會(huì)話建立單元,與所述BFD會(huì)話模塊相連,用于在非指定路由設(shè)備與指定路由設(shè) 備的鄰居關(guān)系達(dá)到Full狀態(tài)時(shí),檢查其廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,找出所有達(dá) 到Full狀態(tài)或2-Way狀態(tài)的鄰居,并將所述鄰居的接口地址作為目的地址通知BFD會(huì)話模 塊;新增會(huì)話建立單元,與所述BFD會(huì)話模塊相連,用于在非指定路由設(shè)備與指定路由設(shè) 備以外的其它路由設(shè)備的鄰居關(guān)系達(dá)到Full或2-Way狀態(tài)時(shí),檢查其廣播網(wǎng)或NBMA網(wǎng)接 口下的鄰居列表,若存在鄰居關(guān)系已達(dá)到Full狀態(tài)的指定路由設(shè)備,則將新增的達(dá)到Full 狀態(tài)或2-Way狀態(tài)的鄰居的接口地址作為目的地址通知給BFD會(huì)話模塊。
8.如權(quán)利要求7所述的鏈路故障快速檢測(cè)處理裝置,其特征在于,所述會(huì)話控制模塊 進(jìn)一步包括初始會(huì)話刪除單元,與所述BFD會(huì)話模塊相連,若所述非指定路由設(shè)備和指定路由設(shè) 備的鄰居關(guān)系從Full狀態(tài)出現(xiàn)了回退,則通知BFD會(huì)話模塊刪除以所述鄰居關(guān)系回退的 指定路由設(shè)備的接口地址為目的地址的BFD會(huì)話;遍歷接口下所有的鄰居,找出其余處于 Full和2-Way狀態(tài)的鄰居,并通知BFD會(huì)話模塊將所有處于Full和2_Way狀態(tài)的鄰居對(duì)應(yīng) 的BFD會(huì)話刪除。
9.如權(quán)利要求8所述的鏈路故障快速檢測(cè)處理裝置,其特征在于,所述會(huì)話控制模塊 進(jìn)一步包括新增會(huì)話刪除單元,與所述BFD會(huì)話模塊相連,若非指定路由設(shè)備和指定路由設(shè)備以 外的其它路由設(shè)備的鄰居關(guān)系出現(xiàn)了回退,則檢查廣播網(wǎng)或NBMA網(wǎng)接口下的鄰居列表,如 果此時(shí)非指定路由設(shè)備和指定路由設(shè)備的鄰居關(guān)系依然處于Full狀態(tài),則找出鄰居關(guān)系 回退的鄰居,通知BFD會(huì)話模塊刪除所述回退的鄰居對(duì)應(yīng)的BFD會(huì)話。
10.如權(quán)利要求6 9中任一權(quán)利要求所述的鏈路故障快速檢測(cè)處理裝置,其特征在 于,該裝置進(jìn)一步包括標(biāo)簽恢復(fù)模塊,與所述BFD會(huì)話模塊相連,接收到所述BFD會(huì)話模塊發(fā)送的BFD會(huì)話建 立成功的通知后,檢查Router LSA中對(duì)應(yīng)該BFD會(huì)話的路由鏈路的路由代價(jià),若路由代價(jià) 被設(shè)置為最大值,則重新產(chǎn)生Router LSA,恢復(fù)所述路由代價(jià)為正常值;所述BFD會(huì)話模塊,進(jìn)一步向路由標(biāo)簽恢復(fù)模塊發(fā)送BFD會(huì)話建立成功的通知。
全文摘要
本發(fā)明公開(kāi)了一種鏈路故障快速檢測(cè)方法及裝置,該方法及裝置對(duì)于非Full鄰居狀態(tài)的鄰居也建立BFD會(huì)話,使所有鄰居都納入BFD檢測(cè)范圍,并在BFD會(huì)話檢測(cè)到鏈路故障時(shí),通過(guò)對(duì)Router LSA的設(shè)置,觸發(fā)路由的重新計(jì)算,并繞過(guò)故障鏈路,使非Full鄰居狀態(tài)的鏈路故障得到及時(shí)有效的檢測(cè)和處理。
文檔編號(hào)H04L12/26GK102111325SQ200910262049
公開(kāi)日2011年6月29日 申請(qǐng)日期2009年12月23日 優(yōu)先權(quán)日2009年12月23日
發(fā)明者徐偉, 許亮 申請(qǐng)人:杭州華三通信技術(shù)有限公司