两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備的制作方法

文檔序號(hào):7804241閱讀:301來源:國知局
一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備,該方法應(yīng)用于包括有一個(gè)平滑重啟設(shè)備和至少一個(gè)平滑重啟輔助設(shè)備的系統(tǒng)中,所述系統(tǒng)中的每個(gè)平滑重啟輔助設(shè)備執(zhí)行:在自身進(jìn)入平滑重啟輔助模式后,接收所述平滑重啟設(shè)備發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文;判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述平滑重啟設(shè)備發(fā)送通告響應(yīng)報(bào)文,并退出GR?Help模式。本發(fā)明有效解決了現(xiàn)有技術(shù)中平滑重啟設(shè)備的鄰居狀態(tài)比平滑重啟輔助設(shè)備先達(dá)到FULL狀態(tài),導(dǎo)致平滑重啟輔助設(shè)備提前退出GR?Help模式而引起業(yè)務(wù)中斷的問題。
【專利說明】一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),特別是一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備?!颈尘凹夹g(shù)】
[0002]平滑重啟(GR, Graceful Restart)是一種在協(xié)議重啟或主備倒換時(shí),保證轉(zhuǎn)發(fā)業(yè)務(wù)不中斷的機(jī)制。開放式最短路徑優(yōu)先(0SPF,0pen Shortest Path First)支持GR的請求注釋 RFC(Request For Comments)協(xié)議是 RFC3623。OSPF 的平滑重啟設(shè)備(GR Restarter)平滑重啟時(shí),與平滑重啟輔助設(shè)備(GR Helper)重建鄰居關(guān)系,重新獲得平滑重啟前的整個(gè)鏈路狀態(tài)數(shù)據(jù)庫(LSDB, Link State Data Base)數(shù)據(jù);從而保證轉(zhuǎn)發(fā)業(yè)務(wù)不中斷。
[0003]如圖1所示,Router A、Router B和Router C之間兩兩建立OSPF鄰居。其中,Router A 為 GR Restarter, Router B 和 Router C 都為 GR Helper。
[0004]當(dāng)Router A發(fā)生平滑重啟時(shí)進(jìn)入GR Restart模式,向所有的GR Helper發(fā)送平滑鏈路狀態(tài)通告(Grace LSA,Grace Link State Advertisement)報(bào)文,通知GR Restarter開始平滑重啟,使GR Helper (Router B和Router C)收到Grace LSA后,進(jìn)入平滑重啟輔助GR Help模式;之后,再向所有的GR Helper發(fā)送一個(gè)單向(One Way)的Hello報(bào)文,此時(shí),收到One Way的Hello報(bào)文的GR Helper將各自的鄰居狀態(tài)從FULL狀態(tài)降到Exstart狀態(tài);Router A分別與Router B和Router C重建鄰居關(guān)系,并通過數(shù)據(jù)庫描述(DD,DatabaseDescription)交互從Router B和Router C上學(xué)習(xí)到平滑重啟前所有的LSA,以避免GRRestarter平滑重啟時(shí)業(yè)務(wù)轉(zhuǎn)發(fā)中斷。
[0005]進(jìn)一步地,Router A在與所有的GR Helper (Router B和Router C)重新建立鄰居關(guān)系,且自身與所有GR Helper的鄰居狀態(tài)達(dá)到FULL狀態(tài)后,退出GR Restart模式,并向所有的GR Helper (Router B和Router C)發(fā)送通知平滑重啟結(jié)束的Grace LSA,例如Age為3600秒的Grace LSA ;各GR Helper收到該Grace LSA后,立即退出GR Help模式,并重新刷新自己的LSA’整個(gè)GR過程結(jié)束。
[0006]從上述流程可以看出,現(xiàn)有的平滑重啟實(shí)現(xiàn)方式存在以下問題:
[0007]當(dāng)GR Restarter有多個(gè)GR Helper鄰居時(shí),有可能會(huì)出現(xiàn)GR Restarter的鄰居狀態(tài)先達(dá)到FULL狀態(tài),而部分GR Helper的鄰居狀態(tài)還未達(dá)到FULL狀態(tài),這樣一來,這部分GR Helper收到Age為3600秒的Grace LSA,就立即退出GR Help模式,重新產(chǎn)生的RouterLSA中就不會(huì)描述GR Restarter這個(gè)鄰居,使得GR Restarter根據(jù)收到的Router LSA,重計(jì)算路由時(shí)無法計(jì)算出這部分GR Helper,進(jìn)而導(dǎo)致業(yè)務(wù)中斷。

【發(fā)明內(nèi)容】

[0008]有鑒于此,本發(fā)明提出了一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備,有效解決了現(xiàn)有技術(shù)中GR Restarter的鄰居狀態(tài)比GR Helper先達(dá)到FULL狀態(tài),導(dǎo)致GR Helper提前退出GR Help模式而引起業(yè)務(wù)中斷的問題。
[0009]本發(fā)明提出的技術(shù)方案是:[0010]一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法,該方法應(yīng)用于包括有一個(gè)GR Restarter和至少一個(gè)GR Helper的系統(tǒng)中,所述系統(tǒng)中的每個(gè)GR Helper執(zhí)行下述步驟:
[0011]在自身進(jìn)入GR Help模式后,接收所述GR Restarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文;
[0012]判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0013]上述方案中,所述通告報(bào)文攜帶有所述GR Restarter是否正常退出GR Restart模式的信息;
[0014]每個(gè)GR Helper在判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,還執(zhí)行下述步驟:
[0015]判斷自身接收到的通告報(bào)文中攜帶的信息是否為所述GR Restarter正常退出GRRestart模式的信息;
[0016]若是,執(zhí)行判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟;
[0017]否則,退出GR Help模式。
[0018]上述方案中,所述通告報(bào)文中攜帶的所述GR Restarter是否正常退出GR Restart模式的信息,為所述GR Restarter根據(jù)自身處于GR Restart模式階段時(shí)檢測到的拓?fù)渥兓_定的。
[0019]上述方案中,每個(gè)GR Helper還執(zhí)行下述步驟:
[0020]在判斷出自身的鄰居狀態(tài)沒有達(dá)到FULL狀態(tài)時(shí),繼續(xù)與所述GR Restarter進(jìn)行鄰居同步,直至自身的鄰居狀態(tài)達(dá)到FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0021]上述方案中,所述系統(tǒng)為OSPF系統(tǒng)。
[0022]一種GR Helper,該GR Helper應(yīng)用于包括有一個(gè)GR Restarter的系統(tǒng)中,該GRHelper 包括:
[0023]報(bào)文接收模塊,用于在所述GR Helper進(jìn)入GR Help模式后,接收所述GRRestarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文;
[0024]報(bào)文處理模塊,用于在所述報(bào)文接收模塊接收到所述通告報(bào)文后,判斷所述GRHelper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0025]上述方案中,所述通告報(bào)文攜帶有所述GR Restarter是否正常退出GR Restart模式的信息;
[0026]所述報(bào)文處理模塊,還用于在判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,判斷所述報(bào)文接收模塊接收到的通告報(bào)文中攜帶的信息是否為所述GR Restarter正常退出GR Restart模式的信息,若是,則執(zhí)行判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟;否則,退出GR Help模式。
[0027]上述方案中,所述報(bào)文接收模塊接收到的通告報(bào)文中攜帶的所述GR Restarter是否正常退出GR Restart模式的信息,為所述GR Restarter根據(jù)自身處于GR Restart模式階段時(shí)檢測到的拓?fù)渥兓_定的。
[0028]上述方案中,所述報(bào)文處理模塊,還用于在判斷出所述GR Helper的鄰居狀態(tài)沒有達(dá)到FULL狀態(tài)時(shí),繼續(xù)與所述GR Restarter進(jìn)行鄰居同步,直至GR Helper的鄰居狀態(tài)達(dá)到FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0029]上述方案中,所述GR Helper應(yīng)用的系統(tǒng)為OSPF系統(tǒng)。
[0030]綜上所述,本發(fā)明提出了一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備,在該方法中,GR Helper在進(jìn)入GR Help模式后,接收到GR Restarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文時(shí),并不立即退出GR Help模式,而是判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),才向GR Restarter反饋通告響應(yīng)報(bào)文,避免了因GR Restarter比GR Helper的鄰居狀態(tài)先達(dá)到FULL狀態(tài),導(dǎo)致GR Helper提前退出GR Help模式而引起業(yè)務(wù)中斷的問題。
【專利附圖】

【附圖說明】
[0031 ] 圖1為OSPF GR示意圖。
[0032]圖2為本發(fā)明方法的流程圖。
[0033]圖3為Grace LSA報(bào)文格式圖。
[0034]圖4為Grace LSA報(bào)文中擴(kuò)展的TLV格式圖。
[0035]圖5為方法實(shí)施例一的流程圖。
[0036]圖6為方法實(shí)施例二的流程圖。
[0037]圖7為本發(fā)明實(shí)施例中GR Helper的結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0038]在現(xiàn)有的平滑重啟實(shí)現(xiàn)方式中,尤其是在GR Restarter有多個(gè)GR Helper鄰居時(shí),可能會(huì)出現(xiàn)GR Restarter的鄰居狀態(tài)先達(dá)到FULL狀態(tài),而部分GR Helper的鄰居狀態(tài)還未達(dá)到FULL狀態(tài)的情況,這樣就容易導(dǎo)致平滑重啟過程中業(yè)務(wù)的中斷。
[0039]下面結(jié)合圖1中的OSPF網(wǎng)絡(luò)結(jié)構(gòu)圖,列舉兩種GR Restarter比GR Helper的鄰居狀態(tài)先達(dá)到FULL狀態(tài)的場景:
[0040](I) JgSRouter B與Router A的鄰居狀態(tài)先達(dá)到FULL狀態(tài),Router B引入了新的路由,此時(shí)Router B會(huì)向Router A產(chǎn)生大量的新LSA ;而Router A學(xué)到這些LSA后需要泛洪給Router C,這就導(dǎo)致Router C因處理LSA,可能會(huì)晚于Router A達(dá)到FULL狀態(tài),即還未達(dá)到FULL狀態(tài)就退出了 GR Help狀態(tài),進(jìn)而導(dǎo)致業(yè)務(wù)中斷。
[0041](2) JiMSRouter B與Router A的鄰居狀態(tài)先達(dá)到FULL狀態(tài);此時(shí)Router B退出GR Help狀態(tài),需要刷新自己產(chǎn)生的所有LSA,這些刷新的LSA需要通過Router A泛洪給Router C,同樣導(dǎo)致Router C因處理LSA,可能會(huì)晚于Router A達(dá)到FULL狀態(tài),即還未達(dá)到FULL狀態(tài)就退出了 GR Help模式,進(jìn)而導(dǎo)致業(yè)務(wù)中斷。
[0042]基于上述問題,本發(fā)明提出了一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法及設(shè)備,在該方法中,GR Helper在接收到GR Restarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文后,并不立即退出GR Help模式,而是判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),才向GR Restarter反饋通告響應(yīng)報(bào)文,避免了因GR Restarter比GR Helper的鄰居狀態(tài)先達(dá)到FULL狀態(tài),導(dǎo)致GR Helper提前退出GR Help模式而引起業(yè)務(wù)中斷的問題。
[0043]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)表達(dá)的更加清楚明白,下面結(jié)合附圖及具體實(shí)施例對本發(fā)明再作進(jìn)一步詳細(xì)的說明。
[0044]本發(fā)明一個(gè)實(shí)施例的技術(shù)方案是:
[0045]如圖2所示,對于OSPF系統(tǒng)中的每個(gè)GR Helper而言,均執(zhí)行下述步驟:
[0046]步驟201:在自身進(jìn)入GR Help模式后,接收GR Restarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文。
[0047]本步驟中,對于每個(gè)GR Helper來說,是在接收到所述GR Restarter進(jìn)入平滑重啟GR Restart模式后發(fā)送的平滑鏈路狀態(tài)通告報(bào)文之后,進(jìn)入GR Help模式的。
[0048]另外,本步驟中的通告報(bào)文是所述GR Restarter與自身重新建立鄰居關(guān)系,且退出GR Restart模式后發(fā)送的。
[0049]步驟202:判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),若是,執(zhí)行步驟203 ;否則,執(zhí)行步驟204。
[0050]步驟203:向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0051]步驟204:繼續(xù)與GR Restarter進(jìn)行鄰居同步,直到自身的鄰居狀態(tài)為FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0052]也就是說,GR Restarter學(xué)習(xí)到GR Helper上平滑重啟前的所有LSA后,GRRestarter與該GR Helper建立鄰居關(guān)系,通常情況下,GR Restarter在自身的所有鄰居狀態(tài)達(dá)到FULL狀態(tài)時(shí),會(huì)退出GR Restart模式,同時(shí)還發(fā)送一個(gè)通告平滑重啟結(jié)束的通告報(bào)文給所有GR Helper。
[0053]這樣,每個(gè)GR Helper接收到所述通告平滑重啟結(jié)束的通告報(bào)文后,首先會(huì)判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),由于GR Helper進(jìn)入GR Help模式后是Exstart狀態(tài),當(dāng)其與GR Restarter成功建立鄰居關(guān)系時(shí)才會(huì)由Exstart狀態(tài)進(jìn)入FULL狀態(tài);如果GRHelper的鄰居狀態(tài)達(dá)到FULL狀態(tài),則發(fā)送一個(gè)通告響應(yīng)報(bào)文給GR Restarter,并退出GRHelp模式,以保證業(yè)務(wù)的正常運(yùn)行。
[0054]如果GR Helper的鄰居狀態(tài)還處在Exstart狀態(tài),則不回復(fù)通告響應(yīng)報(bào)文,繼續(xù)與GR Restarter進(jìn)行鄰居同步,直到自身的鄰居狀態(tài)為FULL狀態(tài),才向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,同時(shí),退出GR Help模式,以保證業(yè)務(wù)的正常運(yùn)行。在這里,所述通告響應(yīng)報(bào)文例如可以是ACK應(yīng)答報(bào)文。
[0055]在GR Helper不回復(fù)通告響應(yīng)報(bào)文,繼續(xù)與GR Restarter進(jìn)行鄰居同步,直到自身的鄰居狀態(tài)為FULL狀態(tài)這段時(shí)間內(nèi),GR Restarter—直重傳所述通告平滑重啟結(jié)束的通告報(bào)文給該GR Helper,直到收到通告響應(yīng)報(bào)文。
[0056]進(jìn)一步地,在本實(shí)施例中,對于GR Restarter來說,大多數(shù)情況下都是正常退出GRRestart模式的,但也不排除異常退出GR Restart模式的情況,基于此,為了更好地保證業(yè)務(wù)的正常運(yùn)行,上述步驟201中的通告報(bào)文中還可以攜帶有所述GR Restarter是否正常退出GR Restart模式的信息;
[0057]在這種情況下,每個(gè)GR Helper在接收到所述通告報(bào)文,判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,還執(zhí)行下述步驟:
[0058]判斷自身接收到的通告報(bào)文中攜帶的信息是否為所述GR Restarter正常退出GRRestart模式的信息,;
[0059]若是,執(zhí)行判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟;[0060]否則,退出GR Help模式。
[0061]具體地,所述GR Restarter是否正常退出GR Restart模式的信息具體可以攜帶于所述通告報(bào)文新添加的類型/長度/值(TLV, Type/Length/Value)類型中,用來表示GRRestarter是正常退出GR Restart模式還是異常退出GR Restart模式。該新添加的TLV類型是GR Restarter根據(jù)自身退出GR Restart模式的原因添加在通告報(bào)文中的一個(gè)標(biāo)識(shí),例如,如果在GR Restart期間GR Restarter檢測到拓?fù)渥兓?如接口 UP/D0WN變化等),則為異常退出GR Restart模式,如果在GR Restart期間GR Restarter沒有檢測到拓?fù)渥兓宜械泥従訝顟B(tài)均達(dá)到FULL狀態(tài),使得整個(gè)GR Restart過程順利完成,則為正常退出 GR Restart 模式。
[0062]所述通告報(bào)文具體可以是Age為3600秒的Grace LSA報(bào)文,格式如圖3所示,支持TLV擴(kuò)展。新添加的TLV類型的格式為圖4的形式:
[0063]Type字段現(xiàn)有技術(shù)中只用了 1、2、3三種類型,本發(fā)明可以設(shè)計(jì)為除1、2、3之外的任一個(gè)(例如Type的值為4);
[0064]Length 字段為 I ;
[0065]Value字段為兩種不同取值,一個(gè)表示GR Restarter正常退出GR Restart模式,另一個(gè)表示GR Restarter異常退出GR Restart模式。例如用O和I表示,其中O表示GRRestarter正常退出GR Restart模式,I表不GR Restarter異常退出GR Restart模式。
[0066]如果GR Restarter是異常退出GR Restart模式,貝U無論GR Helper自身是否達(dá)到FULL狀態(tài)都會(huì)立即退出GR Help模式;如果GR Restarter是正常退出GR Restart模式,則根據(jù)前述方法,GR Helper進(jìn)一步判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)再作進(jìn)一步處理。
[0067]下面以實(shí)施例對本發(fā)明技術(shù)方案作進(jìn)一步說明。
[0068]方法實(shí)施例一:
[0069]本實(shí)施例以圖1中的OSPF GR為例對本發(fā)明技術(shù)方案進(jìn)行說明,如圖1所示,路由器A、路由器B、路由器C之間兩兩建立OSPF鄰居,其中,路由器A為GR Restarter,路由器B和路由器C為GR Helper,圖5為本實(shí)施例的流程圖,包括以下步驟:
[0070]步驟501:路由器A發(fā)生平滑重啟,進(jìn)入GR Restart模式,分別發(fā)送Grace LSA報(bào)文給各GR Helper設(shè)備。
[0071]本實(shí)施例中,路由器B和路由器C為GR Helper,路由器A分別發(fā)送Grace LSA報(bào)文給路由器B和路由器C,通知GR Restarter開始平滑重啟。
[0072]步驟502:GR Helper接收路由器A發(fā)送的Grace LSA報(bào)文,進(jìn)入GR Help模式。
[0073]本步驟中,路由器B和路由器C分別接收路由器A發(fā)送的Grace LSA報(bào)文,分別進(jìn)A GR Help 模式。
[0074]步驟503:路由器A平滑重啟后,發(fā)送一個(gè)one way的Hello報(bào)文給各GR Helper。
[0075]步驟504:GR Helper接收路由器A發(fā)送的one way的Hello報(bào)文,將自身的鄰居狀態(tài)從FULL狀態(tài)降到Exstart狀態(tài)。
[0076]正常情況下,GR Restarter與GR Helper之間成功建立鄰居關(guān)系后,GR Restarter與所有GR Helper的鄰居狀態(tài)是處于FULL狀態(tài)的;平滑重啟時(shí),GR Helper接收到one way的Hello報(bào)文后會(huì)將自身的鄰居狀態(tài)由FULL狀態(tài)降到Exstart狀態(tài)。[0077]步驟505:路由器A通過DD交互與GR Helper重新建立鄰居關(guān)系。
[0078]本步驟中,路由器A通過DD交互與GR Helper重新建立鄰居關(guān)系,路由器A通過DD交互學(xué)習(xí)GR Helper平滑重啟前的所有LSA,GR Helper通過路由器A學(xué)習(xí)其他GR Helper新產(chǎn)生的LSA,路由器A與GR Helper均進(jìn)行鄰居同步,當(dāng)路由器A學(xué)習(xí)到所有GR Helper上平滑重啟前的LSA后,路由器A的所有鄰居狀態(tài)為FULL狀態(tài);當(dāng)GR Helper鄰居同步結(jié)束后,鄰居狀態(tài)由Exstart狀態(tài)進(jìn)入FULL狀態(tài)。
[0079]步驟506:路由器A發(fā)送一個(gè)Age為3600秒的Grace LSA報(bào)文給所有GR Helper,通知各GR Helper GR結(jié)束。
[0080]步驟507:GR Helper接收路由器A發(fā)送的Age為3600秒的Grace LSA報(bào)文。
[0081]步驟508:GR Helper判斷自身的鄰居狀態(tài)是否已經(jīng)達(dá)到FULL狀態(tài),如果是,執(zhí)行步驟509,否則執(zhí)行步驟510。
[0082]在本實(shí)施例中,之所以在步驟507之后執(zhí)行步驟508,主要是為了保證平滑重啟階段業(yè)務(wù)不中斷,具體原因?yàn)?在步驟505中,如果GR Helper結(jié)束鄰居同步,則鄰居狀態(tài)為FULL狀態(tài),在這種情況下,GR Helper退出GR Helper模式不會(huì)影響業(yè)務(wù)的進(jìn)行;反之,如果GR Helper還未執(zhí)行完鄰居同步,其鄰居狀態(tài)仍為Exstart狀態(tài),在這種情況下,GR Helper退出GR Helper模式的話,就會(huì)導(dǎo)致業(yè)務(wù)中斷。
[0083]步驟509:GR Helper發(fā)送ACK應(yīng)答報(bào)文給路由器A,退出GR Help模式。
[0084]基于步驟508的判斷結(jié)果,GR Helper鄰居狀態(tài)已經(jīng)達(dá)到FULL狀態(tài),完成鄰居同步,則發(fā)送一個(gè)ACK應(yīng)答報(bào)文給路由器A,同時(shí)退出GR Help模式。
[0085]步驟510:GR Helper不向路由器A發(fā)送ACK應(yīng)答報(bào)文,繼續(xù)進(jìn)行鄰居同步,直到鄰居狀態(tài)為FULL狀態(tài),發(fā)送ACK應(yīng)答報(bào)文給路由器A,退出GR Help模式。
[0086]基于步驟508的判斷結(jié)果,GR Helper還未結(jié)束鄰居同步,自身狀態(tài)仍為Exstart狀態(tài),則接收到路由器A發(fā)送的Age為3600秒的Grace LSA報(bào)文后,不向路由器A作出回應(yīng),繼續(xù)執(zhí)行鄰居同步,直至同步結(jié)束進(jìn)入FULL狀態(tài)。
[0087]GR Helper繼續(xù)進(jìn)行鄰居同步的過程中,路由器A由于未收到GR Helper的ACK應(yīng)答,會(huì)重傳上述Age為3600秒的Grace LSA報(bào)文,直至收到GR Helper的ACK應(yīng)答。
[0088]方法實(shí)施例二:
[0089]仍以圖1中的OSPF GR為例對本發(fā)明技術(shù)方案作進(jìn)一步說明。在方法實(shí)施例一中,GR Helper接收路由器A發(fā)送的Age為3600秒的Grace LSA報(bào)文后,均以GR Restarter正常退出GR Restart模式為前提進(jìn)行相應(yīng)處理,而實(shí)際應(yīng)用中,GR Restarter還存在異常退出GR的情況,例如在整個(gè)GR Restart期間,GR Restarter檢測到拓?fù)渥兓?例如接口 up/down變化等),此時(shí)會(huì)觸發(fā)GR Restarter異常退出GR Restart模式。本實(shí)施例則從這一角度對本發(fā)明技術(shù)方案作進(jìn)一步說明。
[0090]本實(shí)施例采用實(shí)施例一中的設(shè)置,路由器A、路由器B、路由器C之間兩兩建立OSPF鄰居,其中,路由器A為GR Restarter,路由器B和路由器C為GR Helper。假設(shè)GR期間GRRestarter已經(jīng)退出GR Restart模式,圖6為本實(shí)施例的流程圖,包括以下步驟:
[0091]步驟601:路由器A發(fā)送一個(gè)Age為3600秒的Grace LSA報(bào)文給所有GR Helper,通知各GR Helper平滑重啟結(jié)束,此Grace LSA報(bào)文攜帶路由器A退出GR Restart模式的原因。[0092]本步驟中,路由器A發(fā)送的Age為3600秒的Grace LSA報(bào)文添加一個(gè)新的TLV類型,在該類型中攜帶路由器A退出GR Restart模式的原因,即正常退出GR Restart模式,還是異常退出GR Restart模式。
[0093]路由器A判斷自身是否正常退出GR Restart模式的方法為:如果整個(gè)GR Restart期間,GR Restarter檢測到拓?fù)渥兓?例如接口 up/down變化等),此時(shí)會(huì)觸發(fā)異常退出GRRestart 模式;如果 GR Restarter 同步了所有 GR Helper 上的 LSA,即 GR Restarter 針對每一個(gè)GR Helper鄰居的鄰居狀態(tài)都達(dá)到了 FULL狀態(tài),則觸發(fā)正常退出GR Restart模式。
[0094]步驟602:GR Helper接收路由器A發(fā)送的Age為3600秒的Grace LSA報(bào)文。
[0095]步驟603:GR Helper根據(jù)所述Grace LSA報(bào)文中新的TLV類型判斷路由器A是正常退出GR Restart模式還是異常退出GR Restart模式,如果是異常退出,執(zhí)行步驟604,否則執(zhí)行步驟605。
[0096]步驟604:GR Helper 立即退出 GR Help 模式。
[0097]基于步驟603的判斷結(jié)果,路由器A是異常退出GR Restart模式的,此時(shí)GRHelper無論是否達(dá)到FULL狀態(tài)都會(huì)立即退出GR Help模式。
[0098]步驟605:GR Helper判斷自身的鄰居狀態(tài)是否已經(jīng)達(dá)到FULL狀態(tài),如果是,執(zhí)行步驟606,否則執(zhí)行步驟607。
[0099]基于步驟603的判斷結(jié)果,路由器A是正常退出GR Restart模式的,此時(shí)GRHelper需要進(jìn)一步判斷自身的鄰居狀態(tài)是否達(dá)到了 FULL狀態(tài),根據(jù)不同情況進(jìn)行不同處理。
[0100]步驟606?607與步驟509?510相同,在此不再贅述。
[0101]針對上述方法,本發(fā)明還公開一種平滑重啟輔助設(shè)備GR Helper,該GR Helper應(yīng)用于包括有一個(gè)GR Restarter的系統(tǒng)中,該GR Helper包括:
[0102]報(bào)文接收模塊701,用于在所述GR Helper進(jìn)入GR Help模式后,接收所述GRRestarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文;
[0103]報(bào)文處理模塊702,用于在所述報(bào)文接收模塊701接收到所述通告報(bào)文后,判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
[0104]報(bào)文接收模塊701接收到的所述通告報(bào)文攜帶有所述GR Restarter是否正常退出GR Restart模式的信息;
[0105]所述報(bào)文處理模塊702,還用于在判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,判斷所述報(bào)文接收模塊701接收到的通告報(bào)文中攜帶的信息是否為所述GRRestarter正常退出GR Restart模式的信息,若是,則執(zhí)行判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟;否則,退出GR Help模式。
[0106]所述報(bào)文接收模塊701接收到的通告報(bào)文中攜帶的所述GR Restarter是否正常退出GR Restart模式的信息,為所述GR Restarter根據(jù)自身處于GR Restart模式階段時(shí)檢測到的拓?fù)渥兓_定的。
[0107]所述報(bào)文處理模塊702,還用于在判斷出所述GR Helper的鄰居狀態(tài)沒有達(dá)到FULL狀態(tài)時(shí),繼續(xù)與所述GR Restarter進(jìn)行鄰居同步,直至GR Helper的鄰居狀態(tài)達(dá)到FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。[0108]所述GR Helper應(yīng)用的系統(tǒng)為OSPF系統(tǒng)。
[0109]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
【權(quán)利要求】
1.一種避免平滑重啟時(shí)業(yè)務(wù)中斷的方法,其特征在于,該方法應(yīng)用于包括有一個(gè)平滑重啟設(shè)備GR Restarter和至少一個(gè)平滑重啟輔助設(shè)備GR Helper的系統(tǒng)中,所述系統(tǒng)中的每個(gè)GR Helper執(zhí)行下述步驟: 在自身進(jìn)入平滑重啟輔助GR Help模式后,接收所述GR Restarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文; 判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通告報(bào)文攜帶有所述GRRestarter是否正常退出GR Restart模式的信息; 每個(gè)GR Helper在判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,還執(zhí)行下述步驟:判斷自身接收到的通告報(bào)文中攜帶的信息是否為所述GR Restarter正常退出GRRestart模式的信息; 若是,執(zhí)行判斷自身的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟; 否則,退出GR Help模式。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述通告報(bào)文中攜帶的所述GRRestarter是否正常退出GR Restart模式的信息,為所述GR Restarter根據(jù)自身處于GRRestart模式階段時(shí)檢測到的拓?fù)渥兓_定的。
4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的方法,其特征在于,每個(gè)GRHelper還執(zhí)行下述步驟: 在判斷出自身的鄰居狀態(tài)沒有達(dá)到FULL狀態(tài)時(shí),繼續(xù)與所述GR Restarter進(jìn)行鄰居同步,直至自身的鄰居狀態(tài)達(dá)到FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述系統(tǒng)為開放式最短路徑優(yōu)先OSPF系統(tǒng)。
6.一種平滑重啟輔助設(shè)備GR Helper,其特征在于,所述GR Helper應(yīng)用于包括有一個(gè)平滑重啟設(shè)備GR Restarter的系統(tǒng)中,所述GR Helper包括: 報(bào)文接收模塊,用于在所述GR Helper進(jìn)入平滑重啟輔助GR Help模式后,接收所述GRRestarter發(fā)送的通告平滑重啟結(jié)束的通告報(bào)文; 報(bào)文處理模塊,用于在所述報(bào)文接收模塊接收到所述通告報(bào)文后,判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài),在判斷為是時(shí),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
7.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述通告報(bào)文攜帶有所述GRRestarter是否正常退出GR Restart模式的信息; 所述報(bào)文處理模塊,還用于在判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)之前,判斷所述報(bào)文接收模塊接收到的通告報(bào)文中攜帶的信息是否為所述GR Restarter正常退出GR Restart模式的信息,若是,則執(zhí)行判斷所述GR Helper的鄰居狀態(tài)是否達(dá)到FULL狀態(tài)的步驟;否則,退出GR Help模式。
8.根據(jù)權(quán)利要求7所述的設(shè)備,其特征在于,所述報(bào)文接收模塊接收到的通告報(bào)文中攜帶的所述GR Restarter是否正常退出GR Restart模式的信息,為所述GR Restarter根據(jù)自身處于GR Restart模式階段時(shí)檢測到的拓?fù)渥兓_定的。
9.根據(jù)權(quán)利要求6-8中任一項(xiàng)所述的設(shè)備,其特征在于,所述報(bào)文處理模塊,還用于在判斷出所述GR Helper的鄰居狀態(tài)沒有達(dá)到FULL狀態(tài)時(shí),繼續(xù)與所述GR Restarter進(jìn)行鄰居同步,直至GR Helper的鄰居狀態(tài)達(dá)到FULL狀態(tài),向所述GR Restarter發(fā)送通告響應(yīng)報(bào)文,并退出GR Help模式。
10.根據(jù)權(quán)利要求6所述的設(shè)備,其特征在于,所述GRHelper應(yīng)用的系統(tǒng)為開放式最短路徑優(yōu)先OSPF 系統(tǒng)。
【文檔編號(hào)】H04L12/703GK103973562SQ201410215010
【公開日】2014年8月6日 申請日期:2014年5月20日 優(yōu)先權(quán)日:2014年5月20日
【發(fā)明者】廖俊云, 羅國兵, 章海鋒 申請人:杭州華三通信技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1
辽宁省| 遂溪县| 孝昌县| 呼玛县| 青田县| 读书| 阳东县| 舟曲县| 鄯善县| 伊川县| 玉门市| 滦平县| 犍为县| 泽库县| 同仁县| 三江| 高碑店市| 卫辉市| 南涧| 定日县| 新巴尔虎右旗| 年辖:市辖区| 新竹县| 宜兰县| 磐石市| 江北区| 迁西县| 浦县| 淮安市| 浦城县| 元谋县| 舒城县| 忻州市| 来凤县| 清原| 丰县| 广南县| 吴江市| 新绛县| 抚州市| 镇江市|