CN111917622B - 一种反向路径转发rpf检查方法及装置 - Google Patents

一种反向路径转发rpf检查方法及装置 Download PDF

Info

Publication number
CN111917622B
CN111917622B CN201910900954.0A CN201910900954A CN111917622B CN 111917622 B CN111917622 B CN 111917622B CN 201910900954 A CN201910900954 A CN 201910900954A CN 111917622 B CN111917622 B CN 111917622B
Authority
CN
China
Prior art keywords
identifier
multicast
node
address
head node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910900954.0A
Other languages
English (en)
Other versions
CN111917622A (zh
Inventor
谢经荣
夏阳
刘毅松
李良格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to CN201910900954.0A priority Critical patent/CN111917622B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110844309.9A priority patent/CN113726667B/zh
Priority to PCT/CN2020/117112 priority patent/WO2021057788A1/zh
Priority to EP20867367.3A priority patent/EP4024774A4/en
Priority to KR1020227011616A priority patent/KR20220062347A/ko
Priority to JP2022518284A priority patent/JP7397178B2/ja
Publication of CN111917622A publication Critical patent/CN111917622A/zh
Application granted granted Critical
Publication of CN111917622B publication Critical patent/CN111917622B/zh
Priority to US17/701,180 priority patent/US20220217075A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/604Address structures or formats
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/659Internet protocol version 6 [IPv6] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

本申请实施例公开了一种RPF检查方法,尾节点接收到来自头节点的组播数据报文之后,可以获取该组播数据报文中携带的组播源地址、组播组地址以及封装信息。而后根据该组播源地址、组播组地址以及第一对应关系,获得用于标识组播数据报文对应的上游组播下一跳UMH节点的第一标识。另外,尾节点还可以根据组播数据报文的封装信息,以及第二对应关系,得到用于标识组播数据报文对应的头节点的第二标识。得到第一标识和第二标识之后,尾节点可以根据第一标识和第二标识进行RPF检查。在本申请实施例中,前述第一标识和第二标识的数据长度均小于128比特,故而在本申请实施例中,可以对两个小于128比特的数据进行比较,从而简化RPF检查。

Description

一种反向路径转发RPF检查方法及装置
技术领域
本申请涉及通信领域,特别是涉及一种反向路径转发RPF检查方法及装置。
背景技术
目前,可以在运营商的提供的核心网的网络边缘节点(provider edge,PE)上部署虚拟专用网络(virtual private network,VPN)。相应的,VPN实例可以用来处理组播业务。其中,组播业务能够将组播数据报文从一个PE,发送到该组播组中的一个或者多个其它PE。
在实际应用中,当将组播数据报文从一个PE发送到多个其他PE时,接收到该组播数据报文的PE,比如尾节点,需要针对接收到的组播数据报文,进行反向路径转发(reversepath forwarding,RPF)检查。尾节点根据检查结果确定是否转发该组播数据报文。其中,RPF检查指的是确定该组播数据报文是否来自选定的上游组播下一跳(upstreammulticast hop,UMH)节点。如果是,则尾节点转发该组播数据报文,否则,丢弃该组播数据报文。
当部署了VPN的运营商网络为互联网协议第六版(internet protocol version6,IPv6)网络时,实现组播业务的尾节点所进行RPF检查较为复杂。
发明内容
本申请实施例提供了一种RPF方法及装置,用于简化RPF检查。
第一方面,本申请实施例提供了一种反向路径转发检查方法,尾节点接收到来自头节点的组播数据报文之后,可以对该组播数据报文进行解析,得到该组播数据报文中携带的组播源地址、组播组地址以及封装信息。确定组播源地址、组播组地址之后,可以根据该组播源地址、组播组地址以及第一对应关系,获得用于标识组播数据报文对应的上游组播下一跳UMH节点的第一标识。其中,该第一对应关系中包括组播源地址、组播组地址和第一标识之间的映射关系。因此,确定组播源地址和组播组地址之后,即可根据第一对应关系,确定第一标识。另外,尾节点还可以根据组播数据报文的封装信息,以及第二对应关系,得到用于标识组播数据报文对应的头节点的第二标识。得到第一标识和第二标识之后,尾节点可以根据第一标识和第二标识进行RPF检查。可以理解的是,在IPv6网络中,节点的地址均利用128比特来表示,因此,若在进行RPF检查时,需要将两个128比特的数据进行比较,导致RPF检查较为复杂。而在本申请实施例中,前述第一标识和第二标识的数据长度均小于128比特,故而在本申请实施例中,可以对两个小于128比特的数据进行比较,从而完成RPF检查。由此可见,利用本申请实施例提供的方案,与传统技术相比,简化了RPF检查。
在一种实现方式中,前述第一对应关系可以是尾节点预先生成的。具体地,尾节点可以接收用户边缘节点发送的组播加入消息,该组播加入消息中包括组播源地址和组播组地址。尾节点接收到该组播加入新消息之后,可以对该组播加入消息进行解析,得到该组播加入消息中的组播源地址,并基于该组播源地址获得UMH节点的IPv6地址。而后,尾节点根据UMH节点的IPv6地址获得与该UMH节点的IPv6地址对应的第一标识,并建立组播源地址、组播组地址和第一标识之间的对应关系,即建立该第一对应关系。以便后续进行RFP检查时,基于第一对应关系确定第一标识。
在一种实现方式中,前述第一对应关系中,除了包括组播源地址、组播组地址和第一标识之外,还可以包括组播实例的标识。其中,该组播实例与尾节点对应,即该组播实例指的是尾节点的组播实例。对于这种情况,尾节点在根据组播源地址获得UMH节点的IPv6地址在具体实现时,还可以确定组播实例的标识,而后尾节点结合组播实例的标识和组播源地址查找UMH节点的IPv6地址。具体地,尾节点可以根据与预先确定的包括组播源地址、组播实例的标识和所述UMH节点的IPv6地址的第三对应关系,确定UMH节点的IPv6地址。相应的,尾节点在建立该第一对应关系时,还可以建立组播源地址、组播组地址、第一标识以及前述组播实例的标识之间的第一对应关系。
在一种实现方式中,对于MVPN而言,前述组播实例的标识可以为MVPN实例的标识,对于EVPN而言,该组播实例的标识,可以为EVPN实例的标识。另外,考虑到在实际应用中,对于MVPN,接收该组播加入消息的接口所属的VRF的标识,可以用于标识组播实例。因此,对于MVPN而言,该组播实例的标识,例如可以为接收该组播加入消息的接口所属的VRF的标识。
在一种实现方式中,前述第二对应关系可以是尾节点预先生成的。具体地,当承载组播业务的隧道为MPLS P2MP隧道时,尾节点可以通过如下方式建立该第二对应关系:尾节点接收头节点发送的组播路由消息,组播路由消息包括头节点的IPv6地址和头节点与所述尾节点间的MPLS P2MP隧道的标识。尾节点根据MPLS P2MP隧道的标识和第四对应关系,获得封装信息。尾节点根据头节点的IPv6地址获得第二标识,第二标识与头节点的IPv6地址对应。尾节点根据封装信息和第二标识,获得第二对应关系。
在一种实现方式中,前述第二对应关系可以是尾节点预先生成的。具体地,当承载组播业务的隧道为BIER隧道时,尾节点可以通过如下方式建立该第二对应关系:尾节点接收头节点发送的组播路由信息,组播路由信息包括头节点的IPv6地址和BIER隧道的标识。尾节点根据BIER隧道的标识和第五对应关系,获得封装信息。尾节点根据头节点的IPv6地址获得第二标识,第二标识与头节点的IPv6地址对应。尾节点根据封装信息和第二标识,获得第二对应关系。
在一种实现方式中,前述第二对应关系可以是尾节点预先生成的。具体地,当承载组播业务的隧道为BIERv6隧道时,尾节点可以通过如下方式建立该第二对应关系:尾节点接收头节点发送的组播路由信息,组播路由信息包括封装信息和头节点的IPv6地址,封装信息为头节点为其组播实例分配的IPv6地址。尾节点根据头节点的IPv6地址获得第二标识,第二标识与所述头节点的IPv6地址对应。尾节点根据封装信息和第二标识,获得第二对应关系。
在一种实现方式中,对于MVPN而言,前述提及的头节点给尾节点发送的组播路由消息,为MVPN路由信息,例如为BGP MVPN地址族路由信息。对于EVPN而言,前述提及的头节点给尾节点发送的组播路由信息为EVPN路由信息,例如为BGP EVPN地址族路由信息。
在一种实现方式中,考虑到在实际应用中,IPv4网络中节点的地址可以用32比特来表示,而对两个32比特数据进行比较的复杂度,一般在尾节点可以承受的范围内。因此,在本申请实施例的一种实现方式中,前述第一标识和第二标识可以均为小于或者等于32比特的值。
在一种实现方式中,考虑到运营商网络还可以为v4v6双栈网络,而IPv4网络中节点的地址可以用32比特来表示。为了将所述第一标识与IPv4网络中节点的地址区分开,以及将第二标识与IPv4网络中节点的地址区分开。则第一标识的取值范围应当与IPv4网络中节点的地址范围不重叠,相应的,第二标识的取值范围应当与IPv4网络中节点的地址范围不重叠。目前,位于0x7F000000~0x7FFFFFFF范围内的取值并未被用作IPv4网络中节点的地址,位于0xE0000000~0xEFFFFFFF范围内的取值也并未被用作IPv4网络中节点的地址。因此,第一标识和第二标识可以在0x7F000000~0x7FFFFFFF范围内;或者,第一标识和第二标识可以在0xE0000000~0xEFFFFFFF范围内。
第二方面,本申请实施例提供了一种RPF检查装置,所述装置包括:接收单元,用于接收来自头节点的组播数据报文,所述组播数据报文包括组播源地址、组播组地址和封装信息;获得单元,用于根据所述组播源地址、所述组播组地址和第一对应关系,获得第一标识,所述第一对应关系包括所述组播源地址、所述组播组地址和所述第一标识,所述第一标识用于标识所述组播数据报文对应的上游组播下一跳UMH节点;所述获得单元,还用于根据所述封装信息和第二对应关系,获得第二标识,所述第二对应关系包括所述封装信息和第二标识,所述第二标识用于标识所述头节点,所述第一标识和所述第二标识均小于128比特;RPF检查单元,用于根据所述第一标识和所述第二标识进行RPF检查。
在一种实现方式中,所述接收单元,还用于接收用户边缘节点发送的组播加入消息,所述组播加入消息包括所述组播源地址和所述组播组地址;所述获得单元,还用于根据所述组播源地址获得所述UMH节点的IPv6地址;以及用于根据所述UMH节点的IPv6地址获得第一标识,所述第一标识与所述UMH节点的IPv6地址对应;并根据所述组播源地址、所述组播组地址和所述第一标识获得所述第一对应关系。
在一种实现方式中,所述第一对应关系还包括组播实例的标识,所述获得单元,具体用于:确定接收所述组播加入消息的接口所属的组播实例的标识;并根据所述组播源地址、第三对应关系和所述组播实例的标识,获得所述UMH节点的IPv6地址,所述第三对应关系包括所述组播源地址、所述组播实例的标识和所述UMH节点的IPv6地址;以及根据所述组播源地址、所述组播组地址、所述组播实例的标识和所述第一标识获得所述第一对应关系。
在一种实现方式中,所述组播实例的标识包括虚拟路由转发VRF的标识或者以太网虚拟专用网络EVPN实例的标识。
在一种实现方式中,所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址和所述头节点与所述尾节点间的多协议标签交换MPLS点对多点P2MP隧道的标识;所述获得单元,还用于根据所述MPLS P2MP隧道的标识和第四对应关系,获得所述封装信息,所述第四对应关系包括所述MPLS P2MP隧道的标识和所述封装信息,所述封装信息包括所述尾节点为所述MPLS P2MP隧道分配的标签;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址、和所述头节点与所述尾节点间的基于比特索引的显式复制BIER隧道的标识;所述BIER隧道的标识包括BIER子域标识Sub-domain ID;所述获得单元,还用于根据所述BIER隧道的标识和第五对应关系,获得所述封装信息,所述第五对应关系包括所述BIER隧道的标识和所述封装信息所述封装信息包括与尾节点对应的比特索引转发表标识BIFT-id;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述封装信息和所述头节点的IPv6地址,所述封装信息为所述头节点为其组播实例分配的IPv6地址;所述获得单元,还用于根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述组播路由信息包括组播虚拟专用网络MVPN路由信息或以太虚拟专用网络EVPN路由信息。
在一种实现方式中,所述第一标识和所述第二标识均为小于或等于32比特的值。
在一种实现方式中,所述第一标识和所述第二标识在以下其中一个地址范围内:0x7F000000~0x7FFFFFFF或0xE0000000~0xEFFFFFFF。
第三方面,本申请实施例提供了一种RPF检查设备,所述设备包括:处理器和存储器;所述存储器,用于存储指令;所述处理器,用于执行所述存储器中的所述指令,执行以上第一方面任意一项所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上第一方面任意一项所述的方法。
第五方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行以上第一方面任意一项所述的方法。
附图说明
图1为本申请实施例提供的一种组播网络的结构示意图;
图2为本申请实施例提供的一种RPF检查的方法的流程示意图;
图3为本申请实施例提供的一种生成第一对应关系的方法的信令交互图;
图4为本申请实施例提供的一种生成第二对应关系的方法的信令交互图;
图5为本申请实施例提供的又一种生成第二对应关系的方法的信令交互图;
图6为本申请实施例提供的又一种生成第二对应关系的方法的信令交互图;
图7为本申请实施例提供的一种RPF检查装置的结构示意图;
图8为本申请实施例提供的一种RPF检查设备的结构示意图。
具体实施方式
本申请实施例提供了一种RPF检查方法,用于解决传统技术中部署了VPN的运营商网络为IPv6网络时,尾节点进行RPF检查较为复杂的问题。
为方便理解,首先对本申请实施例的应用场景进行介绍。
参见图1,该图为本申请实施例提供的一种组播网络的结构示意图。
如图1所示,CE1、CE2和CE3可以为用户设备,具体地,CE1、CE2和CE3可以为用户边界路由器。PE1、PE1b、P1、P2、PE2和PE3为运营商网络的设备。其中,CE1连接组播源服务器,即连接发送组播数据报文的源节点。PE1、PE1b、PE2和PE3为运营商网络的边缘节点。CE2和CE3连接组播接收节点,组播接收节点例如可以为个人电脑(personal computer,PC)或者机顶盒(set top box,STB)设备,CE2可以从PE2处接收组播数据报文,CE3可以从PE3处接收组播数据报文。
需要说明的是,在实际应用中,可以在运营商网络的边缘节点部署VPN。根据VPN实例所使用的信令以及部署VPN实例的组网结构,VPN可以是3层虚拟专用网络(Layer-3 VPN,L3VPN)或者以太网虚拟专用网络(ethernet virtual private network,EVPN)。在L3VPN上可以基于边界网关协议(border gateway protocol,BGP)的VPNv4信令或VPNv6信令建立单播业务,也可以基于BGP的组播虚拟专用网络(multicast virtual private network,MVPN)信令建立组播业务,即MVPN业务。在EVPN上可以基于BGP的EVPN信令建立单播业务,也可以基于BGP的EVPN组播信令建立组播业务,即EVPN组播业务。此外,还可以在EVPN上基于BGP的MVPN信令建立组播业务,这种也称为MVPN业务。MVPN和EVPN处理组播业务的大致流程是一致的,在本申请实施例的以下描述中,以MVPN为例进行说明。
若运营商的PE和用户设备CE之间的组播业务为IPv6组播,则称为IPv6 MVPN。若运营商的PE和用户设备CE之间的组播业务为IPv4组播,则称为IPv4 MVPN。在本申请实施例中,对对IPv6 MVPN和IPv4 MVPN都适用,统称MVPN。
而运营商的PE和PE之间的部分,称为VPN骨干(VPN backbone),在本申请实施例中,VPN骨干可以是运行IPv6单协议栈的网络、也可以是运行IPv4和IPv6双栈(或v4v6双栈)的网络。只要在MVPN中使用其中的IPv6地址进行组播选路即可,本申请实施例对使用IPv6单栈或v4v6双栈不做限制。
此外,MVPN的信令不仅适合于VPN组播,也适合于公网组播。其中的VPN组播可以是基于L3VPN所建立的VPN,也可以是基于EVPN建立的VPN。本申请实施例中所称的MVPN既包括公网组播使用MVPN信令方式,也包括VPN组播使用MVPN信令方式。本申请实施例并不限制。
当然,运营商的PE和用户设备之间的组播网络还可以为v4v6双栈网络,即既支持IPv4网络,又支持IPv6网络。在本申请实施例中,对运营商的PE和用户设备之间的网络不做限定。
在实际应用中,MVPN可以采用包容运营商组播服务接口(inclusive providermulticast service interface,IPMSI)隧道承载。当采用IPMSI隧道承载组播业务时,组播数据报文在该隧道中传输的过程中,可以在来自组播源的组播数据报文基础上根据所采用的隧道类型增加一层与隧道类型匹配的封装信息。
关于IPMSI隧道,现结合图1举例说明。该IPMSI隧道例如可以为在PE1、PE1b、PE2、PE3之间建立点到多点(point to multiple point,P2MP)隧道,例如以PE1为根节点、PE1b、PE2和PE3为叶子节点的P2MP隧道。该P2MP隧道用于承载组播业务,例如PE1接收到的组播数据报文都可经过此P2MP隧道,发送给PE2和PE3。当然,也可以以PE1b为根节点、PE1、PE2和PE3为叶子节点的P2MP隧道。该P2MP隧道用于承载组播业务,例如PE1b接收到的组播数据报文都可经过此P2MP隧道,发送给PE2和PE3。
需要说明的是,图1只是为了方便理解而示出,组播网络还可以是其他结构,隧道类型也不限于上文提及的P2MP隧道。对于其他结构的组播网络,可以根据组播网络的具体结构,在多个PE之间建立P2MP隧道或者多点到多点(multiple point to multiple point,MP2MP)隧道,本申请实施例不做具体限定。
如图1所示,CE1除了连接PE1外还连接了PE1b。PE2收到用户发送的针对组播组(S1,G1)的组播加入请求后,会查询组播源地址S1的路由下一跳,该组播源地址S1是连接到CE1的某个组播源服务器的IP地址或IPv6地址。对于应用了MVPN的网络而言,在PE2上查到的组播源地址S1的路由可以是一个VPN私网路由,其下一跳是一个BGP下一跳。这种在MVPN的尾节点上查找到组播源的路由的下一跳是一种“跨运营商网络(英文:across the VPNbackbone)”的下一跳,也称为UMH节点。
如图1所示,CE1的下一跳可能有两个,分别为PE1和PE1b。相应的,PE2查询得到的组播源地址S1的路由下一跳也可能有两个。PE2会根据BGP路由选路规则,从PE1和PE1b中选择其中一个作为与S1对应的组播源的上游组播下一跳UMH节点,这个过程称为UMH选择。同理PE3也会做自己的UMH选择。例如PE2选择PE1作为与S1对应的组播源的UMH,PE3选择PE1b作为与S1对应的组播源的UMH。若在图1所示的网络中承载组播业务的情况下,PE1会将接收到的组播数据报文,发送给PE2和PE3。相应的,PE1b会将接收到的组播数据报文,发送给PE2和PE3。可以理解的是,对于CE1发送的一条组播数据报文,PE2会重复接收该组播数据报文。例如,该组播数据报文可以通过路径CE1-PE1-P1-PE2到达PE2,该组播数据报文也可以通过路径CE1-PE1b-P2-PE2到达PE2。同理,PE3也会重复接收该组播数据报文。
对于这种情况,PE2和PE3进行一个RPF检查,使得PE2和PE3只对来自于选定的UMH的报文进行转发。例如PE2对来自于PE1的报文进行转发而对来自PE1b的报文作丢弃,PE3对来自于PE1b的报文进行转发而对来自PE1的报文做丢弃。
在传统技术中,尾节点,例如PE2,接收到组播数据报文之后,可以对针对该组播数据报文进行RPF检查,即确定该组播数据报文是否来自选定的UMH节点。具体地,当运营商网络为IPv6网络时,该IPv6网络中的各个节点的地址均采用128比特表示,因此,若要进行RPF检查,则尾节点可以获取UMH节点的第一地址,并利用该组播数据报文的封装信息获取头节点的第二地址,并比较第一地址和第二地址是否相同,从而完成RPF检查。由此可见,在传统技术中,当部署了VPN的运营商网络为IPv6网络时,若要完成RPF检查,则需要将两个128比特的IPv6地址(即第一地址和第二地址)进行比较,导致进行RPF检查比较复杂。此外,尾节点需要存储UMH节点的128比特的IPv6地址、以及头节点的128比特的IPv6地址,故而对应的存储量也比较大。
鉴于此,本申请实施例提供了一种RPF检查方法,用于当部署了VPN的运营商网络为IPv6网络时,简化RPF检查。以下结合附图,对本申请实施例提供的RPF检查方法进行介绍。
参见图2,该图为本申请实施例提供的一种RPF检查的方法的流程示意图。
本申请实施例提供的RPF检查方法,可以应用于IPv6网络,该IPv6网络包括头节点和尾节点。其中,头节点和尾节点均为该IPv6网络中的边缘节点。头节点为从组播源或连接组播源的用户设备接收组播数据报文的节点。尾节点为从头节点处接收组播数据报文,并转发给组播数据报文的目的节点的节点。例如,图1中的PE1和PE1b可以为头节点,PE2和PE3可以为尾节点。
本申请实施例提供的RPF检查方法,例如可以通过如下步骤101-104实现。
步骤101:尾节点接收来自头节点的组播数据报文,该组播数据报文包括组播源地址、组播组地址和封装信息。
该步骤中的组播数据报文是组播源发送给头节点、并由头节点添加对应的封装信息而后发送给尾节点的报文。
如前文,可以采用IPMSI隧道承载组播业务,当采用IPMSI隧道承载组播业务时,组播数据报文在该隧道中传输的过程中,头节点可以在来自组播源的组播数据报文基础上,根据所采用的隧道类型增加一层与隧道类型匹配的封装信息。具体地,头节点在转发该组播数据报文之前,可以在来自组播源的组播数据报文基础上,增加与头节点对应的、所采用的隧道类型匹配的封装。例如头节点接收到来自组播源节点的组播数据报文之后,可以在该组播数据报文的外层封装字段中添加该封装信息,并将添加封装信息的组播数据报文发送给尾节点。换言之,尾节点接收到的组播数据报文,是包含封装信息的报文。
尾节点接收到该组播数据报文之后,可以确定是否将该组播数据报文转发给对应的用户设备。在本申请实施例中,该组播数据报文,可以是IPv4报文,也可以是IPv6报文,本申请实施例不做具体限定。
本申请实施例中,该组播数据报文中携带组播源地址和组播组地址,其中,该组播源地址,指的是组播源节点的地址。组播组地址,指的是组播目的节点的地址。尾节点接收到组播数据报文之后,可以对该组播数据报文进行解析,从而得到该组播源地址、组播组地址和封装信息。
步骤102:尾节点根据组播源地址、组播组地址和第一对应关系,获得第一标识,第一标识用于标识组播数据报文对应的UMH节点。
在本申请实施例中,预先存储有组播源地址、组播组地址和第一标识的对应关系,即第一对应关系。其中,第一对应关系可保存在组播转发信息(multicast forwardinginformation base,MFIB)表的某一表项中。因此,尾节点确定组播源地址和组播组地址之后,即可利用该第一对应关系,确定用于标识与该组播数据报文对应的UMH节点的第一标识。
需要说明的是,第一标识与该组播数据报文对应的UMH节点的地址类似,该第一标识也可以唯一标识该组播数据报文对应的UMH节点。只是,在IPv6网络中,组播数据报文对应的UMH节点的地址为128比特的数据,而在本申请实施例中,该第一标识小于128比特。
步骤103:尾节点根据封装信息和第二对应关系,获得用于标识头节点的第二标识。
在本申请实施例中,预先存储有封装信息与第二标识之间的对应关系,即第二对应关系。其中,第二标识与该组播数据报文对应的头节点的地址类似,该第二标识也可以唯一标识该组播数据报文对应的头节点。只是,在IPv6网络中,组播数据报文对应的头节点的地址为128比特的数据,而在本申请实施例中,该第二标识小于128比特。
如步骤101所述,尾节点接收到该组播数据报文之后,可以对该组播数据报文进行解析,得到对应的封装信息。解析得到封装信息之后,可以根据封装信息和第二对应关系,确定该头节点对应的第二标识。关于第二对应关系,例如可以为(MPLS P2MP Label=Lx,RootIP=Rx),当确定封装信息为Lx之后,可以确定第二标识为Rx。
需要说明的是,关于该封装信息,其与承载该组播业务的隧道类型相关,在本申请实施例中,承载该组播业务的隧道类型,可以是MPLS P2MP隧道,也可以是基于Bit索引的显式复制多协议标签转换(bit indexed explicit replication MPLS,BIER-MPLS)隧道,还可以是BIERv6隧道,本申请实施例不做具体限定。
在本申请实施例中,当承载组播业务的隧道为MPLS P2MP隧道时,对应的封装信息可以包括MPLS P2MP隧道标签。当承载组播业务的隧道为BIER-MPLS隧道时,对应的封装信息可以包括与尾节点对应的比特索引转发表标识(Bit Index Forwarding TableIdentifier,BIFT-id)。当承载组播业务的隧道为BIERv6隧道时,对应的封装信息可以包括头节点为其组播实例分配的IPv6地址。
步骤104:尾节点根据第一标识和第二标识进行RPF检查。
可以理解的是,确定第一标识之后,尾节点即可确定UMH节点。而确定第二标识之后,尾节点即确定了实际转发该组播数据报文的头节点。因此,尾节点可以通过比较第一标识和第二标识的方式,进行RPF检查。当第一标识等于第二标识时,则表示该组播数据报文是来自尾节点选定的UMH节点,组播数据报文通过RPF检查。进一步地,尾节点可以转发该组播数据报文。若第一标识不等于第二标识,则表示该组播数据报文并非来自尾节点选定的UMH节点,组播数据报文不通过RPF检查。进一步地,尾节点可以丢弃该组播数据报文。
通过以上描述可知,利用本申请实施例提供的方案,由于前述第一标识和第二标识的数据长度均小于128比特,故而在本申请实施例中,可以对两个小于128比特的数据进行比较,从而完成RPF检查。由此可见,利用本申请实施例提供的方案,可以减少尾节点进行RPF检查的计算量。
如前文,第一标识和第二标识均为小于或者等于128比特的值,考虑到在实际应用中,IPv4网络中节点的地址可以用32比特来表示,而对两个32比特数据进行比较的复杂度,一般在尾节点可以承受的范围内。因此,在本申请实施例的一种实现方式中,前述第一标识和第二标识可以均为小于或者等于32比特的值。可以理解的是,若该组播网络为IPv6MVPN(或者IPv6 EVPN)时,由于各个节点的地址均为128比特,因此不存在以32比特描述的节点地址。因此,对于这种情况,第一标识和第二标识可以为任意一个用小于32比特来表示的值。
如前文,运营商网络还可以为v4v6双栈网络,而IPv4网络中节点的地址可以用32比特来表示。对于这种情况,为了将所述第一标识与IPv4网络中节点的地址区分开,以及将第二标识与IPv4网络中节点的地址区分开。则第一标识的取值范围应当与IPv4网络中节点的地址范围不重叠,相应的,第二标识的取值范围应当与IPv4网络中节点的地址范围不重叠。目前,位于0x7F000000~0x7FFFFFFF范围内的取值并未被用作IPv4网络中节点的地址,位于0xE0000000~0xEFFFFFFF范围内的取值也并未被用作IPv4网络中节点的地址。因此,在本申请实施例的一种实现方式中,第一标识和第二标识可以在0x7F000000~0x7FFFFFFF范围内;或者,第一标识和第二标识可以在0xE0000000~0xEFFFFFFF范围内。
在本申请实施例中,前文提及的第一对应关系,可以是尾节点预先生成的,以下结合附图,介绍尾节点生成该第一对应关系的具体实现方式。
参见图3,该图为本申请实施例提供的一种生成第一对应关系的方法的信令交互图。图3所示的生成第一对应关系的方法,例如可以通过如下步骤201-204实现。
步骤201:用户边缘节点向尾节点发送组播加入消息,该组播加入消息中包括组播源地址和组播组地址。
本申请试试不具体限定该组播加入消息,该组播加入消息例如可以为协议无关组播(protocol independent multicast,PIM)消息。
尾节点接收到该组播加入新消息之后,可以对该组播加入消息进行解析,得到该组播加入消息中的组播源地址,以便后续基于该组播源地址获得UMH节点的IPv6地址。
步骤202:尾节点根据组播源地址获得UMH节点的IPv6地址。
在实际应用中,头节点可以给尾节点发送路由消息,该路由消息中携带有组播源地址和UMH节点的IPv6地址。尾节点接收到该路由消息之后,可以保存该组播源地址和UMH节点的IPv6地址以及二者的对应关系。当尾节点接收到该用户边缘节点发送的组播加入消息,并解析得到组播加入消息中携带的组播源地址之后,则可以根据预先存储的组播源地址和UMH节点的IPv6地址之间的对应关系,获得对应的UMH节点的IPv6地址。
需要说明的是,头节点给尾节点发送的路由消息,可以为单播路由消息,也可以为组播路由消息,本申请实施例不做具体限定。具体地,若该路由消息为单播路由消息,则其中包含的组播源地址可能是一个包含有组播源地址的地址范围或地址前缀。该单播路由消息可以是边界网关协议VPNv4(border gateway protocol VPNv4,BGP-VPNv4)路由消息、BGP-VPNv6路由消息、BGP-EVPN路由消息、BGP-IPv4-Unicast路由消息以及BGP-IPv6-Unicast路由消息中的任意一种。若该路由消息为组播路由消息,则该组播路由消息可以是BGP-MVPN的包容运营商组播服务接口自动发现路由消息(IPMSI auto-discovery,IPMSIA-D)路由消息,或者BGP-MVPN的选择运营商组播服务接口自动发现路由消息(selectiveprovider multicast service interface auto-discovery,SPMSI A-D)路由消息,或者BGP-EVPN的包含的组播以太标签(inclusive multicast ethernet tag,IMET)路由消息。
步骤203:尾节点根据UMH节点的IPv6地址获得第一标识,第一标识与UMH节点的IPv6地址对应。
在本申请实施例的一种实现方式中,尾节点获取到UMH节点的IPv6地址之后,可以根据IPv6地址与标识之间的映射关系,将128比特的IPv6地址,映射成小于128比特的第一标识。在本申请实施例中,前述IPv6地址与标识之间的映射关系,可以是预先生成并存储在尾节点或者其它存储器中的,也可以是尾节点确定UMH节点的IPv6地址之后生成的,本申请实施例不做具体限定。
在本申请实施例的又一种实现方式中,尾节点确定UMH节点的IPv6地址之后,可以根据预先确定的标识生成规则,生成第一标识。
步骤204:尾节点根据组播源地址、组播组地址和第一标识,获得第一对应关系。
尾节点确定组播源地址、组播组地址和第一标识之后,即可建立组播源地址、组播组地址和第一标识之间的对应关系,即建立该第一对应关系。
在本申请实施例的一种实现方式中,前述第一对应关系中,除了包括组播源地址、组播组地址和第一标识之外,还可以包括组播实例的标识。其中,该组播实例与尾节点对应,即该组播实例指的是尾节点的组播实例。对于这种情况,尾节点在根据组播源地址获得UMH节点的IPv6地址在具体实现时,还可以确定组播实例的标识,而后尾节点结合组播实例的标识和组播源地址查找UMH节点的IPv6地址。具体地,尾节点可以根据与预先确定的包括组播源地址、组播实例的标识和所述UMH节点的IPv6地址的第三对应关系,确定UMH节点的IPv6地址。相应的,尾节点在建立该第一对应关系时,还可以建立组播源地址、组播组地址、第一标识以及前述组播实例的标识之间的第一对应关系。
本申请实施例不具体限定该组播实例的标识,对于MVPN而言,组播实例的标识可以为MVPN实例的标识,对于EVPN而言,该组播实例的标识,可以为EVPN实例的标识。另外,考虑到在实际应用中,对于MVPN,接收该组播加入消息的接口所属的虚拟路由转发(virtualrouting forwarding,VRF)的标识,可以用于标识组播实例。因此,对于MVPN而言,该组播实例的标识,例如可以为接收该组播加入消息的接口所属的VRF的标识。其中,尾节点可生成BGP MVPN地址族的C-multicast路由,该C-multicast路由中携带第一标识。
在本申请实施例中,前文提及的封装信息和第二标识之间的第二对应关系,可以是尾节点预先生成并存储的,以下结合附图,介绍尾节点生成第二对应关系的具体实现方式。
如前文,当承载组播业务的隧道为MPLS P2MP隧道时,对应的封装信息可以包括MPLS P2MP隧道标签。当承载组播业务的隧道为BIER-MPLS隧道时,对应的封装信息可以包括尾节点的BIFT-id。当承载组播业务的隧道为BIERv6隧道时,对应的封装信息可以包括头节点为其组播实例分配的IPv6地址。
以下针对前述三种承载组播业务的隧道,分别介绍建立第二对应关系的具体实现方式。
参见图4,该图为本申请实施例提供的一种生成第二对应关系的方法的信令交互图。
图4所示的方法,为当承载组播业务的隧道为MPLS P2MP隧道时,尾节点生成第二对应关系的信令交互图。图4所示的方法,例如可以通过如下步骤301-304实现。
步骤301:头节点向尾节点发送组播路由消息,组播路由消息包括头节点的IPv6地址和头节点与所述尾节点间的MPLS P2MP隧道的标识。
在本申请实施例中,当承载组播业务的隧道为MPLS P2MP隧道时,在利用组播网络传输组播数据报文之前,头节点可以向尾节点发送组播路由信息,该组播路由信息中携带头节点的IPv6地址和头节点与所述尾节点间的MPLS P2MP隧道的标识。
本申请实施例不具体限定MPLS P2MP隧道的标识,该MPLS P2MP隧道的标识包括组播标签分发协议(multicast label distribution protocol,mLDP)转发等价类(forwarding equal class,FEC)和资源预留协议流量工程(resource reservationprotocol traffic engineering,RSVP-TE)会话标识(Session ID)。
尾节点接收到该组播路由消息之后,可以对该组播路由消息进行解析,从而得到头节点的IPv6地址和头节点与所述尾节点间的MPLS P2MP隧道的标识。
可以理解是,对于MVPN,该组播路由信息为MVPN路由信息,例如为BGP MVPN地址族路由信息。对于EVPN,该组播路由信息为EVPN路由信息,例如为BGP EVPN地址族路由信息。
步骤302:尾节点根据MPLS P2MP隧道的标识和第四对应关系,获得封装信息。
在本申请实施例中,尾节点确定MPLS P2MP隧道的标识之后,可以结合第四对应关系,确定该MPLS P2MP隧道的标识对应的封装信息。其中,该第四对应关系包括MPLS P2MP隧道的标识和对应的封装信息,该封装信息包括所述尾节点为MPLS P2MP隧道分配的标签。
步骤303:尾节点根据头节点的IPv6地址获得第二标识,第二标识与头节点的IPv6地址对应。
需要说明的是,步骤303的实现方式与步骤203类似,在本申请实施例的一种实现方式中,尾节点获取到头节点的IPv6地址之后,可以根据IPv6地址与标识之间的映射关系,将128比特的IPv6地址,映射成小于128比特的第二标识。在本申请实施例中,前述IPv6地址与标识之间的映射关系,可以是预先生成并存储在尾节点或者其它存储器中的,也可以是尾节点确定UMH节点的IPv6地址之后生成的,本申请实施例不做具体限定。
在本申请实施例的又一种实现方式中,尾节点确定头节点的IPv6地址之后,可以根据预先确定的标识生成规则,生成第二标识。
此处需要强调的是,此处提及的IPv6地址与标识之间的映射关系,与步骤203中提及的述IPv6地址与标识之间的映射关系,为同一个映射关系。该IPv6地址与标识之间的映射关系,可以是预先生成并存储在尾节点或者其它存储器中的。该IPv6地址与标识之间的映射关系,也可以是尾节点收到头节点发送的组播路由信息之前或之后生成的。该IPv6地址与标识之间的映射关系,还可以是尾节点确定UMH节点之前或者确定UMH节点之后生成的。例如:尾节点先收到用户设备的组播加入请求、再收到头节点发送的MVPN路由信息,那么该映射关系可以在收到用户设备的组播加入请求之后生成。具体的,尾节点可以首先根据组播路由信息确定UMH节点、再生成该映射关系,也可以是先生成该映射关系再确定UMH节点。又如:尾节点先收到头节点发送的组播路由信息、再收到用户设备的组播加入请求,那么该映射关系可以在收到组播路由信息之后建立。本申请实施例不做具体限定。相应的,此处提及的标识生成规则,与前述步骤203中提及的标识生成规则,为同一个规则。
步骤304:尾节点根据封装信息和第二标识,获得第二对应关系。
尾节点确定头节点的IPv6地址对应的第二标识、以及MPLS P2MP隧道的标识对应的封装信息之后,即可建立并存储封装信息和第二标识之间的第二对应关系,以便于在后续进行RPF检查时,利用第二对应关系确定第二标识。
参见图5,该图为本申请实施例提供的又一种生成第二对应关系的方法的信令交互图。
图5所示的方法,为当承载组播业务的隧道为BIER-MPLS隧道时,尾节点生成第二对应关系的信令交互图。图5所示的方法,例如可以通过如下步骤401-404实现。
步骤401:头节点向尾节点发送组播路由信息,组播路由信息包括头节点的IPv6地址和BIER隧道的标识。
在本申请实施例中,当承载组播业务的隧道为BIER-MPLS隧道时,在利用组播网络传输组播数据报文之前,头节点可以向尾节点发送组播路由信息,该组播路由信息中携带头节点的IPv6地址和头节点与尾节点间的BIER-MPLS隧道的标识。
本申请实施例不具体限定BIER-MPLS隧道的标识,该BIER-MPLS隧道的标识包括BIER子域标识Sub-domain ID。
尾节点接收到该组播路由消息之后,可以对该组播路由消息进行解析,从而得到头节点的IPv6地址和BIER隧道的标识。
可以理解是,对于MVPN,该组播路由信息为MVPN路由信息,例如为BGP MVPN地址族路由信息。对于EVPN,该组播路由信息为EVPN路由信息,例如为BGP EVPN地址族路由信息。
步骤402:尾节点根据BIER隧道的标识和第五对应关系,获得封装信息。
在本申请实施例中,尾节点确定BIER隧道的标识之后,可以结合第五对应关系,确定该BIER隧道的标识对应的封装信息。其中,该第五对应关系包括BIER隧道的标识和对应的封装信息,该封装信息包括与尾节点对应的BIFT-id。
步骤403:尾节点根据头节点的IPv6地址获得第二标识,第二标识与头节点的IPv6地址对应。
步骤404:尾节点根据封装信息和第二标识,获得第二对应关系。
关于步骤403-404,与步骤303-304的实现类似,具体描述可以参见步骤303-304的描述部分,此处不再详述。
参见图6,该图为本申请实施例提供的又一种生成第二对应关系的方法的信令交互图。
图6所示的方法,为当承载组播业务的隧道为BIERv6隧道时,尾节点生成第二对应关系的信令交互图。图6所示的方法,例如可以通过如下步骤501-503实现。
步骤501:头节点向尾节点发送组播路由信息,组播路由信息包括封装信息和头节点的IPv6地址,封装信息为头节点为其组播实例分配的IPv6地址。
在本申请实施例中,当承载组播业务的隧道为BIERv6隧道时,在利用组播网络传输组播数据报文之前,头节点可以向尾节点发送组播路由信息,该组播路由信息中携带头节点的IPv6地址和头节点使用的封装信息。该封装信息为头节点为其组播实例分配的IPv6地址。因此,尾节点接收到该组播路由信息之后,即可对该组播路由信息进行解析,从而得到该封装信息。
可以理解是,对于MVPN,该组播路由信息为MVPN路由信息,例如为BGP MVPN地址族路由信息。对于EVPN,该组播路由信息为EVPN路由信息,例如为BGP EVPN地址族路由信息。
步骤502:尾节点根据头节点的IPv6地址获得第二标识,第二标识与所述头节点的IPv6地址对应。
步骤503:尾节点根据封装信息和第二标识,获得第二对应关系。
关于步骤502-503,与步骤303-304的实现类似,具体描述可以参见步骤303-304的描述部分,此处不再详述。
以上对三种承载组播业务的隧道分别对应的第二对应关系建立方式进行了介绍,以下结合具体场景,针对前述三种承载组播业务的隧道,分别介绍建立第二对应关系的具体实现方式。
首先,介绍当承载组播业务的隧道为MPLS P2MP隧道时,建立第二对应关系的具体实现方式。
在承载组播业务的隧道为MPLS P2MP隧道时,封装信息是包含MPLS P2MP Label的标签栈。第二对应关系则是一个MPLS_P2MP表项,该表项可表示成:(MPLS P2MP Label,从RootIPv6获取的第二标识)。其中,MPLS P2MP Label为MPLS P2MP隧道标签,RootIPv6表示头节点的IPv6地址。该表项的建立过程如下:
头节点申请一个组播标签分配协议(multicast LDP,m LDP)P2MP的隧道标识转发等价类(forwarding equal class,FEC),该FEC中包含头节点IPv6地址1和隧道的ID。同一个节点不同的mLDP P2MP隧道使用不同的隧道ID。头节点发布包容(inclusive PMSI,IPMSI)路由给尾节点,路由中携带PMSI隧道属性(PMSI tunnel attribute)PTA,PTA中携带申请的FEC。其中,头节点发布携带PTA的IPMSI路由,通常是配置触发的。例如:头节点会配置sender-enable,说明该节点是一个头节点。头节点会配置使用IPMSI隧道、具体的IPMSI隧道类型为mLDP,等等。
尾节点收到IPMSI路由消息后,根据FEC信息去建立mLDP P2MP隧道,具体的,尾节点会为FEC分配一个标签,即MPLS P2MP Label,并建立该MPLS P2MP Label和头节点IPv6地址1的第二标识的对应关系,即如上所述的MPLS_P2MP表项。此外,尾节点还会根据FEC中的头节点地址信息,查询该地址的路由下一跳,并向下一跳路由器发送Mapping消息,携带此FEC以及尾节点上分配的MPLS P2MP Label,下一跳路由器继续往FEC所标识的头节点方向的下一跳发送Mapping消息,直至建立起整个路径。
接下来,介绍当承载组播业务的隧道为BIER-MPLS隧道时,建立第二对应关系的具体实现方式。
在本申请实施例中,当承载组播业务的隧道为BIER-MPLS隧道时,封装信息包括BIER转发路由器头节点标识和BIER MPLS标签。其中,BIER转发路由器头节点标识具体可以为BIER-MPLS头部的BIFT-id字段所包括的Sub-domain信息及BFIR-id字段。相应的,第二对应关系为一个MVPN_ILMBIER表项。该MVPN_ILMBIER表项可表示为:(Sub-domain,BFIR-id,从RootIPv6获取的第二标识)。该表项可能还有其它字段,比如MVPN_ILMBIER表项可表示为:(Sub-domain,BFIR-id,VPN Label,从RootIPv6获取的第二标识,VRF),本申请实施例不做具体限定。该表项的建立过程如下:
头节点将IPMSI或选择性的运营商组播服务接口(Selective Provider-Multicast Service Interface,SPMSI)路由和PTA发送给尾节点,其中IPMSI或SPMSI路由信息包含有头节点的IPv6地址1、PTA中携带有Sub-domain、BFR-id信息,和IPv6的比特转发路由器前缀(bit forwarding router prefix,BFR-prefix)地址2,同时该IPMSI路由还携带有路由目标(route-target,RT)扩展团体属性。尾节点上收到此消息后,根据RT扩展团体属性获知对应的尾节点VRF,建立起如上所述的MVPN_ILMBIER表项。该MVPN_ILMBIER表项表示成:(Sub-domain,BFIR-id,VPN Label,RootIP<第二标识>,VRF)。其中BFIR-id就是头节点路由消息中的PTA的BFR-id。这里的Sub-domain、BFIR-id、VPN Label是可以从报文外层封装中可以获得的信息,例如Sub-domain可以从报文的BIER头中的前20bit的BIFT-id字段获取、BFIR-id从BIER头中的BFIR-id字段获取、VPN Label从报文中的BIER头后面的标签中获取。从RootIPv6获取的第二标识,就是头节点IPMSI路由中的路由信息中的IPv6地址1获取的第二标识,不是BFR-prefix地址,该RootIPv6地址也是在UMH选路中会选择到的头节点的地址。
最后,介绍当承载组播业务的隧道为BIERv6隧道时,建立第二对应关系的具体实现方式。
在承载组播业务的隧道为BIERv6隧道时,封装信息是一个外层IPv6头及位于IPv6扩展头中的BIER头,第二对应关系是一个MVPN_ILMBIERv6表项。该MVPN_ILMBIERv6表项可表示成:(标识MVPN实例的IPv6地址,从RootIPv6获取的第二标识)。该表项可能还有其它字段,具体表示成:(标识MVPN实例的IPv6地址,从RootIPv6获取的第二标识,VRF),本申请实施例不做具体限定。该表项的建立过程如下:
头节点将IPMSI或SPMSI路由、PTA属性和用于标识MVPN实例的IPv6地址(在Prefix-SID属性中)发送给尾节点,其中IPMSI或SPMSI路由信息包含有头节点的IPv6地址1、PTA中携带有Sub-domain、BFR-id信息,和IPv6的BFR-prefix地址2,同时该路由还携带有RT扩展团体属性、Prefix-SID属性,其中Prefix-SID属性中有包含标识VPN实例的IPv6地址3。尾节点上收到此消息后,根据RT扩展团体属性获知对应的尾节点VRF,建立起如上所述的MVPN_ILMBIER表项。该MVPN_ILMBIERv6表项可表示成:(标识组播实例的IPv6地址,RootIP<第二标识>,VRF)。其中标识MVPN的IPv6地址就是头节点路由消息中Prefix-SID属性中的IPv6地址3,同时也是携带在组播数据报文源地址中的地址。从RootIPv6获取的第二标识就是头节点IPMSI路由中的路由信息中的IPv6地址1对应的第二标识,代表的是头节点,例如多个MVPN实例可以使用同一个第二标识,该第二标识也是在UMH选路中会选择到的用于标识头节点的第二标识。
基于以上实施例提供的RPF检查方法,本申请实施例还提供了一种RPF检查装置,该装置可以应用于尾节点。参见图7,该图为本申请实施例提供的一种RPF检查装置的结构示意图。
图7所示的RPF检查装置700,用于执行前述实施例提及的由尾节点执行的RPF检查方法,具体地,可以包括前述图2至图6所示的由尾节点所执行的步骤。例如可以包括接收单元701、获得单元702、和RPF检查单元703。
接收单元701,用于接收来自头节点的组播数据报文,所述组播数据报文包括组播源地址、组播组地址和封装信息;
获得单元702,用于根据所述组播源地址、所述组播组地址和第一对应关系,获得第一标识,所述第一对应关系包括所述组播源地址、所述组播组地址和所述第一标识,所述第一标识用于标识所述组播数据报文对应的上游组播下一跳UMH节点;
所述获得单元702,还用于根据所述封装信息和第二对应关系,获得第二标识,所述第二对应关系包括所述封装信息和第二标识,所述第二标识用于标识所述头节点,所述第一标识和所述第二标识均小于128比特;
RPF检查单元703,用于根据所述第一标识和所述第二标识进行RPF检查。
在一种实现方式中,所述接收单元701,还用于接收用户边缘节点发送的组播加入消息,所述组播加入消息包括所述组播源地址和所述组播组地址;
所述获得单元702,还用于根据所述组播源地址获得所述UMH节点的IPv6地址;以及用于根据所述UMH节点的IPv6地址获得第一标识,所述第一标识与所述UMH节点的IPv6地址对应;并根据所述组播源地址、所述组播组地址和所述第一标识获得所述第一对应关系。
在一种实现方式中,所述第一对应关系还包括组播实例的标识,所述获得单元702,具体用于:
确定接收所述组播加入消息的接口所属的组播实例的标识;并根据所述组播源地址、第三对应关系和所述组播实例的标识,获得所述UMH节点的IPv6地址,所述第三对应关系包括所述组播源地址、所述组播实例的标识和所述UMH节点的IPv6地址;以及根据所述组播源地址、所述组播组地址、所述组播实例的标识和所述第一标识获得所述第一对应关系。
在一种实现方式中,所述组播实例的标识包括虚拟路由转发VRF的标识或者以太网虚拟专用网络EVPN实例的标识。
在一种实现方式中,所述接收单元701,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址和所述头节点与所述尾节点间的多协议标签交换MPLS点对多点P2MP隧道的标识;
所述获得单元702,还用于根据所述MPLS P2MP隧道的标识和第四对应关系,获得所述封装信息,所述第四对应关系包括所述MPLS P2MP隧道的标识和所述封装信息,所述封装信息包括所述尾节点为所述MPLS P2MP隧道分配的标签;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述接收单元701,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址、和所述头节点与所述尾节点间的基于比特索引的显式复制BIER隧道的标识;所述BIER隧道的标识包括BIER子域标识Sub-domainID;
所述获得单元702,还用于根据所述BIER隧道的标识和第五对应关系,获得所述封装信息,所述第五对应关系包括所述BIER隧道的标识和所述封装信息所述封装信息包括与尾节点对应的比特索引转发表标识BIFT-id;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述接收单元701,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述封装信息和所述头节点的IPv6地址,所述封装信息为所述头节点为其组播实例分配的IPv6地址;
所述获得单元702,还用于根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
在一种实现方式中,所述组播路由信息包括组播虚拟专用网络MVPN路由信息或以太虚拟专用网络EVPN路由信息。
在一种实现方式中,所述第一标识和所述第二标识均为小于或等于32比特的值。
在一种实现方式中,所述第一标识和所述第二标识在以下其中一个地址范围内:
0x7F000000~0x7FFFFFFF或0xE0000000~0xEFFFFFFF。
由于所述装置700是与以上方法实施例中提供的RPF检查方法对应的装置,所述装置700的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置700的各个单元的具体实现,可以参考以上方法实施例的描述部分,此处不再赘述。
本申请实施例还提供了一种RPF检查设备,所述设备包括:处理器和存储器;
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的所述指令,执行以上方法实施例由尾节点执行的RPF检查方法。
需要说明的是,本申请实施例中提供的RPF检查设备,其硬件结构均可以为如图8所示的结构,图8为本申请实施例提供的一种RPF检查设备的结构示意图。
请参阅图8所示,RPF检查设备800包括:处理器810、通信接口820和和存储器830。其中设备800中的处理器810的数量可以一个或多个,图8中以一个处理器为例。本申请实施例中,处理器810、通信接口820和存储器830可通过总线系统或其它方式连接,其中,图8中以通过总线系统840连接为例。
处理器810可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器810还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器830可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器830也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器830还可以包括上述种类的存储器的组合。
存储器830可以存储前述实施例提及的第一对应关系、第二对应关系、第三对应关系、第四对应关系以及第五对应关系。
可选地,存储器830存储有操作系统和程序、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,程序可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。处理器810可以读取存储器830中的程序,实现本申请实施例提供的数据采集方法。
总线系统840可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线系统840可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上方法实施例提供的由尾节点执行的RPF检查方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行以上方法实施例提供的由尾节点执行的RPF检查方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑模块划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要获取其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各模块单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件模块单元的形式实现。
所述集成的单元如果以软件模块单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (20)

1.一种反向路径转发RPF检查方法,其特征在于,该方法应用于互联网协议第六版IPv6网络,所述方法包括:
尾节点接收来自头节点的组播数据报文,所述组播数据报文包括组播源地址、组播组地址和封装信息;
所述尾节点根据所述组播源地址、所述组播组地址和第一对应关系,获得第一标识,所述第一对应关系包括所述组播源地址、所述组播组地址和所述第一标识,所述第一标识用于标识所述组播数据报文对应的上游组播下一跳UMH节点;
所述尾节点根据所述封装信息和第二对应关系,获得第二标识,所述第二对应关系包括所述封装信息和第二标识,所述第二标识用于标识所述头节点,所述第一标识和所述第二标识均小于128比特;
所述尾节点根据所述第一标识和所述第二标识进行RPF检查。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述尾节点接收用户边缘节点发送的组播加入消息,所述组播加入消息包括所述组播源地址和所述组播组地址;
所述尾节点根据所述组播源地址获得所述UMH节点的IPv6地址;
所述尾节点根据所述UMH节点的IPv6地址获得第一标识,所述第一标识与所述UMH节点的IPv6地址对应;
所述尾节点根据所述组播源地址、所述组播组地址和所述第一标识获得所述第一对应关系。
3.根据权利要求2所述的方法,其特征在于,所述第一对应关系还包括组播实例的标识,所述尾节点根据所述组播源地址获得所述UMH节点的IPv6地址包括:
所述尾节点确定接收所述组播加入消息的接口所属的组播实例的标识;
所述尾节点根据所述组播源地址、第三对应关系和所述组播实例的标识,获得所述UMH节点的IPv6地址,所述第三对应关系包括所述组播源地址、所述组播实例的标识和所述UMH节点的IPv6地址;
所述尾节点根据所述组播源地址、所述组播组地址和所述第一标识获得所述第一对应关系包括:
所述尾节点根据所述组播源地址、所述组播组地址、所述组播实例的标识和所述第一标识获得所述第一对应关系。
4.根据权利要求3所述的方法,其特征在于,所述组播实例的标识包括虚拟路由转发VRF的标识或者以太网虚拟专用网络EVPN实例的标识。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述尾节点接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址和所述头节点与所述尾节点间的多协议标签交换MPLS点对多点P2MP隧道的标识;
所述尾节点根据所述MPLS P2MP隧道的标识和第四对应关系,获得所述封装信息,所述第四对应关系包括所述MPLS P2MP隧道的标识和所述封装信息,所述封装信息包括所述尾节点为所述MPLS P2MP隧道分配的标签;
所述尾节点根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;
所述尾节点根据所述封装信息和所述第二标识,获得所述第二对应关系。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述尾节点接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址、和所述头节点与所述尾节点间的基于比特索引的显式复制BIER隧道的标识;所述BIER隧道的标识包括BIER子域标识Sub-domain ID;
所述尾节点根据所述BIER隧道的标识和第五对应关系,获得所述封装信息,所述第五对应关系包括所述BIER隧道的标识和所述封装信息,所述封装信息包括与尾节点对应的比特索引转发表标识BIFT-id;
所述尾节点根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;
所述尾节点根据所述封装信息和所述第二标识,获得所述第二对应关系。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述尾节点接收所述头节点发送的组播路由信息,所述组播路由信息包括所述封装信息和所述头节点的IPv6地址,所述封装信息为所述头节点为其组播实例分配的IPv6地址;
所述尾节点根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;
所述尾节点根据所述封装信息和所述第二标识,获得所述第二对应关系。
8.根据权利要求5至7任一所述的方法,其特征在于,所述组播路由信息包括组播虚拟专用网络MVPN路由信息或以太虚拟专用网络EVPN路由信息。
9.根据权利要求1至7任一项所述的方法,其特征在于,所述第一标识和所述第二标识均为小于或等于32比特的值。
10.根据权利要求9所述的方法,其特征在于,所述第一标识和所述第二标识在以下其中一个地址范围内:
0x7F000000~0x7FFFFFFF或0xE0000000~0xEFFFFFFF。
11.一种RPF检查装置,其特征在于,该装置应用于互联网协议第六版IPv6网络的尾节点,所述装置包括:
接收单元,用于接收来自头节点的组播数据报文,所述组播数据报文包括组播源地址、组播组地址和封装信息;
获得单元,用于根据所述组播源地址、所述组播组地址和第一对应关系,获得第一标识,所述第一对应关系包括所述组播源地址、所述组播组地址和所述第一标识,所述第一标识用于标识所述组播数据报文对应的上游组播下一跳UMH节点;
所述获得单元,还用于根据所述封装信息和第二对应关系,获得第二标识,所述第二对应关系包括所述封装信息和第二标识,所述第二标识用于标识所述头节点,所述第一标识和所述第二标识均小于128比特;
RPF检查单元,用于根据所述第一标识和所述第二标识进行RPF检查。
12.根据权利要求11所述的装置,其特征在于,
所述接收单元,还用于接收用户边缘节点发送的组播加入消息,所述组播加入消息包括所述组播源地址和所述组播组地址;
所述获得单元,还用于根据所述组播源地址获得所述UMH节点的IPv6地址;以及用于根据所述UMH节点的IPv6地址获得第一标识,所述第一标识与所述UMH节点的IPv6地址对应;并根据所述组播源地址、所述组播组地址和所述第一标识获得所述第一对应关系。
13.根据权利要求12所述的装置,其特征在于,所述第一对应关系还包括组播实例的标识,所述获得单元,具体用于:
确定接收所述组播加入消息的接口所属的组播实例的标识;并根据所述组播源地址、第三对应关系和所述组播实例的标识,获得所述UMH节点的IPv6地址,所述第三对应关系包括所述组播源地址、所述组播实例的标识和所述UMH节点的IPv6地址;以及根据所述组播源地址、所述组播组地址、所述组播实例的标识和所述第一标识获得所述第一对应关系。
14.根据权利要求13所述的装置,其特征在于,所述组播实例的标识包括虚拟路由转发VRF的标识或者以太网虚拟专用网络EVPN实例的标识。
15.根据权利要求11所述的装置,其特征在于,
所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址和所述头节点与所述尾节点间的多协议标签交换MPLS点对多点P2MP隧道的标识;
所述获得单元,还用于根据所述MPLS P2MP隧道的标识和第四对应关系,获得所述封装信息,所述第四对应关系包括所述MPLS P2MP隧道的标识和所述封装信息,所述封装信息包括所述尾节点为所述MPLS P2MP隧道分配的标签;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
16.根据权利要求11所述的装置,其特征在于,
所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述头节点的IPv6地址、和所述头节点与所述尾节点间的基于比特索引的显式复制BIER隧道的标识;所述BIER隧道的标识包括BIER子域标识Sub-domain ID;
所述获得单元,还用于根据所述BIER隧道的标识和第五对应关系,获得所述封装信息,所述第五对应关系包括所述BIER隧道的标识和所述封装信息所述封装信息包括与尾节点对应的比特索引转发表标识BIFT-id;并根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
17.根据权利要求11所述的装置,其特征在于,
所述接收单元,还用于接收所述头节点发送的组播路由信息,所述组播路由信息包括所述封装信息和所述头节点的IPv6地址,所述封装信息为所述头节点为其组播实例分配的IPv6地址;
所述获得单元,还用于根据所述头节点的IPv6地址获得第二标识,所述第二标识与所述头节点的IPv6地址对应;以及根据所述封装信息和所述第二标识,获得所述第二对应关系。
18.根据权利要求15至17任一所述的装置,其特征在于,所述组播路由信息包括组播虚拟专用网络MVPN路由信息或以太虚拟专用网络EVPN路由信息。
19.根据权利要求11至17任一项所述的装置,其特征在于,所述第一标识和所述第二标识均为小于或等于32比特的值。
20.根据权利要求19所述的装置,其特征在于,所述第一标识和所述第二标识在以下其中一个地址范围内:
0x7F000000~0x7FFFFFFF或0xE0000000~0xEFFFFFFF。
CN201910900954.0A 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置 Active CN111917622B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN202110844309.9A CN113726667B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置
CN201910900954.0A CN111917622B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置
EP20867367.3A EP4024774A4 (en) 2019-09-23 2020-09-23 METHOD AND DEVICE FOR CONTROL OF REVERSE PATH FORWARDING (RPF)
KR1020227011616A KR20220062347A (ko) 2019-09-23 2020-09-23 역 경로 포워딩 rpf 검사 방법 및 장치
PCT/CN2020/117112 WO2021057788A1 (zh) 2019-09-23 2020-09-23 一种反向路径转发rpf检查方法及装置
JP2022518284A JP7397178B2 (ja) 2019-09-23 2020-09-23 リバースパス転送rpfチェック方法及び装置
US17/701,180 US20220217075A1 (en) 2019-09-23 2022-03-22 Reverse Path Forwarding RPF Check Method and Apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910900954.0A CN111917622B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110844309.9A Division CN113726667B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置

Publications (2)

Publication Number Publication Date
CN111917622A CN111917622A (zh) 2020-11-10
CN111917622B true CN111917622B (zh) 2021-08-03

Family

ID=73242765

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910900954.0A Active CN111917622B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置
CN202110844309.9A Active CN113726667B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202110844309.9A Active CN113726667B (zh) 2019-09-23 2019-09-23 一种反向路径转发rpf检查方法及装置

Country Status (6)

Country Link
US (1) US20220217075A1 (zh)
EP (1) EP4024774A4 (zh)
JP (1) JP7397178B2 (zh)
KR (1) KR20220062347A (zh)
CN (2) CN111917622B (zh)
WO (1) WO2021057788A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095305A (zh) * 2020-07-21 2022-02-25 华为技术有限公司 Bier报文转发的方法、设备以及系统
CN113992565B (zh) * 2021-09-29 2023-11-07 新华三大数据技术有限公司 一种组播报文处理方法及装置
WO2024016869A1 (zh) * 2022-07-21 2024-01-25 华为技术有限公司 一种组播配置方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060494A (zh) * 2007-05-17 2007-10-24 华为技术有限公司 一种路由选择的方法、系统及路由器
US7289505B2 (en) * 2002-06-04 2007-10-30 Lucent Technologies Inc. Efficient reverse path forwarding check mechanism
CN101150423A (zh) * 2007-10-31 2008-03-26 华为技术有限公司 一种建立pim邻居、组播加入的方法、组播网络及路由器
CN101296179A (zh) * 2007-10-29 2008-10-29 清华大学 IPv6使用逆向路径转发矢量IPv4/6的方法
CN101478477A (zh) * 2008-12-01 2009-07-08 北京星网锐捷网络技术有限公司 一种组播报文转发方法及装置
CN101588296A (zh) * 2009-06-16 2009-11-25 杭州华三通信技术有限公司 一种转发组播报文的方法、头节点和尾节点
CN101616015A (zh) * 2009-07-24 2009-12-30 中兴通讯股份有限公司 一种获取ip网络中组播拓扑信息的方法和装置
CN102891758A (zh) * 2012-09-20 2013-01-23 杭州华三通信技术有限公司 一种组播数据的传输方法和设备

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917983B1 (en) * 1999-07-28 2005-07-12 Nortel Networks Ltd Reverse path forwarding using a multicast routing table
CN100389579C (zh) * 2004-07-29 2008-05-21 国家数字交换系统工程技术研究中心 支持IPv6单组播业务线速转发的方法及路由器
US8089964B2 (en) * 2005-04-05 2012-01-03 Cisco Technology, Inc. Transporting multicast over MPLS backbone using virtual interfaces to perform reverse-path forwarding checks
US7808993B2 (en) * 2005-10-26 2010-10-05 Cisco Technology, Inc. Bidirectional multicast protocol with upstream and downstream join messages
CN101035009A (zh) * 2007-03-31 2007-09-12 华为技术有限公司 一种组播流量冗余保护的方法及设备
CN101330448B (zh) * 2007-06-21 2010-12-08 华为技术有限公司 一种通告链路状态信息及确定组播转发路径的方法及装置
CN101232392B (zh) * 2008-02-22 2011-07-13 中兴通讯股份有限公司 一种msdp和pim间通告组播源的方法
CN101599841A (zh) 2008-06-03 2009-12-09 华为技术有限公司 实现组播的方法、路由器及系统
CN101447942B (zh) * 2008-12-25 2012-04-18 杭州华三通信技术有限公司 一种组播流量路径的控制方法和装置
CN102457386B (zh) * 2010-10-25 2014-07-16 杭州华三通信技术有限公司 一种通信设备的双向pim中组播报文转发方法和通信设备
US20130003732A1 (en) * 2011-06-29 2013-01-03 Brocade Communications Systems, Inc. Abstracting accepting interface to optimize parent and child entry lookup for bidirectional pim
US8873558B2 (en) * 2011-08-03 2014-10-28 Cisco Technology, Inc. Reverse path forwarding lookup with link bundles
CN103220255B (zh) * 2012-01-18 2017-07-21 南京中兴新软件有限责任公司 一种实现单播反向路径转发urpf检查的方法及装置
CN102946332B (zh) * 2012-10-25 2015-09-23 杭州华三通信技术有限公司 一种逆向路径转发检查方法和设备
CN103916905A (zh) * 2013-01-06 2014-07-09 中兴通讯股份有限公司 组播源的注册、组播路径的建立方法及装置
US9553734B2 (en) 2014-01-09 2017-01-24 Dell Products L.P. Delayed updating of forwarding databases for multicast transmissions over telecommunications networks

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7289505B2 (en) * 2002-06-04 2007-10-30 Lucent Technologies Inc. Efficient reverse path forwarding check mechanism
CN101060494A (zh) * 2007-05-17 2007-10-24 华为技术有限公司 一种路由选择的方法、系统及路由器
CN101296179A (zh) * 2007-10-29 2008-10-29 清华大学 IPv6使用逆向路径转发矢量IPv4/6的方法
CN101150423A (zh) * 2007-10-31 2008-03-26 华为技术有限公司 一种建立pim邻居、组播加入的方法、组播网络及路由器
CN101478477A (zh) * 2008-12-01 2009-07-08 北京星网锐捷网络技术有限公司 一种组播报文转发方法及装置
CN101588296A (zh) * 2009-06-16 2009-11-25 杭州华三通信技术有限公司 一种转发组播报文的方法、头节点和尾节点
CN101616015A (zh) * 2009-07-24 2009-12-30 中兴通讯股份有限公司 一种获取ip网络中组播拓扑信息的方法和装置
CN102891758A (zh) * 2012-09-20 2013-01-23 杭州华三通信技术有限公司 一种组播数据的传输方法和设备

Also Published As

Publication number Publication date
CN111917622A (zh) 2020-11-10
EP4024774A4 (en) 2022-11-09
CN113726667A (zh) 2021-11-30
CN113726667B (zh) 2022-11-18
JP2022548987A (ja) 2022-11-22
US20220217075A1 (en) 2022-07-07
JP7397178B2 (ja) 2023-12-12
WO2021057788A1 (zh) 2021-04-01
KR20220062347A (ko) 2022-05-16
EP4024774A1 (en) 2022-07-06

Similar Documents

Publication Publication Date Title
US11374862B2 (en) Packet sending and processing method and apparatus, PE node, and node
US10581732B2 (en) Target FEC (forwarding equivalence class) stack based FEC query in segment routing environments
US11483237B2 (en) BIER traffic engineering (BIER-TE) using unicast MPLS-TE tunnels
CN109218178B (zh) 一种报文处理方法及网络设备
CN111147383B (zh) 报文转发的方法、发送报文的装置和接收报文的装置
EP3896923A1 (en) Bier packet sending method and apparatus
JP2022550160A (ja) Bier転送項目構築方法、装置、およびシステム
US20210243111A1 (en) Supporting multicast communications
CN110832813A (zh) 使用分段路由的以太网虚拟专用网
WO2019214589A1 (zh) 组播数据传输方法、相关装置及系统
US20140269699A1 (en) Seamless segment routing
CN110912796B (zh) 一种通信方法、设备和系统
CN111917622B (zh) 一种反向路径转发rpf检查方法及装置
CN110417655B (zh) 一种数据报文转发的方法及装置
WO2020036983A9 (en) Source routing tunnel ingress protection
CN102474451B (zh) 连接内层和外层mpls标签
US20140185614A1 (en) Multiple domain addressing in message routing
WO2020021558A1 (en) Methods, apparatus and machine-readable media relating to path computation in a communication network
WO2023050981A1 (zh) 虚拟专用网络业务标识的分配方法、报文处理方法及装置
Veselý et al. Multicast, trill and lisp extensions for inet
WO2024010954A1 (en) Link number distribution for multicast
CN110838965A (zh) 一种隧道建立方法以及接收节点

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant