一种dr选举方法及路由器的制作方法

文档序号:7748420阅读:547来源:国知局
专利名称:一种dr选举方法及路由器的制作方法
技术领域
本发明涉及协议无关组播-稀疏模式(PIM-SM,Protocol IndependentMulticast-Sparse Mode)技术领域,尤其涉及一种指定路由器(DR, DesignatedRouter)选举方法及路由器。
背景技术
PIM-SM协议中,在PIM网络的多个路由器中选举出一个作为DR,DR将作为该PIM
网络中组播信息的唯一转发者,负责接收来自组播源的组播流量,并将该组播流量转发至用户端。DR选举的方式为PIM网络中的各个路由器相互之间周期性地发送哈罗(Hello) 报文,该Hello报文携带该路由器的DR优先级;每个路由器根据该PIM网络中所有路由器的DR优先级,选举DR优先级最高的路由器作为该PIM网络的DR。如果DR优先级相同,则选择IP地址最大的路由器作为DR。当DR出现故障时,将会重新触发新的DR选举过程。如图1为现有技术中的PIM网络结构示意图。在图1中,PIM网络中包括4个路由器,即路由器A、B、C和D,这4个路由器的DR优先级依次降低。在进行DR选举时,由于 A的DR优先级最高,故选举A作为该PIM网络的DR ;当A发生故障时,A不再发送Hello报文,在剩余的3个路由器中,由于B的DR优先级最高,故选举B作为该PIM网络的DR,DR将由原来的A切换为B ;当A重启且接口的PIM-SM协议恢复后,A恢复发送Hello报文,此时重新将A选举为DR,DR又由B切换为A。在DR切换为A之后,此时A的单播路由表可能尚未完全准备好,这就导致A无法正确转发组播流量。可见,现有的DR选举机制没有考虑某些特殊情况,基于完全抢占的DR选举算法选举出的DR设备可能是一台尚未完全准备好的路由器,因此可能引发组播流量转发的中断。

发明内容
本发明提供了一种选举DR的方法,能够避免DR选举后出现组播流量转发中断的现象。本发明还提供了一种路由器,能够避免DR选举后出现组播流量转发中断的现象。本发明的技术方案是这样实现的一种DR选举方法,应用于包括多个路由器的PIM网络,包括所述PIM网络中各个路由器发送携带运行时间选项的哈罗Hello报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;所述各个路由器接收PIM网络中每个路由器发送的Hello报文,根据所述Hello 报文携带的运行时间选项,在所述PIM网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举DR ;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM网络开始稳定的时刻的路由器。
一种路由器,应用于包括多个所述路由器的PIM网络,包括发送模块,用于发送携带运行时间选项的Hello报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;接收模块,用于接收PIM网络中每个路由器发送的Hello报文;选举模块,用于根据所述接收模块接收的Hello报文携带的运行时间选项,在所述PIM网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举 DR;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM网络开始稳定的时刻的路由器。可见,本发明提出的DR选举方法和路由器,在路由器发送的Hello报文中增加运行时间选项,该运行时间选项包括该路由器已经运行的时间和期望的PIM网络初始状态持续时间;之后,各个路由器根据Hello报文中的运行时间选项包括的信息,选择开始运行的时刻不晚于PIM网络开始稳定的时刻的路由器,作为参与DR选举的路由器,并在参与DR选举的路由器中选举DR。通过这种方式,保证由已经稳定工作的路由器充当新的DR,因而能够避免DR选举后出现组播流量转发中断的现象。


图1为现有技术中的PIM网络结构示意图;图2为本发明选举DR的方法流程图;图3为本发明实施例Uptime选项的结构示意图;图4为本发明实施例路由器及PIM网络的运行时间示意图;图5为本发明实施例路由器的结构示意图。
具体实施例方式本发明提出一种选举DR的方法,该方法应用于包括多个路由器的PIM网络,如图 2为本发明选举DR的方法流程图,该方法包括步骤201 所述PIM网络中各个路由器发送携带运行时间选项的Hello报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;步骤202 所述各个路由器接收PIM网络中每个路由器发送的Hello报文,根据所述Hello报文携带的运行时间选项,在所述PIM网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举DR;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM网络开始稳定的时刻的路由器。以下以图1所示的PIM网络为例,举具体的实施例详细介绍。第一步,发送Hello报文在图1所示的PIM网络中存在4个路由器,S卩A、B、C和D,各个路由器之间互相周期性地发送Hello报文,该Hello报文携带运行时间(Uptime)选项,如图3为本发明实施例Uptime选项的结构示意图,包括类型(Type)字段,用于表示该Uptime选项的类型,可以取值为30 ;长度(Length)字段,用于表示该Uptime选项的长度,可以取值为4,单位为字节;
运行小时数(UPJtours)字段,用于表示发送该Hello报文的路由器已经运行的时间,单位为小时,不足1小时时设置为0 ;门限(Threshold)字段,用于表示发送该Hello报文的路由器期望的PIM网络初始状态持续时间,单位为小时。第二步,选择参与DR选举的路由器通过第一步相互发送Hello报文,A、B、C和D四个路由器均获知了 PIM网络中各个路由器已经运行的时间及期望的PIM网络初始状态持续时间,所述获知的信息见表1的第2列和第3列。
权利要求
1.一种指定路由器DR选举方法,应用于包括多个路由器的协议无关组播PIM网络,其特征在于,所述方法包括所述PIM网络中各个路由器发送携带运行时间选项的哈罗Hello报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;所述各个路由器接收PIM网络中每个路由器发送的Hello报文,根据所述Hello报文携带的运行时间选项,在所述PIM网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举DR;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM 网络开始稳定的时刻的路由器。
2.根据权利要求1所述的方法,其特征在于,所述方法中,路由器开始运行的时刻为 当前时刻减去所述路由器已经运行的时间的差;所述PIM网络开始稳定的时刻为当前时刻减去所述PIM网络已经运行的时间,再加上所述PIM网络的初始状态持续时间;其中,所述PIM网络已经运行的时间等于所述PIM网络中所有路由器已经运行的时间的最大值,所述PIM网络的初始状态持续时间等于所述PIM 网络中所有路由器期望的PIM网络初始状态持续时间的最大值。
3.—种路由器,应用于包括多个所述路由器的PIM网络,其特征在于,所述路由器包括发送模块,用于发送携带运行时间选项的Hello报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;接收模块,用于接收PIM网络中每个路由器发送的Hello报文;选举模块,用于根据所述接收模块接收的Hello报文携带的运行时间选项,在所述PIM 网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举DR;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM网络开始稳定的时刻的路由器。
4.根据权利要3所述的路由器,其特征在于,所述选举模块计算的路由器开始运行的时刻为当前时刻减去所述路由器已经运行的时间的差;所述选举模块计算的PIM网络开始稳定的时刻为当前时刻减去所述PIM网络已经运行的时间,再加上所述PIM网络的初始状态持续时间;其中,所述PIM网络已经运行的时间等于所述PIM网络中所有路由器已经运行的时间的最大值,所述PIM网络的初始状态持续时间等于所述PIM网络中所有路由器期望的PIM网络初始状态持续时间的最大值。
全文摘要
本发明提出一种指定路由器(DR)选举方法和路由器,其中方法包括协议无关组播(PIM)网络中各个路由器发送携带运行时间选项的哈罗(Hello)报文;所述运行时间选项包括所述路由器已经运行的时间和所述路由器期望的PIM网络初始状态持续时间;所述各个路由器接收PIM网络中每个路由器发送的Hello报文,根据所述Hello报文携带的运行时间选项,在所述PIM网络的所有路由器中选择参与DR选举的路由器,在所述参与选举的路由器中选举DR;所述参与DR选举的路由器为开始运行的时刻不晚于所述PIM网络开始稳定的时刻的路由器。本发明能够避免DR选举后出现组播流量转发中断的现象。
文档编号H04L12/18GK102238074SQ201010168660
公开日2011年11月9日 申请日期2010年5月4日 优先权日2010年5月4日
发明者哈达 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1