專利名稱:避免路由設(shè)備頻繁切換狀態(tài)的方法和一種路由設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),特別是涉及一種避免路由設(shè)備頻繁切換狀態(tài)的方法和一種路由設(shè)備。
背景技術(shù):
為了向用戶終端提供可靠的業(yè)務(wù)保護,IETF制定了虛擬路由器冗余協(xié)議(VRRP)技術(shù)。VRRP技術(shù)應(yīng)用于作為靜態(tài)配置缺省網(wǎng)關(guān)上的第三層交換機和路由器上,為依賴缺省網(wǎng)關(guān)進行廣域網(wǎng)接入或訪問其它局域網(wǎng)網(wǎng)域的終端系統(tǒng)提供了更快、更有效的冗余容錯能力。目前,VRRP技術(shù)已不再僅僅局限于路由器上的使用,而是逐步引入到大規(guī)模的交換網(wǎng),以實現(xiàn)高可靠性的第三層交換的冗余備份。
當(dāng)采用VRRP技術(shù)時,網(wǎng)絡(luò)側(cè)的多個路由設(shè)備組成一個虛擬的設(shè)備組,稱之為VRRP備份組。圖1是VRRP備份組的示意圖。參見圖1,在VRRP備份組內(nèi)只有一個路由設(shè)備作為主用路由設(shè)備,其它路由設(shè)備則作為備用路由設(shè)備,并且,在任何時刻,只有主用路由設(shè)備負責(zé)與網(wǎng)絡(luò)中的其它設(shè)備進行數(shù)據(jù)交互。
在VRRP備份組內(nèi)部,當(dāng)主用路由設(shè)備正常工作時,主用路由設(shè)備會周期性地向備用路由設(shè)備發(fā)送一個正常通知報文即VRRP報文。這樣,如果VRRP備份組內(nèi)的備用路由設(shè)備在一個報文接收周期內(nèi)接收到VRRP報文,則可確定主用路由設(shè)備未發(fā)生故障;而如果VRRP備份組內(nèi)的備用路由設(shè)備在一個報文接收周期內(nèi)未接收到VRRP報文,則可確定主用路由設(shè)備發(fā)生故障,此時,各備用路由設(shè)備首先切換自己的狀態(tài),即,將自己切換為主用狀態(tài),然后狀態(tài)切換后的各個備用路由設(shè)備分別根據(jù)各自優(yōu)先級的大小來重新確定一個主用路由設(shè)備,由該重新確定的主用路由設(shè)備負責(zé)與網(wǎng)絡(luò)中的其它設(shè)備進行數(shù)據(jù)交互。
目前,在主用路由設(shè)備未發(fā)生故障時,由于各種原因,經(jīng)常會出現(xiàn)備用路由設(shè)備無法在一個報文接收周期內(nèi)接收到主用路由設(shè)備發(fā)來的VRRP報文。比如由于網(wǎng)絡(luò)中突發(fā)大流量數(shù)據(jù)報文使得網(wǎng)絡(luò)擁塞,或者,由于備用路由設(shè)備本身處理能力較差,不支持嚴格報文分類及針對分類后的報文進行帶寬預(yù)留等原因,使得備用路由設(shè)備無法在一個報文接收周期內(nèi)接收到主用路由設(shè)備發(fā)來的VRRP報文。
然而,根據(jù)上述VRRP備份組的工作原理,一旦備用路由設(shè)備無法在一個報文接收周期內(nèi)接收到主用路由設(shè)備發(fā)來的VRRP報文,該備用路由設(shè)備則會切換自身的狀態(tài),將自身切換為主用狀態(tài),而由于初始的主用路由設(shè)備并未發(fā)生故障,在后續(xù)時間,狀態(tài)切換后的備用路由設(shè)備則會接收到VRRP報文,則必須再次切換自身的狀態(tài),重新將自身切換為備用狀態(tài),往往導(dǎo)致備用路由設(shè)備在短時間內(nèi)頻繁地進行狀態(tài)切換。比如,主用路由設(shè)備每隔1秒發(fā)送一次VRRP報文,備用路由設(shè)備的報文接收周期為4.5秒(即在4.5秒內(nèi)未接收到VRRP報文就進行狀態(tài)切換),由于網(wǎng)絡(luò)擁塞,備用路由設(shè)備實際每5秒才能接收到VRRP報文,這樣,在計時到達4.5秒時,由于備用路由設(shè)備無法接收到VRRP報文,備用路由設(shè)備就會發(fā)生一次狀態(tài)切換,將自身切換為主用狀態(tài),在計時到達5秒時,由于該狀態(tài)切換后的備用路由設(shè)備又接收到了VRRP報文,所以又發(fā)生一次狀態(tài)切換,將自身切換回備用狀態(tài),可見,每5秒備用路由設(shè)備便會發(fā)生兩次狀態(tài)切換,因此,使得備用路由設(shè)備在短時間內(nèi)頻繁地進行狀態(tài)切換,降低了備用路由設(shè)備的穩(wěn)定性。
為了避免備用路由設(shè)備頻繁地切換狀態(tài),目前的解決方法為管理人員在發(fā)現(xiàn)備用路由設(shè)備頻繁地切換狀態(tài)后,手動修改報文接收周期,使該報文接收周期的值變大,從而使得備用路由設(shè)備等待VRRP報文的時間增加,延長備用路由設(shè)備進行狀態(tài)切換的時間,降低備用路由設(shè)備進行狀態(tài)切換的頻率;或者,管理人員在發(fā)現(xiàn)備用路由設(shè)備頻繁地切換狀態(tài)后,為備用路由設(shè)備設(shè)置較長的延遲時間,使得備用路由設(shè)備無法在一個報文接收周期內(nèi)接收到主用路由設(shè)備發(fā)來的VRRP報文后,延遲較長的時間后再進行狀態(tài)切換,從而延長備用路由設(shè)備進行狀態(tài)切換的時間,降低備用路由設(shè)備進行狀態(tài)切換的頻率。
由以上描述可以看出,在現(xiàn)有技術(shù)中,必須由管理人員進行手動配置,才能避免備用路由設(shè)備頻繁地進行狀態(tài)切換,系統(tǒng)卻無法自動實現(xiàn),因此,大大降低了系統(tǒng)的靈活性和實用性,并增加了管理人員的維護工作量。
另外,在現(xiàn)有技術(shù)中,在備用路由設(shè)備頻繁切換狀態(tài)時,管理人員往往無法及時發(fā)現(xiàn),往往是網(wǎng)絡(luò)事故發(fā)生了很久,網(wǎng)絡(luò)管理人員才可發(fā)現(xiàn)然后才能進行手動配置,因此,無法有效地避免備用路由設(shè)備頻繁進行狀態(tài)切換。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種避免路由設(shè)備頻繁切換狀態(tài)的方法,本發(fā)明的另一目的在于提供一種路由設(shè)備,保證能夠由備用路由設(shè)備自動實現(xiàn)避免頻繁狀態(tài)切換的過程,提高系統(tǒng)的靈活性和實用性。
為了達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的一種避免路由設(shè)備頻繁切換狀態(tài)的方法,該方法包括備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常,如果是,則增加狀態(tài)切換的時間長度,并根據(jù)該增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
所述備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常的步驟包括備用路由設(shè)備判斷在預(yù)先設(shè)定的時間長度內(nèi),自身已進行狀態(tài)切換的次數(shù)是否大于預(yù)先設(shè)置的切換次數(shù)閾值,如果大于,則確定自身狀態(tài)切換出現(xiàn)異常。
所述增加狀態(tài)切換的時間長度的步驟包括延長報文接收周期;所述根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換的步驟包括備用路由設(shè)備在延長后的報文接收周期內(nèi)未接收到主用路由設(shè)備發(fā)來的正常通知報文后,執(zhí)行狀態(tài)切換。
所述延長報文接收周期的步驟包括在計算報文接收周期的公式中增加調(diào)節(jié)因子,并增加該調(diào)節(jié)因子的當(dāng)前值。
在延長報文接收周期之后,該方法進一步包括備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常,如果是,則減小所述調(diào)節(jié)因子的當(dāng)前值,根據(jù)減小后的調(diào)節(jié)因子的當(dāng)前值得到報文接收周期,并根據(jù)該所得的報文接收周期執(zhí)行狀態(tài)切換,其中,減小后的調(diào)節(jié)因子的當(dāng)前值大于或等于其初始值。
所述增加狀態(tài)切換的時間長度的步驟包括增加狀態(tài)切換的延遲時間S;所述根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換的步驟包括備用路由設(shè)備在報文接收周期內(nèi)未接收到正常通知報文后,等待狀態(tài)切換的延遲時間S后,執(zhí)行狀態(tài)切換。
在增加狀態(tài)切換的時間長度之后,該方法進一步包括備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常,如果是,則減小或去除所述狀態(tài)切換延遲時間S的當(dāng)前值,根據(jù)減小或去除的狀態(tài)切換延遲時間S執(zhí)行狀態(tài)切換。
所述備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常的步驟包括備用路由設(shè)備判斷在預(yù)先設(shè)定的時間長度內(nèi),在每一個初始的報文接收周期中是否均可接收到正常通知報文,如果均可接收到,則確定自身接收正常通知報文的頻率已恢復(fù)正常。
一種路由設(shè)備,該路由設(shè)備包括控制單元、計數(shù)器和計時器,其中,控制單元,用于在路由設(shè)備進行狀態(tài)切換時,將計數(shù)器的值加1,并在監(jiān)測到計時器計時到達預(yù)先設(shè)置的第一時間長度后,判斷計數(shù)器在該第一時間長度內(nèi)所計數(shù)值是否大于預(yù)先設(shè)置的切換次數(shù)閾值,在判斷出大于后,增加狀態(tài)切換的時間長度,根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
所述控制單元,進一步用于監(jiān)測在計時器計時到達預(yù)先設(shè)置的第二時間長度的過程中,在每一個初始的報文接收周期內(nèi)是否均可接收到正常通知報文,在確定均可接收到后,減少狀態(tài)切換時間長度,根據(jù)該減少后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
由此可見,本發(fā)明具有以下優(yōu)點1、備用路由設(shè)備在監(jiān)測到自身頻繁進行了狀態(tài)切換后,能夠自動延長狀態(tài)切換的時間,從而自動避免了頻繁進行狀態(tài)切換,大大提高了系統(tǒng)的靈活性和實用性,并降低了管理人員的維護工作量。
2、在本發(fā)明中,由備用路由設(shè)備自己監(jiān)測是否頻繁進行狀態(tài)切換并采用相應(yīng)處理措施,因此,可以保證備用路由設(shè)備及時發(fā)現(xiàn)頻繁狀態(tài)切換的情況,并及時進行后續(xù)自動延長狀態(tài)切換時間的處理,從而有效地避免了備用路由設(shè)備頻繁地進行狀態(tài)切換,大大提高了備用路由設(shè)備的穩(wěn)定性。
3、在本發(fā)明中,備用路由設(shè)備通過一系列軟件處理過程即可自動實現(xiàn)避免頻繁狀態(tài)切換,而對備用路由設(shè)備的硬件結(jié)構(gòu)無需進行任何改動,因此,節(jié)約了硬件成本,并使得本發(fā)明易于實現(xiàn)。
圖1是VRRP備份組的示意圖。
圖2是在本發(fā)明中路由設(shè)備的內(nèi)部結(jié)構(gòu)示意圖。
圖3是在本發(fā)明中實現(xiàn)避免路由設(shè)備頻繁切換狀態(tài)的流程圖。
具體實施例方式
本發(fā)明提出了一種避免路由設(shè)備頻繁切換狀態(tài)的方法,其核心思想是備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常,如果是,則增加狀態(tài)切換的時間長度,并根據(jù)該增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
其中,備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常的方式可以是備用路由設(shè)備判斷在一個設(shè)定時間長度內(nèi)自身已進行的狀態(tài)切換次數(shù)是否大于預(yù)先設(shè)置的切換次數(shù)閾值,如果是,則確定自身已頻繁地進行了狀態(tài)切換。
另外,所述的增加狀態(tài)切換的時間長度可以通過多種方式來實現(xiàn),比如,通過延長報文接收周期來實現(xiàn),或通過在報文接收周期之外增加一個狀態(tài)切換的延遲時間來實現(xiàn)等。
另外,判斷在設(shè)定時間長度內(nèi)自身已進行的狀態(tài)切換次數(shù)是否大于預(yù)先設(shè)置的次數(shù)閾值可以通過在備用路由設(shè)備中設(shè)置計數(shù)器和計時器來實現(xiàn)。
相應(yīng)的,本發(fā)明還提出了一種路由設(shè)備。圖2是在本發(fā)明中路由設(shè)備的內(nèi)部結(jié)構(gòu)示意圖。參見圖2,在本發(fā)明中,備份組內(nèi)路由設(shè)備的內(nèi)部結(jié)構(gòu)可以包括控制單元、計數(shù)器和計時器,其中,控制單元,在路由設(shè)備進行狀態(tài)切換時,將計數(shù)器的值加1,并在監(jiān)測到計時器計時到達預(yù)先設(shè)置的第一時間長度后,判斷計數(shù)器的當(dāng)前值是否大于預(yù)先設(shè)置的切換次數(shù)閾值,在判斷出大于后,增加狀態(tài)切換的時間長度,根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
需要說明的是,本發(fā)明的技術(shù)方案不僅可以應(yīng)用于采用VRRP協(xié)議的VRRP備份組,而且還可以應(yīng)用于采用其他協(xié)議的備份組。
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖及具體實施例對本發(fā)明作進一步地詳細描述。
以下通過將本發(fā)明的技術(shù)方應(yīng)用于采用VRRP協(xié)議的VRRP備份組為例,來詳細說明本發(fā)明的實現(xiàn)過程。
圖3是在本發(fā)明中實現(xiàn)避免路由設(shè)備頻繁切換狀態(tài)的流程圖。參見圖2和圖3,在本發(fā)明中,自動實現(xiàn)避免路由設(shè)備頻繁切換狀態(tài)的過程包括以下步驟步驟301預(yù)先在備用路由設(shè)備中設(shè)置計數(shù)器和計時器。
這里,在備用路由設(shè)備中設(shè)置計數(shù)器和計時器,是為了在后續(xù)過程中能夠通過計數(shù)器和計時器的值判斷出備用路由設(shè)備是否頻繁地進行了狀態(tài)切換,進一步地,在后續(xù)過程中還能夠通過計數(shù)器和計時器的值判斷出備用路由設(shè)備接收正常通知報文的頻率是否穩(wěn)定,即狀態(tài)切換是否恢復(fù)正常。
步驟302在備用路由設(shè)備開始工作時,初始化計數(shù)器和計時器。
這里,所述的初始化計數(shù)器和計時器是指將計數(shù)器的值清零,并使計時器從零開始計時。
步驟303當(dāng)滿足切換條件時,備用路由設(shè)備中的控制單元執(zhí)行狀態(tài)切換,并將計數(shù)器的值加1。
這里,所述的滿足切換條件可以是備用路由設(shè)備中的控制單元判斷出在一個報文接收周期內(nèi),未接收到主用路由設(shè)備發(fā)來的正常通知報文即VRRP報文。此種情況下,備用路由設(shè)備中控制單元執(zhí)行的狀態(tài)切換是將該備用路由設(shè)備的狀態(tài)切換為主用狀態(tài)。
所述的滿足切換條件還可以是在備用路由設(shè)備的狀態(tài)切換為主用狀態(tài)后,該備用路由設(shè)備中的控制單元接收到初始主用路由設(shè)備發(fā)來的VRRP報文。此種情況下,備用路由設(shè)備中的控制單元執(zhí)行的狀態(tài)切換是將備用路由設(shè)備的狀態(tài)切換回備用狀態(tài)。
需要說明的是,該步驟303的過程與后續(xù)其他步驟之間并無固定的執(zhí)行上的先后順序,也就是說,在實際業(yè)務(wù)實現(xiàn)中,只要滿足切換條件,便需執(zhí)行本步驟的過程。
步驟304備用路由設(shè)備中的控制單元實時監(jiān)測計時器,當(dāng)監(jiān)測到計時器計時到達預(yù)先設(shè)置的第一時間長度時,判斷計數(shù)器在該第一時間長度內(nèi)所計的數(shù)值是否大于預(yù)先設(shè)置的切換次數(shù)閾值,如果是,則執(zhí)行步驟305,否則,返回步驟304。
這里,通過對計數(shù)器和計時器值的判斷,備用路由設(shè)備則完成了判斷自身狀態(tài)切換是否出現(xiàn)異常的過程。也就是說,如果在預(yù)先設(shè)置的第一時間長度內(nèi),備用路由設(shè)備已進行的切換次數(shù)大于預(yù)先設(shè)置的切換次數(shù)閾值,則可確定備用路由設(shè)備頻繁地進行了狀態(tài)切換的過程,從而可執(zhí)行后續(xù)的處理措施。
其中,預(yù)先設(shè)置的第一時間長度的值可以根據(jù)實際業(yè)務(wù)需要來確定,比如,需要每30秒判斷一次備用路由設(shè)備的切換頻率是否過于頻繁,則可將第一時間長度的值設(shè)置為30秒。
步驟305備用路由設(shè)備中的控制單元增加狀態(tài)切換的時間長度。
這里,增加狀態(tài)切換的時間長度可以通過包括但不限于以下方式來實現(xiàn)方式A、通過延長報文接收周期來實現(xiàn)。
在方式A下,初始的報文接收周期記為T,T=3×adver_interval+(255-priority)/100,其中,adver_interval為主用路由設(shè)備發(fā)送VRRP報文的周期,priority為該備用路由設(shè)備的優(yōu)先級。
因此,在方式A下,可以預(yù)先修改上述公式,在上述公式中增加一個調(diào)節(jié)因子flag,通過增加該調(diào)節(jié)因子的當(dāng)前值,從而實現(xiàn)本步驟的延長報文接收周期。所述修改方式包括但不限于以下方式修改方式一、將T修改為T’,使得T’=3×adver_interval×flag+(255-priority)/100。
在修改方式一下,本步驟中所述的增加報文接收周期長度的值可以是增加flag的值。比如,在備用路由設(shè)備可正常接收到主用路由設(shè)備的VRRP報文時,使該flag的值為1,在本步驟中,則可增加flag的當(dāng)前值,使其大于1。
修改方式二、將T修改為T’,使得T’=3×adver_interval+flag×(255-priority)/100。
在修改方式一下,本步驟中所述的增加報文接收周期長度的值可以是增加flag的值。比如,在備用路由設(shè)備可正常接收到主用路由設(shè)備的VRRP報文時,使該flag的值為1,在本步驟中,則可增加flag的當(dāng)前值,使其大于1。
修改方式三、將T修改為T’,使得T’=3×adver_interval+(255-priority)/100+flag。
在修改方式三下,本步驟中所述的增加報文接收周期長度的值可以是增加flag的值。比如,在備用路由設(shè)備可正常接收到主用路由設(shè)備的VRRP報文時,使該flag的值為0,在本步驟中,則可增加flag的當(dāng)前值,使其大于0。
在本步驟中,由于增加調(diào)節(jié)因子flag的值,會使備用路由設(shè)備實現(xiàn)狀態(tài)切換的時間增加,因此,可能會使網(wǎng)絡(luò)通信臨時中斷的時間增加,因此,在增加調(diào)節(jié)因子flag的值時,可將實際用戶可容忍的等待時間作為T’,來確定flag的最大值。
方式B、通過增加狀態(tài)切換的延遲時間來實現(xiàn)。
在該方式B下,備用路由設(shè)備中的控制單元不修改報文接收周期,而是額外增加一個狀態(tài)切換的延遲時間,記為S。
步驟306備用路由設(shè)備中的控制單元根據(jù)當(dāng)前的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
這里,如果在上述步驟305中,延長了報文接收周期長度,那么,在本步驟中,備用路由設(shè)備在修改后的報文接收周期T’內(nèi)未接收到主用路由設(shè)備發(fā)來的VRRP報文后,執(zhí)行狀態(tài)切換。并且,由于備用路由設(shè)備等待接收VRRP報文的時間則增加了,從而延長了進行狀態(tài)切換的時間,有效避免了備用路由設(shè)備頻繁地進行狀態(tài)切換。
如果在上述步驟305中,增加了狀態(tài)切換的延遲時間S,那么,在本步驟中,在報文接收周期內(nèi)未接收到VRRP報文后,備用路由設(shè)備中的控制單元會繼續(xù)等待延遲時間S后,再進行狀態(tài)切換,從而延長了進行狀態(tài)切換的時間,有效避免了備用路由設(shè)備頻繁地進行狀態(tài)切換。
至此,則完成了由備用路由設(shè)備自動實現(xiàn)避免頻繁進行狀態(tài)切換的過程。
為了進一步保證在備用路由設(shè)備可正常接收到VRRP報文時,能夠恢復(fù)到初始的狀態(tài)切換時間長度,本發(fā)明還可以進一步包括以下步驟。
步驟307備用路由設(shè)備中的控制單元實時監(jiān)測計時器,判斷在計時器計時到達第二時間長度的過程中,在每一個初始的報文接收周期內(nèi)是否均可接收到主用路由設(shè)備發(fā)來的VRRP報文,如果是,則執(zhí)行步驟308,否則,返回步驟307。
這里,如果在第二時間長度內(nèi),備用路由設(shè)備中的控制單元在每一個初始的報文接收周期T=3×adver_interval+(255-priority)/100內(nèi),均可接收到主用路由設(shè)備發(fā)來的VRRP報文,備用路由設(shè)備則可確定自身接收報文的頻率已恢復(fù)正常,則應(yīng)該執(zhí)行后續(xù)的恢復(fù)處理。
從而可以減小當(dāng)前的報文接收周期長度T’的值,使其逐漸恢復(fù)其初始值T=3×adver_interval+(255-priority)/100,從而使備用路由設(shè)備恢復(fù)初始的報文接收過程。
其中,所述的第二時間長度的值可以根據(jù)時間業(yè)務(wù)需要來確定,比如,需要每30秒判斷一次備用路由設(shè)備是否滿足接收報文頻率穩(wěn)定,則可將第二時間長度的值設(shè)置為30秒。
步驟308備用路由設(shè)備中的控制單元減少狀態(tài)切換時間長度,根據(jù)該減少后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
這里,如果在步驟305中采用了方式A中的修改方式一、修改方式二或修改方式三,那么,在本步驟中,則可減小T’中調(diào)節(jié)因子的當(dāng)前值,即減小flag的當(dāng)前值,減小后的flag的當(dāng)前值大于或等于其初始值。此后,根據(jù)減小后的調(diào)節(jié)因子flag的當(dāng)前值得到T’,并根據(jù)該所得的T’執(zhí)行狀態(tài)切換。
如果在步驟305中采用了方式B,那么,在本步驟中,去除或減小所增加的狀態(tài)切換的延長時間S,根據(jù)減小或去除的狀態(tài)切換延遲時間S執(zhí)行狀態(tài)切換。其中,如果是減小S,那么,備用路由設(shè)備在報文接收周期內(nèi)未接收到主用路由設(shè)備發(fā)來的VRRP報文后,在等待減小后的狀態(tài)切換延長時間S后執(zhí)行狀態(tài)切換;如果是去除S,那么,備用路由設(shè)備在報文接收周期內(nèi)未接收到主用路由設(shè)備發(fā)來的VRRP報文后,直接執(zhí)行狀態(tài)切換。
在本發(fā)明中,還可以進一步根據(jù)用戶的需要,確定是否進行上述圖3所示的由備用路由設(shè)備自動完成避免頻繁狀態(tài)切換的過程。也就是說,如果用戶對網(wǎng)絡(luò)通信的連續(xù)性要求較高,則可禁止備用路由設(shè)備執(zhí)行上述圖3中所示的各個處理過程,仍采用現(xiàn)有技術(shù)中的處理方式。如果用戶對網(wǎng)絡(luò)的穩(wěn)定性要求較高,則可觸發(fā)備用路由設(shè)備執(zhí)行上述圖3中所示的各個處理過程,實現(xiàn)自動且有效避免頻繁狀態(tài)切換的過程。
在上述實施例中,對本發(fā)明的技術(shù)方案應(yīng)用于VRRP備份組時進行了詳細說明。在實際業(yè)務(wù)實現(xiàn)中,本發(fā)明的技術(shù)方案還可以應(yīng)用于支持其他協(xié)議的備份組,其具體實現(xiàn)過程與上述實施例所述過程的原理相同。
總之,以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種避免路由設(shè)備頻繁切換狀態(tài)的方法,其特征在于,該方法包括備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常,如果是,則增加狀態(tài)切換的時間長度,并根據(jù)該增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述備用路由設(shè)備判斷自身狀態(tài)切換是否出現(xiàn)異常的步驟包括備用路由設(shè)備判斷在預(yù)先設(shè)定的時間長度內(nèi),自身已進行狀態(tài)切換的次數(shù)是否大于預(yù)先設(shè)置的切換次數(shù)閾值,如果大于,則確定自身狀態(tài)切換出現(xiàn)異常。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述增加狀態(tài)切換的時間長度的步驟包括延長報文接收周期;所述根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換的步驟包括備用路由設(shè)備在延長后的報文接收周期內(nèi)未接收到主用路由設(shè)備發(fā)來的正常通知報文后,執(zhí)行狀態(tài)切換。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述延長報文接收周期的步驟包括在計算報文接收周期的公式中增加調(diào)節(jié)因子,并增加該調(diào)節(jié)因子的當(dāng)前值。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在延長報文接收周期之后,該方法進一步包括備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常,如果是,則減小所述調(diào)節(jié)因子的當(dāng)前值,根據(jù)減小后的調(diào)節(jié)因子的當(dāng)前值得到報文接收周期,并根據(jù)該所得的報文接收周期執(zhí)行狀態(tài)切換,其中,減小后的調(diào)節(jié)因子的當(dāng)前值大于或等于其初始值。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述增加狀態(tài)切換的時間長度的步驟包括增加狀態(tài)切換的延遲時間S;所述根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換的步驟包括備用路由設(shè)備在報文接收周期內(nèi)未接收到正常通知報文后,等待狀態(tài)切換的延遲時間S后,執(zhí)行狀態(tài)切換。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在增加狀態(tài)切換的時間長度之后,該方法進一步包括備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常,如果是,則減小或去除所述狀態(tài)切換延遲時間S的當(dāng)前值,根據(jù)減小或去除的狀態(tài)切換延遲時間S執(zhí)行狀態(tài)切換。
8.根據(jù)權(quán)利要求5或7所述的方法,其特征在于,所述備用路由設(shè)備判斷自身接收正常通知報文的頻率是否已恢復(fù)正常的步驟包括備用路由設(shè)備判斷在預(yù)先設(shè)定的時間長度內(nèi),在每一個初始的報文接收周期中是否均可接收到正常通知報文,如果均可接收到,則確定自身接收正常通知報文的頻率已恢復(fù)正常。
9.一種路由設(shè)備,其特征在于,該路由設(shè)備包括控制單元、計數(shù)器和計時器,其中,控制單元,用于在路由設(shè)備進行狀態(tài)切換時,將計數(shù)器的值加1,并在監(jiān)測到計時器計時到達預(yù)先設(shè)置的第一時間長度后,判斷計數(shù)器在該第一時間長度內(nèi)所計數(shù)值是否大于預(yù)先設(shè)置的切換次數(shù)閾值,在判斷出大于后,增加狀態(tài)切換的時間長度,根據(jù)增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
10.根據(jù)權(quán)利要求9所述的路由設(shè)備,其特征在于,所述控制單元,進一步用于監(jiān)測在計時器計時到達預(yù)先設(shè)置的第二時間長度的過程中,在每一個初始的報文接收周期內(nèi)是否均可接收到正常通知報文,在確定均可接收到后,減少狀態(tài)切換時間長度,根據(jù)該減少后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。
全文摘要
本發(fā)明公開了一種避免路由設(shè)備頻繁切換狀態(tài)的方法和一種路由設(shè)備。該方法包括備用路由設(shè)備判斷自身是否已頻繁地進行了狀態(tài)切換,如果是,則增加狀態(tài)切換的時間長度,并根據(jù)該增加后的狀態(tài)切換時間長度執(zhí)行狀態(tài)切換。本發(fā)明中的備用路由設(shè)備能夠自動避免頻繁進行狀態(tài)切換,大大提高了系統(tǒng)的靈活性和實用性,并降低了管理人員的維護工作量。并且,本發(fā)明可以保證備用路由設(shè)備及時發(fā)現(xiàn)頻繁狀態(tài)切換的情況,并及時進行后續(xù)自動延長狀態(tài)切換時間的處理,大大提高了備用路由設(shè)備的穩(wěn)定性。
文檔編號H04L29/06GK1913493SQ200610109930
公開日2007年2月14日 申請日期2006年8月24日 優(yōu)先權(quán)日2006年8月24日
發(fā)明者申彥昌 申請人:杭州華為三康技術(shù)有限公司