專利名稱:一種實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊技術(shù)領(lǐng)域,尤其涉及虛擬路由冗余協(xié)議中實(shí)現(xiàn)虛擬路由通告時間動態(tài)最 優(yōu)調(diào)整的方法。
背景技術(shù):
隨著人們對數(shù)據(jù)通訊可靠性與穩(wěn)定性的要求不斷提高,數(shù)據(jù)通訊設(shè)備的備份功能也越來 越受到重視。目甜路由器往往要實(shí)現(xiàn)多種備份功能,如路由器間備份,單板間備份,接口備 份等,都提高了設(shè)備的可靠性與穩(wěn)定性。而另一方面,實(shí)現(xiàn)這么多的備份功能也相應(yīng)地增加 了設(shè)備的研發(fā)成本與運(yùn)行成本。虛擬路由器冗余協(xié)議(VRRP)是由RFC2338所提出的備份冗余協(xié)議,它是專門為具有組 播或廣播能力的局域網(wǎng)(以太網(wǎng))所設(shè)計(jì)的,適用于在網(wǎng)絡(luò)接入一側(cè)對接入設(shè)備做備份。例 如局域網(wǎng)中有兩臺以上的路由器,局域網(wǎng)中的主機(jī)可以通過其中的任意一臺路由器與其他網(wǎng) 絡(luò)通訊。VRRP協(xié)議可以保證,當(dāng)一個虛擬路由組中的主用路由器出現(xiàn)故障時,可以及時的由 另一臺備用路由器來代替,從而保證了通訊的連接性與可靠性,而這個過程對于接入端的主 機(jī)是透明的,不需要對接入主機(jī)進(jìn)行重新配置。網(wǎng)管給處于同一個虛擬路由組的不同路由器 配置相同的虛擬路由器組號和虛擬IP地址,它們共同組成一個虛擬路由器。-一個虛擬路由組 可以表現(xiàn)為一臺fe用路由器和若干臺備用路由器組成,其中主用路由器實(shí)現(xiàn)真正的報(bào)文轉(zhuǎn)發(fā) 功能。當(dāng)主路由器出現(xiàn)故障時,備用路由器將根據(jù)優(yōu)先級進(jìn)行競選,使得其中一個備用路由 器變成新的主用路由器接替原主用路由器的工作。典型組網(wǎng)方式如圖2所示。Router 1, Router 2, PC機(jī)在同一個局域網(wǎng)內(nèi),Router 1和Router 2組成了一個虛擬路 由器。這個虛擬路由器擁有一個網(wǎng)際協(xié)議IP地址10.10.10.100。局域網(wǎng)中的主機(jī)僅僅知道 虛擬IP地址IO. 10. 10. 100,并不知道路由器1與路由器2的實(shí)際接口 IP地址,它們將自己 的缺省路由設(shè)置為該虛擬路由器的IP地址10. 10. 10. 100。網(wǎng)絡(luò)內(nèi)的主機(jī)就通過這個虛擬路 由器來與其他網(wǎng)絡(luò)進(jìn)行通信。除了圖2的典型VRRP組網(wǎng)方式外,利用VRRP協(xié)議還可以實(shí)現(xiàn)網(wǎng)絡(luò)負(fù)載平衡,其組網(wǎng)圖3 如下所示Router 1, Router 2與PC機(jī)處于同一局域網(wǎng)中,Router 1與Router 2共同加入虛擬組1與虛擬組2,且Router l既是虛擬組l的主用路由器,又是虛擬組2的備用路由器;Router2為虛擬組1的備用路由器,又是虛擬組2的主用路由器,主機(jī)PC 1, PC2配置默認(rèn)網(wǎng)管地 址為虛擬組1的虛擬地址IP—A, PC 3與PC 4配置默認(rèn)網(wǎng)管地址為虛擬組2的虛擬地址IP一B。 這樣PC 1和PC 2的網(wǎng)絡(luò)流量將通過Router 1來傳遞,同樣PC 3和PC 4的網(wǎng)絡(luò)流量由Router 2來傳遞,從而實(shí)現(xiàn)了兩個路由器之間的負(fù)載平衡。且這兩個路由器還具有互為備份功能, 當(dāng)任意一個路由器故障的時候,另外一個將接替故障路由器的工作,保持網(wǎng)絡(luò)的延續(xù)性與可 靠性。對于上面的應(yīng)用,虛擬路由器都需要按照如下的方式工作(1) 各個路由器之間根據(jù)優(yōu)先級進(jìn)行主備競選。優(yōu)先級最大的成為主用路由器,主用路 由器提供報(bào)文的轉(zhuǎn)發(fā)服務(wù),備用路由器不能提供報(bào)文轉(zhuǎn)發(fā)。(2) 主用路由器正常工作時,定時發(fā)送通告VRRP組播報(bào)文,以通知組內(nèi)的備用路由器, 主用路由器處于正常工作狀態(tài)。其他路由器作為備用路由器,根據(jù)接收的通告報(bào)文監(jiān)測主用 路由器的狀態(tài)。'與組中備用路由器在一定時間內(nèi)沒有收到來自主用路由器的報(bào)文時,則將自 己變?yōu)橹饔寐酚善?。多臺備用路由器變?yōu)橹饔寐酚善鳎l(fā)送VRRP報(bào)文,每臺路由器根據(jù)自身 的優(yōu)先級與報(bào)文中所帶的優(yōu)先級進(jìn)行比較,優(yōu)先級小的為備用路由器,從而競選出優(yōu)先級最 大的路由器為新的主用路由器,完成VRRP的主備切換。由上述的過程可以看出,VRRP的主備通信之間主要依靠主用路由器的組播通告報(bào)文,備 用路由器靠通告報(bào)文來監(jiān)視主用路由器的狀態(tài),并只接收報(bào)文,不發(fā)送報(bào)文,且彼此之間沒 有握手連接。由于一個路由器可以配置許多個VRRP組,每一個組定時都要發(fā)送通告報(bào)文,而 為了控制組播流量,路由器每秒鐘所發(fā)的VRRP組播包數(shù)的最大值是有限的,當(dāng)配置的組過多 時,其不可能再隨著組的增多而相應(yīng)的變大。VRRP協(xié)議規(guī)定主用設(shè)備的每個VRRP組在每個 通告周期需發(fā)一個通告報(bào)文,備用設(shè)備在三個通告周期內(nèi)沒有接收到通告報(bào)文,就會把自己 變成主設(shè)備,并產(chǎn)生主備競選。由于路由設(shè)備發(fā)包速率的限定與配置VRRP組的數(shù)目是一個矛 盾Master狀態(tài)的組越多,循環(huán)一次通告包所消耗的時間就越長。當(dāng)Master狀態(tài)的組數(shù)目 超過某個限定的時候,就會產(chǎn)生了發(fā)包延遲,并容易產(chǎn)生主備頻繁倒換。而主用路由器在整 個過程中并沒有發(fā)生故障,且由于主設(shè)備本身的優(yōu)先級比較高,其不會對備用路由器的主備 倒換做處理,而是經(jīng)過優(yōu)先級比較后丟棄備用路由器上發(fā)送的通告報(bào)文。主備頻繁倒換嚴(yán)重 可使虛擬路由器陷入不可用狀態(tài),嚴(yán)重影響了路由器的穩(wěn)定性。發(fā)明內(nèi)容為了克服h述缺陷,本發(fā)明的目的是提供一種基于虛擬路由冗余技術(shù)提出VRRP通告時問 動態(tài)最優(yōu)調(diào)整的方法,改方法解決了 VRRP協(xié)議在具體應(yīng)用過程中配置與實(shí)際發(fā)包不平衡的問題。為達(dá)到上述目的,本發(fā)明一種實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,包括以下歩驟(1) 對主用路由器中配置的虛擬路由組中的主用狀態(tài)虛擬路由組的數(shù)目進(jìn)行統(tǒng)計(jì);(2) 主用路由器根據(jù)所述主用狀態(tài)虛擬路由組的數(shù)目與虛擬路由器冗余協(xié)議發(fā)包速率, 計(jì)算出預(yù)計(jì)的循環(huán)發(fā)包周期;(3) 主用路山器根據(jù)計(jì)算出的循環(huán)發(fā)包周期與系統(tǒng)配置的通告時間間隔比較,得到系統(tǒng) 實(shí)際通告時間間隔,并通過虛擬路由器冗余l(xiāng)辦議通告報(bào)文將該實(shí)際通告時間間隔傳遞給備用 路由器;(4) 備用路由器通過虛擬路由器冗余協(xié)議通告報(bào)文以學(xué)習(xí)方式得到主用路由器的通告時 間間隔,并根據(jù)所學(xué)到的通告時間間隔調(diào)整自己的主備倒換時間間隔。進(jìn)一步地,所述歩驟(3)具體為主用路由器根據(jù)計(jì)算出的循環(huán)發(fā)包周期與系統(tǒng)配置的通告時間間隔比較,取較大者為系 統(tǒng)實(shí)際通告時間間隔,并通過虛擬路由器冗余協(xié)議通告報(bào)文將該實(shí)際通告時間間隔傳遞給備 用路山器。進(jìn)一步地,所述的系統(tǒng)配置的通告時間間隔可以在外部進(jìn)行配置。進(jìn)一歩地,所述備用路由器默認(rèn)狀態(tài)為學(xué)習(xí)模式。進(jìn)一步地,中沖路由器可加入不同的虛擬路由組,所述單個路由器所加入的不同虛擬路 由組中的通告時間間隔互不相關(guān)。本發(fā)明中的備用設(shè)備通過學(xué)習(xí)模式,可以從主用設(shè)備的通告報(bào)文中學(xué)習(xí)到主用設(shè)備的實(shí) 際循環(huán)發(fā)包的時間間隔,使設(shè)定的主用設(shè)備切換時間間隔對應(yīng)于實(shí)際的發(fā)包時間間隔,綜合解決了 VRRP發(fā)包速率與組數(shù)的矛盾,有利于在系統(tǒng)配置多個VRRP組完成備份與負(fù)載平衡功能,不會發(fā)生主備倒換,提高路由設(shè)備的可靠性與網(wǎng)絡(luò)運(yùn)行的穩(wěn)定性。
圖1是本發(fā)明的VRRP調(diào)整的通告時間傳遞示意圖;圖2是現(xiàn)有VRRP典型組網(wǎng)圖;圖3是VRRP負(fù)載平衡i為備份組網(wǎng)圖4是本發(fā)明一種實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整方法的流程圖。
具體實(shí)施方式
本發(fā)明所提供的方法是利用虛擬路由冗余協(xié)議VRRP的通告報(bào)文,來傳遞由主路由器動態(tài)產(chǎn)生的通告時間,使互為備份的路由器之間運(yùn)行更加穩(wěn)定的方法,組網(wǎng)模型如圖l所示首先配置路由器1的端口 1與路由器2的端口1在一個局域網(wǎng)中,路由器2的端口 2與 路由器3的端口 l在一個局域網(wǎng)中,這兩個局域網(wǎng)互不相關(guān)。在路由器1與路由器2,路由器2與路由器3的相應(yīng)端口中,之間分別配置100個VRRP 組,則路由器2就會有200個VRRP組。設(shè)置路由器2的200個VRRP組為Master狀態(tài),此時VRRP的包的實(shí)際循環(huán)通告時間大約 為2秒(設(shè)定最大VRRP包通告速率為100包/秒),而配置的發(fā)包周期為1秒,與實(shí)際發(fā)包周 期不符。下面結(jié)合圖4的流程詳細(xì)說明本發(fā)明提供方法的技術(shù)方案-如圖4所示,本發(fā)明實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,主路由器通過其通告 報(bào)文來告知備用路由器主用路由器動態(tài)產(chǎn)生的通告時間,以便備用路由器能及時學(xué)習(xí)到最優(yōu) 的通告時間,主備路由器之間的主要流程如下主路由器(圖1中的路由器2):歩驟401:路由器2在狀態(tài)轉(zhuǎn)變?yōu)镸aster時,啟動通告時間計(jì)算流程;步驟402:對主用路由器中所配置的虛擬路由組中為Master (主用)狀態(tài)組數(shù)目進(jìn)行統(tǒng)計(jì);Master設(shè)備根據(jù)整個路由器中所配置的VRRP協(xié)議狀態(tài)為Master的組的數(shù)目和VRRP發(fā)包速率,計(jì)算得出通告包的一次循環(huán)發(fā)包周期;此歩驟中, 一個虛擬路由組中只有主用路由器需要計(jì)算通告時間,并通過VRRP報(bào)文包把通告時間告訴備用路由器,備用路由器不需要計(jì)算通告時間,只需根據(jù)通告時間計(jì)算自己的主備倒換時間;步驟403: Master設(shè)備判斷配置通告時間與計(jì)算得出的循環(huán)發(fā)包周期的大小,取較大者 得到系統(tǒng)實(shí)際發(fā)包時間間隔;歩驟404:設(shè)置通告時間為步驟403中數(shù)據(jù)最大的數(shù)值(2秒)。步驟405:在Master設(shè)備發(fā)送通告數(shù)據(jù)包的時候,把得到的實(shí)際通告時間間隔放入相應(yīng) 的字段中,傳遞給備用路由器(圖1中的路由器1和路由器3); 并根據(jù)所學(xué)到的數(shù)據(jù)調(diào)整自己的主備倒換時間間隔。 歩驟411:備用路由器收到由主用路由器(圖1中的路由器2)發(fā)送的VRRP通告報(bào)文, 備用路由器默認(rèn)狀態(tài)下通過學(xué)習(xí)方式學(xué)習(xí)主用路由器發(fā)送的VRRP報(bào)文中的實(shí)際通告時間間 隔,并啟動動態(tài)通告時間動態(tài)調(diào)整;歩驟412:備用路由器由通告報(bào)文中提取主用路由器的實(shí)際通告時間間隔;步驟413:備用路由器根據(jù)主用路由器的實(shí)際通告時間間隔與其他相關(guān)參數(shù),動態(tài)調(diào)整自 己的主備切換時間(具體計(jì)算參照VRRP協(xié)議);歩驟414:備用路由器根據(jù)調(diào)整的主備切換時間,備用路由器繼續(xù)操持備用狀態(tài),并監(jiān)視主用路由器的狀態(tài)。上述方法在具體組網(wǎng)應(yīng)用時, 一個路由器可能加入到不同的虛擬路由組,所以一個路由 器的所加入的不同組中通告時間可能各不相同,但該路由器所加入的不同組中通告時間之間 沒有聯(lián)系。另外,配置的發(fā)包時間間隔在外部也可以配置,并且其需要參與和計(jì)算得出的循環(huán)發(fā)包 消耗時間比較,當(dāng)主用路由器的預(yù)計(jì)循環(huán)發(fā)包消耗時間間隔小于配置時間間隔時,配置通告 時間間隔為實(shí)際發(fā)包時間間隔。當(dāng)在路由器配置的VRRP組較少的時候,主用路由器預(yù)測發(fā)送消耗時間也比較小,此時路 由器將以配置的發(fā)包間隔發(fā)包。主用路由器通過比較得到通告時間為配置時間,并把其填入 到通告包中,保證備用路由器得到主用路由器實(shí)際通告時間間隔。默認(rèn)情況下,備用設(shè)備設(shè)置為學(xué)習(xí)模式,可以從通告報(bào)文中學(xué)習(xí)到主設(shè)備實(shí)際循環(huán)發(fā)包 的循環(huán)發(fā)包的時間間隔,使設(shè)定的通告時間為最優(yōu)時間。本方法使得發(fā)包方與收包方得到協(xié) 調(diào),保證路由器的可靠性,VRRP冗余協(xié)議運(yùn)行的穩(wěn)定性。從上述流程過程中可以看出,備用設(shè)備通過學(xué)習(xí)模式,可以從通告報(bào)文中學(xué)習(xí)到主用設(shè) 備的實(shí)際循環(huán)發(fā)包的時間間隔,使設(shè)定的主用設(shè)備切換時間間隔對應(yīng)于實(shí)際的發(fā)包時間間隔, 綜合解決了 VRRP發(fā)包速率與組數(shù)的矛盾,有利于在系統(tǒng)配置多個VRRP組完成備份與負(fù)載平 衡功能,不會發(fā)生主備倒換,提高路由設(shè)備的可靠性與網(wǎng)絡(luò)運(yùn)行的穩(wěn)定性。
權(quán)利要求
1、一種實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,其特征在于,包括以下步驟(1)對主用路由器中配置的虛擬路由組中的主用狀態(tài)虛擬路由組的數(shù)目進(jìn)行統(tǒng)計(jì);(2)主用路由器根據(jù)所述主用狀態(tài)虛擬路由組的數(shù)目與虛擬路由器冗余協(xié)議發(fā)包速率,計(jì)算出預(yù)計(jì)的循環(huán)發(fā)包周期;(3)主用路由器根據(jù)計(jì)算出的循環(huán)發(fā)包周期與系統(tǒng)配置的通告時間間隔比較,得到系統(tǒng)實(shí)際通告時間間隔,并通過虛擬路由器冗余協(xié)議通告報(bào)文將該實(shí)際通告時間間隔傳遞給備用路由器;(4)備用路由器通過虛擬路由器冗余協(xié)議通告報(bào)文以學(xué)習(xí)方式得到主用路由器的通告時間間隔,并根據(jù)所學(xué)到的通告時間間隔調(diào)整自己的主備倒換時間間隔。
2、 如權(quán)利要求1所述的實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,其特征在于,所述 歩驟(3)具體為主用路由器根據(jù)計(jì)算出的循環(huán)發(fā)包周期與系統(tǒng)配置的通告時間間隔比較,取較大者為系 統(tǒng)實(shí)際通告時間間隔,并通過虛擬路由器冗余協(xié)議通告報(bào)文將該實(shí)際通告時間間隔傳遞給備 用路由器。
3、 如權(quán)利要求1或2所述的實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,其特征在于, 所述的系統(tǒng)配置的通告時間間隔可以在外部進(jìn)行配置。
4、 如權(quán)利要求1所述的實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,其特征在于,所述 備用路由器默認(rèn)狀態(tài)為學(xué)習(xí)模式。
5、 如權(quán)利要求l所述的實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,其特征在于,單個 路由器可加入不同的虛擬路由組,所述單個路由器所加入的不同虛擬路由組中的通告時間間 隔互不相關(guān)。
全文摘要
本發(fā)明公開一種實(shí)現(xiàn)虛擬路由通告時間動態(tài)最優(yōu)調(diào)整的方法,涉及通訊技術(shù)領(lǐng)域,為解決現(xiàn)有虛擬路由冗余協(xié)議中主用狀態(tài)虛擬路由組數(shù)目較多時,頻繁產(chǎn)生主備倒換影響路由器的穩(wěn)定性的問題而發(fā)明。本發(fā)明對配置的主用狀態(tài)虛擬路由組數(shù)目進(jìn)行統(tǒng)計(jì);主用路由器根據(jù)所述主用狀態(tài)虛擬路由組數(shù)目與虛擬路由器冗余協(xié)議發(fā)包速率,計(jì)算出預(yù)計(jì)的循環(huán)發(fā)包周期;并與系統(tǒng)配置的通告時間間隔比較,得到系統(tǒng)實(shí)際通告時間間隔,通過虛擬路由器冗余協(xié)議通告報(bào)文將該實(shí)際通告時間間隔傳遞給備用路由器;備用路由器根據(jù)學(xué)到的實(shí)際通告時間間隔調(diào)整自己的主備倒換時間間隔。本發(fā)明使得發(fā)包方與收包方得到協(xié)調(diào),保證路由器可靠性和VRRP冗余協(xié)議運(yùn)行的穩(wěn)定性。
文檔編號H04L12/56GK101155129SQ200610140708
公開日2008年4月2日 申請日期2006年9月29日 優(yōu)先權(quán)日2006年9月29日
發(fā)明者健 馮, 唐益慰, 王懷濱 申請人:中興通訊股份有限公司