專利名稱:用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法和控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及光纖最短路徑優(yōu)先(Fabric Shortest Path First,F(xiàn)SPF)協(xié)議路由轉(zhuǎn)發(fā)技術(shù),特別涉及一種用于主備倒換后持續(xù)FSPF路由轉(zhuǎn)發(fā)的控制方法、以及一種用于主備倒換后持續(xù)FSPF路由轉(zhuǎn)發(fā)的控制裝置。
背景技術(shù):
FSPF協(xié)議是FC網(wǎng)絡(luò)所使用的基于鏈路的動態(tài)路由發(fā)現(xiàn)協(xié)議,每臺支持FSPF協(xié)議的FC交換機(jī)均可以利用本機(jī)生成的連路狀態(tài)記錄(Link State Record, LSR)來描述本機(jī)與鄰居FC交換機(jī)之間的關(guān)系。如圖1所示,LSR包括LS頭(Link State Header)、鏈路數(shù)量(Number of Links)、以及若干個鏈路描述符(Link Descriptor)。其中,LS頭中具有一 LSR類型(LSR Type)字段,用于表示該LS頭所在LSR的類型,目前已被使用的僅有交換機(jī)鏈路記錄(Switch Link Record)這一種類型,該類型的LSR 用于FC交換機(jī)描述本機(jī)與鄰居FC交換機(jī)之間的關(guān)系,該類型對應(yīng)的LSR Type字段填寫為 Olh ;LS頭中還具有年齡(Age)字段,用于表示該LS頭所在LSR的年齡(以秒為單位),剛生成LSR時,Age字段為0,最大值是3600秒,達(dá)到3600秒的LSR將被刪除;LS頭中包含的其他字段可參見相關(guān)協(xié)議,本文不再贅述。Number of Links表示所在LSR中包含的Link Descriptor字段的數(shù)量。每個Link Descriptor字段僅包含一個穩(wěn)定(FULL)狀態(tài)的鏈路的 Link Descriptor。每當(dāng)FC交換機(jī)發(fā)現(xiàn)鄰居FC交換機(jī)之后,即可與該鄰居FC交換機(jī)相互同步各自的鏈路狀態(tài)數(shù)據(jù)庫(Link-Mate DataBase, LSDB)中的LSR,用于計算出本機(jī)到其他任意一臺 FC交換機(jī)的最短的路由、并確保該路由不會產(chǎn)生環(huán)路。具體說,互為鄰居的每臺FC交換機(jī)分別基于各自的對應(yīng)的鄰居狀態(tài)機(jī)來實現(xiàn)相互發(fā)現(xiàn)、同步LSDB、以及相互維護(hù)的過程。如圖2所示,鄰居狀態(tài)機(jī)的各狀態(tài)及遷移方式如下初始為Down狀態(tài),F(xiàn)C交換機(jī)的本機(jī)端口等待連接對端的鄰居FC交換機(jī)的對應(yīng)端口所上報的表示端口 Up的E_Port狀態(tài)的通知,當(dāng)收到E_Port狀態(tài)通知后遷移至初始化 (Init)狀態(tài);在hit狀態(tài),通過本機(jī)端口以預(yù)先設(shè)置的間隔(HL0 Sff_ILS_Interval)向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送交換機(jī)光纖交互連接服務(wù)(Switch Fabric Internal Link Service, Sff_ILS)協(xié)議的招呼(Hello,HL0)報文,當(dāng)收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的HLO報文時,則實現(xiàn)鄰居FC交換機(jī)的發(fā)現(xiàn),并保存該HLO報文中攜帶的域標(biāo)識 (Domain ID)和端口索引(Port Index),以便后面生成LSR使用;如果該HLO報文中攜帶的 DomainID字段中填寫的就是本機(jī)的Domain ID,則該HLO報文就是表示對端的鄰居FC交換機(jī)也已發(fā)現(xiàn)本機(jī)的2路徑Qway) HLO報文,進(jìn)而與對端的鄰居FC交換機(jī)建立2way關(guān)系,然后遷移至數(shù)據(jù)庫交換(DB Exchange)狀態(tài);在DBfocchange狀態(tài),利用 SW_ILS協(xié)議的連路狀態(tài)更新(The Link State Update,LSU)報文從本機(jī)端口向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送本機(jī)LSDB中的所有LSR,其中,發(fā)送最后一個LSR的LSU報文中的標(biāo)志(Flag)需要設(shè)置為表示所有LSR發(fā)送完畢的值; 與此同時,接收對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送至本機(jī)端口的LSR,每當(dāng)收到一個LSR 即利用SW_ILS協(xié)議的連路狀態(tài)確認(rèn)(The Link State Acknowledgement, LSA)報文來響應(yīng)接收到的LSR,如果收到比本機(jī)LSDB中新的LSR、或者本機(jī)LSDB中沒有的LSR,則更新至本機(jī)LSDB中;此外,如果本機(jī)先于對端的鄰居FC交換機(jī)發(fā)送完所有LSR,則遷移至數(shù)據(jù)庫等待(DB Wait)狀態(tài),如果本機(jī)晚于對端的鄰居FC交換機(jī)發(fā)送完所有LSR,則遷移至數(shù)據(jù)庫響應(yīng)等待(DB ACK Wait)狀態(tài);在DB Ack Wait狀態(tài),當(dāng)本機(jī)端口接收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的針對最后一個LSR的LSA報文時,遷移至Full狀態(tài);在DB Wait狀態(tài),當(dāng)本機(jī)端口接收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的最后一個LSR的LSR報文時,遷移至Full狀態(tài)。只要互為鄰居的兩臺FC交換機(jī)的對應(yīng)鄰居狀態(tài)機(jī)均遷移至Full狀態(tài),則互為鄰居的兩臺FC交換機(jī)變?yōu)猷徑?Adjacency)關(guān)系,從而,成為Adjacency關(guān)系的兩臺FC交換機(jī)可以分別計算出本機(jī)通過對端所能夠到達(dá)的其他任意一臺FC交換機(jī)的最短的路由、且該路由不會產(chǎn)生環(huán)路,然后即可利用計算出的路由實現(xiàn)FSPF路由轉(zhuǎn)發(fā),當(dāng)然,還需要周期性地通過互發(fā)HLO報文來維護(hù)Adjacency關(guān)系。按照上述方式雖然能夠?qū)崿F(xiàn)FSPF路由轉(zhuǎn)發(fā),但對于某些分布式結(jié)構(gòu)的高端的FC 交換機(jī)來說,卻會存在如下問題分布式結(jié)構(gòu)的FC交換機(jī)中,控制層面的業(yè)務(wù)處理和轉(zhuǎn)發(fā)層面的轉(zhuǎn)發(fā)處理是相互分離的,即,業(yè)務(wù)處理主要集中在主控板上、轉(zhuǎn)發(fā)處理由接口板負(fù)責(zé),以便于大幅度提升業(yè)務(wù)處理和轉(zhuǎn)發(fā)處理的各自處理能力。其中,主控板分為主用主控板和備用主控板,備用主控板是對主用主控板的備份,當(dāng)主用主控板工作不正常時,備用主控板將接替主用主控板工作,從而提升業(yè)務(wù)處理的可靠性;但是,當(dāng)某臺FC交換機(jī)發(fā)生主用主控板與備用主控板之間的主備倒換時,由備用主控板切換后的新的主用主控板需要按照如圖2所示的鄰居狀態(tài)機(jī)從Down狀態(tài)開始重新執(zhí)行端口檢測的過程、與鄰居FC交換機(jī)相互發(fā)現(xiàn)并建立2way關(guān)系的過程、以及將所有鄰居 FC交換機(jī)的LSR同步至LSDB的過程,然后才能夠重新計算經(jīng)過所有鄰居FC交換機(jī)到達(dá)其他任意FC交換機(jī)的路由;相應(yīng)地,在上述發(fā)生主備倒換的FC交換機(jī)的主備倒換過程中,所有鄰居FC交換機(jī)均無法收到用于維護(hù)Adjacency關(guān)系的HLO報文而導(dǎo)致相應(yīng)的HLO定時器超時,從而使對應(yīng)發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)離開Full狀態(tài)并退回至hit狀態(tài);而只要對應(yīng)發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)離開Full狀態(tài),鄰居FC交換機(jī)就會刪除涉及發(fā)生主備倒換的FC交換機(jī)的LRS和所有路由,直至按照如圖2所示的鄰居狀態(tài)機(jī)從hit狀態(tài)開始重新執(zhí)行與發(fā)生主備倒換的FC交換機(jī)相互發(fā)現(xiàn)并建立2way關(guān)系的過程、以及將發(fā)生主備倒換的FC交換機(jī)的LSR同步至LSDB的過程,然后才能夠重新計算經(jīng)過發(fā)生主備倒換的FC交換機(jī)到達(dá)其他任意FC交換機(jī)的路由。可見,在現(xiàn)有技術(shù)中,如果任一臺FC交換機(jī)發(fā)生主備倒換,則在主備倒換完成之后、重新計算路由完成之前,所有鄰居FC交換機(jī)均由于已刪除相關(guān)的LSR和路由而無法通過發(fā)生主備倒換的FC交換機(jī)實現(xiàn)FPSF路由轉(zhuǎn)發(fā)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法、以及一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,使鄰居FC交換機(jī)能夠通過發(fā)生主備倒換的FC交換機(jī)實現(xiàn)持續(xù)的FPSF路由轉(zhuǎn)發(fā)。本發(fā)明提供的一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法,其應(yīng)用于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī),該控制方法包括al、發(fā)生主備倒換的FC交換機(jī)在完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;a2、發(fā)生主備倒換的FC交換機(jī)與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系;a3、發(fā)生主備倒換的FC交換機(jī)將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR同步至本機(jī)的LSDB ;a4、發(fā)生主備倒換的FC交換機(jī)在接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居FC交換機(jī)結(jié)束對本機(jī)的輔助。所述步驟a3中進(jìn)一步包括發(fā)生主備倒換的FC交換機(jī)針對鄰居FC交換機(jī)發(fā)送的 LSR進(jìn)行響應(yīng)。所述步驟a4之后,該控制方法進(jìn)一步包括a5、發(fā)生主備倒換的FC交換機(jī)利用本機(jī)的LSDB中的LSR進(jìn)行路由計算。所述步驟a4之后、步驟a5之前,該控制方法進(jìn)一步包括發(fā)生主備倒換的FC交換機(jī)重新刷新本機(jī)的LSDB中的LSR。所述步驟a5之后,該控制方法進(jìn)一步包括a6、發(fā)生主備倒換的FC交換機(jī)恢復(fù)與鄰居FC交換機(jī)之間周期性相互發(fā)送的HLO報文。在所述步驟al中發(fā)生主備倒換的FC交換機(jī)利用一標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,發(fā)生主備倒換的FC交換機(jī)利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC 交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于 3600 秒。在所述步驟a4中發(fā)生主備倒換的FC交換機(jī)利用一標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,發(fā)生主備倒換的FC交換機(jī)利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC 交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為 3600 秒。本發(fā)明提供的一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法,其應(yīng)用于支持光纖最短路徑優(yōu)先FSPF協(xié)議的FC交換機(jī),該控制方法包括bl、本機(jī)接收發(fā)生主備倒換的FC交換機(jī)所發(fā)送的表示輔助其進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的通知、并保留與其相關(guān)的LSR和路由,使本機(jī)基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作;b2、本機(jī)與發(fā)生主備倒換的FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系;b3、本機(jī)向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng);b4、本機(jī)接收發(fā)生主備倒換的FC交換機(jī)在接收完所有LSR之后所發(fā)送的表示結(jié)束對其輔助的通知,退出對發(fā)生主備倒換的FC交換機(jī)的輔助。所述步驟bl中的通知為標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。 所述步驟b4中的通知為標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。本發(fā)明提供的一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī)中,該控制裝置包括第一通知模塊,在本機(jī)完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;鄰居發(fā)現(xiàn)模塊,與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系;鄰居同步模塊,將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR同步至本機(jī)的LSDB ;第二通知模塊,在鄰居同步模塊接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居FC交換機(jī)結(jié)束對本機(jī)的輔助。鄰居同步模塊進(jìn)一步針對鄰居FC交換機(jī)發(fā)送的LSR進(jìn)行響應(yīng)。第二通知模塊進(jìn)一步觸發(fā)發(fā)生主備倒換的FC交換機(jī)重新刷新本機(jī)的LSDB中的 LSR,然后利用本機(jī)的LSDB中的LSR進(jìn)行路由計算,并在路由計算完成后恢復(fù)與鄰居FC交換機(jī)之間周期性相互發(fā)送的HLO報文。第一通知模塊利用一標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文通知鄰居 FC交換機(jī);或者,第一通知模塊利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。第二通知模塊利用一標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文通知鄰居 FC交換機(jī);或者,第二通知模塊利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。本發(fā)明提供的一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議的FC交換機(jī)中,該控制裝置包括第一接收模塊,接收發(fā)生主備倒換的FC交換機(jī)所發(fā)送的表示輔助其進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的通知、并保留與其相關(guān)的LSR和路由,使本機(jī)基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作;鄰居發(fā)現(xiàn)模塊,與發(fā)生主備倒換的FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系;鄰居同步模塊,向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng);第二通知模塊,接收發(fā)生主備倒換的FC交換機(jī)在接收完所有LSR之后所發(fā)送的表示結(jié)束對其輔助的通知,使本機(jī)退出對發(fā)生主備倒換的FC交換機(jī)的輔助。第一接收模塊接收到的通知為標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。第二接收模塊接收到的通知為標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。由上述技術(shù)方案可見,本發(fā)明在有FC交換機(jī)發(fā)生主控板的主備倒換的情況下,發(fā)生主備倒換的FC交換機(jī)通知鄰居FC交換機(jī),使鄰居FC交換機(jī)輔助發(fā)生主備倒換的FC交換機(jī)在倒換后保持持續(xù)轉(zhuǎn)發(fā)、并保留與其相關(guān)的LSR和路由,從而,由于鄰居FC交換機(jī)的輔助,因而發(fā)生主備倒換的FC交換機(jī)能夠從鄰居FC交換機(jī)獲得用于計算路由的LSR,以及,由于鄰居FC交換機(jī)保留了相關(guān)的路由、且發(fā)生主備倒換的FC交換機(jī)的接口板仍能夠正常轉(zhuǎn)發(fā),因而在主備倒換完成之后、重新計算路由完成之前確保鄰居FC交換機(jī)持續(xù)進(jìn)行通過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作。
圖1為LSR的結(jié)構(gòu)示意圖;圖2為現(xiàn)有FC交換機(jī)中的鄰居狀態(tài)機(jī)的示意圖;圖3為本發(fā)明實施例中用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法的示例性流程圖;圖如和圖4b為本發(fā)明實施例中的鄰居狀態(tài)機(jī)的示意圖;圖5為本發(fā)明實施例中用于主備倒換后持續(xù)FSPF路由轉(zhuǎn)發(fā)的方法的一實例流程圖;圖6為本發(fā)明實施例中用于主備倒換后持續(xù)FSPF路由轉(zhuǎn)發(fā)的方法的另一實例流程圖;圖7a和圖7b為本發(fā)明實施例中用于主備倒換后持續(xù)FSPF路由轉(zhuǎn)發(fā)的裝置的結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明進(jìn)一步詳細(xì)說明。在本實施例中,當(dāng)出現(xiàn)FC交換機(jī)(本實施例主要針對分布式結(jié)構(gòu)的FC交換機(jī)) 發(fā)生主控板的主備倒換的情況,發(fā)生主備倒換的FC交換機(jī)通知鄰居FC交換機(jī),鄰居FC交換機(jī)在接收到該通知后并不關(guān)注用于維護(hù)Adjacency關(guān)系的HLO報文所對應(yīng)的定時器是否超時,也不刪除涉及發(fā)生主備倒換的FC交換機(jī)的LRS和所有路由,而是輔助發(fā)生主備倒換的FC交換機(jī)在倒換維持持續(xù)轉(zhuǎn)發(fā)、并保留與其相關(guān)的LSR和路由?;卩従覨C交換機(jī)的輔助,發(fā)生主備倒換的FC交換機(jī)能夠從鄰居FC交換機(jī)獲得用于計算路由的LSR,而且,鄰居 FC交換機(jī)保留了相關(guān)的路由、發(fā)生主備倒換的FC交換機(jī)的接口板又能夠正常轉(zhuǎn)發(fā),因而在發(fā)生主備倒換的FC交換機(jī)完成主備倒換之后、發(fā)生主備倒換的FC交換機(jī)重新計算路由完成之前,鄰居FC交換機(jī)能夠持續(xù)進(jìn)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作。圖3為本發(fā)明實施例中用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法的示例性流程圖。如圖3所示,本實施例中用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法包括如下步驟步驟301,發(fā)生主備倒換的FC交換機(jī)在完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由。關(guān)于本步驟中所使用的通知,本實施例中提供了如下兩種方式方式一、采用一改進(jìn)的HLO報文,該HLO報文的標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值,例如1 ;方式二、采用攜帶一改進(jìn)的LSR的LSU報文,該LSR區(qū)別于現(xiàn)有技術(shù)中LSR Type字段填寫為Olh的Switch Link Record類型,而是本實施例提供的一種新類型forwarding, Rewarding類型LSR的LSR Type字段填寫為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值,例如IOh Jorwarding 類型LSR的鏈路數(shù)量為0。而且,本步驟中所使用的forwarding類型LSR的年齡應(yīng)當(dāng)小于 3600 秒。當(dāng)然,基于上述兩種方式,本領(lǐng)域技術(shù)人員所能夠延伸出的其他方式也能夠?qū)崿F(xiàn)本步驟中所使用的通知。在本步驟之后,鄰居FC交換機(jī)即能夠基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作。步驟302,發(fā)生主備倒換的FC交換機(jī)與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way 關(guān)系。本步驟中的處理過程可參照現(xiàn)有方式,以交互2way HLO報文的方式來實現(xiàn)。實際應(yīng)用中,可以由鄰居FC交換機(jī)在收到步驟301中的通知后先向發(fā)生主備倒換的FC交換機(jī)發(fā)送2way HLO報文,再由發(fā)生主備倒換的FC交換機(jī)回應(yīng)2way HLO報文;或者,也可以由發(fā)生主備倒換的FC交換機(jī)在發(fā)送步驟301中的通知后先向鄰居FC交換機(jī)發(fā)送2way HLO報文,再由鄰居FC交換機(jī)回應(yīng)2way HLO報文。實際應(yīng)用中,由于主備倒換的時間一般來說是3 5秒,而鄰居FC交換機(jī)的相應(yīng)的HLO定時器的超時標(biāo)準(zhǔn)是80秒,因此,本步驟中建立2way關(guān)系是在鄰居FC交換機(jī)的相應(yīng)的HLO定時器超時之前完成的,由此,也就不會使鄰居FC交換機(jī)刪除涉及發(fā)生主備倒換的FC交換機(jī)的LRS和所有路由。步驟303,鄰居FC交換機(jī)向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng),相應(yīng)地,發(fā)生主備倒換的FC交換機(jī)將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR 同步至本機(jī)的LSDB并響應(yīng)。步驟304,發(fā)生主備倒換的FC交換機(jī)在接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居FC交換機(jī)結(jié)束對本機(jī)的輔助。
關(guān)于本步驟中所使用的通知,本實施例中提供了如下兩種方式方式一、采用普通的Flag為0的HLO報文,雖然普通的Flag為0的HLO報文在現(xiàn)有技術(shù)中用于鄰居FC交換機(jī)的發(fā)現(xiàn),但在本實施例中,可令任意FC交換機(jī)在處于輔助發(fā)生主備倒換的其他FC交換機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的角色時,默認(rèn)普通的Flag為0的HLO 報文為通知其結(jié)束輔助的通知;方式二、采用攜帶一步驟301所述的forwarding類型LSR的LSU報文,但本步驟中于LSU報文中所攜帶的forwarding類型LSR的年齡設(shè)置為3600秒。當(dāng)然,基于上述兩種方式,本領(lǐng)域技術(shù)人員所能夠延伸出的其他方式也能夠?qū)崿F(xiàn)本步驟中所使用的通知。本步驟之后,發(fā)生主備倒換的FC交換機(jī)即可計算路由,從而實現(xiàn)該FC交換機(jī)的后續(xù)轉(zhuǎn)發(fā)操作。至此,上述流程結(jié)束。需要說明的是,每臺發(fā)生主備倒換的FC交換機(jī)針對其每臺鄰居FC交換機(jī)分別執(zhí)行上述流程,更具體地,發(fā)生主備倒換的FC交換機(jī)是由其主備倒換后的新的主用主控板來執(zhí)行上述流程,而鄰居FC交換機(jī)則由于未發(fā)生主備倒換而一直以原主用主控板來執(zhí)行上述流程。實際應(yīng)用中,可結(jié)合鄰居狀態(tài)機(jī)來實現(xiàn)上述流程,但此時的鄰居狀態(tài)機(jī)的狀態(tài)遷移條件顯然已區(qū)別于現(xiàn)有技術(shù)中如圖2所示的鄰居狀態(tài)機(jī)。圖如示出了本實施例所提供的一種鄰居狀態(tài)機(jī)的各狀態(tài)及遷移方式1)、Down 狀態(tài)本機(jī)端口等待連接對端的鄰居FC交換機(jī)的對應(yīng)端口所上報的表示端口 Up的E_ Port狀態(tài)的通知;當(dāng)收到E_Port狀態(tài)通知后,如果是FC交換機(jī)開機(jī)啟動后進(jìn)入Down狀態(tài)則按照現(xiàn)有方式正常遷移至hit狀態(tài),如果是主備倒換后進(jìn)入Down狀態(tài)則以倒換角色(本文所述的“倒換角色”即表示完成倒換后維持持續(xù)轉(zhuǎn)發(fā)的一種工作模式、或狀態(tài),并可以采用任一種現(xiàn)有方式予以標(biāo)識)遷移至hit狀態(tài)。2)、Init 狀態(tài)如果是按照現(xiàn)有方式正常遷移至hit狀態(tài),則通過本機(jī)端口以預(yù)先設(shè)置的間隔將向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送普通的標(biāo)志位為0的HLO報文,當(dāng)收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的普通的標(biāo)志位為0的HLO報文時,實現(xiàn)鄰居FC交換機(jī)的發(fā)現(xiàn),并保存普通的標(biāo)志位為0的該HLO報文中攜帶的Domain ID和Port hdex,以便后面生成LSR使用;當(dāng)HLO報文為2way HLO報文時,與對端的鄰居FC交換機(jī)建立2way關(guān)系,然后按照現(xiàn)有方式正常遷移至DB Exchange狀態(tài);如果是以倒換角色遷移至hit狀態(tài),則本機(jī)(發(fā)生主備倒換的FC交換機(jī))向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送需輔助其倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留其相關(guān)的LSR和路由的通知,使對端的鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)進(jìn)入輔助角色(本文所述的“輔助角色” 即表示在本機(jī)輔助其他FC交換機(jī)在完成倒換后維持持續(xù)轉(zhuǎn)發(fā)的一種工作模式、或狀態(tài),并可以采用任一種現(xiàn)有方式予以標(biāo)識),例如,通過本機(jī)端口以預(yù)先設(shè)置的間隔發(fā)送標(biāo)志位為 1的HLO報文、或者攜帶有年齡小于3600秒的forwarding類型LSR的LSU報文;然后,通過本機(jī)端口以預(yù)先設(shè)置的間隔將向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送普通的標(biāo)志位為0的HLO報文,當(dāng)收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的普通的標(biāo)志位為0的HLO報文時,實現(xiàn)鄰居FC交換機(jī)的發(fā)現(xiàn),并保存普通的標(biāo)志位為0的該HLO報文中攜帶的Domain ID和Port Index,以便后面生成LSR使用;當(dāng)HLO報文為2way HLO報文時,與對端的鄰居 FC交換機(jī)建立2way關(guān)系,然后以倒換角色遷移至DB Exchange狀態(tài)。3)、DB Exchange 狀態(tài)如果是按照現(xiàn)有方式正常遷移至DB Exchange狀態(tài),則利用LSU報文從本機(jī)端口向?qū)Χ说泥従覨C交換機(jī)的對應(yīng)端口發(fā)送本機(jī)LSDB中的所有LSR (發(fā)送最后一個LSR的LSU 報文中的Flag需要設(shè)置為表示所有LSR發(fā)送完畢的值),與此同時,接收對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送至本機(jī)端口的LSR,每當(dāng)收到一個LSR即利用LSA報文來響應(yīng)接收到的 LSR,如果收到比本機(jī)LSDB中新的LSR、或者本機(jī)LSDB中沒有的LSR,則更新至本機(jī)LSDB中; 如果本機(jī)先于對端的鄰居FC交換機(jī)發(fā)送完所有LSR,則按照現(xiàn)有方式正常遷移至DB Wait 狀態(tài),如果本機(jī)晚于對端的鄰居FC交換機(jī)發(fā)送完所有LSR,則按照現(xiàn)有方式正常遷移至DB ACK Wait 狀態(tài);如果是以倒換角色遷移至DB Exchange狀態(tài),則默認(rèn)本機(jī)(發(fā)生主備倒換的FC交換機(jī))先于對端的鄰居FC交換機(jī)發(fā)送完所有LSR,并以倒換角色直接遷移至DB Wait狀態(tài); 或者,向?qū)Χ说泥従覨C交換機(jī)發(fā)送Flag設(shè)置為表示所有LSR發(fā)送完畢的值的空LSU報文, 待對端的鄰居FC交換機(jī)回應(yīng)LSA報文后再以倒換角色遷移至DB Wait狀態(tài);如果是以輔助角色遷移至DB Exchange狀態(tài),則默認(rèn)本機(jī)晚于對端的鄰居FC交換機(jī)(發(fā)生主備倒換的FC交換機(jī))發(fā)送完所有LSR,并以輔助角色直接遷移至DB ACK Wait 狀態(tài);或者,在接收到Flag設(shè)置為表示所有LSR發(fā)送完畢的值的空LSU報文后以輔助角色遷移至DB ACK Wait狀態(tài)。4)、DB ACK Wait 狀態(tài)如果時按照現(xiàn)有方式正常遷移至DB ACK Wait狀態(tài),則當(dāng)本機(jī)端口接收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的針對最后一個LSR的LSA報文時,按照現(xiàn)有方式正常遷移至Full狀態(tài);如果是以輔助角色遷移至DB ACK Wait狀態(tài),則當(dāng)本機(jī)端口接收到對端的鄰居FC 交換機(jī)(發(fā)生主備倒換的FC交換機(jī))的對應(yīng)端口發(fā)送的針對最后一個LSR的LSA報文時, 以輔助角色遷移至Full狀態(tài)。5)、DB Wait 狀態(tài)如果是按照現(xiàn)有方式正常遷移至DB Wait狀態(tài),則當(dāng)本機(jī)端口接收到對端的鄰居 FC交換機(jī)的對應(yīng)端口發(fā)送的最后一個LSR的LSR報文時常,按照現(xiàn)有方式正遷移至Full狀態(tài);如果是以倒換角色遷移至DB ACK Wait狀態(tài),則當(dāng)本機(jī)(發(fā)生主備倒換的FC交換機(jī))端口接收到對端的鄰居FC交換機(jī)的對應(yīng)端口發(fā)送的最后一個LSR的LSR報文時,以倒換角色遷移至Full狀態(tài)。6)、Full 狀態(tài):如果是按照現(xiàn)有方式正常遷移至Full狀態(tài),則與鄰居FC交換機(jī)變?yōu)锳djacency 關(guān)系、并周期性地通過互發(fā)HLO報文來維護(hù)Adjacency關(guān)系,以及,利用LSDB中的LSR計算出本機(jī)通過對端所能夠到達(dá)的其他任意一臺FC交換機(jī)的最短的路由、且該路由不會產(chǎn)生環(huán)路,然后利用計算出的路由實現(xiàn)FSPF路由轉(zhuǎn)發(fā);如果是以倒換角色遷移至Full狀態(tài),則本機(jī)(發(fā)生主備倒換的FC交換機(jī))退出倒換角色、并向?qū)Χ说泥従覨C交換機(jī)發(fā)送結(jié)束輔助的通知,例如,通過本機(jī)的對應(yīng)端口以發(fā)送標(biāo)志位為0的HLO報文、或者攜帶有年齡等于3600秒的Rewarding類型LSR的LSU 報文,可選地還需要重新刷新本機(jī)的LSDB中的LSR(主備倒換后的鄰居FC交換機(jī)可能會發(fā)生變化、導(dǎo)致倒換后的LSR與倒換前的原主用主控板得到的LSR不全相同),利用刷新后的 LSR計算出本機(jī)通過對端所能夠到達(dá)的其他任意一臺FC交換機(jī)的最短的路由、且該路由不會產(chǎn)生環(huán)路,然后利用計算出的路由實現(xiàn)FSPF路由轉(zhuǎn)發(fā),然后,恢復(fù)與鄰居FC交換機(jī)之間周期性地互發(fā)HLO報文,用以維護(hù)與鄰居FC交換機(jī)之間的Adjacency關(guān)系;如果是以輔助角色遷移至Full狀態(tài),則在接收到對端的鄰居FC交換機(jī)(發(fā)生主備倒換的FC交換機(jī))發(fā)送的結(jié)束輔助的通知后退出輔助角色;當(dāng)本機(jī)端口由于被拔出而變?yōu)镈own、或者本機(jī)發(fā)生主備倒換時,遷移至Down狀態(tài)、并刪除對應(yīng)的所有LRS和所有路由;當(dāng)本機(jī)接收到對端的鄰居FC交換機(jī)(發(fā)生主備倒換的FC交換機(jī))所發(fā)送的需輔助其倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留其相關(guān)的LSR和路由的通知后,以輔助角色向該FC交換機(jī)發(fā)送2way HLO報文、并在接收到2way HLO報文后(即與發(fā)生主備倒換的FC交換機(jī)之間建立2way關(guān)系)遷移至DBExchange狀態(tài),但保留本機(jī)的LSDB中保存的與該FC交換機(jī)相關(guān)的LRS和所有路由。實際應(yīng)用中,由于發(fā)生主備倒換的FC交換機(jī)可能會存在多個鄰居FC交換機(jī),而多個鄰居FC交換機(jī)完成鄰居發(fā)現(xiàn)、以及LSDB同步的速度可能會不一致,因此,在上述鄰居狀態(tài)機(jī)中,如果是以倒換角色遷移至Full狀態(tài),則較佳地,應(yīng)等待本機(jī)的所有鄰居FC交換機(jī)均以輔助角色進(jìn)入Full狀態(tài)后再退出倒換角色。具體說,可以設(shè)置一等待時間來判斷是否所有鄰居FC交換機(jī)均以輔助角色進(jìn)入Full狀態(tài),該等待時間可以是速度最慢的鄰居FC交換機(jī)周期性發(fā)送HLO報文的間隔的若干倍,例如4倍。結(jié)合如圖如所示的鄰居狀態(tài)機(jī),在如圖3所示的流程中在步驟301之前,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從Down狀態(tài)遷移至hit狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則處于Full狀態(tài);在步驟301,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色處于hit狀態(tài), 其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色處于Full狀態(tài);在步驟302,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從hit狀態(tài)遷移至DB Exchange狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從Full狀態(tài)遷移至DB Exchange 狀態(tài);在步驟303,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從DBExchange狀態(tài)遷移至DB Wait狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從DB Exchange狀態(tài)遷移至DB ACK Wait狀態(tài);在步驟304,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從DBWait狀態(tài)遷移至Full狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從DB ACK Wait狀態(tài)遷移至 Full狀態(tài);另外,較佳地在步驟304之后,如果所有鄰居FC交換機(jī)均退出輔助角色,則發(fā)生主備倒換的FC交換機(jī)才退出倒換角色。圖4b示出了本實施例所提供的另一種鄰居狀態(tài)機(jī)的各狀態(tài)及遷移方式,如圖4b 所示的鄰居狀態(tài)機(jī)與如圖如中的鄰居狀態(tài)機(jī)的主要區(qū)別在于在Full狀態(tài),當(dāng)本機(jī)接收到發(fā)生主備倒換的FC交換機(jī)所發(fā)送的需輔助其倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留其相關(guān)的LSR和路由的通知后,以輔助角色遷移至hit狀態(tài),并保留涉及發(fā)生主備倒換的FC交換機(jī)的LRS和所有路由;如果是以輔助角色遷移至hit狀態(tài),則通過本機(jī)端口以預(yù)先設(shè)置的間隔將向?qū)Χ说泥従覨C交換機(jī)(發(fā)生主備倒換的FC交換機(jī))的對應(yīng)端口發(fā)送普通的標(biāo)志位為0的 HLO報文,當(dāng)收到對端的該FC交換機(jī)的對應(yīng)端口發(fā)送的普通的標(biāo)志位為0的HLO報文時, 實現(xiàn)鄰居FC交換機(jī)的發(fā)現(xiàn),并保存普通的標(biāo)志位為0的該HLO報文中攜帶的Domain ID和 Port Index,以便后面生成LSR使用;當(dāng)HLO報文為2way HLO報文時,與對端的該FC交換機(jī)建立2way關(guān)系,然后以輔助角色遷移至DB Exchange狀態(tài)。但無論是如圖如所示的鄰居狀態(tài)機(jī)還是如圖4b所示的鄰居狀態(tài)機(jī),只要是在本機(jī)接收到發(fā)生主備倒換的FC交換機(jī)所發(fā)送的需輔助其倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留其相關(guān)的LSR和路由的通知之后離開Full狀態(tài),均保留涉及發(fā)生主備倒換的FC交換機(jī)的LRS和所有路由。結(jié)合如圖如所示的鄰居狀態(tài)機(jī),在如圖3所示的流程中在步驟301之前,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從Down狀態(tài)遷移至hit狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則處于Full狀態(tài);在步驟301,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色處于hit狀態(tài), 其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從Full狀態(tài)遷移至hit狀態(tài);在步驟302,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從hit狀態(tài)遷移至DB Exchange狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從hit狀態(tài)遷移至DB Exchange 狀態(tài);在步驟303,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從DBExchange狀態(tài)遷移至DB Wait狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從DB Exchange狀態(tài)遷移至DB ACK Wait狀態(tài);在步驟304,發(fā)生主備倒換的FC交換機(jī)的鄰居狀態(tài)機(jī)以倒換角色從DBWait狀態(tài)遷移至Full狀態(tài),其鄰居FC交換機(jī)的鄰居狀態(tài)機(jī)則以輔助角色從DB ACK Wait狀態(tài)遷移至 Full狀態(tài);另外,較佳地在步驟304之后,如果所有鄰居FC交換機(jī)均退出輔助角色,則發(fā)生主備倒換的FC交換機(jī)才退出倒換角色。上述如圖如所示的鄰居狀態(tài)機(jī)還是如圖4b所示的鄰居狀態(tài)機(jī)主要是輔以特殊的角色來實現(xiàn)特定的狀態(tài)遷移方式。當(dāng)然,除了如圖如所示的鄰居狀態(tài)機(jī)還是如圖4b所示的鄰居狀態(tài)機(jī)之外,本領(lǐng)域技術(shù)人員還可以延伸出的其他替換方式。下面,再結(jié)合如圖如所示的鄰居狀態(tài)機(jī),舉兩個實例對如圖3所示的流程進(jìn)行進(jìn)一步說明。在如圖5所示的實例流程中,假設(shè)交換機(jī)A為發(fā)生主備倒換的FC交換機(jī)、交換機(jī) B為其鄰居FC交換機(jī),該實例流程包括
步驟501,交換機(jī)A完成主備倒換后,在其對應(yīng)交換機(jī)B的鄰居狀態(tài)機(jī)處于Down狀態(tài)時進(jìn)入倒換角色。步驟502,交換機(jī)A短時間內(nèi)又檢測到本機(jī)的對應(yīng)端口 Up,其對應(yīng)交換機(jī)B的鄰居狀態(tài)機(jī)以倒換角色遷移至hit狀態(tài)。步驟503,交換機(jī)A利用標(biāo)志位設(shè)置為1的HLO報文通知交換機(jī)B輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由。步驟504,交換機(jī)B針對交換機(jī)A在Full狀態(tài)下進(jìn)入輔助角色。步驟505,交換機(jī)B無需等待其對應(yīng)交換機(jī)A的HLO定時器超時,立即向交換機(jī)A 發(fā)送標(biāo)志位為0的2way HLO報文。步驟506,已進(jìn)入倒換角色的交換機(jī)A接收到2way HLO報文后,其對應(yīng)交換機(jī)B的鄰居狀態(tài)機(jī)以倒換角色遷移至DB Exchange狀態(tài)。步驟507,交換機(jī)A向交換機(jī)B發(fā)送標(biāo)志位為0的2way HLO報文。實際應(yīng)用中,本步驟與步驟506的順序可以任意設(shè)置。步驟508,已針對交換機(jī)A進(jìn)入輔助角色的交換機(jī)B接收到2way HLO報文后,其對應(yīng)交換機(jī)A的鄰居狀態(tài)機(jī)以輔助角色由Full狀態(tài)遷移至DBExchange狀態(tài)。步驟509,交換機(jī)B開始向交換機(jī)A發(fā)送攜帶有Switch Link Record類型的LSR 的LSU報文。步驟510,交換機(jī)A將接收到的Switch Link Record類型的LSR同步至本機(jī)的 LSDB,并針對接收到的Switch Link Record類型的LSR回應(yīng)LSA報文。上述步驟509 步驟510可以是多次反復(fù)執(zhí)行的步驟,直至交換機(jī)B發(fā)送完所有 Switch Link Record類型的LSR之后才開始執(zhí)行后續(xù)的步驟。而且,在此過程中,交換機(jī)A 對應(yīng)交換機(jī)B的鄰居狀態(tài)機(jī)以倒換角色遷移至DBWait狀態(tài)、交換機(jī)B對應(yīng)交換機(jī)A的鄰居狀態(tài)機(jī)以輔助角色遷移至DB ACKWait狀態(tài)。步驟511,交換機(jī)A和交換機(jī)B在所有Switch Link Record類型的LSR之后,交換機(jī)A對應(yīng)交換機(jī)B的鄰居狀態(tài)機(jī)以倒換角色遷移至Full狀態(tài)、交換機(jī)B對應(yīng)交換機(jī)A的鄰居狀態(tài)機(jī)以輔助角色遷移至Full狀態(tài)。步驟512,交換機(jī)A利用標(biāo)志位被置為0的HLO報文通知交換機(jī)B結(jié)束對本機(jī)的輔助。步驟513,交換機(jī)A退出倒換角色,并重新刷新本機(jī)的LSDB中的LSR,然后利用刷新后的LSR開始計算路由,交換機(jī)B退出針對交換機(jī)A的輔助角色。由于在本實例中,發(fā)生主備倒換的交換機(jī)A僅存在一個鄰居交換機(jī)B,因而也可以不利用如前文所述的等待時間來判斷是否所有鄰居FC交換機(jī)均以輔助角色進(jìn)入Full狀態(tài),而是在交換機(jī)B進(jìn)入Full狀態(tài)并退出輔助角色后直接退出倒換角色。至此,上述流程結(jié)束。在如圖6所示的實例流程中,仍假設(shè)交換機(jī)A為發(fā)生主備倒換的FC交換機(jī)、交換機(jī)B為其鄰居FC交換機(jī)。如圖6所示的實例流程與如圖5所示的實例流程相比,步驟601 步驟602、步驟604 步驟611、以及步驟613分別與步驟501 步驟502、步驟504 步驟 511、以及步驟513,主要的區(qū)別就在于交換機(jī)A在步驟603利用攜帶有年齡小于3600秒的R)rWarding類型LSR的LSU報文通知交換機(jī)B輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;以及,交換機(jī)A在步驟612利用攜帶有年齡等于3600秒的forwarding類型LSR 的LSU報文通知交換機(jī)B結(jié)束輔助?;谌缜八龅挠糜谥鱾涞箵Q后持續(xù)轉(zhuǎn)發(fā)的控制方法,本實施例還提供了用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置。如圖7a所示出的一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī)中,更具體地,該控制裝置可以設(shè)置在FC交換機(jī)的備用主控板、或者該控制裝置在FC交換機(jī)的備用主控板倒換為主用主控板后被觸發(fā)。如圖7a所示的該控制裝置可以包括第一通知模塊711,在本機(jī)完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;實際應(yīng)用中,第一通知模塊711可以利用標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī),也可以利用攜帶有年齡小于3600秒的!^orwarding類型LSR的LSU報文通知鄰居FC交換機(jī);鄰居發(fā)現(xiàn)模塊712,與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系;實際應(yīng)用中,鄰居發(fā)現(xiàn)模塊712就以交互現(xiàn)有的2way HLO報文方式建立2way關(guān)系;鄰居同步模塊713,將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR同步至本機(jī)的 LSDB并響應(yīng);實際應(yīng)用中,鄰居同步模塊713接收的LSR攜帶于LSU報文中,并可以利用LSA 報文響應(yīng);第二通知模塊714,在鄰居同步模塊接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居FC交換機(jī)結(jié)束對本機(jī)的輔助;實際應(yīng)用中,第二通知模塊714可以利用標(biāo)志位為0 的HLO報文、或者攜帶有年齡等于3600秒的forwarding類型LSR的LSU報文通知鄰居FC 交換機(jī)。進(jìn)一步地,第二通知模塊714還可以觸發(fā)發(fā)生主備倒換的FC交換機(jī)重新刷新本機(jī)的LSDB中的LSR,然后觸發(fā)發(fā)生主備倒換的FC交換機(jī)利用本機(jī)的LSDB中的LSR進(jìn)行路由計算、并在路由計算完成后恢復(fù)與鄰居FC交換機(jī)之間周期性相互發(fā)送的HLO報文。如果將如圖7a中的上述各模塊與如圖如所示的鄰居狀態(tài)機(jī)相結(jié)合,則第一通知模塊711和鄰居發(fā)現(xiàn)模塊712對應(yīng)以倒換角色遷移至的hit狀態(tài),鄰居同步模塊713對應(yīng)以倒換角色遷移至的DB Exchange狀態(tài)和DB Wait狀態(tài),第二通知模塊714則對應(yīng)以倒換角色遷移至的Full狀態(tài),此時,如圖7a中的上述各模塊之間可以參照如圖如所示的鄰居狀態(tài)機(jī)的遷移條件相互觸發(fā);如果將如圖7a中的上述各模塊與如圖4b所示的鄰居狀態(tài)機(jī)相結(jié)合,則第一通知模塊711和鄰居發(fā)現(xiàn)模塊712對應(yīng)以倒換角色遷移至的hit狀態(tài),鄰居同步模塊713對應(yīng)以倒換角色遷移至的DB Exchange狀態(tài)和DB Wait狀態(tài),第二通知模塊714則對應(yīng)以倒換角色遷移至的Full狀態(tài),此時,如圖7a中的上述各模塊之間可以參照如圖4b所示的鄰居狀態(tài)機(jī)的遷移條件相互觸發(fā)。如圖7b所示出的另一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī)中,更具體地,該控制裝置可以設(shè)置在FC交換機(jī)的主用主控板、或者該控制裝置可隨時被FC交換機(jī)的備用主控板所觸發(fā)。如圖7b所示的該控制裝置可以包括第一接收模塊721,接收發(fā)生主備倒換的FC交換機(jī)所發(fā)送的表示輔助其進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的通知、并保留與其相關(guān)的LSR和路由,使本機(jī)基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作;實際應(yīng)用中, 第一接收模塊721所接收的通知可以為標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文, 也可以為攜帶有年齡小于3600秒的!^orwarding類型LSR的LSU報文;鄰居發(fā)現(xiàn)模塊722,與發(fā)生主備倒換的FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系; 實際應(yīng)用中,鄰居發(fā)現(xiàn)模塊722就以交互現(xiàn)有的2way HLO報文方式建立2way關(guān)系;鄰居同步模塊723,向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng);實際應(yīng)用中,鄰居同步模塊723可以將LSR攜帶于LSU報文中發(fā)送,并可以接收的LSA 報文為響應(yīng);第二通知模塊724,接收發(fā)生主備倒換的FC交換機(jī)在接收完所有LSR之后所發(fā)送的表示結(jié)束對其輔助的通知;實際應(yīng)用中,第二接收模塊7M所接收到的通知可以為標(biāo)志位為0的HLO報文、或者攜帶有年齡等于3600秒的forwarding類型LSR的LSU報文。如果將如圖7b中的上述各模塊與如圖如所示的鄰居狀態(tài)機(jī)相結(jié)合,則第一接收模塊721和鄰居發(fā)現(xiàn)模塊722對應(yīng)進(jìn)入輔助角色后的Full狀態(tài),鄰居同步模塊723對應(yīng)以輔助角色遷移至的DB Exchange狀態(tài)和DB ACK Wait狀態(tài),第二接收模塊7M則對應(yīng)以輔助角色遷移至的Full狀態(tài),此時,如圖7b中的上述各模塊之間可以參照如圖如所示的鄰居狀態(tài)機(jī)的遷移條件相互觸發(fā);如果將如圖7b中的上述各模塊與如圖4b所示的鄰居狀態(tài)機(jī)相結(jié)合,則第一接收模塊721對應(yīng)進(jìn)入輔助角色后的Full狀態(tài),鄰居發(fā)現(xiàn)模塊722對應(yīng)以輔助角色遷移至的 hit狀態(tài),鄰居同步模塊723對應(yīng)以輔助角色遷移至的DB Exchange狀態(tài)和DB ACK Wait 狀態(tài),第二接收模塊7M則對應(yīng)以輔助角色遷移至的Full狀態(tài),此時,如圖7b中的上述各模塊之間可以參照如圖4b所示的鄰居狀態(tài)機(jī)的遷移條件相互觸發(fā)。由于FC交換機(jī)中的主用主控板與備用主控板的并不是固定不變的,因此,無論主控板是作為主用主控板還是備用主控板,較佳地為該主控板同時設(shè)置如圖7a所示的控制裝置和如圖7b所示的控制裝置。以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換以及改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法,其特征在于,其應(yīng)用于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī),該控制方法包括al、發(fā)生主備倒換的FC交換機(jī)在完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;a2、發(fā)生主備倒換的FC交換機(jī)與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系; a3、發(fā)生主備倒換的FC交換機(jī)將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR同步至本機(jī)的LSDB ;a4、發(fā)生主備倒換的FC交換機(jī)在接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居 FC交換機(jī)結(jié)束對本機(jī)的輔助。
2.如權(quán)利要求1所述的控制方法,其特征在于,所述步驟a3中進(jìn)一步包括發(fā)生主備倒換的FC交換機(jī)針對鄰居FC交換機(jī)發(fā)送的LSR進(jìn)行響應(yīng)。
3.如權(quán)利要求1所述的控制方法,其特征在于,所述步驟a4之后,該控制方法進(jìn)一步包括a5、發(fā)生主備倒換的FC交換機(jī)利用本機(jī)的LSDB中的LSR進(jìn)行路由計算。
4.如權(quán)利要求3所述的控制方法,其特征在于,所述步驟a4之后、步驟a5之前,該控制方法進(jìn)一步包括發(fā)生主備倒換的FC交換機(jī)重新刷新本機(jī)的LSDB中的LSR。
5.如權(quán)利要求3或4所述的控制方法,其特征在于,所述步驟a5之后,該控制方法進(jìn)一步包括a6、發(fā)生主備倒換的FC交換機(jī)恢復(fù)與鄰居FC交換機(jī)之間周期性相互發(fā)送的HLO 報文。
6.如權(quán)利要求1所述的控制方法,其特征在于,在所述步驟al中發(fā)生主備倒換的FC交換機(jī)利用一標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,發(fā)生主備倒換的FC交換機(jī)利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于 3600 秒。
7.如權(quán)利要求1或6所述的控制方法,其特征在于,在所述步驟a4中發(fā)生主備倒換的FC交換機(jī)利用一標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,發(fā)生主備倒換的FC交換機(jī)利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。
8.一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法,其特征在于,其應(yīng)用于支持光纖最短路徑優(yōu)先FSPF協(xié)議的FC交換機(jī),該控制方法包括bl、本機(jī)接收發(fā)生主備倒換的FC交換機(jī)所發(fā)送的表示輔助其進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的通知、并保留與其相關(guān)的LSR和路由,使本機(jī)基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作;b2、本機(jī)與發(fā)生主備倒換的FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系; b3、本機(jī)向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng); b4、本機(jī)接收發(fā)生主備倒換的FC交換機(jī)在接收完所有LSR之后所發(fā)送的表示結(jié)束對其輔助的通知,退出對發(fā)生主備倒換的FC交換機(jī)的輔助。
9.如權(quán)利要求8所述的控制方法,其特征在于,所述步驟bl中的通知為 標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。
10.如權(quán)利要求6至8中任一項所述的控制方法,其特征在于,所述步驟b4中的通知為標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。
11.一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其特征在于,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議、主控板與接口板相分離、以及主控板可進(jìn)行主備倒換的FC交換機(jī)中, 該控制裝置包括第一通知模塊,在本機(jī)完成主備倒換之后通知鄰居FC交換機(jī)輔助本機(jī)進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)、并保留與本機(jī)相關(guān)的LSR和路由;鄰居發(fā)現(xiàn)模塊,與鄰居FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系; 鄰居同步模塊,將鄰居FC交換機(jī)發(fā)送的用于計算路由的LSR同步至本機(jī)的LSDB ; 第二通知模塊,在鄰居同步模塊接收完鄰居FC交換機(jī)發(fā)送的所有LSR之后通知鄰居FC 交換機(jī)結(jié)束對本機(jī)的輔助。
12.如權(quán)利要求11所述的控制裝置,其特征在于,鄰居同步模塊進(jìn)一步針對鄰居FC交換機(jī)發(fā)送的LSR進(jìn)行響應(yīng)。
13.如權(quán)利要求11所述的控制裝置,其特征在于,第二通知模塊進(jìn)一步觸發(fā)發(fā)生主備倒換的FC交換機(jī)重新刷新本機(jī)的LSDB中的LSR,然后利用本機(jī)的LSDB中的LSR進(jìn)行路由計算,并在路由計算完成后恢復(fù)與鄰居FC交換機(jī)之間周期性相互發(fā)送的HLO報文。
14.如權(quán)利要求11所述的控制裝置,其特征在于,第一通知模塊利用一標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,第一通知模塊利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR 的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。
15.如權(quán)利要求11或14所述的控制裝置,其特征在于,第二通知模塊利用一標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文通知鄰居FC交換機(jī);或者,第二通知模塊利用一攜帶有預(yù)設(shè)LSR的LSU報文通知鄰居FC交換機(jī),該預(yù)設(shè)LSR 的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。
16.一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制裝置,其特征在于,其設(shè)置于于支持光纖最短路徑優(yōu)先FSPF協(xié)議的FC交換機(jī)中,該控制裝置包括第一接收模塊,接收發(fā)生主備倒換的FC交換機(jī)所發(fā)送的表示輔助其進(jìn)行倒換后的持續(xù)轉(zhuǎn)發(fā)的通知、并保留與其相關(guān)的LSR和路由,使本機(jī)基于保留的與發(fā)生主備倒換的FC交換機(jī)相關(guān)的路由持續(xù)執(zhí)行經(jīng)過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作;鄰居發(fā)現(xiàn)模塊,與發(fā)生主備倒換的FC交換機(jī)完成相互發(fā)現(xiàn)、并建立2way關(guān)系; 鄰居同步模塊,向發(fā)生主備倒換的FC交換機(jī)發(fā)送用于計算路由的LSR并接收響應(yīng); 第二通知模塊,接收發(fā)生主備倒換的FC交換機(jī)在接收完所有LSR之后所發(fā)送的表示結(jié)束對其輔助的通知,使本機(jī)退出對發(fā)生主備倒換的FC交換機(jī)的輔助。
17.如權(quán)利要求16所述的控制裝置,其特征在于,第一接收模塊接收到的通知為 標(biāo)志位設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡小于3600秒。
18.如權(quán)利要求16至18中任一項所述的控制裝置,其特征在于,第二接收模塊接收到的通知為標(biāo)志位設(shè)置為表示結(jié)束輔助的預(yù)設(shè)值的HLO報文;或者,攜帶有預(yù)設(shè)LSR的LSU報文,該預(yù)設(shè)LSR的LSR類型字段設(shè)置為表示持續(xù)轉(zhuǎn)發(fā)的預(yù)設(shè)值、鏈路數(shù)量為0、年齡為3600秒。
全文摘要
本發(fā)明公開了一種用于主備倒換后持續(xù)轉(zhuǎn)發(fā)的控制方法和控制裝置。本發(fā)明在有FC交換機(jī)發(fā)生主控板的主備倒換的情況下,發(fā)生主備倒換的FC交換機(jī)通知鄰居FC交換機(jī),使鄰居FC交換機(jī)輔助發(fā)生主備倒換的FC交換機(jī)在倒換后保持持續(xù)轉(zhuǎn)發(fā)、并保留與其相關(guān)的LSR和路由,從而,由于鄰居FC交換機(jī)的輔助,因而發(fā)生主備倒換的FC交換機(jī)能夠從鄰居FC交換機(jī)獲得用于計算路由的LSR,以及,由于鄰居FC交換機(jī)保留了相關(guān)的路由、且發(fā)生主備倒換的FC交換機(jī)的接口板仍能夠正常轉(zhuǎn)發(fā),因而在主備倒換完成之后、重新計算路由完成之前確保鄰居FC交換機(jī)持續(xù)進(jìn)行通過發(fā)生主備倒換的FC交換機(jī)的轉(zhuǎn)發(fā)操作。
文檔編號H04L12/56GK102487357SQ20101057957
公開日2012年6月6日 申請日期2010年12月3日 優(yōu)先權(quán)日2010年12月3日
發(fā)明者張長君 申請人:杭州華三通信技術(shù)有限公司