一种BIER控制信息的传输方法、装置和系统与流程

文档序号:11147465阅读:754来源:国知局
一种BIER控制信息的传输方法、装置和系统与制造工艺

本发明涉及网络通信技术,尤其涉及组播领域的BIER(Bit Indexed Explicit Replication,基于位索引的显式复制)技术中,一种控制信息的传输方法、装置和系统。



背景技术:

IP组播技术实现了IP网络中点到多点的高效数据传送。能够有效地节约网络带宽、降低网络负载,所以在实时数据传送、多媒体会议、数据拷贝、IPTV(交互式网络电视)、游戏和仿真等诸多方面都有广泛的应用。现在的组播技术一般采用PIM(Protocol Independent Multicast,协议无关组播)协议(包括协议无关组播-稀疏模式(PIM-SM)和协议无关组播-密集模式(PIM-DM))、MSDP(Multicast Source Discovery Protocol,组播源发现协议)等实现,这些组播协议的一个共同的特点是需要构建一种控制平面组播树,利用这种组播树将网络平面逻辑排列为树状,以实现组播转发的点到多点数据转发和环路避免等,这种以构建分发树为核心的组播路由协议的中间节点都需要维护复杂的组播转发信息的状态,随着网络的规模越来越大,组播数据流量与日俱增的情况下,这种组播技术面临越来越大的成本和运维方面的挑战。

为此,业界提出了一种新的用于构建组播转发路径的技术,称为BIER(Bit Indexed Explicit Replication,基于位索引的显式复制)技术,该技术提出了一种新的不需要构建组播分发树的组播技术架构,如图1所示,支持BIER技术的路由器称为BFR(Bit-Forwarding Router,比特转发路由器),由BFR组成的一个组播转发域称为BFR domain,在BIER域的边缘,对用户的组播数据进行BFIR封装的设备称为BFIR(Bit-Forwarding ingress Router,比特转发入口路由器),解封装BIER数据报文的边缘BFR设备称为BFER(Bit-Forwarding egress Router,比特转发出口路由器),组播数据由BFIR封装进入BIER域,在BIER域中依赖于BIER的头部进行转发,而经由一个或者多个BFER设备离开BIER域,BIER域中,接收并转发BIER报文的设备称为该BIER报文的transit(转发)BFR。一个BFR根据封装和解封装报文的不同可以既是BFIR角色,又可以是BFER角色。

在BIER域中,给每台BFR(中间转发节点可以分配也可以不分配)分配一个在整个BIER sub-domain(子域)中全局唯一的bit position(比特位置),每台BFER将自己的bit position使用IGP(Interior Gateway Protocol,内部网关协议)协议在BIER domain域中泛洪,所有的bit position组成一个bitstring(比特串),数据报文在BIER域中的传递和路由依赖于bitstring。当其他的BFR收到了包含有BIER的报文头时,根据BIER报文头中携带的bitstring基于Bit Forwarding Table(比特转发表或称位索引转发表)进行转发。这种基于BIER bit位进行转发的原理将以前需要基于构建组播分发树的转发改为使用位标识进行单播查找转发的方式转发组播,大大减少网络的转发成本。

图2描述了BIER转发的过程,BFR1为ingress BFR即BFIR,BFR5、BFR6及BFR7都为egress BFR即BFER,三个BFR的bit position分别为0001,0010,0100。Egress BFR事先通过IGP协议(如IS-IS(Intermediate system to intermediate system,中间系统到中间系统)协议,或者OSPF(Open Shortest Path First,开放式最短路径优先)协议)在BIER domain中通告其自身的bit position,BFR1收到了BFR5、BFR6和BFR7的bit position的通告后,在本地的位索引转发表中保存这些信息。当BFR1收到了组播报文,假定该组播报文需要传输到BFR5和BFR6,则BFR1根据事先保存的映射关系,计算得出该报文的Bitstring的值为0101,将用户的组播报文封装为BIER报文,其中BIER Header中的Bitstring填充0101并转发到BFR2,BFR2收到报文后,查找事先保存的位索引转发表中的条目,根据条目,报文需要转发到BFR3,然后将Bitstring跟该匹配的条目项的F-BM(Forwarding Bit Mask转发比特掩码表)做与操作,得到0101,BFR2以0101作为BIER Header中的Bitstring重新填充BIER报文,并将报文转发到BFR3,BFR3收到了该报文后,查找自己的位索引转发表,BFR3有2个条匹配记录,分别代表报文下一跳转发到BFR4和BFR6,对于第一个条目,BFR3将Bitstring的值跟条目中的F-BM做与操作,得到结果为0001,第二个条目中,Bitstring的值跟F-BM做与操作的结果为0100,则BFR3将报文分别从2个接口转发BIER报文到BFR4和BFR6,其中BFR4的BIER Header的Bitstring的值为0001,而转发到BFR6的BIER Header的Bitstring的值为0100。对于到达BFR6的报文,发现bitstring的值跟自己通告的bit position一样,表示自己为该报文的目的地,解封装BIER报文。而到达报文到达BFR4时,依次前述的转发原理,将报文转发到BFR5,由BFR5解封装BIER报文,至此,完成了组播报文在BIER域中的传输,将组播报文由入口的BFR1节点转发到组播的接收节点BFR4和BFR6。

现有的BIER控制消息的发布是通过扩展的IGP或BGP(Border Gateway Protocol,边界网关协议)来进行发布的,如IGP协议,会将消息洪泛至整个BIER域的BFR的所有节点,而对于某些控制消息来讲,如边界有哪些组播组地址接入,或者边界加入的是哪些VPN(Virtual Private Network,虚拟专用网络)相关的信息,这些仅需在边界节点间交互的信息对于中间转发节点来讲是没有必要学习到的,而现有的洪泛机制,并不能满足这一点,要在边界节点间建立相应的通道,对于现有的IGP协议来讲或BIER来讲,需要相应扩展。



技术实现要素:

本发明提供了一种BIER控制信息的传输方法、装置和系统,能够简单高效的传输控制信息,避免控制信息的洪泛。

为了达到本发明目的,本发明提供了一种基于位索引的显式复制BIER控制信息的传输方法,包括:

比特转发入口路由器BFIR构造BIER数据报文,在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息,在报文体中携带所述控制信息。

可选地,所述方法还包括:所述BFIR在报文头中携带需要接收所述BIER数据报文的比特转发出口路由器BFER的比特串bitstring;以及,构造BIER数据报文完成后,所述BFIR向所在BIER域的下级节点发送所述BIER数据报文。

可选地,所述方法还包括:收到所述BIER数据报文的BFER根据报文头中携带的用于指示本BIER数据报文携带控制信息的指示信息,直接解封装出报文体中的控制信息上送控制面。

可选地,所述控制信息包括以下之一:所述BFIR加入的组播组信息,撤销的组播组信息,加入组播虚拟专用网络VPN的信息。

可选地,所述指示信息通过BIER报文头中的协议proto字段值来标识。

为了达到本发明目的,本发明还提供了一种比特转发入口路由器BFIR,用于发送基于位索引的显式复制BIER控制信息,所述BFIR包括第一构造模块和第二构造模块,其中:

所述第一构造模块,用于在构造BIER数据报文时,在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息;

所述第二构造模块,用于在构造BIER数据报文时,在报文体中携带所述控制信息。

可选地,所述控制信息包括以下之一:所述BFIR加入的组播组信息,撤销的组播组信息,加入组播虚拟专用网络VPN的信息。

可选地,所述第一构造模块在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息,包括:所述第一构造模块在报文头的协议proto字段中携带所述用于指示本BIER数据报文携带控制信息的指示信息。

为了达到本发明目的,本发明还提供了一种比特转发出口路由器BFER,用于接收基于位索引的显式复制BIER控制信息,所述BFER包括接收模块和解封装模块,其中:

所述接收模块,用于接收BIER数据报文,判断所述报文头中是否携带用于指示本BIER数据报文携带控制信息的指示信息;

所述解封装模块,用于在所述接收模块判断所述报文头中携带用于指示本BIER数据报文携带控制信息的指示信息时,直接解封装出报文体中的控制信息上送控制面。

可选地,所述控制信息包括以下之一:所述BFIR加入的组播组信息,撤销的组播组信息,加入组播虚拟专用网络VPN的信息。

为了达到本发明目的,本发明还提供了一种BIER控制信息的传输系统,包括上述比特转发入口路由器BFIR以及比特转发出口路由器BFER。

采用本发明实施例所述方案,组播相关的接入信息只在边界节点感知,对于中间转发节点是透明传输的,节约了中间转发节点的内存占用处理的时间和机制,同时,由于控制信息只在边界节点间的共享,避免了在不相关节点上的信息泄漏。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1是现有BIER技术组网图;

图2是现有BIER技术转发过程图;

图3是现有BIER报文头示意图;

图4是本发明实施例一流程图;

图5为本发明实施例二BFIR结构示意图;

图6为本发明实施例二BFER结构示意图;

图7是一种控制面报文格式示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

实施例一

本实施例提供一种BIER控制信息的传输方法,如图4所示,包括以下步骤:

步骤401,BFIR构造BIER数据报文时,在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息;

步骤402,BFIR构造BIER数据报文时,在报文体中携带所述控制信息。

在上述步骤401中,BFIR构造BIER数据报文时,还在报文头中携带需要接收所述BIER数据报文的BFER的bitstring,在上述步骤402之后,在构造BIER数据报文完成后,所述BFIR向所在BIER域的下级节点发送所述BIER数据报文。收到所述BIER数据报文的BFER根据报文头中携带的用于指示本BIER数据报文携带控制信息的指示信息,直接解封装出报文体中的控制信息上送控制面。

上述控制信息包括但不限于以下之一:所述BFIR加入的组播组信息,撤销的组播组信息,加入组播虚拟专用网络VPN的信息。

可选地,所述指示信息通过协议proto(protocol,协议)字段携带。图3所示为BIER数据报文的报文头封装(携带该报文头封装的报文简称为BIER报文),当前BIER封装后携带的报文类型(4bits长度的proto)总共有6种,包括两种MPLS报文、IPv4(互联网协议第四版)报文、IPv6(互联网协议第六版)报文、BIER OAM(Operation Administration and Maintenance,操作、管理和维护)报文及以太报文。在本实施例中,将图3中proto字段值定义为新值,例如7,来表示后续携带的是控制信息,并在BIER报文头后面携带控制面报文,该控制面报文中携带了需要通告到对端的控制信息,如边界节点间需要互相交互的自身加入的组播组信息,或者组播vpn相关的信息等。

通过本实施例,组播相关的接入信息只在边界节点感知,对于中间转发节点是透明传输的,节约了中间转发节点的内存占用处理的时间和机制,同时,由于控制信息只在边界节点间的共享,避免了在不相关节点上的信息泄漏。

实施例二

本实施例提供一种用于发送BIER控制信息的BFIR,如图5所示,所述BFIR包括第一构造模块501和第二构造模块502,其中:

所述第一构造模块501,用于在构造BIER数据报文时,在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息;

所述第二构造模块502,用于在构造BIER数据报文时,在报文体中携带所述控制信息。

其中,所述第一构造模块501在报文头中携带用于指示本BIER数据报文携带控制信息的指示信息,包括:

所述第一构造模块501在报文头的协议proto字段中携带所述用于指示本BIER数据报文携带控制信息的指示信息。

本实施例还提供一种用于接收BIER控制信息的BFER,如图6所示,所述BFER包括接收模块601和解封装模块602,其中:

所述接收模块601,用于接收BIER数据报文,判断所述报文头中是否携带用于指示本BIER数据报文携带控制信息的指示信息;

所述解封装模块602,用于在所述接收模块判断所述报文头中携带用于指示本BIER数据报文携带控制信息的指示信息时,直接解封装出报文体中的控制信息上送控制面。

上述BFIR以及BFER可共同组成一种BIER控制信息的传输系统。

需要说明的是,上述装置是与实施例一中BIER控制信息的传输方法对应的装置,上述方法实施例中所有实现方式均适用于本装置的实施例中,也能达到相同的技术效果。

下面通过若干应用实施例来进行说明。

应用示例1

本示例为当边界节点上需要互相通讯其所在节点接入的组播组信息时,在BIER数据报文格式中封装携带控制信息的报文并发送的示例。

如图1的边界节点BFIR1在本地有加入的组播组,根据用户配置、控制器集中下发或分布式的控制面获取到需要通信的边界节点的bitstring,例如需要接收的节点为BFER1和BFER2,则这两个节点映射的bit会在bitstring中置位。

BFIR1按如图7所述的格式或者类似的格式扩展,图7格式中的type值用于表明这是一个本地加入的组播组信息的报文,将该格式即本地加入的组播组信息携带在如图3所示的BIER报文头后面,并将图3中proto字段值设置为一个新定义的值,例如7,用于表示后续携带的是控制面报文也即需要上送控制面的信息。

所述bitstring中置位bit映射的节点即BFER1和BFER2接收到该BIER报文后,解析bitstring中包含自身置位消息后,解析该报文,根据proto的值确定解析出控制面报文,上送控制面,解析控制面报文,如果控制面报文格式中type值为1(此处仅为举例,该type也可以预置为其他值)则表示组播组加入信息,由此控制面获取到相应远端节点的组播组加入情况的信息。

BFER1和BFER2在获取到BFIR1上加入的组播组信息后,生成相应组播组出口至BFIR1的信息映射表。

应用示例2

本示例为当有新的组播组加入或取消时,通过BIER数据报文格式中封装的控制信息发布新的组播组情况给远端。

有组播组加入的控制报文格式可以和示例1中的控制报文一致,远端根据接收的控制信息更新本地的组播信息映射表。

当有组播组取消时,若认为有需要及时通知远端节点,则可发布一个新的控制报文类型,或采用示例1中用到的类似图7中的报文格式,并通过对图3 BIER报文头中proto字段的置位来表明BIER报文中通告的是一个控制报文,远端收到BIER报文后根据其中的proto字段的置位确定本BIER报文中携带了控制报文,解析出该控制报文,根据报文中的type值确定该控制消息为撤销的组播组信息,删除相应组播组条目的信息映射表。

对于远端节点的组播组表项信息的正常维护,在有相应的组播组流量的接收及发送时,表项会持续维护,当有一段时间的该组播组的流量未被接收或发送时,待表项老化时间到,清除该表项。

应用示例3

本示例为当边界节点上需要互相通讯本地MVPN(组播VPN)相关控制信息时,如RT信息或RD信息或MVPN下的路由消息,在BIER数据报文格式中封装携带MVPN控制信息。

如图1的边界节点BFIR1在本地有加入的组播VPN,根据用户配置、控制器集中下发或分布式的控制面获取到需要通信的边界节点的bitstring,如需要接收的节点为BFER1和BFER2,则这两节点映射的bit会在bitstring中置位。

BFIR1按如图7所述的格式或者类似的格式携带MVPN信息,将本地加入的组播组VPN相关消息如RD、叶子路由,源路由等信息携带在BIER数据报文中,其中BIER报文头中的proto字段值定义为新值,如7,用于表示后续携带的是控制面报文。

所述bitstring中置位bit映射的节点即BFER1和BFER2接收到该BIER报文后,解析bitstring中包含自身置位消息后,解析该报文,读到proto为7则直接解析报文体中的控制面报文,将其上送控制面,控制面解析该控制面报文读报文格式中type值为10(此处仅为举例,该type也可以预置为其他值)表示组播VPN相关信息,由此控制面获取相应组播VPN的信息。

BFER1和BFER2在获取到BFIR1上加入的组播VPN信息时,生成相应组播组出口至BFIR1的信息映射表。

虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1