路由设备切换方法及路由设备的制作方法

文档序号:7747284阅读:191来源:国知局
专利名称:路由设备切换方法及路由设备的制作方法
技术领域
本发明实施例涉及网络通信组播技术领域,尤其涉及一种共享网段中指定路由设 备故障恢复时的路由设备切换方法及路由设备。
背景技术
IP组播协议主要分为主机-路由设备之间的组成员关系协议(InternetGroup Membership Protocol,简称IGMP)和路由设备-路由设备之间的组播路由协议。IGMP协 议用于建立并维护主机_路由设备之间的组播组成员关系;组播路由协议则运行在各路由 设备之间,根据IGMP维护的组播组成员关系信息,由各路由设备一起运用一定的组播路由 算法构造组播分发树进行组播流转发。独立组播协议(Protocol Independent Multicast,简称PIM)是当前组播路由协 议中应用比较广泛的一种,它利用各种单播路由协议建立的单播路由表对组播流执行反转 路径转发RPF (Reverse Path Forwarding)检查,从而建立组播路由表项构造组播分发树, 转发组播流。独立组播协议-稀疏模式(Protocol Independent Multicast-Sparse Mode, 简称PIM-SM)是PIM协议的一种,它通过PIM路由设备显式发送组播加入、剪枝报文建立 起基于汇聚点 RP (Rendezvous Point)的共享树(RendezvousPoint Tree,简称RPT)或基 于源的最短路径树(Shortest Path Tree,简称SPT),组播流沿着共享树RPT或最短路径 树SPT转发到主机上。在实际组播应用中,为了提高组网可靠性,主机通常会通过两台或两台以上的路 由设备连接到同一共享网段,共享网段上的各路由设备通过PIM协议的通知(Hello)报文 建立组播邻居关系。图1为现有组播网络的结构示意图,其中,实线箭头表示组播流沿组播 分发树被转发到主机;虚线箭头表示指定路由设备(Designated Router,简称DR)向RP发 送组播加入报文;点划线箭头表示主机发送IGMP加入报文。如图所示,主机通过两台路由 设备A和路由设备B接入到组播网络中,路由设备A和路由设备B通过相互之间发送通知报 文建立组播邻居关系。为了避免这种共享网段中出现组播流重复复制的情况,根据PIM-SM 协议会在共享网段中选举出一台路由设备为指定路由设备DR,剩余的为备份指定路由设备 (BackupDesignated Router,简称BDR)。通过共享网段中各路由设备相互之间发送的携带 有优先级选项的通知报文进行DR竞选,拥有最高优先级的路由设备将被选举为共享网段 中的DR ;假如优先级相同或共享网段中至少有一台路由设备不支持在通知报文中携带优 先级,则接口拥有最大IP地址的路由设备被选举为DR。当共享网段中的DR出现故障时,剩 余的BDR接收通知报文将会超时,这时剩余的BDR之间会触发新的DR选举过程。选举出来 的DR作为共享网段中组播流的唯一转发者,向上游方向的RP和组播源发起组播加入报文, 以中请建立RPT和SPT。路由设备A和路由设备B通过DR竞选后,假定路由设备A被竞选为DR,路由设备 B被竞选为BDR,DR和BDR都会处理主机发送的IGMP加入报文,但只有DR会向上游方向的 RP和组播源发起组播加入报文,建立组播路由表项构造组播分发树。此后组播流沿组播分发树经由DR转发给下游的接收主机。当共享网段的DR和BDR结合现有的双向转发检测协议 (BidirectionalForwarding Detection,简称BFD)等链路故障检测机制时,BDR可以尽快 发现DR故障,从而立即升级为DR并向上游发起组播加入报文,然后由这个新的DR,即路由 设备B,会按照新构造的组播分发树转发组播流给主机。当原DR,即路由设备A故障恢复后, 共享网段上的两台路由设备一般会再次进行DR竞选,路由设备A会重新恢复成为DR,而路 由设备B会再次降级为BDR。重新成为DR的路由设备A通过再次向上游发起组播加入报 文,构造组播分发树并转发组播流给主机;而降级为BDR的路由设备B则向上游发起组播剪 枝报文,删除组播分发树并停止转发组播流给主机。现有技术中至少存在如下问题作为DR的路由设备A出现故障时,路由设备A上 的组播分发树会被删除,因此等路由设备A故障恢复再次竞选为DR后,需要重新向上游发 起组播加入报文构造组播分发树,升级为DR的路由设备需要重新建立组播分发树,而降级 为BDR的路由设备会立即删除组播分发树。由于存在路由设备的角色切换延迟,当故障恢 复后,如果恢复为DR的路由设备A对应的组播分发树还未建立导致还不能向主机转发组播 流,而已经降级为BDR的路由设备B即又已经停止转发组播流给主机,就会导致主机接收的 组播流出现暂时断流。尤其是,当恢复为DR的路由设备A由于上游网络故障(如图1中的 路由设备C出现故障)而导致路由设备A上的组播分发树无法建立时,会使接收主机的组 播流出现永久断流。因此,会对IPTV、视频会议等实时性要求较高的组播业务造成严重影 响。

发明内容
本发明实施例提供一种路由设备切换方法及路由设备,用以避免由于DR设备故 障恢复引起DR角色切换而导致的组播流断流的问题。本发明实施例提供一种路由设备切换方法,其中包括发生网络故障后,原本作为DR的第一路由设备降级为BDR ;所述第一路由设备判断所述网络故障中的共享链路故障是否已恢复;当判断出所述共享链路故障已恢复后,判断所述第一路由设备是否满足被竞选为 DR的条件;当判断出所述第一路由设备满足被竞选为DR的条件后,判断所述网络故障中的 上游网络故障是否已恢复;当判断出所述上游网络故障已恢复后,向上游网络发起组播加入报文;当接收到来自于所述上游网络的组播业务响应时,所述第一路由设备升级为DR。本发明另一实施例提供一种路由设备,其中包括级别调整模块,用于当发生网络故障后,将原本作为DR的所述路由设备降级为 BDR ;并用于当接收到来自于上游网络的组播业务响应时,将所述路由设备升级为DR ;第一判断模块,用于当级别调整模块将所述路由设备降级为BDR后,判断所述网 络故障中的共享链路故障是否已恢复;第二判断模块,用于当第一判断模块判断出所述共享链路故障已恢复后,判断所 述路由设备是否满足被竞选为DR的条件;
第三判断模块,用于当第二判断模块判断出所述路由设备满足被竞选为DR的条 件后,判断所述网络故障中的上游网络故障是否已恢复;加入报文发起模块,用于当第三判断模块判断出所述上游网络故障已恢复后,向 上游网络发起组播加入报文。本发明在确定接收到来自于上游网络的组播业务响应之前,避免发生角色切换, 即避免使第一路由设备升级为DR并且也避免共享网段中的第二路由设备降级为BDR,使第 二路由设备仍然作为DR为主机转发组播流,因此不会产生断流,因此提高了组播业务应用 可靠性,改进了业务质量。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发 明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根 据这些附图获得其他的附图。图1为现有组播网络的结构示意图;图2为本发明所述路由设备切换方法实施例的流程图;图3为本发明所述路由设备实施例的结构示意图;图4为图3所示第二判断模块的可选结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员 在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图2为本发明所述路由设备切换方法实施例的流程图,如图所示,该方法包括如 下步骤步骤101,发生网络故障后,原本作为DR的第一路由设备降级为BDR。其中,网络故障是指第一路由设备的组播网络出现故障,具体包括上游网络故障 及路由设备所在共享网段的共享链路故障等。所述共享链路故障是指在共享网段上多个路 由设备共享使用的链路上发生的故障;上游网络故障是指从第一路由设备到上游设备(如 上游RP和组播源)之间的故障。具体地,第一路由设备可以通过现有的双向转发检测(BidirectionalForwarding Detection,简称BFD)协议等故障检测机制发现网络故障后,降级为BDR,此后,第一路由 设备停止向该第一路由设备所在的共享网段发送通知报文或者发送最低优先级的通知报 文,使所述共享网段中原本作为BDR的第二路由设备立即升级为DR,并建立组播分发树为 主机转发组播流,因此,在网络故障恢复前,主机接收组播流不受影响。其中,通知报文携带 的优先级是为每个路由设备自身配置的,具体可以根据需要进行设定,所述最低优先级是 指低于共享网段中所有其他路由设备的优先级。另外,第一路由设备通过链路故障检测机制发现该路由设备所在共享网段的共享链路故障后,第一路由设备还可以向上游网络发起组播剪枝报文、并删除组播转发表项。步骤102,所述第一路由设备判断所述网络故障中的共享链路故障是否已恢复。具体地,可以通过链路故障检测机制判断共享链路故障的恢复,当共享链路故障 恢复后,第一路由设备可以接收到来自于主机的IGMP加入报文。其中,所述IGMP加入报文 用于建立IGMP组播组(Group),该IGMP组播组是主机加入的IGMP组成员信息。步骤103,当判断出所述共享链路故障已恢复后,判断所述第一路由设备是否满足 被竞选为DR的条件。具体地,当网络故障为所述共享链路故障,该故障恢复后,可以在预设的检测时间 内检测共享网段上其它路由设备发送的通知报文,如果共享网段中存在其它路由设备发送 的通知报文,则第一路由设备会收到此通知报文;如果共享网段中不存在其它路由设备或 者存在的其它路由设备已停止向共享网段发送通知报文,则第一路由设备不会收到通知报 文。具体地,可以设置一个检测定时器,检测定时器的时长应该大于共享网段中其它路由设 备发送通知报文的最长报文发送间隔。检测定时器在所述共享链路故障恢复时启动,检测 定时器超时时关闭。如果在检测定时器设定的关闭时间内收到其它路由设备发送的通知报 文,则认为收到通知报文;否则认为没收到通知报文。进一步地,如果共享网段上只有两台路由设备,则检测定时器在收到通知报文时 就可以直接关闭,无须等到定时器超时时再关闭;如果共享网段上存在多台路由设备,则可 以在定时器未超时时已收到所有其它路由设备的通知报文时直接关闭定时器、或者等到定 时器超时后才能关闭。另外,如果网络故障仅为上游网络故障,则该路由设备会始终收到共享网段中其 他路由设备发送的通知报文。当接收到的通知报文的优先级均低于所述第一路由设备的优先级,或者在所述检 测时间内未收到通知报文时,判断出所述第一路由设备满足被竞选为DR的条件,然后继续 执行步骤104 ;否则执行步骤107。步骤104,当判断出所述第一路由设备满足被竞选为DR的条件后,判断所述网络 故障中的上游网络故障是否已恢复。当判断出所述上游网络故障已恢复后,执行步骤105 ; 否则执行步骤107。具体地,可以判断所述第一路由设备上是否存在到上游RP和组播源的单播路由, 当所述单播路由存在时,则判断出所述上游网络故障已恢复,否则表明该上游网络故障尚 未恢复。步骤105,当判断出所述上游网络故障已恢复后,向上游网络发起组播加入报文。步骤106,当接收到来自于所述上游网络的组播业务响应时,所述第一路由设备升 级为DR,并向所述共享网段发送最高优先级的通知报文,使共享网段中的第二路由设备降 级为BDR。其中,组播业务响应是指收到向上游设备请求的组播流。所述最高优先级是指高 于共享网段中所有其他路由设备的优先级,共享网络中的第二路由设备接收到最高优先级 的通知报文后,便会降级为BDR。若没有接收到所述组播业务响应,则执行步骤107。步骤107,第一路由设备继续停止向共享网段发送通知报文或者发送最低优先级 的通知报文,使所述第一路由设备保持作为BDR,使第二路由设备保持作为DR,即不发生角色切换。本实施例所述方法在确定接收到来自于上游网络的组播业务响应之前,避免发生 角色切换,即避免使第一路由设备升级为DR并且也避免共享网段中的第二路由设备降级 为BDR,使第二路由设备仍然作为DR为主机转发组播流,因此不会产生断流,因此提高了组 播业务应用可靠性,改进了业务质量。图3为本发明所述路由设备实施例的结构示意图,该路由设备在发生网络故障前 原本作为DR,相当于前述方法实施例中所述的第一路由设备,可以实现上述方法实施例。如 图所示,该路由设备10包括级别调整模块11、第一判断模块12、第二判断模块13、第三判 断模块14、加入报文发起模块15,其工作原理如下当发生网络故障后,路由设备10中的级别调整模块11将原本作为DR的所述路由 设备10降级为BDR,具体地,可以采用BFD协议等故障检测机制发现网络故障;此后,由第 一判断模块12判断所述网络故障中的共享链路故障是否已恢复,具体地,可以通过链路故 障检测机制判断共享链路故障的恢复;当第一判断模块12判断出所述共享链路故障已恢 复后,由第二判断模块13判断所述路由设备是否满足被竞选为DR的条件。具体地,如图4所示,该第二判断模块13中的通知报文检测单元1301在预设的 检测时间内检测所述共享网段上其它路由设备发送的通知报文;此后,竞选结果判断单元 1302当通知报文检测单元1301接收到的通知报文的优先级均低于所述路由设备的优先 级,或者在所述检测时间内未收到通知报文时,判断出所述路由设备满足被竞选为DR的条 件。当第二判断模块13判断出所述路由设备满足被竞选为DR的条件后,由第三判断 模块14判断所述网络故障中的上游网络故障是否已恢复,具体地,可以判断所述路由设备 10上是否存在到上游RP和组播源的单播路由,当所述单播路由存在时,则判断出所述上游 网络故障已恢复;当第三判断模块14判断出所述上游网络故障已恢复后,由加入报文发起 模块15向上游网络发起组播加入报文;当接收到来自于上游网络的组播业务响应时,再由 级别调整模块11将所述路由设备升级为DR。另外,该路由设备10中还可以进一步包括通知报文发送模块16,用于当级别调整 模块11将所述路由设备10升级为DR后,向共享网段发送最高优先级的通知报文,使所述 共享网段中的另一路由设备(图中未示出)降级为BDR ;并用于当级别调整模块11将所述 路由设备10降级为BDR后,停止向所述共享网段发送通知报文或者发送最低优先级的通知 报文,使所述共享网段中原本作为BDR的另一路由设备(图中未示出)升级为DR。如果第二判断模块13判断出所述路由设备不满足被竞选为DR的条件,或者所 述路由设备10未接收到来自于上游网络的组播业务响应,则所述仍然路由设备继续停止 向共享网段发送通知报文或者发送最低优先级的通知报文,使所述路由设备10保持作为 BDR,而使共享网段中的另一路由设备保持作为DR,即不发生角色切换。本实施例所述设备在确定接收到来自于上游网络的组播业务响应之前,避免发生 角色切换,即避免使原本作为BDR的路由设备升级为DR并且也避免共享网段中的另一路由 设备降级为BDR,而仍然作为DR为主机转发组播流,因此不会产生断流,因此提高了组播业 务应用可靠性,改进了业务质量。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括ROM、RAM、磁碟或者 光盘等各种可以存储程序代码的介质。 最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替 换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精 神和范围。
权利要求
一种路由设备切换方法,其特征在于,包括发生网络故障后,原本作为指定路由设备DR的第一路由设备降级为备份指定路由设备BDR;所述第一路由设备判断所述网络故障中的共享链路故障是否已恢复;当判断出所述共享链路故障已恢复后,判断所述第一路由设备是否满足被竞选为DR的条件;当判断出所述第一路由设备满足被竞选为DR的条件后,判断所述网络故障中的上游网络故障是否已恢复;当判断出所述上游网络故障已恢复后,向上游网络发起组播加入报文;当接收到来自于所述上游网络的组播业务响应时,所述第一路由设备升级为DR。
2.根据权利要求1所述的路由设备切换方法,其特征在于,所述第一路由设备升级为 DR之后还包括向共享网段发送最高优先级的通知报文,使所述共享网段中的第二路由设 备降级为BDR。
3.根据权利要求1所述的方法,其特征在于判断所述第一路由设备是否满足被竞选为 DR的条件包括在预设的检测时间内检测所述共享网段上其它路由设备发送的通知报文; 当接收到的通知报文的优先级均低于所述第一路由设备的优先级,或者在所述检测时 间内未收到通知报文时,判断出所述第一路由设备满足被竞选为DR的条件。
4.根据权利要求1所述的方法,其特征在于判断所述网络故障中的上游网络故障是否 已恢复包括判断所述第一路由设备上是否存在到上游RP和组播源的单播路由,当所述单 播路由存在时,则判断出所述上游网络故障已恢复。
5.根据权利要求1所述的方法,其特征在于所述原本作为DR的第一路由设备降级为 BDR之后还包括所述第一路由设备停止向该第一路由设备所在的共享网段发送通知报文 或者发送最低优先级的通知报文,使所述共享网段中原本作为BDR的第二路由设备升级为 DR0
6.一种路由设备,其特征在于,包括级别调整模块,用于当发生网络故障后,将原本作为指定路由设备DR的所述路由设备 降级为备份指定路由设备BDR;并用于当接收到来自于上游网络的组播业务响应时,将所 述路由设备升级为DR;第一判断模块,用于当级别调整模块将所述路由设备降级为BDR后,判断所述网络故 障中的共享链路故障是否已恢复;第二判断模块,用于当第一判断模块判断出所述共享链路故障已恢复后,判断所述路 由设备是否满足被竞选为DR的条件;第三判断模块,用于当第二判断模块判断出所述路由设备满足被竞选为DR的条件后, 判断所述网络故障中的上游网络故障是否已恢复;加入报文发起模块,用于当第三判断模块判断出所述上游网络故障已恢复后,向上游 网络发起组播加入报文。
7.根据权利要求6所述的路由设备,其特征在于,还包括通知报文发送模块,用于当 级别调整模块将所述路由设备升级为DR后,向共享网段发送最高优先级的通知报文,使所述共享网段中的另一路由设备降级为BDR。
8.根据权利要求7所述的路由设备,其特征在于,所述通知报文发送模块还用于当级 别调整模块将所述路由设备降级为BDR后,停止向所述共享网段发送通知报文或者发送最 低优先级的通知报文,使所述共享网段中原本作为BDR的另一路由设备升级为DR。
9.根据权利要求6 8中任一所述的路由设备,其特征在于所述第二判断模块包括 通知报文检测单元,用于在预设的检测时间内检测所述共享网段上其它路由设备发送的通知报文;竞选结果判断单元,用于当通知报文检测单元接收到的通知报文的优先级均低于所述 路由设备的优先级,或者在所述检测时间内未收到通知报文时,判断出所述路由设备满足 被竞选为DR的条件。
全文摘要
本发明提供一种路由设备切换方法及路由设备,其中方法包括发生网络故障后,原本作为DR的第一路由设备降级为BDR;第一路由设备判断网络故障中的共享链路故障是否已恢复;当判断出共享链路故障已恢复后,判断第一路由设备是否满足被竞选为DR的条件;当判断出第一路由设备满足被竞选为DR的条件后,判断网络故障中的上游网络故障是否已恢复;当判断出上游网络故障已恢复后,向上游网络发起组播加入报文;当接收到来自于上游网络的组播业务响应时,第一路由设备升级为DR。本发明在确定接收到来自于上游网络的组播业务响应之前,避免发生角色切换,因此不会产生断流,因此提高了组播业务应用可靠性,改进了业务质量。
文档编号H04L12/56GK101841478SQ20101015746
公开日2010年9月22日 申请日期2010年4月27日 优先权日2010年4月27日
发明者陈佑建 申请人:北京星网锐捷网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1