组播流转发实现方法和路由网桥(rb)的制作方法

文档序号:7865950阅读:655来源:国知局
专利名称:组播流转发实现方法和路由网桥(rb)的制作方法
技术领域
本发明涉及网络通信技术,更具体的说,是一种组播流转发实现方法和路由网桥(RB)。
背景技术
TRILL是多链接透明互连(Transparent Interconnection over Lots of Links)的英文缩写,用于解决数据中心大二层网络中的多路径(或称为L2MP(Layer 2 MultiplePath))问题。通过将 IS-IS(Intermediate System to Intermediate System,中间系统对中间系统)路由协议引入二层网络实现了 L2MP。在TRILL网络中,运行TRILL协议的设备称为RBridge (路由网桥,下文中也称为“RB”),并由Nickname (别名)唯一标识一台RBridge。在TRILL网络的入口,负责将端设备(End Station)的原始数据帧封装成TRILL格式(即在原始数据帧前面添加TRILL头和外部帧头,TRILL头中主要包括TRILL网络入口和出口路由 网桥的Nickname和跳数)并注入TRILL网络的路由网桥称为Ingress ;在TRILL网络的出口,负责将TRILL数据帧解封为原始数据帧并转发给端设备的路由网桥称为Egress,同时Egress还会学习所述巾贞是哪个Ingress导入TRILL的并形成MAC信息表{D_MAC, Ingress_
Nickname,......}。因为Ingress和Egress路由网桥在TRILL网络中处在边缘位置,因此
又被称为边缘路由网桥(Edge RBridge)。为了避免环路,在TRILL网络的边界,在任何一个VLAN (Virtual Local AreaNetwork,虚拟局域网)内只能由一个RBridge为一个端系统提供服务,这个RBridge称为这个端系统的服务提供者,比如共享链路上,VLAN的指定转发设备(Appointed Forwarder,AF)。这虽然能有效的避免环路,但是也引起了一些问题,比如AF切换后,远端Egress上某些MAC表项中的发生Ingress_Ni ckname变化;在端系统通过点对点链路多归属(Multi-homing,比如通过链路聚合组(Link Aggregation Group, LAG))到多个 RBridge上时,RB链路上的负荷分担会引起远端RBridge上某些MAC表项的Ingress_Nickname频繁波动(称为flip-flop),从而引起回来的流量的乱序与丢报,导致会话中断。为此,TRILL工作组提出了路由网桥组(RBridge Group,RBG)或称为虚拟路由网桥(Virtual RBridge, RBv)的概念。在一个RBv内,组员共享一个Nickname,称为组Nickname, RBv内的RB在将数据帧导入TRILL网络时,用组Nickname封装数据帧,解决了上述flip-flop问题。为了避免组播报文转发中的临时环路,TRILL协议规定RBridge收到组播帧时,必须做RPF (Reverse Path Forwarding,反向路径转发)检查。RPF检查要求在任何一棵组播树上任何一台路由网桥,仅能从一个接口收到另一个RBridge沿着该树发送的组播巾贞,检查失败必须丢弃该巾贞。工作组文稿draft-ietf-trill-cmt-01. txt (简称CMT, CoordinatedMulti-Destination Tree,标定组播树)通过在RBv内的RB之间分配可用组播树,重点关注并解决了多个RBv内的RB导入(上行方向)组播数据帧时存在的RPF问题。对于经过RBv内的RB离开(下行方向)TRILL网络的组播数据帧,CMT规定任何RBv内的RB只能将沿着分配给它的组播树分发的流量导出TRILL网络,避免了端系统收到多份组播报文的风险。如图I所示,假设有5颗组播树,RB I、RB2和RB3分别通告了 {RB I,RBv,TI,T4}、{RB2,RBv, T2,T5}和{RB1,RBv, T3},假设RB4沿着Tl (如图I中粗实线所示的组播树)发出组播流量,那么在该RBv中,只能由RBl将组播流导出TRILL网络,RB2和RB3丢弃该组播流。但是,这种机制在RB或者接入链路故障时,会出现以下问题。首先,当某个RB故障时,会导致组播树在RBv内的RB之间重新分配,在这期间,组播流接收者无法收到期望的数据流;另外,当组播树重新分配完成后,远端RB(如图I中的RB4)可能会重新选择另外一个组播树,这样导致业务中断的时间较长。其次,在对于沿着Tl下发的流量,RBl下的LAGl的RB链路都正常时(即无故障时),用户边缘(Customer Edge, CE)设备CEl和CE2能收到该流量;但是当RBl-CEl在LAGl下的RB链路故障时,如果RB4上重新选择另外一颗组播树,假设是T2的话,那么按照现行的CMT文稿,RB2会将组播流导出。这样带来的一个问题就是,因为LAGl的RB链路故 障,而导致LAG2上的接收者也要从另外一颗树上去接收流量。也就是说,当一个RBv下有多个LAG时,若只有其中一个LAG的RB链路发生故障,也会导致到其他LAG的流量也受到影响。

发明内容
本发明要解决的技术问题是提供一种组播流转发实现方法和路由网桥(RB),以解决现有出现故障时,组播流转发受影响较大的问题。为解决上述技术问题,本发明提供了一种组播流转发实现方法,各路由网桥(RB)根据存储的组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的。为解决上述技术问题,本发明还提供了一种路由网桥(RB),该路由网桥包括分配信息存储单元,用于存储组播树的分配信息,所述组播树是按上行方向和下行方向分别分配的;组播流转发单元,用于根据组播树的分配信息转发上行和/或下行组播流。本发明方法和路由网桥,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,因此,当下行方向发生故障时,不会影响上行方向的组播流转发,进而实现了端系统对TRILL网络的高可靠性接入。


图I是现有CMT文档对组播树的分配示意图;图2是本发明组播流转发实现方法实施例I的流程示意图;图3是本发明组播流转发实现方法实施例2的流程示意图;图4是本发明组播流转发实现方法实施例3的流程示意图;图5是本发明组播流转发实现方法实施例3中组播流转发的过程示意图;图6是本发明组播流转发实现方法实施例4的流程示意图;图7、8是本发明应用实例一至四所采用组播树分配示意图;图9-11是本发明路由网桥(RB)实施例的模块结构示意图。
具体实施例方式下面结合附图和具体实施例对本发明所述技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组
口 ο实施例I如图2所示,本发明实施例I组播流转发实现方法,各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,具体地,该方法包括步骤201 :路由网桥(RB)获取并存储路由网桥组(RBv)的组播树的分配信息,所 述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的;所述组播树的分配信息具体可采用配置方式生成或各路由网桥基于相同的分配算法获得,优选地,可基于负载均衡策略进行分配。本发明对路由网桥(RB)获取路由网桥组(RBv)的组播树的分配信息的具体方法不做限定。在上行方向,可按照现有的CMT机制进行组播树的分配。可理解地,主要是建立路由网桥与组播树之间的映射关系,其即可描述为将组播树分配给路由网桥,也可描述为将路由网桥分配给组播树,二者无实质差别。分配了某个组播树的路由网桥即为该组播树的转发设备。步骤202 :各路由网桥(RB)根据组播树的分配信息进行上行和/或下行组播流转发。所述各RB根据组播树的分配信息进行上行和/或下行组播流转发的过程包括接收到沿组播树上行或下行方向的组播流;根据分配信息判断其是否为该组播树在相应方向上的转发设备;若是,则转发该组播流,否则丢弃该组播流。以上实施例中,将组播树在路由网桥组(RBv)的路由网桥(RB)之间按上行方向和下行方向分别分配,从而可使得,在下行的路由网桥或其对应的链路发生故障时,不会影响上行组播流的转发。实施例2如图3所示,本发明实施例2组播流转发实现方法,各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,具体地,包括步骤301 :路由网桥(RB)获取并存储路由网桥组(RBv)的组播树的分配信息,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,且组播树在下行方向在各个链路聚合组(LAG)或本地局域网(Local Area Network, LAN)内分配;比如存在6棵组播树、3个LAG,则在3个LAG内均分配6棵组播树。所述组播树的分配信息具体可采用配置方式生成或各路由网桥基于相同的分配算法获得,优选地,可基于各个RB负责转发的组播流对应的组播树的数目进行均衡分配。本发明对路由网桥(RB)获取路由网桥组(RBv)的组播树的分配信息的具体方法不做限定。可理解地,主要是建立路由网桥与组播树之间的映射关系,其即可描述为将组播树分配给路由网桥,也可描述为将路由网桥分配给组播树,二者无实质差别。分配了某个组播树的路由网桥即为该组播树的转发设备。步骤302 :各路由网桥(RB)根据组播树的分配信息进行上行和/或下行组播流转发。所述各RB根据下行方向分配的组播树进行下行组播流转发的过程包括接收到沿组播树下行方向的组播流;根据分配信息判断其是否为该组播树在链路聚合组(LAG)或本地局域网(LAN)下行方向上的转发设备; 若是,则转发该组播流,否则丢弃该组播流。以上实施例中,将组播树在路由网桥组(RBv)的路由网桥(RB)之间按上行方向和下行方向分别分配,从而可使得,在下行的路由网桥或其对应的链路发生故障时,不会影响上行组播流的转发,另外,组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配,可使得其中某一 LAG或LAN的链路发生故障时,不会影响其他LAG或LAN的组播流转发。实施例3本发明实施例3着重对下行方向组播流转发进行说明,各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,具体地,如图4所示,组播流转发实现方法包括步骤401 :路由网桥(RB)获取并存储路由网桥组(RBv)的组播树在下行方向上的分配信息,所述组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配,一个组播树在下行方向分配的路由网桥(RB)包括一个主用转发设备和一个备用转发设备;所述组播树的分配信息具体可采用配置方式生成或各路由网桥基于相同的分配算法获得,优选地,可基于负载均衡策略进行分配。本发明对路由网桥(RB)获取路由网桥组(RBv)的组播树的分配信息的具体方法不做限定。可理解地,主要是建立路由网桥与组播树之间的映射关系,其即可描述为将组播树分配给路由网桥,也可描述为将路由网桥分配给组播树,二者无实质差别。分配了某个组播树的路由网桥即为该组播树的转发设备。该实施例中,在下行方向上部分或全部组播树分配一个主用转发设备和一个备用转发设备。在主用转发设备及其对应的链路正常时,由主用转发设备实现对应组播树的组播流转发,仅当主用转发设备或其对应的链路出现故障无法实现正常的组播流转发时,才启用备用转发设备的组播流转发功能。步骤402 :各路由网桥(RB)根据组播树在下行方向上的分配信息进行下行组播流转发。如图5所示,各路由网桥(RB)根据下行方向分配的组播树进行下行组播流转发的过程包括步骤501 :接收沿组播树下行方向的组播流;
步骤502 :根据分配信息判断其是否为组播树在下行方向上的主用转发设备;具体地,路由网桥可通过对为其分配的各个组播树建立标志位,用于表明当前路由网桥是该组播树的主用转发设备还是备用转发设备。步骤503 :若是,则转发该组播流,否则丢弃该组播流。以上实施例中,虽然着重对下行方向进行说明,但仍可将组播树在路由网桥组(RBv)的路由网桥(RB)之间按上行方向和下行方向分别分配,从而可使得,在下行的路由网桥或其对应的链路发生故障时,不会影响上行组播流的转发,另外,组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配,可使得其中某一 LAG或LAN的链路发生故障时,不会影响其他LAG或LAN的组播流转发;同一组播树在下行方向分配的路由网桥(RB)包括一个主用转发设备和一个备用转发设备,可使得在主用转发设备或其对应的链路发生故障时,由受影响的组播树的备用转发设备升级为该组播树的主用转发设备实现组播流转发,从而实现路由网桥组(RBv)的快速保护。
具体地,一个组播树在下行方向显式分配一个备用转发设备,路由网桥(RB)或其对应的链路发生故障时,故障相关的节点向所在RBv内的其他所有路由网桥(RB)发送故障信息;受影响的组播树的备用转发设备升级为该组播树的主用转发设备。具体地,如果是RB故障,则CE是故障相关的节点;如果是RB链路故障,链路对应的RB和CE都感知到故障,则故障相关的点可以是RB和/或CE。针对不同的组播树的分配信息生成方式,故障信息的内容有所不同,比如若采用配置方式,且各RB仅配置自身(即当前RB)的分配信息,即,各路由网桥(RB)获取并存储的分配信息仅包括自身的组播树的分配信息,这种情况下,故障信息需要携带受影响的组播树信息,若在LAG或LAN内分配,还需要携带相关的LAG或LAN的信息,这样接收到组播的故障信息的备用转发设备才能确定其需要转为被影响组播树的主用转发设备;若采用配置方式,且各RB不仅配置有自身的分配信息也配置有其他各RB的分配信息(配置同步),或各RB采用相同的分配算法(算法同步),则各RB不仅了解自身的分配信息,也了解其他各RB的分配信息,或各RB仅配置自身的分配信息,通过交互后实现分配信息的同步(交互同步),此三种情况下,各RB的分配信息是同步的,即所述RBv内的各路由网桥(RB)获取并存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,则组播的故障信息即使不携带受影响的组播树信息和/或LAG、LAN信息,受影响的组播树的备用转发设备也可顺利转为主用转发设备执行相应的组播流的转发。以上故障信息采用组播的方式通知RBv内的其他所有路由网桥(RB),可替换地,若同一 RBv的各路由网桥(RB)获取并存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,具体可通过上述交互同步或配置同步或算法同步;路由网桥(RB)或其对应的链路发生故障时,故障相关的节点根据组播树的分配信息向受影响的组播树的备用转发设备发送故障信息;接收故障信息的备用转发设备升级为该组播树的主用转发设备。实施例4各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,本发明实施例4着重对下行方向组播流转发进行说明,具体地,如图6所示,组播流转发实现方法包括步骤601 :路由网桥(RB)获取并存储路由网桥组(RBv)的组播树在下行方向上的分配信息,所述组播树在下行方向分配是在各个链路聚合组(LAG)或本地局域网(LAN)内分配,且一个组播树在下行方向的分配路由网桥(RB)包括一个主用转发设备和若干个备用转发设备;该实施例中,所述RBv内的各路由网桥(RB)获取并存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息。所述组播树的分配信息具体可采用配置方式生成或各路由网桥基于相同的分配算法获得,优选地,可基于负载均衡策略进行分配。本发明对路由网桥(RB)获取路由网桥组(RBv)的组播树的分配信息的具体方法不做限定。可理解地,主要是建立路由网桥与组播树之间的映射关系,其即可描述为将组播树分配给路由网桥,也可描述为将路由网桥分配给组播树,二者无实质差别。 具体地,一个组播树在下行方向显式或隐式分配若干个备用转发设备,比如,备用转发设备可以是主用转发设备之外的所有路由网桥。步骤602 :各路由网桥(RB)根据组播树在下行方向上的分配信息进行下行组播流转发。以上实施例中,将组播树在路由网桥组(RBv)的路由网桥(RB)之间按上行方向和下行方向分别分配,从而可使得,在下行的路由网桥或其对应的链路发生故障时,不会影响上行组播流的转发,另外,组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配,可使得其中某一 LAG或LAN的链路发生故障时,不会影响其他LAG或LAN的组播流转发;一个组播树在下行方向分配的路由网桥(RB)包括一个主用转发设备和若干个备用转发设备,可使得在主用转发设备或其对应的链路发生故障时,由其中一个受影响的组播树的备用转发设备升级为该组播树的主用转发设备实现组播流转发,从而实现路由网桥组(RBv)的快速保护。该实施例中,路由网桥(RB)或其对应的链路发生故障时,故障相关的节点向所在RBv内的受影响组播树的一个备用转发设备发送故障信息;接收该故障信息的备用转发设备升级为受影响组播树的主用转发设备。因一个组播树分配了多个备用转发设备,因此以上故障信息采用单播的方式通知其中一个备用转发设备升级为该组播树的主用转发设备。故障相关的节点根据所述组播树的分配信息基于负载均衡策略确定升级为主用转发设备的备用转发设备。以上各实施例中,当前主用转发设备收到原主用转发设备或其对应的链路的故障恢复信息后,重新转为备用转发设备。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。下面结合附图和应用实例进一步对发明实施例进行说明。应用实例一以图7为例,一个RBv下部署了两个LAG,整个TRILL网络计算出5颗树,分别记为Tl, T2, Τ3, Τ4 和 Τ5。针对上行方向,按照现有CMT文稿的机制在RBv的RB之间分配组播树,假设RBl分配的结果为{T1,T4},RB2分配的结果为{T2,T5},RB3分配的结果为{T3};针对下行方向,将组播树在RBv的LAG内进行分配。如果RBv的所有RB同时也是RBv某个LAG的RB,则针对该LAG可采用与上行分配相同的分配结果,某一 RB在各个LAG内组播树在下行方向上的主用转发设备,也可以针对各个LAG在下行方向上分配不同的组播树转发角色;RBv从某组播树上接收到下行组播流时,针对上行方向上组播树和下行方向上组播树分配结果相同的情况,在RB上的处理遵循现有的CMT文稿;而针对分配结果不同的情况,RB上是否需要将流量转发到下行链路需要做些改变,即按照在各个LAG内分配的组播树在下行方向的转发角色决定是否转发。具体可参见本文档的后两个应用实例。每个RB将分配的组播树信息通告给其它RBs,实现RBv内的RB之间的信息同步。这可以通过 ESADI (End Station Address Distribution Information,端系统地址分发信息)协议来同步,但不仅仅局限于ESADI的方式。 应用实例2该应用实例2中,通过组播方式进行RB或者RB链路故障通告的场景下。因为通过组播通告故障,所以会有多个RB收到通告。为了避免多个RB同时在成为一个组播树的转发设备,所以在下行方向上组播树分配时,只能将一个RB分配为一个组播树的备用转发者。具体地,在每个RB上显式指定是哪些组播树的主用以及是哪些组播树的备用转发设备,如图3所示的上行和下行的组播树的分配信息,在LAGl内,RBl是Tl和T4的主用转发,是T3的备用转发设备;在1^62内,RBl是T2和T3的主用转发设备,是Tl的备用转发设备。在该方式中,是需要显式指定某个组播树的主用和备用转发设备,针对各个组播树,在RB V的某LAG下,只能有一个RB是其主用转发设备和备用转发设备。这样当RB收到组播的通告消息后,根据本地保存的信息以及通告消息中携带的故障信息,就可以判断出是否需要转发收到的组播流。当某RB接收到沿组播树下行方向的组播流时,判断所述RB是否为该组播树在某LAG下行方向上的主用转发设备,若是,则从对应的LAG接口导出该流量;否则,丢弃该流量;如图7当RB4沿着Tl组播树转发的流到达RBv时,RBl,RB2和RB3都能接收到该流,但是由于RBl是LAGl下Tl的主用转发设备,那么RBl会将该流剥掉TRILL头后通过LAGl的接口转发到CEl,而RB2和RB3不会通过LAGl的接口转发该流;同时RB2是在LAG2下Tl的主用转发设备,那么RB2也会将该流剥掉TRILL头后通过LAG2的接口转发到CE2,而RBl和RB3不会将该流通过LAG2的接口转发。针对各个RB,当所述RB故障或者某LAG下对应的RB链路发生故障时,和该故障相关的节点(具体地,如果是RB故障,那么由CE发出通告消息;如果是RB链路故障,链路对应的RB和CE都感知到故障,那么可以是RB或者CE或者两者都发出通告)通过组播消息(可以是控制面消息或者是数据面OAM消息等)将故障信息在RBv内洪泛,该消息中指明了是哪个RB在哪个LAG下的接口发生故障。换句话说,也就是以该RB为主用转发设备的组播树上的流无法通过该RB在该LAG内的接口转发到CE。当其他RB收到通告消息后,根据本地保存的组播树的分配信息以及收到的通告消息,判断自己是否是该消息中指明的组播树在所述LAG下的备用转发设备,如果是,则将所述RB升级为所述组播树在所述LAG下的主用转发设备,并通过对应的LAG接口转发组播流;否则,丢弃收到的组播流。如图7,当RBl-CEl之间在LAGl的RB链路发生故障,受到故障影响的组播流是Tl和T4在LAGl接口的转发。那么RB2和RB3接收到所述组播消息得知所述故障后,RB2判断自己是RBl在LAGl下的Tl和T4的备用转发设备,那么RB2将自身升级为在LAGl下的Tl和T4的主用转发设备,并通过在LAGl下的接口将Tl和T4上的流转发到CE1,RB3判断自己不是RBl在LAGl下分配的主用组播树Tl和T4的备用转发设备,则不会将收到的流通过LAGl的接口转发下去。各个RB在LAG2所属的接口上的下行转发不受影响。应用实例3
只在每个RB上指定是哪些组播树的主用转发设备应用实例3中采用单播方式进行RB或者RB链路故障通告的场景下。在这种情况下,仅有一个RB会收到故障RB通告的故障,不会出现多个RB同时作为一个组播树的主用转发设备,该应用实例可以显示设置或隐式默认其余多个或所有RB为一个组播树的备用转发设备,进而无论哪个RB出现故障了,总能快速实现RBv内的快速保护。如图8所示的分配的上行和下行的组播树的分配信息,在LAGl内,为RBl分配了{LAGI, Tl,T4}的绑定关系,那么可以得知RBl是Tl和T4在LAGl内的转发设备,可作为T2、T3和T5的备用转发设备;另外还为RB2分配了 {LAG1,Τ2,Τ5},那么可以得知RB2是Τ2和Τ5在LAGl内的转发设备,可作为是Τ1、Τ3和Τ4的备用转发设备。为RB3分配了 {LAG1,Τ3},可以得知RB3是Τ3在LAGl内的主用转发设备,可作为Tl、Τ2、Τ4和Τ5的备用转发设备,由此可以看出,针对Τ3在LAGl下有两个备用转发设备RBl和RB2,那么当Τ3的主用转发设备故障时,需要通过单播的故障通告方式告知RBl或者RB2,由其中的一个保护转发。即在这种方式下,当某个RB链路故障时,该故障相关的节点(如故障链路的RB)会从所在RBv的剩余RB中随机或基于负载均衡原则自动选择其中的一个设备作为受所述故障影响的组播树的转发设备并单播故障信息。收到单播故障信息的设备,自动将自己升级为受所述故障影响的组播树的主用转发设备。而不需要像应用实例二根据本地保存的信息以及收到的通告消息来判断是否需要转发。当某RB接收到沿组播树下行方向的组播流时,判断所述RB是否为该组播树在某LAG下行方向上的主用转发设备,若是,则从对应的LAG接口导出该流量;否则,丢弃该流量;如图8当RB4沿着Τ3组播树转发的流到达RBv时,RB1,RB2和RB3都能接收到该流,但是由于RB3是LAGl下Τ3的主用转发设备,那么RB3会将该流剥掉TRILL头后通过LAGl的接口转发到CEl,而RBl和RB2不会通过LAGl的接口转发该流;同时RBl是在LAG2下Τ3的主用转发设备,那么RBl也会将该流剥掉TRILL头后通过LAG2的接口转发到CE2,而RB2和RB3不会将该流通过LAG2的接口转发。针对各个RB,当该RB的某LAG的RB或者RB链路发生故障时,故障相关的节点通过单播的方式向剩余的RB之一发送通告消息,当所述RB收到该消息后,就知道需要作为受该故障影响的组播树的主用转发设备。
如图8,当RB3-CE1之间在LAGl的RB链路发生故障,那么RB3选择将该故障消息单播告知RB2,RB2将自己升级为在LAGl下分配的组播树T3的主用转发设备,当RB2从T3接收到组播流,则会从LAGl的接口导出该组播流。各个RB在LAG2所属的接口上的下行转发不受影响。应用实例四该应用实例着重说明故障恢复后的流程以图7为例,当RBl-CEl在LAGl上的链路恢复后,RBl或者CEl将故障恢复信息通告给其它RB。这里可以是ESADI来通告或者是OAM消息等方式。RB2收到上述所述的通告消息,再结合本地保存的信息,判断RBl是LAGl内Tl和T4的主用转发设备,那么将RB2回退为LAGl内Tl和T4的备用转发设备,并且将信息通告给 RB1。 RBl收到RB2发送的通告,将RBl分配为LAGl内Tl和T4的主用转发设备。对应于前述方法,本发明还提供了一种路由网桥(RB),如图9所示,该路由网桥包括分配信息存储单元,用于存储组播树的分配信息,所述组播树是按上行方向和下行方向分别分配的;组播流转发单元,用于组播树的分配信息转发上行和/或下行组播流。可选地,所述组播流转发单元包括组播流接收模块,用于接收到沿组播树上行或下行方向的组播流;组播流判断模块,用于根据分配信息判断其是否为该组播树在相应方向上的转发设备;组播流转发模块,用于在判断为组播树的转发设备时,转发该组播流,否则丢弃该组播流。优选地,所述组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配。优选地,一个组播树在下行方向分配的RB包括一个主用转发设备和一个或若干个备用转发设备,所述组播流判断模块判断其在下行方向上组播树的主用转发设备,所述组播流转发模块在判断为组播树的主用转发设备时,转发该组播流,否则丢弃该组播流。如图10所示,所述路由网桥(RB)还包括信息接收单元,用于在该路由网桥(RB)或其对应的链路发生故障时,接收故障信息;状态更新单元,在接收到故障信息且该路由网桥(RB)未受影响的组播树的备用转发设备,更新为该组播树的主用转发设备。具体地,所述组播树在下行方向分配的RB包括一个主用转发设备和一个备用转发设备,所述故障信息由故障相关的节点通过组播的方式发送。所述分配信息存储单元存储的分配信息仅包括自身的组播树的分配信息,一个组播树在下行方向显式分配一个备用转发设备,所述故障信息由故障相关的节点通过组播的方式发送,所述组播的故障信息包括受影响的组播树信息或受影响的组播树所在的LAG或LAN信息;或,
所述分配信息存储单元存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,一个组播树在下行方向显式分配一个备用转发设备,所述故障信息由故障相关的节点通过单播的方式发送给备用转发设备。可选地,一个组播树在下行方向显式或隐式分配若干个备用转发设备,所述分配信息存储单元存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,所述故障信息通过单播的方式发送,接收所述故障信息的RB是受影响组播树的其中一个备用转发设备。优选地,如图11所示,所述路由网桥还包括故障信息发送单元,用于根据所述组播树的分配信息随机或基于负载均衡策略确定故障信息发送的单播对象。具体地,所述分配信息存储单元利用同一组播树分配算法或配置获取自身及其他各RB的组播树的分配信息,或配置获取自身的组播树的分配信息,并交互获取其他各RB的组播树信息。可理解地,如上文所述,当RB发生故障时,故障信息是由CE发送的。优选地,信息接收单元,还用于在所述路由网桥为当前主用转发设备时,接收原主用转发设备或其对应的链路的故障恢复信息;状态更新单元,在接收到故障恢复信息后,更新为该组播树的备用转发设备。本发明方法和路由网桥,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的,因此,当下行方向发生故障时,不会影响上行方向的组播流转发,另外,该发明方案在RBv场景下,当接入链路或者接入RB故障时,不需要远端RB感知到故障,由RBv内的RB对下行方向的组播数据进行快速保护,确保端系统正常接收业务流量。另外,该发明方案不仅支持一个RBv下仅部署一个LAG的场景,还支持一个RBv下部署多个LAG的场景,即组播树在下行方向在RBv上的转发分配是在LAG的粒度上,当某RB在属于某LAG的RB接口故障时,只有受该故障影响的组播流才会由备用转发设备去转发,进而实现了端系统对TRILL网络的高可靠性接入。
本发明实施例中所描述的单元/模块仅是根据其功能进行划分的一种示例,可理解地,在实现相同功能的情况下,本领域技术人员可给出一种或多种其他功能划分方式,在具体应用时可将其中任意一个或多个功能模块采用一个功能实体装置或单元实现,不可否认地,以上变换方式均在本申请保护范围之内。本文所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
权利要求
1.一种组播流转发实现方法,其特征在于各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树是按上行方向和下行方向分别分配的。
2.如权利要求I所述的方法,其特征在于所述各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流的过程包括 接收到组播树上行或下行方向的组播流; 根据分配信息判断其是否为所述组播树在对应方向上的转发设备; 若是,则转发该组播流,否则丢弃该组播流。
3.如权利要求I所述的方法,其特征在于所述组播树在下行方向是在各个链路聚合组(LAG)或本地局域网(LAN)内分配的。
4.如权利要求I所述的方法,其特征在于一个组播树在下行方向分配的路由网桥 (RB)包括一个主用转发设备和一个或若干个备用转发设备,所述路由网桥(RB)判断其为组播树的主用转发设备时转发所述组播树的组播流,否则丢弃该组播流。
5.如权利要求4所述的方法,其特征在于所述组播树的分配信息仅包括当前RB的组播树的分配信息,在下行方向上一个组播树显式分配一个备用转发设备,路由网桥(RB)或其对应的链路发生故障,故障相关的节点向所在RBv内的其他所有路由网桥(RB)组播故障信息;所述组播的故障信息包括受影响的组播树信息或/和受影响的组播树所在的LAG或LAN信息;接收到故障信息且为受影响的组播树的备用转发设备升级为该组播树的主用转发设备。
6.如权利要求4所述的方法,其特征在于所述组播树的分配信息包括当前RB及其他各RB的组播树的分配信息,在下行方向上一个组播树显式分配一个备用转发设备,路由网桥(RB)或其对应的链路发生故障,故障相关的节点向受影响组播树的备用转发设备发送故障信息;接收到故障信息的备用转发设备升级为该组播树的主用转发设备。
7.如权利要求4所述的方法,其特征在于所述组播树的分配信息包括当前RB及其他各RB的组播树的分配信息,在下行方向上一个组播树显式或隐式分配若干个备用转发设备时,路由网桥(RB)或其对应的链路发生故障时,故障相关的节点向所在RBv内的受影响组播树的一个备用转发设备发送故障信息;接收该故障信息的备用转发设备升级为受影响组播树的主用转发设备。
8.如权利要求7所述的方法,其特征在于故障相关的节点根据所述组播树的分配信息随机或基于负载均衡策略确定升级为主用转发设备的备用转发设备。
9.如权利要求6或7所述的方法,其特征在于各路由网桥(RB)利用同一组播树分配算法或配置获取所述组播树的分配信息,或配置获取自身的组播树的分配信息后通过交互获取其他各RB的组播树信息。
10.如权利要求5所述的方法,其特征在于当前主用转发设备收到原主用转发设备或其对应的链路的故障恢复信息后,重新转为备用转发设备。
11.一种路由网桥(RB),其特征在于该路由网桥包括 分配信息存储单元,用于存储组播树的分配信息,所述组播树是按上行方向和下行方向分别分配的; 组播流转发单元,用于根据组播树的分配信息转发上行和/或下行组播流。
12.如权利要求11所述的路由网桥(RB),其特征在于所述组播流转发单元包括组播流接收模块,用于接收到组播树上的上行或下行方向的组播流; 组播流判断模块,用于根据分配信息判断其是否为该组播树在相应方向上的转发设备; 组播流转发模块,用于在判断为组播树上的转发设备时,转发该组播流,否则丢弃该组播流。
13.如权利要求11所述的路由网桥(RB),其特征在于所述组播树在下行方向在各个链路聚合组(LAG)或本地局域网(LAN)内分配。
14.如权利要求11所述的路由网桥(RB),其特征在于一个组播树在下行方向分配的RB包括一个主用转发设备和一个或若干个备用转发设备,所述组播流判断模块判断其是否为组播树在下行方向上的主用转发设备,所述组播流转发模块在判断为组播树的主用转发设备时,转发该组播流,否则丢弃该组播流。
15.如权利要求14所述的路由网桥(RB),其特征在于,所述路由网桥(RB)还包括 信息接收单元,用于在该路由网桥(RB)或其对应的链路发生故障时,接收故障信息; 状态更新单元,在接收到故障信息且该路由网桥(RB)未受影响的组播树的备用转发设备,更新为该组播树的主用转发设备。
16.如权利要求15所述的路由网桥(RB),其特征在于所述分配信息存储单元存储的分配信息仅包括自身的组播树的分配信息,在下行方向上一个组播树显式分配一个备用转发设备,所述故障信息由故障相关的节点通过组播的方式发送,所述组播的故障信息包括受影响的组播树信息或受影响的组播树所在的LAG或LAN信息;或,所述分配信息存储单元存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,在下行方向上一个组播树显式分配一个备用转发设备,所述故障信息由故障相关的节点通过单播的方式发送给备用转发设备。
17.如权利要求15所述的路由网桥(RB),其特征在于所述分配信息存储单元存储的组播树的分配信息包括自身及其他各RB的组播树的分配信息,在下行方向上一个组播树显式或隐式分配若干个备用转发设备,所述故障信息通过单播的方式发送,接收所述故障信息的RB是受影响组播树的其中一个备用转发设备。
18.如权利要求11所述的路由网桥(RB),其特征在于所述路由网桥(RB)还包括 分配信息同步单元,用于与同一 RBv的RB同步各自的组播树的分配信息; 所述故障信息由故障相关的节点根据同步的分配信息通过单播的方式发送。
19.如权利要求17所述的路由网桥(RB),其特征在于所述路由网桥还包括故障信息发送单元,用于根据所述组播树的分配信息随机或基于负载均衡策略确定故障信息发送的单播对象。
20.如权利要求16或17所述的路由网桥,其特征在于所述分配信息存储单元利用同一组播树分配算法或配置获取自身及其他各RB的组播树的分配信息,或配置获取自身的组播树的分配信息,并交互获取其他各RB的组播树信息。
21.如权利要求15所述的路由网桥(RB),其特征在于信息接收单元,还用于在所述路由网桥为当前主用转发设备时,接收原主用转发设备或其对应的链路的故障恢复信息; 状态更新单元,在接收到故障恢复信息后,更新为该组播树的备用转发设备。
全文摘要
本发明涉及一种组播流转发实现方法和路由网桥(RB),各路由网桥(RB)根据组播树的分配信息转发接收到的上行或下行组播流,所述组播树的分配信息中的组播树是按上行方向和下行方向分别分配的。当下行方向发生故障时,不会影响上行方向的组播流转发。
文档编号H04L12/703GK102970231SQ201210470320
公开日2013年3月13日 申请日期2012年11月20日 优先权日2012年11月20日
发明者翟洪军, 代雪会, 廖婷 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1