專利名稱:自舉路由器及超時時間管理的方法和系統的制作方法
技術領域:
本發明涉及組播技術,尤其涉及一種自舉路由器及其超時時間管理的方法 和系統。
背景技術:
IP組播是指在IP網絡中將數據包以盡力傳送(best-effort)的形式發送到 網絡中的某個確定節點子集,這個子集稱為組播組(multicast group ) 。 IP組播 的基本思想是,源主機只發送一份數據,這份數據中的目的地址為組播組地址; 組播組中的所有接收者都可接收到同樣的數據拷貝,并且只有組播組內的主機 即目標主機可以接收該數據,網絡中其它主機不能收到。
IP組播技術有效地解決了單點發送多點接收的問題,實現了 IP網絡中點 到多點的高效數據傳送,能夠大量節約網絡帶寬、降低網絡負載。作為一種與 單播和廣播并列的通信方式,組播的意義不僅在于此,更重要的是,可以利用 網絡的組播特性方便地開展一些新的增值業務,包括在線直播、網絡電視、遠 程教育、遠程醫療、網絡電臺、實時視頻會議等互聯網的信息服務領域。
稀疏4莫式十辦i義無關纟且〗番(PIM-SM , Protocol Independent Multicast - Parse Mode)是一種常用的域內組插-模式,其工作原理如下
接收者通過組管理協議(IGMP, Internet Group Management Protocol )加 入到指定的組播組G,和接收者直連的指定路由器(DR)不知道組播源地址, 其向匯聚點(RP, Rendezvous Point)發送加入報文(*, G)加入建立起共享樹 (RPT, Rendezvous Point Tree),如圖l所示
組播源服務器把數據轉發給源DR,源DR同樣也不知有何接收者存在,源 DR把組播數據報文封裝成注冊報文,通過單播把注冊報文發送給RP, RP將注冊 報文解封裝,沿RPT轉發給接收者,接收端DR在收到組播數據后獲取組播源地 址,就可以通過發送(S,G)加入源樹(SPT)。同時RP在收到注冊報文時也獲 得組播源的地址信息,也可以發送(S,G)加入源樹,如圖2所示可見,對于PIM-SM, RP起至關重要的樞紐作用,全網中每臺路由器的信息 必須一致,否則源DR不能獲得接收者信息,而接收端DR也無法獲得組播源信息, 導致接收者不能接收到組播數據。自舉路由器(BSR, Boot Strap Router)機制 是標準的RP選舉與維護機制,所有支持PIM-SM的設備都會支持BSR機制。
自舉路由器,負責在PIM-SM網絡啟動后,收集網絡內的匯聚節點(RP, Rendezvous Point)信息,為每個組選舉出RP,然后將RP集(即組-RP映射數據 庫)發布到整個PIM-SM網絡。
一個網絡內部只有一個當選自舉路由器(E-BSR, Elected-BSR),可以配 置多個候選自舉路由器(C-BSR, Candidate-BSR), —旦某個BSRDown掉,可以 切換到另外一個。候選匯聚節點路由器(C-RP, Candidate-RP)將C-RP消息通 過單播發送到BSR, BSR在RP集存儲所有的C-RP消息,然后周期性地向所有路 由器發送BSR消息,BSR消息包含整個RP-set和BSR地址,消息一跳一跳地自 BSR向整個網絡泛濫,所有的路由器使用收到的RP集來確定RP,所有路由器都 使用相同的RP選擇算法,選擇的RP也是一致的。其擴散過程如圖3所示
現有技術中,BSR收到C-RP的報文后啟動定時器,定時器超時后就刪除 C-RP信息,C-RP周期性地給BSR發送C-RP報文來刷新定時器,以防止超時被刪 除。而其他非當選BSR路由器收到當選BSR向其發送的自舉消息(BSM,Bootstrap messages)報文后,同樣也啟動定時器來超時BSM凈艮文和其攜帶的C-RP信息, BSR同樣需要周期性地泛濫BSR報文來防止超時。
但是,在BSM報文中沒有保持(Holdtime)字段,因此這樣在配置的時候對 用戶有如下兩點限制
1、 全網路由器上的BSR的HOLDTIME必須配置一致;如果不這么配置,會 導致非BSR的HOLDTIME小于BSR的發送間隔,使非BSR上的BSR信息超時,造 成振蕩;
2、 所有C-RP的HOLDTIME必須不小于當選BSR的報文發送間隔;如果不這 么配置,會導致非BSR的C-RP的HOLDTIME小于BSR的發送間隔,使非BSR上 的C-RP信息超時,造成振蕩。
本發明的發明人在實施本發明的時候,發現現有技術存在以下缺點 目前只能通過全網手工配置來保證上述的關系,如果網絡比較大,配置容 易出錯。
發明內容
本發明實施例提供了 一種自舉路由器,及其超時時間管理的方法和系統,
可以在PIM-SM網絡中實現自適應的方式配置BSR的Holdtime值,并保證配置 的一致性,減少對手工配置的依賴,避免錯誤配置帶來的振蕩。
本發明提供了一種自舉路由器超時時間管理的方法,包括
接收來自候選匯聚節點路由器發送的候選匯聚節點信息,所述候選匯聚節 點信息攜帶有其在自舉路由器的保持時間值;
將收到的候選匯聚節點信息存儲在匯聚節點信息集中;
用第一預定公式由候選匯聚節點信息的保持時間值計算出一自舉路由器超 時時間值,并以該超時時間值用第二預定的公式計算出一發送自舉消息報文的 時間間隔;
以所述時間間隔向整個組播網絡的所有路由器發送攜帶有候選匯聚節點信 息的自舉消息報文。
本發明實施例還提供了一種路由器,此路由器作為自舉路由器時,包括
信息接收模塊,用于接收來自候選匯聚點路由器向其發送的候選匯聚節點 信息,所述候選匯聚節點信息攜帶有其在自舉路由器上的保持時間值;
信息存儲模塊,用于將所述收到的候選匯聚節點信息存儲在匯聚節點信息 集中;
超時計算模塊,用于根據所述候選匯聚節點信息的保持時間值計算出一超 時間值,并用以決定其發送自舉消息報文的時間間隔;
報文發送模塊,用于以超時計算模塊計算出的時間間隔向整個組播網絡的 所有路由器發送攜帶有候選匯聚節點信息的自舉消息報文。
相應地,本發明實施例還提供了一種路由器,此路由器為非當選自舉路由 器時,包括
信息接收模塊,用于接收來自當選路由器向其發送的自舉消息報文; 信息存儲模塊,用于存儲所述收到的自舉消息報文中攜帶的候選匯聚節點 信息;
超時計算模塊,用于根據所述當選自舉路由器的超時間值,計算出一超時 間值用以超時管理其存儲的自舉消息報文以及所述候選匯聚節點信息。
相應地,本發明實施例還提供了一種自舉路由器超時時間管理系統,包括:當選自舉路由器,用于接收并存儲來自候選匯聚點路由器向其發送的候選 匯聚節點信息,根據所述候選匯聚節點信息的保持時間值計算其超時間值,并
將候選匯聚節點信息攜帶在自舉消息報文中發送至各個非當選自舉路由器; 非當選自舉路由器,用于采用與所述當選自舉路由器相同的超時間值來超
時時間管理所述自舉信息報文。
采用本發明實施例提供的自舉路由器和超時時間管理的方法和系統,具有
保證配置當選BSR和其他路由器上Holdtime的一致性,以及E-BSR和C-RP的
Holdtime的一致性,減少對手工配置的依賴,避免錯誤配置帶來振蕩。
圖1是現有的PIM-SM網絡中接收端建立共享樹的示意圖; 圖2是現有的PIM-SM網絡中匯聚點建立共享樹的示意圖; 圖3是本發明實施例提供的 一 種自舉路由器超時時間管理系統的結構示意
圖4是本發明實施例提供的一種作為自舉路由器的第一實施例的結構示意
圖5是本發明實施例提供的一種作為自舉路由器的第二實施例的結構示意
圖6是本發明實施例提供的作為非當選自舉路由器的結構示意圖7是本發明提供的自舉路由器超時時間管理方法的第 一 實施例流程示意
圖8是本發明提供的自舉路由器超時時間管理方法的第二實施例流程示意
圖9是本發明提供的自舉路由器超時時間管理方法的第三實施例流程示意圖。
具體實施例方式
本發明實施例提供了 一種自舉路由器及其超時時間管理的方法和系統,通
過使用C-RP的Holdtime值計算BSR的Holdtime值,以在PIM-SM網絡中實現自適 應的方式配置BSR的Holdtime值,并保證配置的一致性,減少對手工配置的依賴,避免錯誤配置帶來的振蕩。
參見圖3,為本發明實施例提供的 一 種自舉路由器超時時間管理系統的結構 示意圖。
如圖所示,所述自舉路由器超時時間管理系統由當選自舉路由器A,和各 個候選自舉路由器B、 C、 D、 E、 F、 G組成,所述當選自舉路由器A,用于接 收并存儲來自各個C-RP向其發送的C-RP信息,根據所述C-RP信息的保持時 間值計算其超時間值,并將C-RP信息攜帶在BSR報文中發送至各個非E-BSR; 需要說明的是,本實施例中,C-RP匯聚點即為候選自舉路由器B;
所述候選自舉路由器C、 D、 E、 F、 G,用于采用與所述E-BSR相同的超時 時間值來超時時間管理所述BSR信息。
參見圖4,為本發明實施例提供的一種作為自舉路由器的結構示意所述BSR包括
信息接收模塊10,用于接收來自各個C-RP候選匯聚點向其發送的C-RP信 息,所述C-RP信息攜帶有各自在BSR和其他路由器上的保持時間值;
信息存儲模塊11,用于將所述收到的各個C-RP信息存儲在RP信息集中;
超時計算模塊12,用于根據所述C-RP信息的保持時間值計算出一 E-BSR 超時間值用以決定其發送BSM才艮文的時間間隔;
報文發送模塊13,用于周期性的向整個組播網的所有非E-BSR泛洪攜帶有 C-RP信息的BSM報文。
具體地,在本實施例中,以當選自舉路由器BSR一A為例說明自舉路由器的 功能和作用。
在PIM-SM網絡中,C-RP以C^IO^Adv一Period為間隔周期性地發送C-RP通過 給BSR—A,報文中攜帶Holdtime值可以通過一個公式來計算(例如Holdtime 等于2.5 x C—RP—Adv—Period) , BSR—A在此時間內沒有收到此C-RP的C-RP報 文,則認為其超時,刪除此C-RP的信息。
在BSR—A的信息接收模塊10和信息存儲模塊11收集到C-RP信息后,其 超時計算模塊12通過一個公式fill (例如,取所有收到的C-RP報文中最小的 Holdtime)計算出其超時間值BS一Timeout,這樣就可以避免因為配置不一致而導 致的振蕩問題,減少配置的工作量;并且通過公式fh2 (例如BS—Timeout = 2 x BS—Period + 10)反推出BS一Period (例如BS一Period = (BSJTimeout-10 ) /2 ),其報文發送模塊13其以BS_Period為間隔周期性地向整個PIM-SM網 絡中泛洪BSR報文,所述報文中攜帶有C-TP信息;
當選自舉路由器的報文發送模塊13以BS—Period為間隔周期性向整個組播 網的所有非E-BSR泛洪攜帶有C-RP信息的BSM才艮文。
優選地,本發明提供的自舉路由器的第二實施例組成示意圖如圖5所示, 所述自舉路由器除了具有與本發明提供的自舉路由器的第 一 實施例相同的信息 接收模塊IO、信息存儲模塊ll、超時計算模塊12以及報文發送模塊13以外, 還包括
時間記錄模塊14,用于將自舉消息報文的保持時間值記錄于自舉消息報文 一字革更中。
則當選自舉路由器的報文發送模塊13以BS_Period為間隔周期性向整個組 播網的所有非E-BSR發送攜帶有C-RP信息的BSM報文中,還攜帶有當選自舉 路由器報文的保持時間值,非當選自舉路由器收到所述BSM報文后,根據所述 保持時間值來決定其超時管理其收到的BSM報文。
參見圖6,為本發明實施例提供的作為非當選自#^各由器的結構示意所述非當選自舉3各由器2包括
信息接收模塊20,用于接收來自E-BSR向其發送的BSM報文信息; 信息存儲模塊21,用于存儲所述收到的BSM報文;
超時計算模塊22,用于根據所述BSR的超時間值,計算出一超時間值用以 超時其存儲的BSM報文。
所述非當選自舉路由器2可以釆用兩種方法來設置其BS—Timeout: 第一種,使用和當選BSR同樣的計算公式。
第二種,在當選BSR向非當選的BSR發送的報文中增加一個BSR Holdtime字段。
參見圖7,為本發明提供的自舉路由器超時時間管理超時時間管理方法的第 一實施例流程示意所述自舉路由器超時時間管理的方法流程如下
在步驟S100,當選自舉路由器接收來自各個候選匯聚點路由器向其發送的 C-RP信息,所述C-RP信息攜帶有各自在當選自舉路由器和其他路由器上的保 持時間值;在步驟S101,當選自舉路由器將收到的各個C-RP信息存儲在RP信息集中;
在步驟S102,當選自舉路由器根據C-RP信息的保持時間值計算出一超時 間值用以決定其發送BSM才良文的時間間隔;
在步驟S103,當選自舉路由器周期性的向整個組播網絡的所有路由器泛洪 攜帶有C-RP信息的BSM報文;
在步驟S104,非當選自舉路由器采用與所述當選自舉i 各由器相同的超時間 值來超時時間管理所述BSM報文和其攜帶的C-RP信息。
參見圖8,為本發明提供的自舉路由器超時時間管理方法的第二實施例流程 示意結合圖3,說明本實施例提供的自舉路由器超時時間管理的方法流程; 圖3中,B路由器上配置C—RP—Adv一Periodl , C路由器上配置
C—RP—Adv—Period2,其他路由器都不需要配置C一RI^Adv一Period、 BS—Period、
BS—Timeout等值。
所述自舉路由器超時時間管理的方法流程如下
在步驟S200, B路由器以C_RP_Adv—Periodl 、 C路由器以C—RP—Adv—Period2 為間隔分別周期性將C-RP信息發送給A路由器(即當選的BSR路由器),C-RP 報文的Holdtime值通過公式來計算(例如,2.5 x C_RP—Adv—Period);
在步驟S201,當選自舉路由器(BSR-A)收集到來自各個RP的RP信息后, 將其存儲在RP信息集中;
在步驟S202,當選自舉路由器(BSR-A)通過一個公式fiil計算其 BS一Timeout;
需要說明的是,此次的公式可以是選擇最小的C-RP Holdtime作為其A-BSR 超時時間管理RP信息的BS一Timeout,此處假設為路由器C發送的C-RP報文中的 Holdtime值;
在步驟S203,當選自舉路由器(BSR-A)根據公式(例如,BS_Period == 〔BS_Timeout—10〕 /2 )計算出BSM報文的發送間隔;
在步驟S204,當選自舉路由器(BSR-A)以BS—Period為間隔周期性向整個組 播網的所有非當選自舉路由器泛洪攜帶有C-RP信息的BSR報文;
在步驟S205,路由器B、 C……G收到BSR報文后,都以同樣的公式fiil計算 其BS一Timeout,以此來超時BSR信息,這樣就能保證1、 全網路由器上的BSR的HOLDTIME必須配置一致。
2、 所有CRP的HOLDTIME必須不小于當選BSR的報文發送間隔。 參見圖9,為本發明提供的自舉路由器超時時間管理方法的第三實施例流程
示意結合圖3,說明本實施例提供的自舉路由器超時時間管理的方法流程; 圖3中,B路由器上配置C_RP_Adv—Periodl , C路由器上配置
C—RP—Adv—Period2,其他路由器都不需要配置C一RP一Adv一Period、 BS_Period、
BSJimeout等值。
所述自舉路由器超時時間管理的方法流程如下
在步驟S300, B路由器以C—RP—Adv—Period 1 、 C路由器以C_RP—Adv_Period2 為間隔分別周期性將C-RP信息發送給A路由器(即當選的BSR路由器),C-RP 報文的Holdtime值通過公式來計算(例如,2.5 x C_RP_Adv_Period);
在步驟S301,當選自舉路由器(BSR-A)收集到來自各個RP的RP信息后,將 其存儲在RP信息集中;
在步驟S302,當選自舉路由器(BSR-A)通過一個公式&l計算其BS—Timeout;
需要說明的是,此次的公式可以是選擇最小的C-RP Holdtime作為其A-BSR 超時時間管理RP信息的BS—Timeout,此處假設為路由器C發送的C-RP報文中的 Holdtime值;
在步驟S303,當選自舉路由器(BSR-A)根據公式(例如,BS_Period = 〔BS—Timeout-10〕 /2 )計算出BSM報文的發送間隔;
在步驟S304,當選自舉路由器(BSR-A)以BS—Period為間隔周期性向整
個組播網的所有非E-BSR泛洪攜帶有C-RP信息的BSM報文;在發送的BSR
報文中,把當選BSR使用的Holdtime添加在報文中。
在步驟S305,路由器B、 C……G收到BSM報文后,都以報文中的BSR
Holdtime ,以此來超時BSM信息,這樣就能保證
1 、全網路由器上的B SR的HOLDTIME必須配置 一致。
2、所有CRP的HOLDTIME必須不小于當選BSR的報文發送間隔。
實施本發明提供的自舉路由器及其超時時間管理的方法和系統,通過使用
C-RP的Holdtime值計算BSR的Holdtime值,以在PIM-SM網絡中實現自適應的方
式配置BSR的Holdtime值,并保證配置的一致性,減少對手工配置的依賴,避免錯誤配置帶來的振蕩。
以上所揭露的僅為本發明 一種較佳實施例而已,當然不能以此來限定本發 明之權利范圍,因此依本發明權利要求所作的等同變化,仍屬本發明所涵蓋的 范圍。
權利要求
1、一種自舉路由器超時時間管理的方法,其特征在于,包括接收來自候選匯聚節點路由器發送的候選匯聚節點信息,所述候選匯聚節點信息攜帶有其在自舉路由器的保持時間值;將收到的候選匯聚節點信息存儲在匯聚節點信息集中;用第一預定公式由候選匯聚節點信息的保持時間值計算出一自舉路由器超時時間值,并以該超時時間值用第二預定的公式計算出一發送自舉消息報文的時間間隔;以所述時間間隔向整個組播網絡的所有路由器發送攜帶有候選匯聚節點信息的自舉消息報文。
2、 如權利要求1所述的自舉路由器超時時間管理的方法,其特征在于,自舉路由器以所述時間間隔向整個組播網絡的所有路由器發送攜帶有候選 匯聚節點信息的自舉消息報文后,非當選自舉路由器采用與所述當選自舉路由 器相同的超時時間值來超時管理所述自舉消息報文和候選匯聚節點信息。
3、 如權利要求2所述的自舉路由器超時時間管理的方法,其特征在于,自 舉路由器發送的自舉消息報文通過一字段攜帶一超時時間值,非當選自舉路由 器采用該超時時間值超時管理所述自舉消息報文。
4、 如權利要求1所述的自舉路由器超時時間管理的方法,其特征在于,所 述接收來自候選匯聚節點路由器向其發送的候選匯聚節點信息,所述候選匯聚 節點信息攜帶有其在自舉路由器和其他路由器上的保持時間值的步驟中的所述 保持時間值是由自舉路由器根據所述候選匯聚節點發送報文的時間間隔,用第 三預定的公式計算獲得。
5、 如權利要求4所述的自舉路由器超時時間管理的方法,其特征在于,所 述計算保持時間值的第三預定公式為Holdtime=C x C—RP—Adv—Period; Holdtime為保持時間值、C為常數值、C_RP_Adv—Period為候選匯聚節點發送報文的時間間隔。
6、如權利要求1所述的自舉路由器超時時間管理的方法,其特征在于,所 述用第一預定公式由候選匯聚節點信息的保持時間值計算出一自舉路由器的超 時時間值,并以該超時時間值用第二預定的公式計算出 一發送自舉消息報文的 時間間隔的步驟中,計算超時時間值的第一預定公式為BS—Timeoute {Holdtimel, Holdtime2...HoldtimeN}; BS—Timeout為超時時間值,Holdtimel, Holdtime2…HoldtimeN為所述匯聚節點信息中各個候選匯聚節點信息的保持時 間值;計算發送自舉消息報文的時間間隔的第二預定公式為BS—Period= (BS—Timeout-Cl ) /C2; BS—Period為時間間隔,CI 、 C2表示常數值。
7、如權利要求1所述的自舉路由器超時時間管理的方法,其特征在于,所管理所述自舉消息報文和其攜帶的候選匯聚節點信息的步驟為非當選自舉路由器采用所述第 一預定公式計算出超時時間值來超時時間管 理所述自舉消息報文和其攜帶的候選匯聚節點信息。
8、如權利要求1所述的自舉路由器超時時間管理的方法,其特征在于,所 述自舉消息報文中還攜帶有自舉消息報文的保持時間值。
9、如權利要求8所述的自舉路由器超時時間管理的方法,其特征在于,所所述自舉消息報文和候選匯聚節點信息的步驟為非當選自舉路由器接收來自所述當選自舉路由器的自舉消息報文,并以其 攜帶的保持時間值作為非當選自舉路由器的超時時間值來超時管理所述自舉消 息報文。
10、 一種路由器,其特征在于,包括信息接收模塊,用于接收來自候選匯聚點路由器向其發送的候選匯聚節點 信息,所述候選匯聚節點信息攜帶有其在自舉路由器上的保持時間值;信息存儲模塊,用于將所述收到的候選匯聚節點信息存儲在匯聚節點信息集中;超時計算模塊,用于根據所述候選匯聚節點信息的保持時間值計算出一超時間值,并用以決定其發送自舉消息報文的時間間隔;報文發送模塊,用于以超時計算模塊計算出的時間間隔向整個組播網絡的 所有路由器發送攜帶有候選匯聚節點信息的自舉消息報文。
11、 如權利要求IO所述的路由器,其特征在于,還包括;時間記錄模塊,用于將自舉消息報文的保持時間記錄于自舉消息報文一字 段中。
12、 一種路由器,其特征在于,包括信息接收模塊,用于接收來自當選路由器向其發送的自舉消息報文; 信息存儲模塊,用于存儲所述收到的自舉消息報文中攜帶的候選匯聚節點 信息;超時計算模塊,用于根據所述當選自舉路由器的超時間值,計算出一超時 間值用以超時管理其存儲的自舉消息報文以及所述候選匯聚節點信息。
13、 一種自舉路由器超時時間管理系統,其特征在于,包括當選自舉路由器,用于接收并存儲來自候選匯聚點路由器向其發送的候選 匯聚節點信息,根據所述候選匯聚節點信息的保持時間值計算其超時間值,并 將候選匯聚節點信息攜帶在自舉消息報文中發送至各個非當選自舉路由器;非當選自舉路由器,用于采用與所述當選自舉i 各由器相同的超時間值來超 時時間管理所述自舉信息報文。
全文摘要
本發明公開了一種自舉路由器超時時間管理的方法,包括接收來自候選匯聚節點路由器發送的候選匯聚節點信息,所述候選匯聚節點信息攜帶有其在自舉路由器的保持時間值;將收到的候選匯聚節點信息存儲在匯聚節點信息集中;用第一預定公式由候選匯聚節點信息的保持時間值計算出自舉路由器超時時間值,并以該超時時間值用第二預定的公式計算出一發送自舉消息報文的時間間隔;以所述時間間隔向整個組播網所有路由器發送攜帶有候選匯聚節點信息的自舉消息報文。本發明還公開了一種路由器及超時時間管理系統。采用本發明,具有保證配置當選BSR和其他路由器以及C-RP的Holdtime的一致性,減少對手工配置的依賴,避免錯誤配置帶來振蕩。
文檔編號H04L12/18GK101442474SQ20071003161
公開日2009年5月27日 申請日期2007年11月23日 優先權日2007年11月23日
發明者周小牛, 段少雄, 蘇海洋, 鋒 郭 申請人:華為技術有限公司