多链路透明互连网络中组播转发方法及装置、路由桥的利记博彩app
【专利摘要】本发明公开了一种多链路透明互连网络中组播转发方法,所述方法包括:路由桥接收到远端组播数据时,根据附着于所述路由桥的终端能力信息进行所述组播数据的转发。本发明同时公开了一种多链路透明互连网络中组播转发装置及路由桥。本发明的技术方案兼容智能终端与普通终端的共同接入TRILL网络的场景,使智能终端之间通过组播数据进行地址学习,保证了数据的正常传输。
【专利说明】多链路透明互连网络中组播转发方法及装置、路由桥
【技术领域】
[0001]本发明涉及组播转发技术,尤其涉及一种链路透明互连网络中组播转发方法及装置、路由桥。
【背景技术】
[0002]多链路透明互连(TRILL,Transparent Interconnection of Lots of Link)技术是融合了二、三层技术优点的技术,其运用中间系统到中间系统(ISIS,Intermediatesystem to intermediate system)链路状态路由协议计算二层网络的拓扑,解决了二层桥中运行快速生成树协议(STP, Rapid Spanning Tree Protocol)需要阻塞某些链路而导致二层网络的路径不能得到充分利用的问题,并通过等价多路径(ECMP,Equal-CostMultipath Routing)算法提供链路的负载均衡。TRILL协议使用路由的最短路径思想以及最短跳数(hop count)的方法解决环路的问题,同时避免STP网络条件下故障后的大幅网络震荡,使用分发树的思想解决多播、广播传递的问题,同时借鉴路由协议的剪枝、后向路径检测等方式保证和简化组播报文的处理。在TRILL网络的入口设置有入口路由桥(ingressRBridge),其完成原始数据的TRILL封装,其中,单播数据沿由最短路径优先(SPF, Shortest Path First)算法计算出来的最短路径被转发,组播或者广播数据沿分发树转发到多个出口。在TRILL网络中,还设置有出口路由桥(egressRBridge),其对TRILL报文进行解封装。
[0003]TRILL协议引入新的命名空间,称为nickname,其长度为16bits,并被封装在TRILL报文头中,对于中间的传输路由网桥,只需要根据目的nickname查找nickname表实现数据的转发。由于nickname的长度在设计之初只有16bits,随着数据中心的扩大,特别是云计算数据中心的提出,nickname的长度可能会成为以后的瓶颈。另外,对于边界的路由网桥,需要保存用户的媒体接入控制(MAC, Media Access Control)地址和nickname的映射关系,当网络规模很大时,该表项映射关系的数量会比较大,因此,业界提出了一种将nickname分配到终端用户的方法,由终端用户保存部分的映射表项,而终端所封装的nickname值为其附着的路由网桥使用的nickname值,这样在不花费nickname的空间的情况下,可以减少边界路由网桥的映射表的规模。将这种可以进行TRILL封装的终端称为智能终端。
[0004]对于单播数据,边界路由网桥发现数据的目的地址为附着其自身的智能终端时,则保持该报文的TRILL封装,不需要进行解封装,而直接转发到目的智能终端,目的智能终端收到TRILL报文后解封装并进行地址学习。
[0005]但对于组播数据,由于边界路由网桥附着的终端可能包括智能终端和普通终端(即不能封装和解封装TRILL报文的终端),如果边界路由网桥保持TRILL封装,则会导致普通终端无法解析该组播数据,远端终端与普通终端之间无法进行正常的组播通信。而如果由边界路由网桥解封装TRILL报文,将原始报文转发到附着其自身的终端,则智能终端无法学习到对端的映射信息,导致智能终端间无法正常通信。
【发明内容】
[0006]有鉴于此,本发明的主要目的在于提供一种链路透明互连网络中组播转发方法及装置、路由桥,能根据终端的能力信息对应转发组播数据,同时支持智能终端与普通终端的正常接入。
[0007]为达到上述目的,本发明的技术方案是这样实现的:
[0008]一种多链路透明互连网络中组播转发方法,包括:
[0009]路由桥接收到远端组播数据时,根据附着于所述路由桥的终端能力信息进行所述组播数据的转发。
[0010]优选地,所述终端能力信息包括所述终端是否支持对发送数据进行多链路透明互连TRILL封装以及对接收TRILL报文进行解封装的能力信息。
[0011]优选地,所述根据附着于所述路由桥的终端能力信息进行所述组播数据的转发,包括:
[0012]所述路由桥确定附着于自身的所有终端均不支持TRILL封装及TRILL报文解封装能力时,对所述组播数据进行TRILL解封装后再转发至所有终端;
[0013]所述路由桥确定附着于自身的所有终端均支持TRILL封装及TRILL报文解封装能力时,将所述组播数据直接转发至所有终端;
[0014]所述路由桥确定附着于自身的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,复制一份组播数据,对其中一份组播数据进行TRILL解封装,并将两份组播数据均转发至所有终端。
[0015]优选地,将两份组播数据均转发至该端口的所有终端时,所述方法还包括:
[0016]支持TRILL封装及TRILL报文解封装能力的终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据;
[0017]不支持TRILL封装及TRILL报文解封装能力的终端接收TRILL解封装的组播数据,丢弃未进行TRILL解封装的组播数据。
[0018]一种多链路透明互连网络中组播转发装置,包括接收单元和转发单元,其中:
[0019]接收单元,用于接收远端组播数据;
[0020]转发单元,用于根据附着于所述装置的终端能力信息进行所述组播数据的转发。
[0021]优选地,所述接收单元还用于,接收终端附着于所述装置时向所述装置上报的终端能力信息。
[0022]优选地,所述装置还包括:
[0023]发送单元,用于周期性地向附着于所述装置的终端发送能力信息查询消息;
[0024]对应的,所述接收单元还用于,接收附着于所述装置的终端上报的能力信息。
[0025]优选地,所述终端能力信息包括所述终端是否支持对发送数据进行多链路透明互连TRILL封装以及对接收TRILL报文进行解封装的能力信息。
[0026]优选地,所述转发单元还包括确定子单元、复制子单元、解封装子单元和转发子单元,其中:
[0027]确定子单元,用于确定附着于所述装置的所有终端均不支持TRILL封装及TRILL报文解封装能力时,触发所述解封装子单元对所述组播数据进行TRILL解封装;对应的,所述转发子单元用于将解封装后的组播数据转发至所有终端;
[0028]或者,确定子单元,用于确定附着于所述装置的终端均支持TRILL封装及TRILL报文解封装能力时,触发所述转发子单元将所述组播数据直接转发至该端口的所有终端;
[0029]或者,确定子单元,用于确定附着于所述装置的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,触发所述复制子单元复制一份组播数据;对应的,所述解封装子单元用于对其中一份组播数据进行TRILL解封装,所述转发子单元用于将两份组播数据均转发至所有终端。
[0030]一种路由桥,包括前述的多链路透明互连网络中组播转发装置。
[0031 ] 本发明中,路由桥接收到远端组播数据时,根据附着于所述路由桥的终端能力信息进行所述组播数据的转发。具体的,路由桥确定附着于自身的所有终端均不支持TRILL封装及TRILL报文解封装能力时,对组播数据进行TRILL解封装后再转发至所有终端。路由桥确定附着于自身的所有终端均支持TRILL封装及TRILL报文解封装能力时,将组播数据直接转发至所有终端。路由桥确定附着于自身的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,复制一份组播数据,对其中一份组播数据进行TRILL解封装,并将两份组播数据均转发至所有终端;支持TRILL封装及TRILL报文解封装能力的终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据;不支持TRILL封装及TRILL报文解封装能力的终端接收TRILL解封装的组播数据,丢弃未进行TRILL解封装的组播数据。本发明的技术方案兼容智能终端与普通终端的共同接入TRILL网络的场景,使智能终端之间通过组播数据进行地址学习,保证了数据的正常传输。
【专利附图】
【附图说明】
[0032]图1为本发明实施例的链路透明互连网络中组播转发方法的流程图;
[0033]图2为本发明实施例的链路透明互连网络中组播转发方法应用场景示意图;
[0034]图3为本发明实施例的链路透明互连网络中组播转发装置的组成结构示意图。
【具体实施方式】
[0035]为使本发明的目的、技术方案和优点更加清楚明白,以下举实施例并参照附图,对本发明进一步详细说明。
[0036]图1为本发明实施例的链路透明互连网络中组播转发方法的流程图,如图1所示,本发明实施例的链路透明互连网络中组播转发方法包括以下步骤:
[0037]步骤101,路由桥获取附着于自身的终端能力信息。
[0038]本发明中,路由桥可以通过主动发送查询消息的方式或由终端主动上报的方式获取终端的能力信息。具体的,终端附着于路由桥时,向路由桥上报自身的能力信息;或者,路由桥周期性地向附着于自身的终端发送能力信息查询消息,附着于路由桥的终端上报自身的能力信息。
[0039]终端能力信息包括终端是否支持对发送数据进行TRILL封装以及对接收TRILL报文进行解封装的能力信息。本发明中,支持对发送数据进行TRILL封装以及对接收TRILL报文进行解封装的终端,为智能终端,而不支持对发送数据进行TRILL封装以及对接收TRILL报文进行解封装的终端,为普通终端。
[0040]步骤102,路由桥根据附着于路由桥的终端能力信息进行组播数据的转发。
[0041]具体的,路由桥确定附着于自身的所有终端均不支持TRILL封装及TRILL报文解封装能力时,对组播数据进行TRILL解封装后再转发至所有终端。路由桥确定附着于自身的所有终端均支持TRILL封装及TRILL报文解封装能力时,将组播数据直接转发至所有终端。路由桥确定附着于自身的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,复制一份组播数据,对其中一份组播数据进行TRILL解封装,并将两份组播数据均转发至所有终端;支持TRILL封装及TRILL报文解封装能力的终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据;不支持TRILL封装及TRILL报文解封装能力的终端接收TRILL解封装的组播数据,丢弃未进行TRILL解封装的组播数据。
[0042]本发明中,附着于路由桥的所有终端,是指附着于路由桥的不同端口的所有终端,具体的,在进行组播数据转发时,主要是依每个端口为单位进行组播数据转发。也就是说,路由桥确定接入自身某端口的所有终端均为普通终端时,对组播数据进行TRILL解封装后再转发至该端口的所有终端;路由桥确定接入自身某端口的所有终端均为普通终端时,直接将组播数据转发至该端口的所有终端,由各智能终端对组播数据进行TRILL解封装,再进行地址学习,以生成与发送端的路由信息;路由桥确定接入自身某端口的所有终端既有普通终端又有智能终端时,复制一份组播数据,对其中一份组播数据进行TRILL解封装,并将两份组播数据均转发至该端口的所有终端;其中,智能终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据;普通终端接收进行TRILL解封装的组播数据,丢弃未TRILL解封装的组播数据
[0043]路由桥接收到组播数据时,根据附着于所述路由桥的终端能力信息进行所述组播数据的转发。
[0044]图2为本发明实施例的链路透明互连网络中组播转发方法应用场景示意图,如图2所示,Smart endnodel和Smart endnode3为智能终端,可以封装和解封装TRILL报文,endnode2、endnode4为普通终端,只能发出和接收普通的以太网报文,不能封装和解封装TRILL报文。上述四个终端都加入了相同的组播组。远端Smart endnode5也为智能终端,为相应组播组的源地址。Smartendnode5通过TRILL网络与Smart endnodel、endnode2、Smart endnode3 通信;Smart endnodel、endnode2 通过以太网交换机 SWl 接入 TRILL 网络,Smartendnode3 通过 SW2 接入 TRILL 网络,endnode4 通过 SW3 接入 TRILL 网络;TRILL 网络中包括有依次连接的路由桥RB1、RB2及RB3。Smart endnode5发出的组播报文,经过路由桥RB3后沿着组播分发树发送到RBl,RBl收到该组播报文后,根据接收者的存在情况进行相应组播报文的复制转发,由于跟SWl相连的端口发现学习到的终端既有普通终端又有智能终端存在,在该端口将组播报文复制为两份,一份保持TRILL封装,一份解封装TRILL为普通报文形式,均经该端口发出。与SW2相连的端口发现学习到的终端只有智能终端存在,那么该端口仅需将接收到的组播报文直接转发即可。与SW3相连的端口发现学习到的终端只有普通终端存在,那么该端口只发送一份解封装TRILL后的普通报文即可。Smart endnode I和Smart endnode3收到该组播TRILL封装报文后,解封装得到Smart endnode5的MAC地址和Nickname地址,保存到本地的映射表中,完成地址学习,另外一份为RBl解封装后的普通组播以太网报文,普通终端End node2和Endnode4可以识别和解析该普通组播报文。
[0045]图3为本发明实施例的链路透明互连网络中组播转发装置的组成结构示意图,如图3所示,本示例的链路透明互连网络中组播转发装置包括接收单元30和转发单元31,其中:
[0046]接收单元30,用于接收组播数据;
[0047]转发单元31,用于根据附着于所述装置的终端能力信息进行所述组播数据的转发。
[0048]上述接收单元30还用于,接收终端附着于所述装置时向所述装置上报的终端能力信息。
[0049]在图3所示的链路透明互连网络中组播转发装置的基础上,本示例的链路透明互连网络中组播转发装置还包括:
[0050]发送单元(图3中未示出),用于周期性地向附着于所述装置的终端发送能力信息查询消息;
[0051]对应的,上述接收单元30还用于,接收附着于所述装置的终端上报的能力信息。
[0052]本领域技术人员应当理解,上述发送单元并非用于解决本发明基本目的的必要技术手段,仅是为优化本发明技术方案而设置的。
[0053]本发明中,发送单元及接收单元30可通过天线装置实现。
[0054]上述终端能力信息包括所述终端是否支持对发送数据进行多链路透明互连TRILL封装以及对接收TRILL报文进行解封装的能力信息。
[0055]本发明的转发单元还包括确定子单元(图3中未示出)、复制子单元(图3中未示出)、解封装子单元(图3中未示出)和转发子单元(图3中未示出),其中:
[0056]确定子单元,用于确定附着于所述装置的所有终端均不支持TRILL封装及TRILL报文解封装能力时,触发所述解封装子单元对所述组播数据进行TRILL解封装;对应的,所述转发子单元用于将解封装后的组播数据转发至所有终端;
[0057]或者,确定子单元,用于确定附着于所述装置的终端均支持TRILL封装及TRILL报文解封装能力时,触发所述转发子单元将所述组播数据直接转发至该端口的所有终端;
[0058]或者,确定子单元,用于确定附着于所述装置的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,触发所述复制子单元复制一份组播数据;对应的,所述解封装子单元用于对其中一份组播数据进行TRILL解封装,所述转发子单元用于将两份组播数据均转发至所有终端。对应的,支持TRILL封装及TRILL报文解封装能力的终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据;不支持TRILL封装及TRILL报文解封装能力的终端接收TRILL解封装的组播数据,丢弃未进行TRILL解封装的组播数据。
[0059]本领域技术人员应当理解,图3所示的链路透明互连网络中组播转发装置涉及的处理单元的功能能通过硬件电路,或由处理器执行相应的软件所实现。上述各处理单元的功能,可结合前述本发明链路透明互连网络中组播转发方法的相关实施例及实例的描述而理解。
[0060]本发明还记载了一种路由桥,其特征在于,所述路由桥包括上述多链路透明互连网络中组播转发装置。[0061]显然,本领域的技术人员应该明白,上述的本发明的各处理单元或各步骤可以用通用的计算装置来实现,其可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,其可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0062]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1.一种多链路透明互连网络中组播转发方法,其特征在于,所述方法包括: 路由桥接收到远端组播数据时,根据附着于所述路由桥的终端能力信息进行所述组播数据的转发。
2.根据权利要求1所述的方法,其特征在于,所述终端能力信息包括所述终端是否支持对发送数据进行多链路透明互连TRILL封装以及对接收TRILL报文进行解封装的能力信肩、O
3.根据权利要求2所述的方法,其特征在于,所述根据附着于所述路由桥的终端能力信息进行所述组播数据的转发,包括: 所述路由桥确定附着于自身的所有终端均不支持TRILL封装及TRILL报文解封装能力时,对所述组播数据进行TRILL解封装后再转发至所有终端; 所述路由桥确定附着于自身的所有终端均支持TRILL封装及TRILL报文解封装能力时,将所述组播数据直接转发至所有终端; 所述路由桥确定附着于自身的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,复制一份组播数据,对其中一份组播数据进行TRILL解封装,并将两份组播数据均转发至所有终端。
4.根据权利要求3所述的方法,其特征在于,将两份组播数据均转发至该端口的所有终端时,所述方法还包括: 支持TRILL封装及TRILL报文解封装能力的终端接收未进行TRILL解封装的组播数据,丢弃TRILL解封装的组播数据; 不支持TRILL封装及TRILL报文解封装能力的终端接收TRILL解封装的组播数据,丢弃未进行TRILL解封装的组播数据。
5.一种多链路透明互连网络中组播转发装置,其特征在于,所述装置包括接收单元和转发单元,其中: 接收单元,用于接收远端组播数据; 转发单元,用于根据附着于所述装置的终端能力信息进行所述组播数据的转发。
6.根据权利要求5所述的装置,其特征在于,所述接收单元还用于,接收终端附着于所述装置时向所述装置上报的终端能力信息。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括: 发送单元,用于周期性地向附着于所述装置的终端发送能力信息查询消息; 对应的,所述接收单元还用于,接收附着于所述装置的终端上报的能力信息。
8.根据权利要求5至7任一项所述的装置,其特征在于,所述终端能力信息包括所述终端是否支持对发送数据进行多链路透明互连TRILL封装以及对接收TRILL报文进行解封装的能力信息。
9.根据权利要求8所述的装置,其特征在于,所述转发单元还包括确定子单元、复制子单元、解封装子单元和转发子单元,其中: 确定子单元,用于确定附着于所述装置的所有终端均不支持TRILL封装及TRILL报文解封装能力时,触发所述解封装子单元对所述组播数据进行TRILL解封装;对应的,所述转发子单元用于将解封装后的组播数据转发至所有终端; 或者,确定子单元,用于确定附着于所述装置的终端均支持TRILL封装及TRILL报文解封装能力时,触发所述转发子单元将所述组播数据直接转发至该端口的所有终端; 或者,确定子单元,用于确定附着于所述装置的终端既有不支持TRILL封装及TRILL报文解封装能力的终端,又有支持TRILL封装及TRILL报文解封装能力的终端时,触发所述复制子单元复制一份组播数据;对应的,所述解封装子单元用于对其中一份组播数据进行TRILL解封装,所述转发子单元用于将两份组播数据均转发至所有终端。
10.一种路由桥,其特征在于,所述路由桥包括权利要求5至9任一项所述的多链路透明互连网络中组播转发装置。·
【文档编号】H04L12/771GK103856397SQ201210524098
【公开日】2014年6月11日 申请日期:2012年12月7日 优先权日:2012年12月7日
【发明者】胡方伟, 廖婷 申请人:中兴通讯股份有限公司