报文传输的方法和装置与流程

文档序号:30348708发布日期:2022-06-08 10:04阅读:93来源:国知局
报文传输的方法和装置1.本技术要求于2020年12月2日提交的申请号为202011393626.5、发明名称为“发送bier报文的方法、设备和系统”的中国专利申请的优先权,其全部内容通过引用结合在本技术中。此外,本技术还要求于2021年4月14日提交的申请号为202110400461.8、发明名称为“一种穿越运营商公网的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本技术中。
技术领域
:2.本技术实施例涉及通信
技术领域
:,特别涉及报文传输的方法和装置。
背景技术
::3.基于比特位的显式复制(bitindexedexplicitreplication,bier)技术作为通信领域中用于构建组播报文转发路径的技术,由于无需构建组播分发树,因而得到了广泛的应用。相关技术中,bier技术主要用于运营商网络内,而用户网络内部署基于协议无关组播(protocalindependentmulticast,pim)协议,使得用户网络内不同用户侧之间的报文可以在运营商网络内通过bier技术进行传输。运营商网络需要维护大量的报文,导致网络负荷过重,可延展性不强。技术实现要素:4.本技术提供了一种报文传输的方法和装置,用于实现用户设备间跨越运营商网络传输bier报文,提高网络的可延展性,以及降低运营商网络的负荷。5.第一方面,提供了一种报文传输的方法,该方法应用于第二运营商边缘(provideredge,pe),包括:第二pe通过组播隧道接收第一pe发送的bier报文,bier报文中包括比特串,该比特串用于指示接收bier报文的用户边缘(customeredge,ce);第二pe基于比特串对向ce发送的bier报文进行处理。6.本技术提供的技术方案,通过在pe之间传输用户bier报文,能够实现跨越运营商网络传输bier报文,提高了网络的可延展性,降低了运营商网络的负荷。此外,通过使用组播隧道进行bier报文的传输,能够降低占用的带宽,提高网络带宽利用率。7.在一种可能的实现方式中,第二pe基于所述比特串对向所述ce发送的所述bier报文进行处理包括:所述第二pe确定所述第二pe对于所述ce具有转发优先权;所述第二pe基于所述比特串向所述ce发送所述bier报文。第二pe接收到bier报文后,在确定具有转发优先权的情况下再发送bier报文,避免多个pe向同一ce发送相同的bier报文。8.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce具有转发优先权包括:所述第二pe获取与所述ce通信的第三pe的路由标识;所述第二pe基于其自身的路由标识和所述第三pe的路由标识,确定所述第二pe对于所述ce具有转发优先权。9.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce具有转发优先权包括:所述第二pe获取与所述ce通信的第三pe的优先权数;所述第二pe基于其自身的优先权数和所述第三pe的优先权数,确定所述第二pe对于所述ce具有转发优先权。通过路由标识或者优先权数来确定pe是否对于某个ce具有转发优先权,确定方式较为灵活。10.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce具有转发优先权还包括:所述第二pe基于所述ce的位转发路由器标识bfrid,获得第一转发位掩码,所述第一转发位掩码用于指示向所述ce发送所述bier报文。11.在一种可能的实现方式中,所述第二pe基于所述比特串向所述ce发送所述bier报文包括:所述第二pe将所述比特串与所述第一转发位掩码进行与操作,且在所述与操作的结果非零时,向所述ce发送所述bier报文。12.在一种可能的实现方式中,所述第二pe基于所述比特串对向所述ce发送的所述bier报文进行处理包括:所述第二pe确定所述第二pe对于所述ce不具有转发优先权;所述第二pe不向所述ce发送所述bier报文。第二pe接收到bier报文后,在确定不具有转发优先权的情况下不发送bier报文,避免多个pe向同一ce发送相同的bier报文。13.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce不具有转发优先权包括:所述第二pe获取与所述ce通信的第三pe的路由标识;所述第二pe基于其自身的路由标识和所述第三pe的路由标识,确定所述第二pe对于所述ce不具有转发优先权。14.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce不具有转发优先权包括:所述第二pe获取与所述ce通信的第三pe的优先权数;所述第二pe基于其自身的优先权数和所述第三pe的优先权数,确定所述第二pe对于所述ce不具有转发优先权。15.在一种可能的实现方式中,所述第二pe确定所述第二pe对于所述ce不具有转发优先权还包括:所述第二pe获得第二转发位掩码,所述第二转发位掩码用于指示不向所述ce发送所述bier报文。16.在一种可能的实现方式中,所述第二pe不向所述ce发送所述bier报文包括:所述第二pe将所述比特串与所述第二转发位掩码进行与操作,且在所述与操作的结果为零时,不向所述ce发送所述bier报文。17.在一种可能的实现方式中,所述组播隧道包括:互联网协议第6版(internetprotocolversion6,ipv6)组播隧道、互联网协议第4版(internetprotocolversion4,ipv4)组播隧道、多协议标签交换(multiprotocollabelswitching,mpls)组播隧道、虚拟扩展局域网(virtualextensiblelocalareanetwork,vxlan)组播隧道、bier组播隧道或头端复制(ingressreplication,ir)隧道。组播隧道的类型多种多样,可根据具体的应用场景选择对应的组播隧道类型,从而能够提高灵活性。18.在一种可能的实现方式中,该方法还包括:所述第二pe向所述第一pe发送路由消息,所述路由消息包括所述组播隧道的类型和所述第二pe的标识,所述第二pe的标识用于寻址所述第二pe。19.在一种可能的实现方式中,第一pe位于第一网络和运营商网络中,运营商网络连接第一网络与第二网络,第二pe位于第二网络和运营商网络,接收bier报文的ce位于第二网络。20.第二方面,提供了一种报文传输的方法,该方法应用于第一pe,包括:第一pe获取bier报文,该bier报文包括比特串,比特串用于指示接收该bier报文的ce;第一pe基于比特串,通过组播隧道向ce对应的第二pe发送bier报文。21.本技术提供的技术方案,通过第一pe获取用于指示接收bier报文的ce的比特串,进而向第二pe发送包括该比特串的bier报文,实现了在pe之间传输用户侧bier报文,能够实现跨越运营商网络传输bier报文,提高了网络的可延展性,降低了运营商网络的负荷。此外,通过使用组播隧道进行bier报文的传输,能够降低占用的带宽,提高网络带宽利用率。22.在一种可能的实现方式中,所述第一pe基于所述比特串,通过组播隧道向与所述ce对应的第二pe发送所述bier报文包括:所述第一pe基于所述比特串获取所述第二pe的标识;所述第一pe基于所述第二pe的标识对所述bier报文进行隧道封装,获得封装后的bier报文,所述封装后的bier报文包括的封装格式与所述组播隧道匹配;所述第一pe通过所述组播隧道,向所述第二pe发送所述封装后的bier报文。通过基于第二pe的标识对bier报文进行隧道封装,且使得封装后的bier报文包括的封装格式与组播隧道匹配,使得该bier报文能够在组播隧道正常传输,且由第二pe能够对其进行识别。23.在一种可能的实现方式中,所述组播隧道包括:ipv6组播隧道、ipv4组播隧道、mpls组播隧道、vxlan组播隧道、bier组播隧道或ir隧道。组播隧道的类型多种多样,可基于应用场景进行选择,提高了本方法的灵活性。24.在一种可能的实现方式中,所述方法还包括:所述第一pe接收所述第二pe发送的路由消息,所述第二pe发送的路由消息包括所述组播隧道的类型和所述第二pe的标识,所述第二pe的标识用于寻址所述第二pe。通过将组播隧道的类型和第二pe的标识通过理由消息发送给第一pe,使得第一pe能够对第二pe进行寻址,并进行与隧道匹配的封装。25.第三方面,提供了一种报文传输的装置,所述装置应用于第二pe,所述装置包括:26.接收模块,用于通过组播隧道接收第一pe发送的基于比特位的显式复制bier报文,所述bier报文中包括比特串,所述比特串用于指示接收所述bier报文的用户边缘ce;27.处理模块,用于基于所述比特串对向所述ce发送的所述bier报文进行处理。28.在一种可能的实现方式中,所述处理模块,用于确定所述第二pe对于所述ce具有转发优先权;基于所述比特串向所述ce发送所述bier报文。29.在一种可能的实现方式中,所述处理模块,用于获取与所述ce通信的第三pe的路由标识;基于所述第二pe的路由标识和所述第三pe的路由标识,确定所述第二pe对于所述ce具有转发优先权。30.在一种可能的实现方式中,所述处理模块,用于获取与所述ce通信的第三pe的优先权数;基于所述第二pe的优先权数和所述第三pe的优先权数,确定所述第二pe对于所述ce具有转发优先权。31.在一种可能的实现方式中,所述处理模块,还用于基于所述ce的位转发路由器标识bfrid,获得第一转发位掩码,所述第一转发位掩码用于指示向所述ce发送所述bier报文。32.在一种可能的实现方式中,所述处理模块,用于将所述比特串与所述第一转发位掩码进行与操作,且在所述与操作的结果非零时,向所述ce发送所述bier报文。33.在一种可能的实现方式中,所述处理模块,用于确定所述第二pe对于所述ce不具有转发优先权;不向所述ce发送所述bier报文。34.在一种可能的实现方式中,所述处理模块,用于获取与所述ce通信的第三pe的路由标识;基于所述第二pe的路由标识和所述第三pe的路由标识,确定所述第二pe对于所述ce不具有转发优先权。35.在一种可能的实现方式中,所述处理模块,用于获取与所述ce通信的第三pe的优先权数;基于所述第二pe的优先权数和所述第三pe的优先权数,确定所述第二pe对于所述ce不具有转发优先权。36.在一种可能的实现方式中,所述处理模块,还用于获得第二转发位掩码,所述第二转发位掩码用于指示不向所述ce发送所述bier报文。37.在一种可能的实现方式中,所述处理模块,用于将所述比特串与所述第二转发位掩码进行与操作,且在所述与操作的结果为零时,不向所述ce发送所述bier报文。38.在一种可能的实现方式中,所述组播隧道包括:互联网协议第6版ipv6组播隧道、互联网协议第4版ipv4组播隧道、多协议标签交换mpls组播隧道、虚拟扩展局域网vxlan组播隧道、bier组播隧道或ir隧道。39.在一种可能的实现方式中,所述处理模块,还用于向所述第一pe发送路由消息,所述路由消息包括所述组播隧道的类型和所述第二pe的标识,所述第二pe的标识用于寻址所述第二pe。40.第四方面,提供了一种报文传输的装置,所述装置应用于第一pe,所述装置包括:41.获取模块,用于获取bier报文,所述bier报文包括比特串,所述比特串用于指示接收所述bier报文的用户边缘ce;42.发送模块,用于基于所述比特串,通过组播隧道向与所述ce对应的第二pe发送所述bier报文。43.在一种可能的实现方式中,所述发送模块,用于基于所述比特串获取所述第二pe的标识;基于所述第二pe的标识对所述bier报文进行隧道封装,获得封装后的bier报文,所述封装后的bier报文包括的封装格式与所述组播隧道匹配;通过所述组播隧道,向所述第二pe发送所述封装后的bier报文。44.在一种可能的实现方式中,所述组播隧道包括:ipv6组播隧道、ipv4组播隧道、mpls组播隧道、vxlan组播隧道、bier组播隧道或ir隧道。45.在一种可能的实现方式中,所述装置还包括:46.接收模块,用于接收所述第二pe发送的路由消息,所述第二pe发送的路由消息包括所述组播隧道的类型和所述第二pe的标识,所述第二pe的标识用于寻址所述第二pe。47.第五方面,提供了一种报文传输设备,报文传输设备包括处理器,处理器与存储器耦合,存储器中存储有至少一条指令,至少一条指令由处理器加载并执行,以使得报文传输设备实现如上第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输的方法。48.第六方面,提供了一种计算机可读存储介质,其上存储有至少一条指令,指令由处理器加载并执行,以使得计算机实现如上第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输的方法。49.第七方面,提供了一种计算机程序产品,包括计算机程序或代码,计算机程序或代码被计算机执行时,实现如上第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输的方法。50.第八方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输方法。51.作为一种示例性实施例,处理器为一个或多个,存储器为一个或多个。52.作为一种示例性实施例,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。53.在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如,只读存储器(readonlymemory,rom),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本技术实施例对存储器的类型以及存储器与处理器的设置方式不做限定。54.第九方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行上述第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输的方法。55.第十方面,提供了另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行上述第一方面以及第二方面中任一方面,或者,第一方面以及第二方面中任一方面任一种可能的实现方式的报文传输的方法。56.第十一方面,提供了一种报文传输系统,所述报文传输系统包括第一运营商边缘pe以及第二pe,所述第二pe执行上述第一方面以及第一方面中任一种可能的实现方式的报文传输方法,所述第一pe执行上述第二方面以及第二方面中任一种可能的实现方式的报文传输的方法。附图说明57.图1是本技术实施例提供的一种报文传输的实施环境示意图;58.图2是本技术实施例提供的另一种报文传输的实施环境示意图;59.图3是本技术实施例提供的一种报文传输的方法的流程图;60.图4是本技术实施例提供的一种转发关系示意图;61.图5是本技术实施例提供的另一种转发关系示意图;62.图6是本技术实施例提供的一种bier数据传递示意图;63.图7是本技术实施例提供的另一种报文传输的实施环境示意图;64.图8是本技术实施例提供的一种用户侧bier数据流的传递过程示意图;65.图9是本技术实施例提供的另一种报文传输的实施环境示意图;66.图10是本技术实施例提供的另一种用户侧bier数据流的传递过程示意图;67.图11是本技术实施例提供的一种bier报文在pe上的转发示意图;68.图12是本技术实施例提供的一种路由的key结构示意图;69.图13是本技术实施例提供的一种bgppta的属性结构示意图;70.图14是本技术实施例提供的另一种报文传输的实施环境示意图;71.图15是本技术实施例提供的一种nlri结构示意图;72.图16是本技术实施例提供的一种标记字段的结构示意图;73.图17是本技术实施例提供的一种子域结构示意图;74.图18是本技术实施例提供的一种子子类型长度值类型的结构示意图;75.图19是本技术实施例提供的另一种子子类型长度值类型的结构示意图;76.图20是本技术实施例提供的另一种报文传输的实施环境图;77.图21是本技术实施例提供的一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;78.图22是本技术实施例提供的另一种报文传输的实施环境图;79.图23是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;80.图24是本技术实施例提供的另一种报文传输的实施环境图;81.图25是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;82.图26是本技术实施例提供的另一种报文传输的实施环境图;83.图27是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;84.图28是本技术实施例提供的另一种报文传输的实施环境图;85.图29是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;86.图30是本技术实施例提供的另一种报文传输的实施环境图;87.图31是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;88.图32是本技术实施例提供的另一种报文传输的实施环境图;89.图33是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;90.图34是本技术实施例提供的另一种报文传输的实施环境图;91.图35是本技术实施例提供的另一种组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系示意图;92.图36是本技术实施例提供的一种报文传输的装置结构示意图;93.图37是本技术实施例提供的另一种报文传输的装置结构示意图;94.图38是本技术实施例提供的另一种报文传输的装置结构示意图;95.图39是本技术实施例提供的一种网络设备的结构示意图;96.图40是本技术实施例提供的另一种网络设备的结构示意图。具体实施方式97.下面将结合附图对本技术实施方式作进一步地详细描述。98.bier技术是近年来通信领域提出的一种用于构建组播报文转发路径的技术,在bier网络中,包括中间节点和边缘节点,中间节点用于bier报文的转发,边缘节点不仅能够与bier网络内部的其他节点进行通信,还能够实现该bier网络与其他通信网络进行通信。99.对于bier网络中的每个边缘节点,均配置有一个位转发路由器标识(bit-forwardingrouteridentifier,bfrid),例如配置bfrid为1~256之间的一个值。bier网络中的每个边缘节点的配置信息可以在网络中泛洪,这种泛洪的信息称为bier信息。通过泛洪的方式,使得网络中各节点都能够确定bfrid标识以及对应的节点。本技术中bier网络中的节点是指bier网络中的设备,可以为路由器或交换机等数据通信设备。100.以如图1所示的实施环境示意图为例,该实施环境中包括运营商边缘(provideredge,pe)1、pe2、pe3以及ce1、ce2、ce3、ce4、ce5、ce6等设备。101.为了便于理解,基于图1所示的实施环境,对本技术实施例涉及的概念进行说明。在本技术实施例中,根据用户的不同可分为一个或多个用户网络。例如,将bier报文传输路径所经过的pe以及ce所在的网络称为用户网络。通过为运营商pe节点上配置vpn用以区分不同用户网络,一个vpn对应一个用户网络。pe可独立地为不同用户网络运行bier提供服务。例如,在图1中的各pe上,为用户网络1配置一个vpn,称为vpn1,为用户网络2配置另一个vpn,称为vpn2。102.此外,一个用户网络包括一个或多个站点(site),每个站点为用户网络的一部分。每个站点是同一vpn下连接同一pe的ce,该pe与ce可以通过直连或非直连的方式进行连接。如图1所示,pe1、pe2、pe3、ce1、ce2、ce3以及ce4位于用户网络1中,pe1、pe3、ce5、ce6位于用户网络2中。其中,用户网络1包括三个站点,分别为:连接pe1的ce1以及ce2为一个站点;连接pe2的ce3为一个站点;连接pe3的ce4为一个站点。用户网络2包括两个站点,分别为:连接pe1的ce5为一个站点;连接pe3的ce6为一个站点。103.需要说明的是,图1仅将pe1、pe2、pe3、ce1、ce2、ce3以及ce4所在网络作为一个用户网络1,配置同一vpn为例进行说明,但并不对用户网络的划分进行限制。在示例性实施例中,也可以将pe1、pe2、pe3、ce1、ce2、ce3以及ce4所在的网络作为三个不同的用户网络。例如,pe1、ce1以及ce2所在网络为一个用户网络,pe2以及ce3所在网络为一个用户网络,pe3以及ce4所在网络为一个用户网络。104.其中,图1所示的实施环境中包括两条报文传输路径,第一条如图1中实线所示,是以ce1作为报文的发送者,以ce2、ce3以及ce4作为报文的接收者的传输路径,第二条如图1中虚线所示,是以ce5作为报文的发送者,以ce6作为报文的接收者的传输路径。105.相关技术中,bier技术主要应用于运营商网络,用户网络内部署基于协议无关组播(protocalindependentmulticast,pim)协议的组播,用户网络内不同站点(site)之间的组播流在运营商网络中可以基于bier隧道进行承载。以图1中的第一条报文传输路径为例,相关技术中,仅在运营商网络(即包括p1、p2、pe1、pe2以及pe3的网络)之间采用bier技术,在ce1与pe1、ce2与pe1、ce3与pe2、ce4与pe3之间分别部署pim协议。也就是说,相关技术中,ce1发送的报文先基于pim协议传输到pe1,在pe1上被封装成bier报文并通过运营商网络传输到pe2和pe3上,在pe2和pe3上解封装之后,由pe2和pe3再通过pim协议分别将该报文发送给ce3和ce4设备。106.由于bier技术中边缘节点的数量限制,导致相关技术在运营商网络内采用bier技术时可接入的ce的数量也受到局限,可延展性不强,且运营商网络需要维护大量的报文,导致运营商网络的负荷过重。107.本技术实施例提供了一种报文传输的方法,该方法在用户网络部署bier技术,运营商网络无需为每个用户网络建立一个bier子域(sub-domain),运营商网络采用组播隧道技术,也即pe之间建立组播隧道,使得运营商不同站点的用户bier网络互通,实现不同site的用户bier报文的封装和传递。此外,不同用户vpn内的biersub-domainid以及bfrid可以独立规划,且不影响运营商公网所选择的信令和转发技术。108.例如,在图1所示的实施环境中,用户网络1、用户网络2和运营商网络均部署bier协议。图1中的用户1和用户2在运营商pe上分别属于vpn1和vpn2这两个独立的vpn。用户1中可以配置sub-domain0和sub-domain1,用户2中也可以配置sub-domain0和sub-domain1,pe设备在vpn1实例和vpn2实例内独立地为sub-domain0或sub-domain1转发表,不相互制约和影响。以图1中的第一条报文传输路径为例,在ce1与pe1、ce2与pe1、ce3与pe2、ce4与pe3之间分别部署bier协议。ce1发送的报文先基于bier协议传输到pe1,通过运营商网络传输到pe2和pe3上,再由pe2和pe3分别将该报文发送给ce3和ce4设备。ce5发送的报文先基于bier协议传输到pe1,通过运营商网络传输到pe3上,再由pe3分别将该报文发送给ce6设备。由此可跨越运营商网络传输bier报文,从而提高网络的可延展性,以及降低运营商网络的负荷。109.又例如,本技术实施例提供的方法也适用于图2所示的实施环境中。如图2所示,pe1除了连接包括ce1和ce2在内的用户网络1,还连接包括ce5在内的用户网络2。图2中的用户1和用户2在运营商pe上分别属于vpn1和vpn2这两个独立的vpn。用户1中可以配置sub-domain0和sub-domain1,用户2中也可以配置sub-domain0和sub-domain1,pe设备在vpn1实例和vpn2实例内独立地为sub-domain0或sub-domain1转发表,不相互制约和影响。如图2所示,该实施环境中包括两条报文传输路径,第一条如图2中实线所示,是以ce1作为报文的发送者,以ce2以及ce3作为报文的接收者的传输路径,第二条如图2中虚线所示,是以ce5作为报文的发送者,以ce4作为报文的接收者的传输路径。110.此外,图2中的bieroverx表示报文在运营商公网中的封装类型。如图2所示,bieroverx包括但不限于bieroverbier、bieroverbierv6、bieroveripv6组播、bieroveripv4组播、bierovermplsp2mp、bierovervxlan组播以及bieroverir组播等。图2中的bierviax表示报文在用户网络中的封装类型。如图2所示,bierviax包括但不限于biervia中间系统到中间系统(intermediatesystemtointermediatesystem,isis)、biervia开放最短路径优先(openshortestpathfirst,ospf)以及biervia边界网关协议(bordergatewayprotocol,bgp)。111.本技术实施例提供的方法中,同一用户vpn内不同site的bier封装类型可以灵活选择,不同site可以使用相同的封装类型,该种情况称为同构;不同site也可以使用不同的封装类型,该种情况称为异构。例如图2所示的实施环境中,用户网络1中可以运行bierv6协议,用户网络2内可以运行biermpls协议。又例如,用户网络2内不同site,有的运行biermpls,有的可以运行biereth,biermpls和biereth的拼接策略与方式由用户网络确定,本技术实施例对此不加以限定。112.本技术实施例提供了一种报文传输的方法,该方法可应用于例如图2所示的实施环境中。请参考图3,其示出了本技术实施例提供的一种报文传输的方法流程图。如图3所示,本技术实施例提供的报文传输的方法包括如下几个步骤。113.步骤301,第一pe获取bier报文,bier报文包括比特串,该比特串用于指示接收bier报文的ce。114.在本技术实施例中,第一pe连接一个或多个用户网络,在第一pe上使用vpn区分不同用户网络,并且为不同用户网络运行bier提供服务。在第一pe获取bier报文之前,本技术实施例提供的方法还包括pe成员发现和运营商网络组播隧道技术协商的过程,以及用户网络bier信息学习和pe之间bier数据转发关系的确定过程,这两个过程的实现方式此处暂不赘述,详见后续的解释说明。115.关于第一pe获取bier报文的方式,本技术实施例不进行限定。示例性地,第一pe接收用户网络中的一个ce向另外一个ce发送的bier报文。为便于描述,将发送bier报文的ce称为第一ce,将接收bier报文的ce称为第二ce,第二ce的数量可以为一个或多个。例如图2所示的实施环境中,第一pe为图2中的pe1,第一ce为图2中的ce1,pe1与ce1的连接方式包括直连与非直连。结合上述图2实施环境中的描述,ce1位于第一网络,如图2中的用户网络1。该第一网络为bier网络,ce1向pe1发送bier报文。116.在一个sub-domain中,接收bier报文的ce用一个比特串(bitstring)来表示,也即比特串用于指示接收bier报文的ce。其中,比特串中的每个比特(bit)所在的位置或索引表示一个边缘节点的bfrid,也即接收bier报文的ce的bfrid。示例性地,发送bier报文的第一ce将此bitstring封装在bier报文的bier头中发送给第一pe。117.在一种可能的实现方式中,在第一pe接收第一ce发送的bier报文之前,第一pe为第一网络以及第二网络配置vpn,以第一网络和第二网络属于相同vpn为例,第一pe为第一网络和第二网络所属的同一个用户网络配置第一vpn,第一vpn用于该用户网络内进行bier报文传输时与其他用户网络内传输的报文进行隔离。118.可选地,第一pe还可以为其他用户网络配置对应的vpn,本技术实施例仅对第一vpn内的bier报文的传输方法进行举例说明,其他vpn内的bier报文的传输方法均可参照第一vpn内的bier报文的传输方法,本技术实施例将不赘述。119.在第一pe上为第一网络以及第二网络配置vpn之后,第一pe将第一pe上的与ce连接的接口与对应的vpn进行绑定。例如图2所示,以pe1为例,pe1上pe1与ce1的连接接口绑定在vpn1中,pe1上pe1与ce2的连接接口绑定在vpn1中,pe1上pe1与ce5的连接接口绑定在vpn2中。以pe2为例,pe2上pe2与ce3的连接接口绑定在vpn1中。以pe3为例,pe3上pe3与ce4的连接接口绑定在vpn1中。120.在第一pe上为第一网络以及第二网络配置vpn,并且将第一pe上与ce连接的接口(即第一pe与第一ce的连接接口)与对应的第一vpn绑定之后,第一pe接收第一ce发送的bier报文。可选地,第一pe通过第一pe与第一ce的连接接口接收第一ce发送的bier报文。121.步骤302,第一pe基于比特串,通过组播隧道向ce对应的第二pe发送bier报文。122.由于bier报文中包括比特串,因此,第一pe收到bier报文后,通过对报文解封装,得到比特串。例如,比特串封装在bier报文的bier头中,第一pe通过解封装bier报文的bier头,得到该比特串。123.得到比特串后,第一pe基于比特串确定下一跳设备。例如,第一pe可查询转发表,该转发表包括比特串及下一跳设备的标识之间的对应关系,从而使得第一pe确定下一跳设备的标识。以下一跳设备为第二pe为例,第一pe基于比特串,通过组播隧道向与ce对应的第二pe发送bier报文包括但不限于:第一pe基于比特串获取第二pe的标识;第一pe基于第二pe的标识对bier报文进行隧道封装,获得封装后的bier报文,封装后的bier报文包括的封装格式与组播隧道匹配;第一pe通过组播隧道,向第二pe发送封装后的bier报文。本技术实施例不对运营商公网建立的组播隧道的类型进行限定,示例性地,组播隧道包括:ipv6组播隧道、ipv4组播隧道、mpls组播隧道、vxlan组播隧道、bier组播隧道或ir组播隧道。124.另外,本技术实施例不对转发表中第二pe的标识以及组播隧道的类型的确定方式进行限定,在一种可能的实现方式中,该方法还包括:第二pe向第一pe发送路由消息,路由消息包括组播隧道的类型和第二pe的标识,第二pe的标识用于寻址第二pe。相应的,该方法还包括:第一pe接收第二pe发送的路由消息,第二pe发送的路由消息包括组播隧道的类型和第二pe的标识,第二pe的标识用于寻址第二pe。125.需要说明的是,第二pe发送路由消息以及第一pe接收路由消息的过程也即上述提及的pe成员发现和运营商网络组播隧道技术协商的过程,详细过程可参考后续内容,此处暂不赘述。126.为了便于理解bier报文的发送过程,以图14所示的实施环境为例进行说明。图14中,用户侧bier网络中的设备ce1、ce2、ce3和ce4的bfrid分别1、2、3、4。其中,ce1向ce2、ce3和ce4发送bier报文,ce2、ce3和ce4对应同一biervpn实例1。通过用户网络bier信息学习和pe之间bier数据转发关系的确定过程,ce2的bfr前缀(prefix)以及bfrid在pe1上可以同时通过远端bfr邻居pe2和pe3学习,如果pe1优选远端bfr邻居pe2作为该路由的下一跳,则在pe1设备上将形成如图4所示的基于bfrid的转发关系。图4中,pe1到达ce4的下一跳为ce4,ce4为pe1的直连邻居;pe1到达ce2的下一跳为pe2,pe2为pe1的远端邻居;pe1达到ce3的下一跳为pe3,pe3为pe1的远端邻居。127.由于pe1到pe2和pe3的数据封装采用运营商公网建立的组播隧道,pe1可通过运营商公网的组播隧道向pe2和pe3发送bier报文,将bfrid以位掩码表示之后,如图4所示的基于bfrid的转发关系会进一步转化为基于bitmask(位掩码)的转发关系。例如,基于bitmask(位掩码)的转发关系如图5所示。图5中,位掩码0110对应ce2和ce3的bfrid。由于pe1上出接口为公网p-tunnel(运营商组播隧道),下一跳为all_bier_vpn_pe,因此,pe2和pe3均能收到bitstring为0110的bier报文。用户网络bier数据在运营商网络之间的传递示例如图6所示,pe1收到ce1发送的bier报文后,pe1向直连的ce4发送携带bitstring为1000的bier报文,pe1通过运营商公网的组播隧道向pe2和pe3发送携带bitstring为0110的bier报文。示例性地,图6中,用户网络基于bier的下一代组播虚拟专用网(nextgenerationmulticastvirtualprivatenetwork,ng-mvpn)/公网组播(globaltablemulticast,gtm)传输报文。128.步骤303,第二pe通过组播隧道接收第一pe发送的bier报文。129.如上述步骤302中所述,bier报文的接收者可能有一个或多个,因此,第二pe为一个或多个,每个第二pe均能通过组播隧道接收第一pe发送的bier报文。仍以图14所示的实施环境为例,第一pe为pe1,第二pe为pe2和pe3,pe2和pe3通过组播隧道均接收到pe1发送的bier报文。130.步骤304,第二pe基于比特串对向ce发送的bier报文进行处理。131.由于第二pe的数量为一个或多个,每个第二pe通过运营商公网的组播隧道均能收到bier报文。对于第二pe的数量为多个,且多个第二pe均能与该bier报文的接收者也即ce通信的情况下,如果多个第二pe均向同一ce发送bier报文,会存在同一ce接收到由多个第二pe发送的多份bier报文的情况。132.例如,在图14所示的实施环境中,由于pe2和pe3均连接了用户bier网络设备ce2,pe2和pe3均能与ce2通信,如果ce2为bier报文的接收者,因此,需要避免pe2和pe3同时将bier报文发往ce2,以免ce2下挂的最终用户收到双份组播流。133.对此,本技术实施例提供的方法中,提供了对本地用户bier网络的转发优先权进行协商的过程,该协商过程也即是优先权比较过程。基于协商结果,具有转发优先权的pe有权通过本地用户侧bier网络向该bfrid所代表的bfer发送bier报文,不具有转发优先权的pe禁止也即不通过本地用户侧bier网络向该bfrid所代表的bfer发送bier报文。关于转发优先权的协商方式,本技术实施例不进行限定,包括但不限于如下两种协商方式。134.协商方式一:通过比较所有从本地用户bier网络学习到该bfrid的biervpnpe的路由标识(routerid),基于routerid的大小确定转发优先权。135.基于该协商方式一,第二pe确定第二pe对于ce具有转发优先权,包括但不限于第二pe获取与ce通信的第三pe的路由标识;第二pe基于其自身的路由标识和第三pe的路由标识,确定第二pe对于ce具有转发优先权。136.例如,以图7所示的实施环境为例,ce2向pe2和pe3通告ce2的bfrid=2。pe2和pe3相互通告路由信息,pe2向pe3通告bfrid=2,携带的pe2的routerid为2.2.2.2;pe3向pe2通告bfrid=3,携带的pe3的routerid为3.3.3.3。若routerid大者有转发优先权,则发送至ce2(bfrid=2)的bier报文只能被pe3通过本地用户侧bier网络发送。也即pe3作为第二pe,确定自身对于ce2具有转发优先权。137.基于该协商方式一,第二pe确定第二pe对于ce不具有转发优先权包括但不限于第二pe获取与ce通信的第三pe的路由标识;第二pe基于其自身的路由标识和第三pe的路由标识,确定第二pe对于ce不具有转发优先权。138.仍以图7所示的实施环境为例,ce2向pe2和pe3通告ce2的bfrid=2。pe2和pe3相互通告路由信息,pe2向pe3通告bfrid=2,携带的pe2的routerid为2.2.2.2;pe3向pe2通告bfrid=3,携带的pe3的routerid为3.3.3.3。若routerid大者有转发优先权,则发送至ce2(bfrid=2)的bier报文只能被pe3通过本地用户侧bier网络发送,而pe2不具有转发优先权。也即pe2作为第二pe,确定自身对于ce2不具有转发优先权。139.以上仅以pe2和pe3针对ce2是否具有转发优先权为例进行说明,对于pe2和pe3针对ce3是否具有转发优先权,由于pe3与ce3连接,能够与ce3通信,但pe2未与ce3连接,因此,pe3对于ce3具有转发优先权。140.基于上述转发优先权的协商过程,用户侧bier报文的传递过程如图8所示。pe1收到ce1发送的携带bitstring为1110的bier报文后,pe1向直连的ce4发送携带bitstring为1000的bier报文,pe1通过运营商公网的组播隧道向pe2和pe3发送携带bitstring为0110的bier报文。由于pe3对于ce2具有转发优先权,且pe3对于ce3也具有转发优先权,因此,pe3向ce2发送携带bitstring为0010的bier报文,向ce3发送携带bitstring为0100的bier报文。141.协商方式二:通过比较所有从本地用户bier网络学习到该bfrid的biervpnpe发布的携带该bfrid的biervpnadvertise路由的中的优先权数,基于优先权数大小确定转发优先权。142.该种协商方式下,优先权数在biervpn通告(advertise)路由中为一个新增bgp传递路径属性(bgptransitivepathattribute),该属性中至少包含一个字段用以明确对应biervpnadvertise路由的始发biervpnpe设备优先权数。优先权数用于指示具有转发优先权的优先级,通过比较优先权数,能够确定pe是否具有转发优先权。143.基于该协商方式二,第二pe确定第二pe对于ce具有转发优先权,包括但不限于第二pe获取与ce通信的第三pe的优先权数;第二pe基于其自身的优先权数和第三pe的优先权数,确定第二pe对于ce具有转发优先权。144.以图9所示的实施环境为例,ce2向pe2和pe3通告ce2的bfrid=2。pe2和pe3相互通告路由信息,pe2向pe3通告bfrid=2,携带的pe2的优先权数为2;pe3向pe2通告bfrid=3,携带的pe3的优先权数为3。若优先权数小者有转发优先权,则发送至ce2(bfrid=2)的bier报文只能被pe2通过本地用户侧bier网络发送。也即pe2作为第二pe,确定自身对于ce2具有转发优先权。145.基于该协商方式二,第二pe确定第二pe对于ce不具有转发优先权包括但不限于第二pe获取与ce通信的第三pe的优先权数;第二pe基于其自身的优先权数和第三pe的优先权数,确定第二pe对于ce不具有转发优先权。146.仍以图9所示的实施环境为例,ce2向pe2和pe3通告ce2的bfrid=2。pe2和pe3相互通告路由信息,pe2向pe3通告bfrid=2,携带的pe2的优先权数为2;pe3向pe2通告bfrid=3,携带的pe3的优先权数为3。若优先权数小者有转发优先权,则发送至ce2(bfrid=2)的bier报文只能被pe2通过本地用户侧bier网络发送,而pe3不具有转发优先权。也即pe3作为第二pe,确定自身对于ce2不具有转发优先权。147.以上仅以pe2和pe3针对ce2是否具有转发优先权为例进行说明,对于pe2和pe3针对ce3是否具有转发优先权,由于pe3与ce3连接,能够与ce3通信,但pe2未与ce3连接,因此,pe3对于ce3具有转发优先权。148.基于上述转发优先权的协商过程,用户侧bier报文的传递过程如图10所示。pe1收到ce1发送的携带bitstring为1110的bier报文后,pe1向直连的ce4发送携带bitstring为1000的bier报文,pe1通过运营商公网的组播隧道向pe2和pe3发送携带bitstring为0110的bier报文。由于pe2对于ce2具有转发优先权,且pe3对于ce3也具有转发优先权,因此,pe2向ce2发送携带bitstring为0010的bier报文,pe3向ce3发送携带bitstring为0100的bier报文。149.通过上述转发优先权的协商过程可以看出,转发优先权的协商结果不同,第二pe基于比特串对向ce发送的bier报文进行处理方式不同。在一种可能的实现方式中,第二pe上可基于转发优先权的协商结果生成优先转发位掩码(forwardingbitmask),当biervpnpe从公网p-tunnel上接收数据并解封装之后,使用该优先转发位掩码对用户bier头中的bitstring做“位与”操作。操作结果得到的bitstring则为允许该biervpnpe向其本地用户bier网络发送的bit位信息,则该第二pe基于操作结果得到的bitstring查找其本地vpn实例内的bier转发关系,并根据转发关系的指示向其本地用户bier网络发送bier报文。150.因此,第二pe基于比特串对向ce发送的bier报文进行处理,包括但不限于如下处理方式。151.处理方式一:第二pe基于比特串对向ce发送的bier报文进行处理包括:第二pe确定第二pe对于ce具有转发优先权;第二pe基于比特串向ce发送bier报文。152.在一种可能的实现方式中,第二pe确定第二pe对于ce具有转发优先权还包括:第二pe基于ce的bfrid,获得第一转发位掩码,第一转发位掩码用于指示向ce发送bier报文。示例性地,第二pe基于比特串向ce发送bier报文包括:第二pe将比特串与第一转发位掩码进行与操作,且在与操作的结果非零时,向ce发送bier报文。153.处理方式二:第二pe基于比特串对向ce发送的bier报文进行处理包括:第二pe确定第二pe对于ce不具有转发优先权;第二pe不向ce发送bier报文。154.在一种可能的实施方式中,第二pe确定第二pe对于ce不具有转发优先权还包括:第二pe获得第二转发位掩码,第二转发位掩码用于指示不向ce发送bier报文。示例性地,第二pe不向ce发送bier报文包括:第二pe将比特串与第二转发位掩码进行与操作,且在与操作的结果为零时,不向ce发送bier报文。155.例如,基于上述协商方式一使用pe的routerid值的大小协商确定转发优先权,以图7所示的实施环境为例,ce2的bfrid=2,在pe3上具有对于ce2的转发优先权;ce3的bfrid=3,由于该ce3的bfrid只有pe3可以通过其本地用户侧bier网络中学习到,因此,pe3上具有对于ce3的转发优先权。pe2上生成的优先转发位掩码也即第二转发位掩码为0000,pe3上生成的优先转发位掩码也即第一转发位掩码为0110,该第一转发位掩码中与ce2的bfrid对应的比特位以及与ce3的bfrid对应的比特位被置位。pe2收到pe1发送的bier报文解封装p-tunnel之后,将用户bier头中的bitstring0110与优先转发位掩码0000做“位与”操作结果为0000,pe2将不会将该bier数据报文转发到其本地用户侧bier网络中。pe3收到pe1发送的bier报文解封装p-tunnel之后,将bier头中的bitstring0110与优先转发位掩码0110做“位与”操作结果为0110,因此,pe3负责将bier报文通过其本地用户bier网络发送至ce2和ce3。156.又例如,基于上述协商方式二使用biervpnprefix路由的优先权数的大小协商确定转发优先权,以图9所示的实施环境为例,ce2的bfrid=2,在pe2上对于ce2具有转发优先权;ce3的bfrid=3,由于该ce3的bfrid只有pe3可以通过其本地用户侧bier网络中学习到,因此,pe3对于ce3具有转发优先权。pe2上生成的优先转发位掩码也即第一转发位掩码为0010,该pe2上生成的优先转发位掩码中与ce3的bfrid对应的比特位被置位,pe3上生成的优先转发位掩码也即第一转发位掩码为0100,该pe3上生成的优先转发位掩码中与ce2的bfrid对应的比特位被置位。pe2收到pe1发送的bier报文解封装p-tunnel之后,将bier头中的bitstring0110与优先转发位掩码0010做“位与”操作结果为0010,因此,pe2负责将bier报文通过其本地用户bier网络发送至ce2。pe3收到pe1发送的bier报文解封装p-tunnel之后,将bier头中的bitstring0110与优先转发位掩码0100做“位与”操作结果为0100,因此,pe3负责将bier报文通过其本地用户bier网络发送至ce3。157.综上所述,本技术实施例提供的报文传输的方法中,用户bier报文在入口(ingress)pe和出口(egress)pe上的转发示意图如图11所示。其中,ingresspe对应于上述图3所示方法流程中的第一pe,egresspe对应于上述图3所示方法流程中的第二pe。用户bier报文流入运营商网络和流出运营商网络可概括为如下五个过程。其中,第一过程和第二过程位于ingresspe上,第三、第四和第五过程位于egresspe上。第一过程至第五过程的实现过程可参考上述图3所示的报文传输的方法中的各个过程,此处不再赘述。158.第一过程,ingresspe从本地站点的用户设备收到用户bier报文后,查找对应vpn实例内的bier转发关系,基于转发关系中的“位掩码信息”修改bier数据报文中的bitstring(通过“位与”操作),同时基于转发关系中的p-tunnel信息(运营商公网的隧道信息)确定数据封装使用的公网隧道。159.第二过程,ingresspe基于转发关系中的p-tunnel信息执行运营商公网的组播隧道的封装,封装过程中将用户bier报文作为运营商公网组播隧道的负载。160.第三过程,egresspe从运营商公网的组播隧道中收到封装后的bier报文,对封装后的bier报文执行解封装,即将ingresspe封装的报文头剥离以获得ce发送的用户bier报文。egresspe基于运营商公网的组播隧道的相关封装信息确定用户bier报文所属的本地vpn实例信息。需要说明的是,在该过程中,无论ingresspe和egresspe之间采用何种封装方式,egresspe都会将采用该封装方式所封装的内容剥离。本技术中的用户bier报文的报文头是ce的封装格式,egresspe不会剥离ce的封装格式。161.第四过程,egresspe在用户bier报文所属的本地vpn实例内查找优先转发位掩码(第一转发位掩码或第二转发位掩码),并基于优先转发位掩码修改(通过“位与”操作)用户bier头中的bitstring信息。基于本技术实施例提供的转发优先权的协商原则,egresspe所获得的优先转发位掩码是基于egresspe接收到的用户的bfrid获得的,因此,基于“位与”修改之后的用户bier头中的bitstring也只会包含本站点内对应的用户bfrid信息。162.第五过程,egresspe查找本地vpn实例内的bier转发关系,基于用户bier头中的bitstring信息和bier转发关系中的下一跳等指示信息将用户bier报文发送至本地站点内的用户设备,也即对应的ce,由ce再转发至对应的用户设备。163.针对pe成员发现和运营商网络组播隧道技术协商的过程进行说明。该过程中,运营商pe设备间通过发送biervpn成员发现路由来实现运营商网络pe成员发现,该路由通过路由类型或路由的子地址族标识符(subaddressfamilyidetifier,safi)类型与现有路由进行区分;该路由的key可以包含如图12所示的路由区分符(routedistinguisher,rd)和起始路由器ip地址(originatingrouteripaddress)两个部分。164.rd:发送该路由的pe上的biervpn实例的rd值。165.originatingrouteripaddress:发送该路由的biervpnrouterid,运营商网络为ipv4网络时,该值为一个公网ipv4地址,运营商网络为ipv6网络时,该值为一个公网ipv6地址;该地址用于在运营商网络中唯一标识发送该路由的pe设备。166.进一步地,该路由中还可以携带rfc6514中定义的pmsi隧道属性(pmsitunnelattribute),或者rfc8556定义的bierpmsi隧道属性(bierpmsitunnelattribute),用于协商biervpn成员间所使用的组播隧道信息。167.若各pe发送的成员发现路由中携带的pmsitunnelattribute属性中的隧道类型为ipv4组播隧道、ipv6组播隧道、mplsp2mp隧道、vxlan组播隧道、bier组播隧道或ir隧道时,各pe之间会触发对应的公网信令,以建立对应的运营商公网组播隧道p-tunnel。例如,隧道类型为ipv4组播隧道则触发pimsm或pimssm信令建立运营商公网组播隧道p-tunnel;隧道类型为ipv6组播隧道则触发pimipv6sm或pimipv6ssm信令建立运营商公网组播隧道p-tunnel;隧道类型为mplsp2mp隧道则触发mldp或rsvp-tep2mp信令建立运营商公网组播隧道p-tunnel;隧道类型为vxlan组播隧道时则触发pimsm或pimssm信令建立运营商公网组播隧道p-tunnel;隧道类型为ir隧道时,需要对应ir隧道的目的地址单播路由可达。上述运营商公网组播隧道p-tunnel建立过程,本技术实施例将不对其做详细描述;建立的运营商公网组播隧道p-tunnel被用于封装用户bier网络的数据报文,以实现用户bier网络跨运营商pe互通。168.此外,若各pe发送的成员发现路由中携带的pmsitunnelattribute属性中的隧道类型为bier(含biermpls和bier以太两种类型)或bierv6隧道类型时,该路由还可以进一步地包含bier业务标识属性,该属性为一种新增的bgp传递路径属性(bgptransitivepathattribute),该bgptransitivepathattribute(简称tpa)的属性结构中至少包含图13中所示的bs-id字段,bs-id可以包括一个用于区分vpn的ipv6地址。在这种情况下,一个pe上要支持多个biervpn用户则需要配置多个ipv6地址,多个ipv6地址可以在一个地址块内进行分配;或者bs-id也可以是一个用于区分vpn的mpls标签,在这种情况下,一个pe上要支持多个biervpn用户则需要分配多个mpls标签,多个mpls标签可以在mpls下游标签空间中进行分配,如图13所示。其中,图13中的各字段含义如下所示。169.类型(type):一种新增的bgp属性类型,待确定(tobedetermined,tbd)。170.类型长度值类型(tlvtype):标识bier业务类型,如:bieripv6、bier-mpls或bier-eth,tbd。171.子类型长度值类型(sub-tlvtype):标识bs-id类型,当运营商为原生(native)ipv6网络时,bs-id类型为一个ipv6地址类型,tbd;当运营商为ipv4网络时,bs-id类型为一个mpls下游标签类型,tbd。172.bs-id:若sub-tlvtype为ipv6类型,其为一个16字节ipv6地址;若sub-tlvtype为mpls标签类型,其为一个4字节内容,低20bit为一个mpls下游标签。173.关于用户网络bier信息学习和pe之间bier数据转发关系的确定过程,基于上述biervpn的成员发现,biervpnpe成员之间相互成为远端bfr邻居。例如,以图14所示的实施环境为例,pe2和pe3均为pe1的远端bfr邻居,pe1和pe2也均为pe3的远端bfr邻居。用户网络bier信息包括图14中ce1、ce2、ce3和ce4的bfrid和bfrprefix信息。在biervpnpe成员之间通过biervpnprefix通告路由进行相互通告和学习,例如,通过该路由的bgp链路网络层可达信息(networklayerreachabilityinformation,nlri)携带至少包括图15所示中的rd和ipprefix字段(或在bgp消息中的其它tlv中携带这些字段)。其中,路由的key包含以下几个部分。174.rd:发送该路由的pe上的biervpn实例的rd值。175.ip前缀长度(ipprefixlength):用户网络内bierprefix的前缀长度,根据rfc8279,该值固定为32(ipv4)或128(ipv6)。176.ip前缀(ipprefix):用户网络内的bierprefix。177.路由的non-key为:178.标记(flags):路由标记,标记本bierprefix是否为originatingrouteripaddress所在pe设备的本地bierprefix;该字段为1个字节,如图16所示:其中,lbit置1说明该prefix为pe设备的bfrprefix。179.originatingrouteripaddress:发送该路由的biervpnrouterid,运营商网络为ipv4网络时,该值为一个公网ipv4地址,运营商网络为ipv6网络时,该值为一个公网ipv6地址;该地址用于在运营商网络中唯一标识发送该路由的pe设备。180.进一步地,该路由的属性中还包含bier业务封装属性(bierserviceencapsulationattribute),用以指示用户bier网络的bier封装类型(例如biermpls、bier以太或bierv6)、bfrid以及其它关键bier信息。该属性为一种新增的bgptransitivepathattribute,该bgptransitivepathattribute属性中包含一个或多个subdomain信息。例如,subdomain信息通过如图17所示sub-tlv携带,每个subdomain的sub-tlv中可以携带一个bfrid(subdomain没有携带bfrid时,对应填写bfrid值的字段设置为0)。其中,图17所示的主要字段含义如下所示。181.type:一种新增的bgp属性类型,tbd。182.sub-type:biersubdomain子tlv类型,tbd。183.在一种可能的实现方式中,该bgptransitivepathattribute属性中还可以包含0个或多个bsl封装类型即子子类型长度值类型(sub-sub-tlvtype),包括sub-sub-tlvtype1和sub-sub-tlvtype2。例如,如图18所示,通过sub-sub-tlvtype字段指明对应subdomain及bsl的封装类型:当用户网络使用bieripv6时,该属性还会包含一个bieripv6策略地址子sub-sub-tlv,例如,如图19所示:其中,ipv6address为bieripv6的策略地址。184.为了便于理解,根据用户网络的bier封装类型和运营商公网组播隧道类型,基于以下几种场景,对本技术实施例提供的方法进行举例说明。185.场景一:biermplsovermplsp2mp186.其中,biermplsovermplsp2mp是指用户网络与其pe之间采用的是biermpls,pe与pe之间采用的是mplsp2mp,也即用户网络的bier封装类型为biermpls,运营商公网组播隧道类型为mplsp2mp。187.例如,参见图20,本实施例中用户网络使用biermpls封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用mplsp2mp类型的公网组播隧道。其中,本技术实施例不对公网使用的mplsp2mp信令类型做依赖,因此,本实施例以组播标签分发协议(multicastlabeldistributeprotocol,mldp)隧道为例进行举例说明。在本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。188.1)biervpn基础配置189.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及路由目标(routetarget,rt)信息。其中,rd和rt用于标识vpn,因此,rd和rt可选择其中一个设置,也可以两个都设置,本技术实施例对此不加以限定。例如,在pe1上配置biervpn的rd为1:1,入口(import)rt和出口(export)rt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。190.2)bgp基础配置191.在pe1、pe2和pe3上分别配置公网环回(loopback)地址1.1.1.1、2.2.2.2、3.3.3.3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使pe1、pe2和pe3两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本技术实施例中的bgp路由。192.3)biervpnid及p-tunnel配置193.#pe1对应配置示例;194.biervpn-id1.1.1.1195.biervpn-instancebier_vpn196.pmsitunnel197.mldp198.#pe2对应配置示例;199.biervpn-id2.2.2.2200.biervpn-instancebier_vpn201.pmsitunnel202.mldp203.#pe3对应配置示例;204.biervpn-id3.3.3.3205.biervpn-instancebier_vpn206.pmsitunnel207.mldp208.除上述配置外,还需要在运营商公网pe-p-pe设备之间配置mldp信令,以实现mldp类型的公网p-tunnel隧道的建立。209.通过上述配置,pe1\pe2\pe3之间将触发biervpn自动发现(biervpnautodiscovery)路由的相互发送,包括但不限于如下几个过程。210.a1:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带mldp类型的pta属性,因此,pe1触发mldp信令建立以pe2为根的p2mp标记交换路径(labelswitchingpath,lsp);pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带mldp类型的pta属性,因此,pe1触发mldp信令建立以pe3为根的p2mplsp。211.b1:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带mldp类型的pta属性,因此,pe2触发mldp信令建立以pe1为根的p2mplsp;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带mldp类型的pta属性,因此,pe2触发mldp信令建立以pe3为根的p2mplsp。212.c1:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带mldp类型的pta属性,因此,pe3触发mldp信令建立以pe1为根的p2mplsp;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带mldp类型的pta属性,因此,pe3触发mldp信令建立以pe2为根的p2mplsp。213.4)在pe1\pe2\pe3上配置biersubdomain0并使能isis和bgp的bierprefix通告;214.#配置示例;215.biervpn-instancebier_vpn216.sub-domain0217.bfr-interfaceloopback0218.encapsulation-typemplsbsl64max-si255219.protocolisis220.protocolbgp221.通过上述配置,pe1向pe2和pe3发送ce1和ce4的bfrprefix以及biermpls封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及biermpls封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及biermpls封装信息。222.5)在pe2上配置ce2的bfrprefix的优先权数223.设ce2的bfrprefix为10.1.1.2224.#pe2对应配置示例;225.acl100226.rulepermitsource10.1.1.232;227.biervpn-instancebier_vpn228.prefixacl100forwardingpriority2229.通过上述优先权数的配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的转发优先权为2,比默认优先权数具有更高的转发优先权,于是pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,因此,biervpnid大的设备具有更高的转发优先权,ce3的prefix在pe3上具有转发优先权。230.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别如下。231.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为mldp隧道,该隧道根pe为pe1,叶子(leaf)pe为pe2和pe3。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码(也即第一转发位掩码)为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位)。232.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为mldp隧道,该隧道根pe为pe2,leafpe为pe1和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010(也即第一转发位掩码)。233.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为mldp隧道,该隧道根pe为pe3,leafpe为pe2和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100(也即第一转发位掩码)。234.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图21所示。其中,pe1将用户bier报文(含bier头)整体封装在公网p-tunnel中,将用户bier报文(含bier头)封装在mplsp2mp隧道,基于mplsp2mptunnellabel确定vpn实例。其它pe从公网p-tunnel上收到数据解封装之后,基于其中的mplsp2mp隧道标签识别所属biervpn实例之后才在该biervpn实例内查找转发关系,将数据流向本地站点内的用户设备发送。235.场景二:bierv6overmplsp2mp236.其中,bierv6overmplsp2mp是指用户网络与其pe之间采用的是bierv6,pe与pe之间采用的是mplsp2mp,也即用户网络的bier封装类型为bierv6,运营商公网组播隧道类型为mplsp2mp。237.例如,如图22所示,本实施例中用户网络使用bieripv6封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用mplsp2mp类型的公网组播隧道。其中,本技术实施例不对公网使用的mplsp2mp信令类型做依赖,因此,本实施例以mldp隧道为例进行举例说明。在本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,在执行本技术实施例提供的报文传输的方法前,可进行如下几项配置。238.1)biervpn基础配置239.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。240.2)bgp基础配置241.在pe1、pe2和pe3上分别配置公网loopback地址1.1.1.1、2.2.2.2、3.3.3.3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本技术实施例提供的方法中所述的bgp路由。242.3)biervpnid及p-tunnel配置243.#pe1对应配置示例;244.biervpn-id1.1.1.1245.biervpn-instancebier_vpn246.pmsitunnel247.mldp248.#pe2对应配置示例;249.biervpn-id2.2.2.2250.biervpn-instancebier_vpn251.pmsitunnel252.mldp253.#pe3对应配置示例;254.biervpn-id3.3.3.3255.biervpn-instancebier_vpn256.pmsitunnel257.mldp258.此外,还需要在运营商公网pe-p-pe设备之间配置mldp信令,以实现mldp类型公网p-tunnel隧道的建立。259.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送,包括但不限于如下几个过程。260.a2:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带mldp类型的pta属性,因此,pe1触发mldp信令建立以pe2为根的p2mplsp;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带mldp类型的pta属性,因此,pe1触发mldp信令建立以pe3为根的p2mplsp。261.b2:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带mldp类型的pta属性,因此,pe2触发mldp信令建立以pe1为根的p2mplsp;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带mldp类型的pta属性,因此,pe2触发mldp信令建立以pe3为根的p2mplsp。262.c2:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带mldp类型的pta属性,因此,pe3触发mldp信令建立以pe1为根的p2mplsp;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带mldp类型的pta属性,因此,pe3触发mldp信令建立以pe2为根的p2mplsp。263.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;264.#配置示例;265.biervpn-instancebier_vpn266.sub-domain0ipv6267.bfr-interfaceloopback0268.encapsulation-typeipv6bsl64max-si255269.protocolisis270.protocolbgp271.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及bieripv6封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及bieripv6封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及bieripv6封装信息。272.5)在pe2上配置ce2的bfrprefix的优先权数273.设ce2的bfrprefix为10::1:2274.#pe2对应配置示例;275.acl100276.rulepermitsource10::1:2128277.biervpn-instancebier_vpn278.prefixacl100forwardingpriority2279.通过上述优先权数配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的转发优先权为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。280.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:281.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为mldp隧道,该隧道根pe为pe1,leafpe为pe2和pe3。由于ce1和ce4只有pe1从本地站点收到通告,因此,pe1对bfrid1和4对应的ce具有转发优先权,pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001;282.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为mldp隧道,该隧道根pe为pe2,leafpe为pe1和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;283.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为mldp隧道,该隧道根pe为pe3,leafpe为pe2和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。284.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图23所示。其中,基于mplsp2mptunnellabel确定vpn实例。all_bier_pe_address为一个保留组播地址,pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时将all_bier_pe_address封装在用户bieripv6头的目的地址中,其它pe从公网p-tunnel上收到数据解封装之后,识别到该特定ipv6组播地址之后才在biervpn实例内查找bieripv6转发关系,将数据流向本地站点内的用户设备发送。285.场景三:biermplsoveripv4组播286.其中,biermplsoveripv4组播是指用户网络与其pe之间采用的是biermpls,pe与pe之间采用的是ipv4组播,也即用户网络的bier封装类型为biermpls,运营商公网组播隧道类型为ipv4组播。287.例如,如图24,本实施例中用户网络使用biermpls封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用ipv4组播(multicast)类型的公网组播隧道。由于本实施例仅使用pimssm信令建立ipv4组播类型的公网组播隧道,实际部署应用中可以使用pimsm信令,本技术实施例对此不进行限定。在本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例进行说明,在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。288.1)biervpn基础配置289.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。290.2)bgp基础配置291.在pe1、pe2和pe3上分别配置公网loopback地址1.1.1.1、2.2.2.2、3.3.3.3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本技术实施例中所述的bgp路由。292.3)biervpnid及p-tunnel配置293.#pe1对应配置示例;294.biervpn-id1.1.1.1295.biervpn-instancebier_vpn296.pmsitunnel297.pimssmgroup232.0.0.1source1.1.1.1298.#pe2对应配置示例;299.biervpn-id2.2.2.2300.biervpn-instancebier_vpn301.pmsitunnel302.pimssmgroup232.0.0.2source2.2.2.2303.#pe3对应配置示例;304.biervpn-id3.3.3.3305.biervpn-instancebier_vpn306.pmsitunnel307.pimssmgroup232.0.0.3source3.3.3.3308.此外,需要在运营商公网pe—p—pe设备之间配置pim信令实现pimssm类型公网p-tunnel隧道的建立。309.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送,包括但不限于如下几个过程。310.a3:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带pimssm类型的pta属性,因此,pe1触发pim信令向pe2方向发送(2.2.2.2,232.0.0.2)的pimssm加入;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带pimssm类型的pta属性,因此,pe1触发pim信令向pe3方向发送(3.3.3.3,232.0.0.3)的pimssm加入。311.b3:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带pimssm类型的pta属性,因此,pe2触发pim信令向pe1方向发送(1.1.1.1,232.0.0.1)的pimssm加入;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带pimssm类型的pta属性,因此,pe2触发pim信令向pe3方向发送(3.3.3.3,232.0.0.3)的pimssm加入。312.c3:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带pimssm类型的pta属性,因此,pe3触发pim信令向pe1方向发送(1.1.1.1,232.0.0.1)的pimssm加入;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带pimssm类型的pta属性,因此,pe3触发pim信令向pe2方向发送(2.2.2.2,232.0.0.2)的pimssm加入。313.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;314.#配置示例;315.biervpn-instancebier_vpn316.sub-domain0317.bfr-interfaceloopback0318.encapsulation-typemplsbsl64max-si255319.protocolisis320.protocolbgp321.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及biermpls封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及biermpls封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及biermpls封装信息。322.5)在pe2上配置ce2的bfrprefix的优先权数323.设ce2的bfrprefix为10.1.1.2324.#pe2对应配置示例;325.acl100326.rulepermitsource10.1.1.232;327.biervpn-instancebier_vpn328.prefixacl100forwardingpriority2329.通过上述优先权数的配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认转发优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。330.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:331.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为ipv4ssm类型组播隧道(1.1.1.1,232.0.0.1),该隧道根pe为pe1,leafpe为pe2和pe3。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);332.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为ipv4ssm类型组播隧道(2.2.2.2,232.0.0.2),该隧道根pe为pe2,leafpe为pe1和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;333.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为ipv4ssm类型组播隧道(3.3.3.3,232.0.0.3),该隧道根pe为pe3,leafpe为pe2和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。334.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图25所示。其中,通过source+group可确定vpn实例。pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时,将用户的biermpls报文整体作为负载封装到ip报文内(其中ip头的目地址为所述group地址,源地址为所述source地址),接收到bier报文的pe可基于source+group确定vpn实例。其它pe从公网p-tunnel上收到数据解封装之后,基于报文中的source+group确定对应biervpn实例,然后再在该实例内查找转发关系,将数据流向本地站点内的用户设备发送。335.场景四:bierv6overipv6组播336.其中,bierv6overipv6组播是指用户网络与其pe之间采用的是bierv6,pe与pe之间采用的是ipv6组播,也即用户网络的bier封装类型为bierv6,运营商公网组播隧道类型为ipv6组播。337.例如,如图26所示,本实施例中用户网络使用bieripv6封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用ipv6multicast类型的公网组播隧道。由于本实施例仅使用pimssm信令建立ipv6multicast类型的公网组播隧道,实际部署应用中可以使用pimsm信令,本技术实施例对此不进行限定。在本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。338.1)biervpn基础配置339.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。340.2)bgp基础配置341.在pe1、pe2和pe3上分别配置公网loopback地址1::1、2::2、3::3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本技术实施例中所述的bgp路由。342.3)biervpnid及p-tunnel配置343.#pe1对应配置示例;344.bieripv6-vpn-id1::1345.biervpn-instancebier_vpn346.pmsitunnel347.pimipv6ssmgroupff3f::1source1::1348.#pe2对应配置示例;349.biervpn-id2::2350.biervpn-instancebier_vpn351.pmsitunnel352.pimipv6ssmgroupff3f::2source2::2353.#pe3对应配置示例;354.biervpn-id3::3355.biervpn-instancebier_vpn356.pmsitunnel357.pimssmgroupff3f::3source3::3358.此外,需要在运营商公网pe—p—pe设备之间配置ipv6pim信令实现pimssm类型公网p-tunnel隧道的建立。359.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送:360.a4:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2::2,携带pimssm类型的pta属性,因此,pe1触发pim信令向pe2方向发送(2::2,ff3f::2)的pimssm加入;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3::3,携带pimssm类型的pta属性,因此,pe1触发pim信令向pe3方向发送(3::3,ff3f::3)的pimssm加入。361.b4:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1::1,携带pimssm类型的pta属性,因此,pe2触发pim信令向pe1方向发送(1::1,ff3f::1)的pimssm加入;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3::3,携带pimssm类型的pta属性,因此,pe2触发pim信令向pe3方向发送(3::3,ff3f::3)的pimssm加入。362.c4:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为3::3,携带pimssm类型的pta属性,因此,pe3触发pim信令向pe1方向发送(1::1,ff3f::1)的pimssm加入;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2::2,携带pimssm类型的pta属性,因此,pe3触发pim信令向pe2方向发送(2::2,ff3f::2)的pimssm加入。363.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;364.#配置示例;365.biervpn-instancebier_vpn366.sub-domain0ipv6367.bfr-interfaceloopback0368.encapsulation-typeipv6bsl64max-si255369.protocolisis370.protocolbgp371.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及bieripv6封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及bieripv6封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及bieripv6封装信息。372.5)在pe2上配置ce2的bfrprefix的优先权数373.设ce2的bfrprefix为10::1:2374.#pe2对应配置示例;375.acl100376.rulepermitsource10::1:2128;377.biervpn-instancebier_vpn378.prefixacl100forwardingpriority2379.通过上述优先权数的配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认转发优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。380.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:381.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为ipv6ssm类型组播隧道(1::1,ff3f::1),该隧道根pe为pe1,leafpe为pe2和pe3。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);382.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为ipv6ssm类型组播隧道(2::2,ff3f::2),该隧道根pe为pe2,leafpe为pe1和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;383.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为ipv6ssm类型组播隧道(3::3,ff3f::3),该隧道根pe为pe3,leafpe为pe2和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。384.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图27所示。其中,通过ipv6src+group地址可确定vpn实例。all_bier_pe_address为一个保留组播地址,pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时,将all_bier_pe_address封装在用户bieripv6头的目的地址中,其它pe从公网p-tunnel上收到数据解封装之后,基于src+group地址确定vpn实例,识别到该特定ipv6组播地址之后才在biervpn实例内查找bieripv6转发关系,将数据流向本地站点内的用户设备发送。385.场景五:bierv6overvxlan组播386.其中,bierv6overvxlan组播是指用户网络与其pe之间采用的是bierv6,pe与pe之间采用的是ipv6组播,也即用户网络的bier封装类型为bierv6,运营商公网组播隧道类型为vxlan组播。387.例如,如图28所示,本实施例中用户网络使用bieripv6封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用vxlan叠加ipv4multicast类型的公网组播隧道。由于本实施例仅使用pimsm信令建立ipv4multicast类型的公网组播隧道,实际部署应用中可以使用pimssm信令,本技术实施例对此不进行限定。在本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。388.1)biervpn基础配置389.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。390.2)bgp基础配置391.在pe1、pe2和pe3上分别配置公网loopback地址1.1.1.1、2.2.2.2、3.3.3.3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本技术实施例中所述的bgp路由。392.3)biervpnid及p-tunnel配置393.#pe1对应配置示例;394.biervpn-id1.1.1.1#配置biervpnid395.interfacenve396.vni5010multicastgroup225.0.0.1#配置vxlan组播隧道397.ipvpn-instancebier_vpn398.vxlanvni5010#biervpn对应的l3vpn实例所使用的vxlanvni399.biervpn-instancebier_vpn400.pmsitunnel#配置biervpn使用vxlan组播隧道401.vxlanstatic402.#pe2对应配置示例;403.biervpn-id2.2.2.2#配置biervpnid404.interfacenve405.vni5010multicastgroup225.0.0.1#配置vxlan组播隧道406.ipvpn-instancebier_vpn407.vxlanvni5010#biervpn对应的l3vpn实例所使用的vxlanvni408.biervpn-instancebier_vpn409.pmsitunnel#配置biervpn使用vxlan组播隧道410.vxlanstatic411.#pe3对应配置示例;412.biervpn-id3.3.3.3#配置biervpnid413.interfacenve414.vni5010multicastgroup225.0.0.1#配置vxlan组播隧道415.ipvpn-instancebier_vpn416.vxlanvni5010#biervpn对应的l3vpn实例所使用的vxlanvni417.biervpn-instancebier_vpn418.pmsitunnel#配置biervpn使用vxlan组播隧道419.vxlanstatic420.此外,还需要在运营商公网pe—p—pe设备之间配置pim信令实现vxlanoverpimsm的组播隧道的建立。各pe的interfacenve配置将触发pimsm信令在运营商公网发送(*,g)加入,建立pimsm转发表项用于承载vxlan数据。421.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送:422.a5:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3。423.b5:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3。424.c5:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2。425.4)在pe1\pe2\pe3上配置biersubdomain0并使能isis和bgp的bierprefix通告;426.#配置示例;427.biervpn-instancebier_vpn428.sub-domain0ipv6429.bfr-interfaceloopback0430.encapsulation-typeipv6bsl64max-si255431.protocolisis432.protocolbgp433.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及bieripv6封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及bieripv6封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及bieripv6封装信息。434.5)在pe2上配置ce2的bfrprefix的优先权数435.设ce2的bfrprefix为10::1:2436.#pe2对应配置示例;437.acl100438.rulepermitsource10::1:2128;439.biervpn-instancebier_vpn440.prefixacl100forwardingpriority2441.通过上述优先权数的配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,biervpnid大的设备具有更高的转发优先权,因此ce3的prefix在pe3上具有转发优先权。442.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:443.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为vxlan类型组播隧道(vni=5010,sourceip=1.1.1.1,groupip=225.0.0.1),该隧道根pe为pe1,leafpe为pe2和pe3。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);444.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为vxlan类型组播隧道(vni=5010,sourceip=2.2.2.2,groupip=225.0.0.1),该隧道根pe为pe2,leafpe为pe1和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;445.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为vxlan类型组播隧道(vni=5010,sourceip=3.3.3.3,groupip=225.0.0.1),该隧道根pe为pe3,leafpe为pe2和pe3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。446.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图29所示。其中,vni用于确定vpn实例,all_bier_pe_address为一个保留组播地址,pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时将all_bier_pe_address封装在用户bieripv6头的目的地址中,其它pe从公网p-tunnel上收到数据解封装之后,通过vni确定vpn实例,识别到该特定ipv6组播地址之后才在biervpn实例内查找bieripv6转发关系,将数据流向本地站点内的用户设备发送。447.场景六:biermplsoverbiermpls448.其中,biermplsoverbiermpls是指用户网络与其pe之间采用的是biermpls,pe与pe之间采用的是biermpls,也即用户网络的bier封装类型为biermpls,运营商公网组播隧道类型为biermpls。449.例如,如图30所示,本实施例中用户网络使用biermpls封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用biermpls类型的公网组播隧道。本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,运营商网络公网biermpls隧道中pe1/pe2/pe3的bfrid分别为1、2、3,位于运营商公网内的sub-domain0中,并使用isis信令进行公网bier封装信息的通告。在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。450.1)biervpn基础配置451.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。452.2)bgp基础配置453.在pe1、pe2和pe3上分别配置公网loopback地址1.1.1.1、2.2.2.2、3.3.3.3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本发明方案中所述的bgp路由。454.3)biervpnid及p-tunnel配置455.#pe1对应配置示例;456.biervpn-id1.1.1.1457.biervpn-instancebier_vpn458.pmsitunnel459.sub-domian0bsl256#选择underlaybiermplssub-domain460.#pe2对应配置示例;461.biervpn-id2.2.2.2462.biervpn-instancebier_vpn463.pmsitunnel464.sub-domain0bsl256#选择underlaybiermplssub-domain465.#pe3对应配置示例;466.biervpn-id3.3.3.3467.biervpn-instancebier_vpn468.pmsitunnel469.sub-domain0bsl256#选择underlaybiermplssub-domain470.此外,还需要在运营商公网pe—p—pe设备之间配置isis和biermpls,用以建立公网biermpls组播隧道。471.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送:472.a6:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=2,vpn-label为pe2为对应biervpn实例分配的上游标签,设其为200;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=3,vpn-label为pe3为对应biervpn实例分配的上游标签,设其为300。473.b6:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=1,vpn-label为pe1为对应biervpn实例分配的上游标签,设其为100;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3.3.3.3,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=3,vpn-label为pe3为对应biervpn实例分配的上游标签,设其为300。474.c6:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1.1.1.1,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=1,vpn-label为pe1为对应biervpn实例分配的上游标签,设其为100;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2.2.2.2,携带biermpls类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=2,vpn-label为pe2为对应biervpn实例分配的上游标签,设其为200。475.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;476.#配置示例;477.biervpn-instancebier_vpn478.sub-domain0479.bfr-interfaceloopback0480.encapsulation-typemplsbsl64max-si255481.protocolisis482.protocolbgp483.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及biermpls封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及biermpls封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及biermpls封装信息。484.5)在pe2上配置ce2的bfrprefix的优先权数485.设ce2的bfrprefix为10.1.1.2486.#pe2对应配置示例;487.acl100488.rulepermitsource10.1.1.232;489.biervpn-instancebier_vpn490.prefixacl100forwardingpriority2491.通过上述优先权数的配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。492.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:493.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0110,公网bier头中的vpn标签为100。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);494.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0101,公网bier头中的vpn标签为200。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;495.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0011,公网bier头中的vpn标签为300。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。496.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图31所示。其中,公网vpnlabel用于确定vpn。pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时将公网vpnlabel封装在公网bier报文中,并将用户bier头及用户vpnlabel放到其之后,其它pe从公网p-tunnel上收到数据解封装之后,通过公网vpnlabel确定vpn实例,之后才在biervpn实例内查找bier转发关系,将数据流向本地站点内的用户设备发送。497.场景七:bierv6overbierv6498.其中,bierv6overbierv6是指用户网络与其pe之间采用的是bierv6,pe与pe之间采用的是bierv6,也即用户网络的bier封装类型为bierv6,运营商公网组播隧道类型为bierv6。499.例如,如图32所示,本实施例中用户网络使用bieripv6封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用bieripv6类型的公网组播隧道。本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中为例,运营商网络公网biermpls隧道中pe1/pe2/pe3的bfrid分别为1、2、3,位于运营商公网内的sub-domain0中,并使用isis信令进行公网bier封装信息的通告。在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。500.1)biervpn基础配置501.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。502.2)bgp基础配置503.在pe1、pe2和pe3上分别配置公网loopback地址1::1、2::2、3::3。并在运营商公网使能isis协议相互通告各自的loopback地址。在pe1、pe2和pe3上配置bgp邻居,使他们两两相互间基于该loopback地址建立邻居,并使能bgp邻居通告本发明方案中所述的bgp路由。504.3)biervpnid及p-tunnel配置505.#pe1对应配置示例;506.bieripv6-vpn-id1::1507.addesspoolpe111::/64#配置bs-id所使用的地址池508.biervpn-instancebier_vpn509.bs-idpoolpe111::1#配置biervpn所使用的bs-id510.pmsitunnel511.sub-domian0bsl256#选择underlaybieripv6sub-domain512.#pe2对应配置示例;513.bieripv6-vpn-id2::2514.addesspoolpe122::/64#配置bs-id所使用的地址池515.biervpn-instancebier_vpn516.bs-idpoolpe122::2#配置biervpn所使用的bs-id517.pmsitunnel518.sub-domain0bsl256#选择underlaybieripv6sub-domain519.#pe3对应配置示例;520.bieripv6-vpn-id3::3521.addesspoolpe133::/64#配置bs-id所使用的地址池522.biervpn-instancebier_vpn523.bs-idpoolpe133::3#配置biervpn所使用的bs-id524.pmsitunnel525.sub-domain0bsl256#选择underlaybieripv6sub-domain526.此外,还需要在运营商公网pe—p—pe设备之间配置isis和bieripv6,用以建立公网bieripv6组播隧道。527.通过上述配置,pe1\pe2\pe3之间将触发biervpnautodiscovery路由的相互发送:528.a7:pe1上收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2::2,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=2,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为22::2;pe1收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3::3,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=3,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为33::3。529.b7:pe2上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1::1,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=1,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为11::1;pe2收到pe3的biervpnautodiscovery路由rd为1:1,biervpnid为3::3,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=3,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为33::3。530.c7:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1::1,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=1,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为11::1;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2::2,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=2,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为22::2。531.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;532.#配置示例;533.biervpn-instancebier_vpn534.sub-domain0ipv6535.bfr-interfaceloopback0536.encapsulation-typeipv6bsl64max-si255537.protocolisis538.protocolbgp539.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及bieripv6封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及bieripv6封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及bieripv6封装信息。540.5)在pe2上配置ce2的bfrprefix的优先权数541.设ce2的bfrprefix为10::1:2542.#pe2对应配置示例;543.acl100544.rulepermitsource10::1:2128;545.biervpn-instancebier_vpn546.prefixacl100forwardingpriority2547.通过上述优先权数配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。548.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:549.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0110,公网ipv6头中的sourceip地址为11::1。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);550.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0101,公网ipv6头中的sourceip地址为22::2。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;551.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0011,公网ipv6头中的sourceip地址为33::3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。552.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图33所示。其中,外层src-dt用于确定vpn实例。all_bier_pe_address为一个保留组播地址,pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时将all_bier_pe_address封装在用户bieripv6头的目的地址中,其它pe从公网p-tunnel上收到该bier报文后进行数据解封装,通过外层src-dt确定vpn实例,识别到该特定ipv6组播地址之后才在biervpn实例内查找bieripv6转发关系,将数据流向本地站点内的用户设备发送。553.场景八:biermplsoverbierv6554.其中,biermplsoverbierv6是指用户网络与其pe之间采用的是biermpls,pe与pe之间采用的是bierv6,也即用户网络的bier封装类型为biermpls,运营商公网组播隧道类型为bierv6。555.例如,如图34所示,本实施例中用户网络使用biermpls封装并且将bier信息通过isis信令携带;运营商pe与pe之间使用bieripv6类型的公网组播隧道。本实施例中,以用户bier网络内的设备ce1\ce2\ce3\ce4的bfrid分别为1、2、3、4,均位于sub-domain0中,运营商网络公网biermpls隧道中pe1/pe2/pe3的bfrid分别为1、2、3,位于运营商公网内的sub-domain0中,并使用isis信令进行公网bier封装信息的通告。在执行本技术实施例提供的报文传输的方法之前,可进行如下几项配置。556.1)biervpn基础配置557.在pe1、pe2和pe3上分别配置biervpn所在的vpn实例的rd及rt信息,在pe1上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe2上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1;在pe3上配置biervpn的rd为1:1,importrt和exportrt均配置为1:1。558.2)bgp基础配置vpnautodiscovery路由rd为1:1,biervpnid为3::3,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=3,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为33::3。586.c8:pe3上收到pe1的biervpnautodiscovery路由rd为1:1,biervpnid为1::1,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=1,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为11::1;pe3收到pe2的biervpnautodiscovery路由rd为1:1,biervpnid为2::2,携带bieripv6类型的pta属性,属性中携带subdomain=0,bsl=256,bfrid=2,同时携带还携带了一个bs-id属性,该属性中携带了一个ipv6地址为22::2。587.4)在pe1\pe2\pe3上配置biersubdomain0并同时使能isis和bgp的bierprefix通告;588.#配置示例;589.biervpn-instancebier_vpn590.sub-domain0591.bfr-interfaceloopback0592.encapsulation-typemplsbsl64max-si255593.protocolisis594.protocolbgp595.通过上述配置,pe1向pe2和pe3同时发送ce1和ce4的bfrprefix以及biermpls封装信息,pe2向pe1和pe3发送ce2和ce3的bfrprefix以及biermpls封装信息,pe3向pe2和pe1发送ce2和ce3的bfrprefix以及biermpls封装信息。596.5)在pe2上配置ce2的bfrprefix的优先权数597.设ce2的bfrprefix为10.1.1.2598.#pe2对应配置示例;599.acl100600.rulepermitsource10.1.1.232;601.biervpn-instancebier_vpn602.prefixacl100forwardingpriority2603.通过上述优先权数配置,pe2向pe1和pe3发送的ce2bfrprefix中携带的优先权数为2,pe2向pe1和pe3发送的ce3bfrprefix中不携带优先权数;pe3向pe2和pe1发送ce2和ce3的bfrprefix中不携带优先权数。由于pe2上配置的该prefix的优先权数为2,比默认优先权数具有更高的转发优先权,因而pe2和pe3在进行转发优先权协商时,ce2的prefix在pe2上具有转发优先权。又由于pe2和pe3均对ce3的prefix使用默认优选权数,biervpnid大的设备具有更高的转发优先权,因此,ce3的prefix在pe3上具有转发优先权。604.基于上述业务部署在pe1/pe2/pe3上形成的转发关系分别为:605.pe1向远端站点发送用户bier报文时对应转发关系表中的bitmask为0110,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0110,公网ipv6头中的sourceip地址为11::1。pe1接收远端站点发送的用户bier报文时使用的优先转发位掩码为1001(ce1和ce4只有pe1从本地站点收到通告,因此,pe1对ce1和ce4具有转发优先权,优先转发位掩码中与ce1的bfrid对应的比特位以及与ce4的bfrid对应的比特位被置位);606.pe2向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0101,公网ipv6头中的sourceip地址为22::2。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0010;607.pe3向远端站点发送用户bier报文时对应转发关系表中的bitmask为1001,使用的组播隧道为biermpls隧道,封装的公网bier头中bitstring为0011,公网ipv6头中的sourceip地址为33::3。pe2接收远端站点发送的用户bier报文时使用的优先转发位掩码为0100。608.通过上述配置部署,组播源发出的流量在pe1上私网bier流封装与公网封装的映射关系如图35所示。其中,src-dt用于确定vpn实例。pe1将用户bier报文(含bier头)整体封装在公网p-tunnel时将用户bier报文(含biermpls头)封装在mplsinip头中,其它pe从公网p-tunnel上收到该bier报文后进行数据解封装,通过src-dt确定vpn实例,之后才在biervpn实例内查找bier转发关系,将数据流向本地站点内的用户设备发送。609.需要说明的是,以上场景一至场景八中,均以bierviax,x均用isis协议作为举例说明。610.本技术实施例提供的方法中,bier作为一种业务向用户侧提供,使用户网络bier实现跨vpnsite的互连和互通;用户网络的每流组播转发状态不需要在运营商网络中任何节点上感知,因而能够提高组播业务部署的灵活性和弹性。611.此外,通过使用组播隧道进行bier报文的传输,能够降低占用的带宽,提高网络带宽利用率。612.请参考图36,其示出了本技术实施例提供的一种报文传输的装置示意图。该装置应用于第二pe,可用于执行上述第二pe所执行的报文传输的方法,例如该装置可以是图1和图2中的pe2或pe3,还可以是图3中的第二pe,具备相应的功能,执行报文传输的步骤和方法。在一种可能的实现方式中,该装置包括如下几个模块以及各模块具备的功能。613.接收模块3601,用于通过组播隧道接收第一pe发送的bier报文,bier报文中包括比特串,比特串用于指示接收bier报文的ce;614.处理模块3602,用于基于比特串对向ce发送的bier报文进行处理。615.在一种可能的实现方式中,处理模块3602,用于确定第二pe对于ce具有转发优先权;基于比特串向ce发送bier报文。616.在一种可能的实现方式中,处理模块3602,用于获取与ce通信的第三pe的路由标识;基于第二pe的路由标识和第三pe的路由标识,确定第二pe对于ce具有转发优先权。617.在一种可能的实现方式中,处理模块3602,用于获取与ce通信的第三pe的优先权数;基于第二pe的优先权数和第三pe的优先权数,确定第二pe对于ce具有转发优先权。618.在一种可能的实现方式中,处理模块3602,还用于基于ce的位转发路由器标识bfrid,获得第一转发位掩码,第一转发位掩码用于指示向ce发送bier报文。619.在一种可能的实现方式中,处理模块3602,用于将比特串与第一转发位掩码进行与操作,且在与操作的结果非零时,向ce发送bier报文。620.在一种可能的实现方式中,处理模块3602,用于确定第二pe对于ce不具有转发优先权;不向ce发送bier报文。621.在一种可能的实现方式中,处理模块3602,用于获取与ce通信的第三pe的路由标识;基于第二pe的路由标识和第三pe的路由标识,确定第二pe对于ce不具有转发优先权。622.在一种可能的实现方式中,处理模块3602,用于获取与ce通信的第三pe的优先权数;基于第二pe的优先权数和第三pe的优先权数,确定第二pe对于ce不具有转发优先权。623.在一种可能的实现方式中,处理模块3602,还用于获得第二转发位掩码,第二转发位掩码用于指示不向ce发送bier报文。624.在一种可能的实现方式中,处理模块3602,用于将比特串与第二转发位掩码进行与操作,且在与操作的结果为零时,不向ce发送bier报文。625.在一种可能的实现方式中,组播隧道包括:互联网协议第6版ipv6组播隧道、互联网协议第4版ipv4组播隧道、多协议标签交换mpls组播隧道、虚拟扩展局域网vxlan组播隧道、bier组播隧道或ir隧道。626.在一种可能的实现方式中,处理模块3602,还用于向第一pe发送路由消息,路由消息包括组播隧道的类型和第二pe的标识,第二pe的标识用于寻址第二pe。627.请参考图37,其示出了本技术实施例提供的一种报文传输的装置示意图。该装置应用于第一pe,可用于执行上述第一pe所执行的报文传输的方法,例如该装置可以是图1和图2中的pe1,还可以是图3中的第一pe,具备相应的功能,执行报文传输的步骤和方法。628.在一种可能的实现方式中,该装置包括如下几个模块以及各模块具备的功能。629.获取模块3701,用于获取bier报文,bier报文包括比特串,比特串用于指示接收bier报文的用户边缘ce;630.发送模块3702,用于基于比特串,通过组播隧道向与ce对应的第二pe发送bier报文。631.在一种可能的实现方式中,发送模块3702,用于基于比特串获取第二pe的标识;基于第二pe的标识对bier报文进行隧道封装,获得封装后的bier报文,封装后的bier报文包括的封装格式与组播隧道匹配;通过组播隧道,向第二pe发送封装后的bier报文。632.在一种可能的实现方式中,组播隧道包括:ipv6组播隧道、ipv4组播隧道、mpls组播隧道、vxlan组播隧道、bier组播隧道或ir隧道。633.在一种可能的实现方式中,参见图38,该装置还包括:634.接收模块3703,用于接收第二pe发送的路由消息,第二pe发送的路由消息包括组播隧道的类型和第二pe的标识,第二pe的标识用于寻址第二pe。635.应理解的是,上述图37-38提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。636.参见图39,图39示出了本技术一个示例性实施例提供的网络设备2000的结构示意图。图39所示的网络设备2000可为报文传输设备,用于执行上述图3所示的报文传输的方法。例如,该网络设备2000可执行上述图3所示的报文传输的方法中第一pe或第二pe中任一设备所涉及的操作。该网络设备2000例如是交换机、路由器等,该网络设备2000可以由一般性的总线体系结构来实现。637.如图39所示,网络设备2000包括至少一个处理器2001、存储器2003以及至少一个通信接口2004。638.处理器2001例如是通用中央处理器(centralprocessingunit,cpu)、数字信号处理器(digitalsignalprocessor,dsp)、网络处理器(networkprocesser,np)、图形处理器(graphicsprocessingunit,gpu)、神经网络处理器(neural-networkprocessingunits,npu)、数据处理单元(dataprocessingunit,dpu)、微处理器或者一个或多个用于实现本技术方案的集成电路。例如,处理器2001包括专用集成电路(application-specificintegratedcircuit,asic),可编程逻辑器件(programmablelogicdevice,pld)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。pld例如是复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld)、现场可编程逻辑门阵列(field-programmablegatearray,fpga)、通用阵列逻辑(genericarraylogic,gal)或其任意组合。其可以实现或执行结合本发明实施例公开内容所描述的各种逻辑方框、模块和电路。所述处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,dsp和微处理器的组合等等。639.可选的,网络设备2000还包括总线。总线用于在网络设备2000的各组件之间传送信息。总线可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图39中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。640.存储器2003例如是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器2003例如是独立存在,并通过总线与处理器2001相连接。存储器2003也可以和处理器2001集成在一起。641.通信接口2004使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(ran)或无线局域网(wirelesslocalareanetworks,wlan)等。通信接口2004可以包括有线通信接口,还可以包括无线通信接口。具体的,通信接口2004可以为以太(ethernet,eth)接口、快速以太(fastethernet,fe)接口、千兆以太(gigabitethernet,ge)接口,异步传输模式(asynchronoustransfermode,atm)接口,无线局域网(wirelesslocalareanetworks,wlan)接口,蜂窝网络通信接口或其组合。以太网接口可以是光接口,电接口或其组合。在本技术实施例中,通信接口2004可以用于网络设备2000与其他设备进行通信。642.在具体实现中,作为一种实施例,处理器2001可以包括一个或多个cpu,如图39中所示的cpu0和cpu1。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。643.在具体实现中,作为一种实施例,网络设备2000可以包括多个处理器,如图39中所示的处理器2001和处理器2005。这些处理器中的每一个可以是一个单核处理器(single-cpu),也可以是一个多核处理器(multi-cpu)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。644.在一些实施例中,存储器2003用于存储执行本技术方案的程序代码2010,处理器2001可以执行存储器2003中存储的程序代码2010。也即是,网络设备2000可以通过处理器2001以及存储器2003中的程序代码2010,来实现方法实施例提供的报文传输的方法。程序代码2010中可以包括一个或多个软件模块。可选地,处理器2001自身也可以存储执行本技术方案的程序代码或指令。645.在具体实施例中,本技术实施例的网络设备2000可对应于上述各个报文传输的方法实施例中的第一pe,网络设备2000中的处理器2001读取存储器2003中的指令,使图39所示的网络设备2000能够执行第一pe所执行的全部或部分操作。646.又例如,本技术实施例的网络设备2000可对应于上述各个方法实施例中的第二pe,网络设备2000中的处理器2001读取存储器2003中的指令,使图39所示的网络设备2000能够执行第二pe所执行的全部或部分操作。647.网络设备2000还可以对应于上述图36-38所示的报文传输的装置,报文传输的装置中的每个功能模块采用网络设备2000的软件实现。换句话说,报文传输的装置中包括的功能模块为网络设备2000的处理器2001读取存储器2003中存储的程序代码2010后生成的。648.其中,图3所示的报文传输的方法的各步骤通过网络设备2000的处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤,为避免重复,这里不再详细描述。649.参见图40,图40示出了本技术另一个示例性实施例提供的网络设备2100的结构示意图。图40所示的网络设备2100可为报文传输的设备,用于执行上述图3所示的报文传输的方法。例如,该网络设备2100可执行上述图3所示的报文传输的方法中第一pe或第二pe中任一设备所涉及的操作。该网络设备2100例如是交换机、路由器等,该网络设备2000可以由一般性的总线体系结构来实现。650.如图40所示,网络设备2100包括:主控板2110和接口板2130。651.主控板也称为主处理单元(mainprocessingunit,mpu)或路由处理卡(routeprocessorcard),主控板2110用于对网络设备2100中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板2110包括:中央处理器2111和存储器2112。652.接口板2130也称为线路接口单元卡(lineprocessingunit,lpu)、线卡(linecard)或业务板。接口板2130用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、pos(packetoversonet/sdh)接口等,以太网接口例如是灵活以太网业务接口(flexibleethernetclients,flexeclients)。接口板2130包括:中央处理器2131网络处理器2132、转发表项存储器2134和物理接口卡(physicalinterfacecard,pic)2133。653.接口板2130上的中央处理器2131用于对接口板2130进行控制管理并与主控板2110上的中央处理器2111进行通信。654.网络处理器2132用于实现报文的转发处理。网络处理器2132的形态可以是转发芯片。转发芯片可以是网络处理器(networkprocessor,np)。在一些实施例中,转发芯片可以通过专用集成电路(application-specificintegratedcircuit,asic)或现场可编程门阵列(fieldprogrammablegatearray,fpga)实现。具体而言,网络处理器2132用于基于转发表项存储器2134保存的转发表转发接收到的报文,如果报文的目的地址字段为网络设备2100的地址,则将该报文继续上送给上层设备至cpu(如中央处理器2131)处理;如果报文的目的地址字段不是网络设备2100的地址,则根据该目的地址字段从转发表中查找到该目的地址字段对应的下一跳和出接口,将该报文转发到该目的地址字段对应的出接口。其中,上行报文的处理可以包括:报文入接口的处理,转发表查找;下行报文的处理可以包括:转发表查找等等。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用cpu实现软件转发,从而接口板中不需要转发芯片。655.物理接口卡2133用于实现物理层的对接功能,原始的流量由此进入接口板2130,以及处理后的报文从该物理接口卡2133发出。物理接口卡2133也称为子卡,可安装在接口板2130上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器2132处理。在一些实施例中,中央处理器2131也可执行网络处理器2132的功能,比如基于通用cpu实现软件转发,从而物理接口卡2133中不需要网络处理器2132。656.可选地,网络设备2100包括多个接口板,例如网络设备2100还包括接口板2140,接口板2140包括:中央处理器2141、网络处理器2142、转发表项存储器2144和物理接口卡2143。接口板2140中各部件的功能和实现方式与接口板2130相同或相似,在此不再赘述。657.可选地,网络设备2100还包括交换网板2120。交换网板2120也可以称为交换网板单元(switchfabricunit,sfu)。在报文传输设备有多个接口板的情况下,交换网板2120用于完成各接口板之间的数据交换。例如,接口板2130和接口板2140之间可以通过交换网板2120通信。658.主控板2110和接口板耦合。例如。主控板2110、接口板2130和接口板2140,以及交换网板2120之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板2110和接口板2130及接口板2140之间建立进程间通信协议(inter-processcommunication,ipc)通道,主控板2110和接口板2130及接口板2140之间通过ipc通道进行通信。659.在逻辑上,网络设备2100包括控制面和转发面,控制面包括主控板2110和中央处理器2111,转发面包括执行转发的各个组件,比如转发表项存储器2134、物理接口卡2133和网络处理器2132。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护网络设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器2132基于控制面下发的转发表对物理接口卡2133收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器2134中。在有些实施例中,控制面和转发面可以完全分离,不在同一网络设备上。660.值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,报文传输设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,报文传输设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,报文传输设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的报文传输设备的数据接入和处理能力要大于集中式架构的报文传输设备。可选地,报文传输设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态报文传输设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。661.在具体实施例中,网络设备2100对应于上述图36所示的应用于第二pe的报文传输的装置。在一些实施例中,图36所示的报文传输的装置中的接收模块3601相当于网络设备2100中的物理接口卡2133;处理模块3602相当于网络设备2100中的中央处理器2111或网络处理器2132。662.在一些实施例中,网络设备2100还对应于上述图37或图38所示的应用于第一pe的报文传输的装置。在一些实施例中,图37所示的报文传输的装置中的发送模块3702及图38所示的报文传输的装置中的接收模块3703相当于网络设备2100中的物理接口卡2133;获取模块3701相当于网络设备2100中的中央处理器2111或网络处理器2132。663.基于上述图39及图40所示的网络设备,本技术实施例还提供了一种报文传输系统,该系统包括:第一pe以及第二pe。可选的,第一pe为图39所示的网络设备2000或图40所示的网络设备2100,第二pe为图39所示的网络设备2000或图40所示的网络设备2100。664.第一pe及第二pe所执行的报文传输的方法可参见上述图3所示实施例中的第一pe和第二pe的相关描述,此处不再加以赘述。665.本技术实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第一pe所需执行的报文传输的方法。666.本技术实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第二pe所需执行的报文传输的方法。667.应理解的是,上述处理器可以是中央处理器(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advancedriscmachines,arm)架构的处理器。668.进一步地,在一种可选的实施例中,上述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。669.该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用。例如,静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicrandomaccessmemory,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledatadatesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。670.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括指令或代码,当指令或代码在计算机上执行时,使得计算机执行如上任一所述的报文传输的方法。671.本技术实施例还提供了一种计算机程序产品,计算机程序产品包括程序或代码,当程序或代码在计算机上运行时,使得计算机执行如上任一所述的报文传输的方法。672.本技术实施例还提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行上述任一报文传输的方法。673.本技术实施例还提供了另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行上述任一报文传输的方法。674.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk)等。675.本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和模块,能够以软件、硬件、固件或者其任意组合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。676.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。677.当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机程序指令。作为示例,本技术实施例的方法可以在机器可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。678.用于实现本技术实施例的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。679.在本技术实施例的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质等等。680.信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。681.机器可读介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。机器可读介质可以是机器可读信号介质或机器可读存储介质。机器可读介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。机器可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光存储设备、磁存储设备,或其任意合适的组合。682.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、设备和模块的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。683.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、设备或模块的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。684.该作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术实施例方案的目的。685.另外,在本技术各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。686.该集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例中方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。687.本技术中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种所述示例的范围的情况下,第一图像可以被称为第二图像,并且类似地,第二图像可以被称为第一图像。第一图像和第二图像都可以是图像,并且在某些情况下,可以是单独且不同的图像。688.还应理解,在本技术的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。689.本技术中术语“至少一个”的含义是指一个或多个,本技术中术语“多个”的含义是指两个或两个以上,例如,多个第二报文是指两个或两个以上的第二报文。本文中术语“系统”和“网络”经常可互换使用。690.应理解,在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。691.还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本技术中的字符“/”,一般表示前后关联对象是一种“或”的关系。692.还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。693.还应理解,术语“若”和“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“若确定...”或“若检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。[0694]应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。[0695]还应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。[0696]以上描述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1