CN107547350B - 流量处理方法及装置 - Google Patents
流量处理方法及装置 Download PDFInfo
- Publication number
- CN107547350B CN107547350B CN201710652346.3A CN201710652346A CN107547350B CN 107547350 B CN107547350 B CN 107547350B CN 201710652346 A CN201710652346 A CN 201710652346A CN 107547350 B CN107547350 B CN 107547350B
- Authority
- CN
- China
- Prior art keywords
- multicast
- source
- route
- equipment
- traffic
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及一种流量处理方法及装置,该方法包括:在所述组网中的源PE设备接收到源树用户侧组播加入路由的情况下,所述源PE设备判断所述源树用户侧组播加入路由是否来自所述组网中的汇聚点RP;在判定所述源树用户侧组播加入路由来自所述RP的情况下,所述源PE设备不发送激活组播源自动发现路由。由此,可以减少不必要的路由的发送,从而可以减少BGP路由邻居之间的路由的交互次数。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种流量处理方法及装置。
背景技术
在组播VPN(Virtual Private Network,虚拟专用网)即MVPN中,根据BGP(BorderGateway Protocol,边界网关协议)路由中携带的邻居信息,可在各PE(Provide Edge,服务提供商网络边缘)设备两两之间建立公网组播点对多点隧道,组播流量可通过公网组播隧道到达各PE设备。
相关技术中,在组播流量的转发流程中,可能发送了不必要的路由。
发明内容
有鉴于此,本公开提出了一种流量处理方法及装置。
根据本公开的一方面,提供了一种流量处理方法,应用于组播虚拟专用网MVPN组网,包括:在所述组网中的源PE设备接收到源树用户侧组播加入路由的情况下,所述源PE设备判断所述源树用户侧组播加入路由是否来自所述组网中的汇聚点RP;在判定所述源树用户侧组播加入路由来自所述汇聚点RP的情况下,所述源PE设备不发送激活组播源自动发现路由。
在一种可能的实现方式中,在判定所述源树用户侧组播加入路由来自除所述汇聚点RP之外的PE设备的情况下,所述源PE设备发送所述激活组播源自动发现路由。
在一种可能的实现方式中,接收到所述激活组播源自动发现路由的待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由;在判定自身接收到所述共享树用户侧组播加入路由的情况下,所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。
在一种可能的实现方式中,所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口包括:所述待剪枝PE设备根据所述激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉所述隧道接口。
在一种可能的实现方式中,所述流量处理方法还包括:当所述源PE设备检测到满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件时,所述源PE设备发送选择性隧道自动发现路由;所述源PE设备接收根据所述选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由;所述源PE设备将发送所述叶子节点自动发现路由的PE设备确定为所述选择性组播服务隧道的目的节点。
根据本公开的另一方面,提供了一种流量处理装置,应用于组播虚拟专用网MVPN组网,包括:判断模块,用于在所述组网中的源PE设备接收到源树用户侧组播加入路由的情况下,判断所述源树用户侧组播加入路由是否来自所述组网中的汇聚点RP;发送模块,用于在判定所述源树用户侧组播加入路由来自所述汇聚点RP的情况下,不发送激活组播源自动发现路由。
在一种可能的实现方式中,所述发送模块还用于在判定所述源树用户侧组播加入路由来自除所述汇聚点RP之外的PE设备的情况下,发送所述激活组播源自动发现路由。
在一种可能的实现方式中,所述流量处理装置还包括:第一接收模块,用于控制待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由,其中,所述待剪枝PE设备为接收到所述激活组播源自动发现路由的设备;判定模块,用于在确定所述待剪枝PE设备判定自身接收到所述共享树用户侧组播加入路由的情况下,控制所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。
在一种可能的实现方式中,所述判定模块用于:控制所述待剪枝PE设备根据所述激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发所述组播流量的隧道接口,并剪掉所述隧道接口。
在一种可能的实现方式中,所述流量处理装置还包括:检测模块,用于检测是否满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件,在所述检测模块检测到满足所述相容性组播服务隧道切换到所述选择性组播服务隧道的切换条件的情况下,所述发送模块发送选择性隧道自动发现路由;第二接收模块,用于接收根据所述选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由;确定模块,用于将发送所述叶子节点自动发现路由的PE设备确定为所述选择性组播服务隧道的目的节点。
本公开的实施例提供的技术方案可以包括以下有益效果:源PE设备根据接收到的源树用户侧组播加入路由的发送方是否是RP来控制是否发送激活组播源自动发现路由,如果接收到的源树用户侧组播加入路由的发送方是RP所在的PE设备,则源PE设备不发送激活组播源自动发现路由,由此,源PE设备在接收到的源树用户侧组播加入路由的发送方是RP的情况下无需发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。因此,与现有技术相比,本公开可以减少不必要的路由的发送,从而可以减少BGP路由邻居之间的路由的交互次数。
在一种可能的实现方式中,本公开的实施例提供的技术方案可以包括以下有益效果:在源PE设备接收到来自非RP所发送的源树用户侧组播加入路由的情况下,源PE设备发送激活组播源自动发现路由。与现有技术相比,本公开实施例延迟了激活组播源自动发现路由的发送时机,从而延迟了剪枝操作的时机。
此外,经RPT路径转发的组播流量还需要一段时间才能够转发到接收者PE设备,若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由,根据现有技术的剪枝操作的触发/判断条件,无法实现延迟激活组播源自动发现路由的发送时机,这使得在满足剪枝操作的触发/判断条件以进行剪枝操作时,某些通过RPT转发的组播流量可能并未到达接收者PE设备,从而可能导致经RPT路径转发的组播流量无法完成转发即断流。因此,本公开实施例延迟激活组播源自动发现路由的发送时机能够减少断流的发生。
在一种可能的实现方式中,本公开的实施例提供的技术方案可以包括以下有益效果:由于本公开的剪枝操作的触发/判断条件删除了PE设备没有发送源树用户侧组播加入路由,因此本公开简化了剪枝操作的触发/判断条件。
在一种可能的实现方式中,本公开的实施例提供的技术方案可以包括以下有益效果:由于现有技术的剪枝操作的触发/判断条件包括PE设备没有发送源树用户侧组播加入路由,因此针对汇聚点RP造成的重复流量的情况,现有技术无法实现剪掉该重复流量。与之相比,由于本公开的剪枝操作的触发/判断条件删除了PE设备没有发送源树用户侧组播加入路由,因此本公开排除了无法剪掉汇聚点RP向下游PE设备转发的组播流量的情况,能够实现减少重复流量的情况。
在一种可能的实现方式中,本公开的实施例提供的技术方案可以包括以下有益效果:由于现有技术从接收端剪掉重复流量的方式会导致转发组播流量的路径不是最优路径,因此,现有技术在剪掉重复流量的同时无法将转发组播流量的路径切换为SPT。与之相比,在本公开中,RP满足剪枝操作的触发/判断条件,因此本公开不仅将转发组播流量的路径切换为SPT,并且还使得非SPT上的PE设备不会向下游PE设备转发组播流量(例如,汇聚点RP不会向接收者PE设备转发组播流量)、从而能够及时剪掉重复流量,能够避免浪费中间链路(例如,由RP向接收者PE设备转发组播流量的链路)的带宽。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1是典型的MVPN组网的示意图。
图2是根据一示例性实施例示出的一种流量处理方法的流程图。
图3是RPT与SPT重合的一种应用场景示意图。
图4是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。
图5是RPT与SPT不重合并且沿着相容性组播服务隧道转发组播流量的一种应用场景示意图。
图6是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。
图7是RPT与SPT不重合并且沿着选择性组播服务隧道转发组播流量的一种应用场景示意图。
图8是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。
图9是VPN组网中存在路由反射器RR的一种应用场景示意图。
图10是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。
图11是根据一示例性实施例示出的一种流量处理装置1100的结构框图。
图12是根据一示例性实施例示出的一种流量处理装置1200的结构框图。
图13是根据一示例性实施例示出的一种流量处理装置1300的结构框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
为便于说明,以下首先对本公开涉及的部分概念进行解释说明。
MVPN要求在VPN内进行组播转发。图1是典型的MVPN组网的示意图。如图1所示,由Site(站点)1、Site 3和Site 5组成VPN A,由Site 2、Site 4和Site 6组成VPN B,如果Site2上有一个组播源,则与Site 2同样属于VPN B的Site 4和Site 6可以接收到Site 2上的组播源所发送的组播流量。类似地,如果Site 1上有一个组播源,则与Site 1同样属于VPN A的Site 3和Site 5可以接收到Site 1上的组播源所发送的组播流量。
MVPN中可包括CE(Customer Edge,用户网络边缘)设备和PE(Provider Edge,服务提供商网络边缘)设备。其中,CE设备既可以是路由器或交换机,也可以是终端例如主机,PE设备可以是路由器或三层交换机,并且PE设备可与CE设备直接相连。图1中的Site1至Site6为CE设备并且PE1至PE3为PE设备。可选的,MVPN中还可包括P(Provider,骨干网核心设备)设备或RR(Route Reflector,路由反射器),P设备或RR设备可对VPN内的协议报文或数据报文进行转发。在各VPN中,每个CE设备连接的PE设备与其CE设备连接的PE设备之间具有点到多点隧道,例如PE1与PE2、PE3之间具有点到多点隧道。
PE设备可包括源PE设备、汇聚点RP(Rendezvous Point,汇聚点,以下简称RP)和接收者PE设备。其中,源PE设备是指与其相连的CE设备上接入了组播源Source的PE设备,接收者PE设备是指与其相连的CE设备上接入了接收者Receiver的PE设备。
MVPN包括RPT(Rendezvous Path Tree,共享路径树)和SPT(Shortest-Path Tree,最短路径树)这两种路由路径。其中,RPT选择某PE设备作为共用的根节点RP,组播源Source上打入的组播流量可通过RP沿着RPT转发给接收者Receiver。也就是说,同一组播的组播源Source首先将组播流量转发到RP,RP再将该组播流量转发至接收者Receiver。SPT树根为发送源,因此SPT也称为“源树”,其从发送源到每一个接收者的路径都是最优的,该路径可以是指接收者PE设备通过最后一跳路由器查找单播路由表确定的到组播源Source的最短单播转发路径,故SPT可以使组播源Source到接收者Receiver的组播路径最优,以减少组播流量的传输延迟。
在某些实施例中,当接收者Receiver接入PE设备(该PE设备成为接收者PE设备)时,该PE设备会向RP发送“共享树用户侧组播加入路由(share tree join c-multicastroute)”。在另外某些实施例中,接收组播流量的设备例如RP和/或接收者PE设备向源PE设备PE1发送“源树用户侧组播加入路由(source tree join c-multicast route)”,可选的,接收者PE设备通过组播源Source的最优路由下一跳向源PE设备发送“源树用户侧组播加入路由(source tree join c-multicast route)”。
Share Tree Join C-multicast route(Share Tree Join Customer multicastroute,共享树用户侧组播加入路由)可包括:RD、自治域AS号(Source AS)、组播流量的源地址(包括地址长度Multicast Source Length和组播流量的具体地址Multicast Source,其中Multicast Source填写RP地址)和目的组地址(包括地址长度Multicast Group Length和具体地址Multicast Group)等字段。RP可以根据共享树用户侧组播加入路由能够知晓接收组播流量的PE设备。共享树用户侧组播加入路由的格式可以如下:
Source Tree Join C-multicast route(源树用户侧组播加入路由,Source TreeJoin Customer multicast route)可包括:RD(Route Identifier,路由标识符)、自治域AS号(Source AS)、组播流量的源地址(包括地址长度Multicast Source Length和组播流量的具体地址Multicast Source,其中Multicast Source填写组播源地址)、以及目的组地址(包括地址长度Multicast Group Length和具体地址Multicast Group)等字段。接收到源树用户侧组播加入路由的设备(例如源PE设备或RP)可以根据源树用户侧组播加入路由能够知晓接收流量的PE设备,例如RP或接收者PE设备。可选的,源PE设备或RP根据源树用户侧组播加入路由中的Multicast Group字段能够知晓接收流量的PE设备。源树用户侧组播加入路由的格式可以如下:
下面结合说明书附图对本公开实施例进行解释说明。
假设图1中的PE1上接入了组播源Source、PE2是私网RP、PE3上接入了接收者Receiver,则PE1是源PE设备、PE2是RP、PE3是接收者PE设备,各PE与其他PE之间具有点到多点隧道,例如PE1与PE2、PE3之间具有点到多点隧道。组播流量沿着RPT、即PE1-PE2-PE3转发到组播接收者Receiver。如果PE3查找到组播源Source的最优路由下一跳是PE1,则组播流量沿着SPT、即PE1-PE3转发到组播接收者Receiver。
图2是根据一示例性实施例示出的一种流量处理方法的流程图,该流量处理方法可以应用于组播虚拟专用网MVPN组网,例如,该处理方法可以应用于图1中的VPN A或VPNB。为便于说明,以下以图1中的组网VPN A为例进行描述。如图2所示,该流量处理方法可以包括如下步骤。
在步骤S210中,在组网中的源服务提供商网络边缘PE设备接收到源树用户侧组播加入路由的情况下,源PE设备判断源树用户侧组播加入路由是否来自组网中的汇聚点RP。
在某些实施例中,在RP接收到组播流量的情况下,RP向源PE设备发送源树用户侧组播加入路由。在其他某些实施例中,接收者PE设备接收到组播流量并且查找到组播源的最优路由下一跳是源PE设备的情况下,接收者PE设备向源PE设备发送源树用户侧组播加入路由。
如上所述,由于VPN A中的RP即PE2或接收者PE设备PE3均可向源PE设备PE1发送源树用户侧组播加入路由,因此,源PE设备PE1需要判断接收到的源树用户侧组播加入路由是否来自于RP。例如,PE1可根据BGP(Border Gateway Protocol,边界网关协议)路由邻居来判断Source Tree Join C-multicast route的发送方是否是RP。
在步骤S230中,在判定源树用户侧组播加入路由来自RP的情况下,源PE设备不发送激活组播源自动发现路由。
其中,Source-active A-D route(Source-active auto-discovery route,激活组播源自动发现路由)可包括:RD(Route Identifier,路由标识符)、组播流量的源地址(包括地址长度Multicast Source Length和具体地址Multicast Source)和组播流量的目的组地址(包括地址长度Multicast Group Length和具体地址Multicast Group)等字段。激活组播源自动发现路由可以是判断PE设备是否剪掉自身用于转发组播流量的隧道接口(即,进行剪枝操作)的判断条件之一。该激活组播源自动发现路由的格式可以如下:
如上所述,如果PE1根据BGP路由邻居判定Source Tree Join C-multicast route的发送方是RP,则PE1不向PE2和PE3发送激活组播源自动发现路由。
因此,本公开实施例根据接收到的源树用户侧组播加入路由的发送方是否是RP来控制源PE设备是否发送激活组播源自动发现路由,如果接收到的源树用户侧组播加入路由的发送方是RP,则源PE设备不发送激活组播源自动发现路由,由此,源PE设备在接收到的源树用户侧组播加入路由的发送方是RP的情况下无需发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。因此,与现有技术相比,本公开可以减少不必要的路由的发送,从而可以减少BGP路由邻居之间的路由的交互次数。
在一种可能的实现方式中,在判定源树用户侧组播加入路由来自除RP以外的PE设备的情况下,源PE设备发送激活组播源自动发现路由。
示例性的,如果在上述步骤S230中,PE1根据BGP路由邻居判定Source Tree JoinC-multicast route的发送方是接收者PE设备PE3,则PE1向PE2和PE3发送激活组播源自动发现路由。
此外,本公开实施例还可以降低接收者PE设备收到重复流量的可能性。
在现有技术,接收者PE设备有可能会同时接收到来自RPT路径和SPT路径转发的组播流量,此时为减少网络资源的浪费,则需要剪掉其中一条路径上转发的流量,以降低接收者PE设备收到重复流量的可能性。可选的,将RPT路径上转发的流量剪掉,保留最优路径的SPT进行流量转发。
针对接收者PE设备收到双份转发的组播流量的情况,现有某些方案提供了解决办法,即收到“激活组播源自动发现路由(Source-active A-D route)”的PE设备,如果满足所有剪枝操作的触发/判断条件,该PE设备会直接将组播流量转发的接口剪掉,这样流量就不会从该PE设备往下转发了。现有技术方案中剪枝操作的触发/判断条件为:(1)本地有组播接收者加入或接收到共享树用户侧组播加入路由、(2)接收到激活组播源自动发现路由和(3)PE设备没有发送源树用户侧组播加入路由。由于RP在接收到组播流量的情况下,RP会向源PE设备发送源树用户侧组播加入路由,故RP并不会剪掉自身转发的流量,接收者PE设备仍然收到双份转发的组播流量。
仍然以图1为例,PE1上接入了组播源Source、PE2是私网RP、PE3上接入了接收者Receiver,则PE1是源PE设备、PE2是RP所在的PE设备、PE3是接收者PE设备,各PE与其他PE之间具有点到多点隧道,例如PE1与PE2、PE3之间具有点到多点隧道。组播源Source发送组播流量时,组播流量先沿着RPT即PE1-PE2-PE3转发到组播接收者Receiver,如果PE3查找到组播源Source的最优路由下一跳是PE1,则组播流量沿着SPT即PE1-PE3转发到组播接收者Receiver。此时,PE3会收到双份转发的组播流量。
可选的,图1中当接收者Receiver接入PE3时,PE3会向RP发送“共享树用户侧组播加入路由(share tree join c-multicast route)”。当组播流量沿着RPT即PE1-PE2-PE3转发到组播接收者Receiver时,接收到组播流量的RP和/或接收者PE设备PE3向源PE设备PE1发送“源树用户侧组播加入路由(source tree join c-multicast route)”,可选的,PE3通过组播源Source的最优路由下一跳向PE1发送“源树用户侧组播加入路由(source treejoin c-multicast route)”。如果PE3查找到组播源Source的最优路由下一跳是PE1,则组播流量沿着SPT即PE1-PE3转发到组播接收者Receiver,例如,如果PE3查找到组播源Source的最优路由下一跳是PE1,则会向PE1发送“源树用户侧组播加入路由(source tree joinc-multicast route)”;如果PE3查找到组播源Source的最优路由下一跳是RP,则会向RP发送“源树用户侧组播加入路由(source tree join c-multicast route)”。PE1接收到“源树用户侧组播加入路由(source tree join c-multicast route)”后,向所有PE发送“激活组播源自动发现路由(Source-active A-D route)”。
上述图1示例中,PE2(即RP)发送过“源树用户侧组播加入路由(source tree joinc-multicast route)”,故PE2无法剪掉自身用于转发组播流量的隧道接口,故接收者PE设备PE3仍然接收到沿着RPT路径(即,PE1-PE2-PE3)转发的组播流量和沿着SPT路径(即,PE1-PE3)转发的组播流量这两份组播流量,现有技术无法实现剪掉重复流量。
为了能够剪掉其中一条路径上转发的流量,以降低接收者PE设备收到重复流量的可能性,本公开实施例作了改进。在一种可能的实现方式中,接收到激活组播源自动发现路由的待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由;在判定自身接收到共享树用户侧组播加入路由的情况下,待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。在本公开的某些实施例中,当某一PE设备接收到激活组播自动发现路由时,即可确定该PE设备为待剪枝PE设备。
在本公开实施例中,简化了PE设备进行剪枝操作的触发/判断条件:接收到激活组播源自动发现路由和接收到共享树用户侧组播加入路由,与现有技术相比,本公开实施例的剪枝操作的触发/判断条件不包括“PE设备没有发送源树用户侧组播加入路由”。故在本公开实施例中,RP满足剪枝操作的触发/判断条件,使得RP剪掉自身用于转发播组播流量的隧道接口,不再将组播流量向接收者PE设备转发。本公开实施例能够将转发组播流量的路径切换为SPT路径,最大限度地减少接收者PE设备接收双份流量的情况,能够避免浪费中间链路(例如,由RP向接收者PE设备转发组播流量的链路)的带宽。
在一种可能的实现方式中,待剪枝PE设备剪掉自身用于转发组播流量的隧道接口包括:待剪枝PE设备根据激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉该隧道接口。可选的,待剪枝PE设备从自身的组播路由表中删除自身用于转发组播流量的隧道接口,从而剪掉自身用于转发组播流量的隧道接口。
示例性的,RP可接收到激活组播源自动发现路由和共享树用户侧组播加入路由,RP可根据接收到的激活组播源自动发现路由中的组播流量的源地址和目的组地址确定RP转发组播流量的隧道接口,并剪掉所确定的隧道接口。在该示例中,RP接收到激活组播源自动发现路由,RP即为待剪枝PE设备。
在一种可能的实现方式中,若组网采用选择性组播服务隧道作为通信通道时,则接收到激活组播源自动发现路由和共享树用户侧组播加入路由的PE设备将选择性组播服务隧道的目的节点的隧道接口确定为自身用于转发组播流量的隧道接口;若组网采用相容性组播服务隧道作为通信通道,则接收到激活组播源自动发现路由和共享树用户侧组播加入路由的PE设备将向接收者PE设备转发了组播流量所使用的隧道接口确定为自身用于转发组播流量的隧道接口。
在一种可能的实现方式中,该流量处理方法还可以包括:源PE设备接收RP和/或组网中的接收者PE设备所发送的源树用户侧组播加入路由。
在一种可能的实现方式中,RP在接收到组播流量的情况下向源PE设备发送源树用户侧组播加入路由并且向接收者PE设备转发组播流量;接收者PE设备在源PE设备是组播源的最优路由所在的PE设备的情况下向源PE设备发送源树用户侧组播加入路由。
因此,源PE设备所接收的源树用户侧组播加入路由的发送方可以为RP或接收者PE设备,RP发送源树用户侧组播加入路由的时机是RP接收到组播流量,而接收者PE设备发送源树用户侧组播加入路由的时机是在接收者PE设备接收到组播流量之后查找到组播源的最优路由下一跳是源PE设备。
在一种可能的实现方式中,该流量处理方法还可以包括:当源PE设备检测到满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件时,源PE设备发送选择性隧道自动发现路由;源PE设备接收根据选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由;源PE设备将发送叶子节点自动发现路由的PE设备确定为选择性组播服务隧道的目的节点。
组网中创建相容性组播服务隧道(Inclusive Provider Multicast ServiceInterface Tunnel,I-PMSI Tunnel)的过程可包括:组网中的任意两个PE设备之间可建立BGP对等体,组网中的各PE设备基于BGP对等体的特性向其它PE设备发送域内相容性隧道自动发现路由并且接收其它PE设备发送的域内相容性隧道自动发现路由;组网中的各PE设备根据接收到的域内相容性隧道自动发现路由中的RD(Route Identifier,路由标识符)和IP地址,确定接收到的域内相容性隧道自动发现路由的发送方;通过诸如PIM-SM(ProtocolIndependent Multicast-Sparse Mode,协议无关组播-稀疏模式)等协议创建各PE设备到发送方的点对多点隧道(即,相容性组播服务隧道)。应当理解的是,隧道协议不限于PIM-SM协议,还可以为RSVP-TE P2MP LSP、mLDP P2MP LSP、PIM-SSM Tree、BIDIR-PIM Tree、Ingress Replication、mLDP MP2MP LSP中的任意一种,本公开不限于是哪种协议创建隧道。
Intra-AS I-PMSI A-D route(Intranal autonomous system InclusiveProvider Multicast Service Interface auto-discovery route,域内相容性隧道自动发现路由)包括RD(Route Identifier,路由标识符)和PE设备的标识IP地址(OriginatingRouter's IP Addr),根据RD和IP地址能够在网络中唯一确定一个PE设备。域内相容性隧道自动发现路由可以用于识别域内相容性隧道的目的节点,可选的,PE设备将根据域内相容性隧道自动发现路由中的RD和IP地址所确定出的PE设备识别为域内相容性隧道的目的节点。域内相容性隧道自动发现路由的格式可以如下:
在一种可能的实现方式中,叶子节点自动发现路由携带有用于对发送叶子节点自动发现路由的PE设备进行标识的IP地址,接收到选择性隧道自动发现路由的PE设备根据选择性隧道自动发现路由所携带的源地址和目的组地址,查找本地是否存在组播接收者;源PE设备将IP地址所标识的PE设备确定为选择性组播服务隧道的目的节点。
选择性隧道自动发现路由(Selective Provider Multicast Service Interfaceauto-discovery route,S-PMSI A-D route)可用于确定是否存在组播接收者。选择性隧道自动发现路由的格式可以如下:
选择性隧道自动发现路由可包括:RD、组播流量的源地址(包括地址长度Multicast Source Length和具体地址Multicast Source)、组播流量的目的组地址(包括地址长度Multicast Group Length和具体地址Multicast Group)、以及发起切换的PE设备的IP地址即PE3的IP地址等字段。可选的,接收到S-PMSI A-D route的设备可根据S-PMSIA-D route中的组播流量的源地址和目的组地址确定本地是否有组播接收者。
S-PMSI A-D route会携带PMSI Tunnel Attribute(组播服务隧道属性),PMSITunnel Attribute的格式可以如下:
PMSI Tunnel Attribute可包括Flags(标志)、Tunnel Type(隧道类型)、MPLSLabel(多协议标签交换标签)、Tunnel Identifier(隧道标识)等字段。其中,Flag定义如下:取值为1时,表示要求其它PE设备接收到S-PMSI A-D route后,其它PE设备需要回应Leaf A-D route(Leaf auto-discovery route,叶子节点自动发现路由)。其它取值暂未占用。Tunnel Type/MPLS Label/Tunnel Identifier是S-PMSI Tunnel的属性字段。
叶子节点自动发现路由可包括Route Key(路由键)和Originating Router's IPAddr(PE设备的标识IP地址)等字段,Route Key字段是复制的接收到的选择性隧道自动发现路由的字段。换言之,叶子节点自动发现路由主要包括选择性隧道自动发现路由的各字段以及发送叶子节点自动发现路由的PE设备的标识IP地址。源PE设备可以根据Leaf A-Droute(Leaf auto-discovery route,叶子节点自动发现路由)能够知晓哪些PE设备需要切换进入选择性组播服务隧道。叶子节点自动发现路由的格式可以如下:
在一种可能的实现方式中,相容性组播服务隧道切换到选择性组播服务隧道的切换条件可根据实际需要具体设置。例如,若组播流量的源地址和目的组地址为预设源地址和预设目的组地址时,将相容性组播服务隧道切换为选择性组播服务隧道。又如,在组播流量高于预设阈值的情况下,将相容性组播服务隧道切换为选择性组播服务隧道。
因此,在满足相容性组播服务隧道切换到选择性组播服务隧道切换的切换条件的情况下,源PE设备可以将相容性组播服务隧道切换为选择性组播服务隧道,其中该选择性组播服务隧道的目的节点是叶子节点自动发现路由所携带的IP地址所标识的PE设备,由此,组播流量不会到达所有的PE设备,例如组播流量不会到达没有发送叶子节点自动发现路由的PE设备,可以节省公网带宽。
在一种可能的实现方式中,在与组网中的PE设备连接的用户网络边缘CE设备上有接收者加入的情况下,该PE设备向RP发送共享树用户侧组播加入路由。
图3是RPT与SPT重合的一种应用场景示意图。如图3所示,该VPN组网包括PE1、PE2、PE3、CE1以及CE2,其中,CE1与PE1相连并且CE1上连接有组播源Source,PE2为汇聚点RP,CE2与PE3相连并且CE2上连接有接收者Receiver,因此,PE1为源PE设备、PE2为RP、以及PE3为接收者PE设备,RPT为PE1-PE2-PE3并且SPT为PE1-PE2-PE3。
PE1、PE2和PE3采用如上所述的组网中创建相容性组播服务隧道的方法可以分别创建各自到其它PE设备之间的相容性组播服务隧道,示例性地,PE1的相容性组播隧道的目的节点集合为<PE2,PE3>,PE2的相容性组播服务隧道的目的节点集合为<PE1,PE3>,PE3的相容性组播服务隧道的目的节点集合为<PE1,PE2>。可选的,PE1、PE2和PE3两两之间可以建立BGP对等体,各PE间交换路由例如Intra-AS I-PMSI A-D route(Intranal autonomoussystem Inclusive Provider Multicast Service Interface auto-discovery route,域内相容性隧道自动发现路由),从而建立P2MP隧道例如相容性组播服务隧道转发组播流量。例如,PE1可以接收到PE2/PE3所发送的Intra-AS I-PMSI A-D route并且可以从Intra-ASI-PMSI A-D route获取到PE2/PE3的IP地址,PE1可创建PE1到PE2和PE1到PE3的点对多点隧道,该隧道的目的节点集合为<PE2,PE3>。
图4是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图,该流量处理方法可应用于RPT与SPT重合的场景,结合图3和图4,该流量处理方法可包括如下步骤。
在步骤S410中,在CE2上有接收者Receiver加入时,PE3向PE2发送共享树用户侧组播加入路由。
在步骤S420中,PE1向PE2发送组播流量,在PE2接收到组播流量时,PE2向PE1发送源树用户侧组播加入路由并且将组播流量沿着PE2与PE3之间的相容性组播服务隧道转发给PE3。
在CE1上打入组播流量即组播流量到达CE1时,PE1首先对组播流量进行封装以形成注册报文,然后PE1沿着PE1与PE2之间的相容性组播服务隧道向PE2发送注册报文,最后PE2对该注册报文进行解封装,从而能够获得该组播流量。其中,该注册报文包括PE1的IP地址、数据(组播流量)、PE2的IP地址。在PE2获得该组播流量之后,PE2查找是否存在组播接收者,例如PE2可查找是否接收到共享树用户侧组播加入路由,如果PE2查找为接收到共享树用户侧组播加入路由,则PE2可查找为存在组播接收者。在PE2查找为存在组播接收者之后,PE2向PE1发送Source Tree Join C-multicast route并且将组播流量沿着PE2与PE3之间的相容性组播服务隧道转发至PE3。
在步骤S430中,PE1判断源树用户侧组播加入路由是来自PE2还是来自PE3。如果PE1判定源树用户侧组播加入路由来自PE2,则执行步骤S440。
在步骤S440中,PE1不发送激活组播源自动发现路由。
在步骤S450中,在PE3接收到PE2转发的组播流量之后,PE3查找组播源Source的最优路由,如果PE3查找到组播源Source的最优路由下一跳是PE2,则PE3向PE2发送源树用户侧组播加入路由。
需要说明的是,在该情况下,SPT是PE1-PE2-PE3,这与RPT相同,亦即RPT与SPT重合。其中,PE2接收到源树用户侧组播加入路由,由于PE2在步骤S420中已经向PE1发送源树用户侧组播加入路由,因此不再通知PE1。
由此,源PE在接收到的源树用户侧组播加入路由的发送方是RP的情况下无需发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。因此,与现有技术相比,本公开可以减少激活组播源自动发现路由的发送,从而可以减少BGP路由邻居之间的路由的交互次数。
图5是RPT与SPT不重合并且沿着相容性组播服务隧道转发组播流量的一种应用场景示意图。如图5所示,该VPN组网包括PE1、PE2、PE3、CE1和CE2,CE1与PE1相连并且CE1上连接有组播源Source,PE2为私网RP,CE2与PE3相连并且CE2上连接有接收者Receiver,因此,PE1为源PE设备、PE2为RP、PE3为接收者PE设备,RPT为PE1-PE2-PE3并且SPT为PE1-PE3。
PE1、PE2、PE3采用如上所述的组网中创建相容性组播服务隧道的方法可以在相邻的两个PE设备之间创建相容性组播服务隧道,可参阅前文针对图3和图4的描述,在此不再赘述。
图6是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图,该流量处理方法可应用于RPT与SPT不重合并且沿着相容性组播服务隧道转发组播流量的场景,该流量处理方法可以应用于PIM-SM协议,结合图5和图6,该流量处理方法可包括如下步骤。
在步骤S610中,在CE2上有接收者Receiver加入时,PE3向PE2发送共享树用户侧组播加入路由。
在步骤S620中,在PE2接收到PE1发送的组播流量时,PE2向PE1发送源树用户侧组播加入路由并且将组播流量沿着PE2与PE3之间的相容性组播服务隧道转发给PE3。具体可参见上述步骤S420的描述,在此不再赘述。
在步骤S630中,PE1判断源树用户侧组播加入路由是来自PE2还是来自PE3。如果PE1判定源树用户侧组播加入路由来自PE2,则执行步骤S640。
在步骤S640中,PE1不发送激活组播源自动发现路由。
在步骤S650中,在PE3接收到PE2转发的组播流量之后,PE3查找组播源Source的最优路由,如果PE3查找到组播源Source的最优路由下一跳是PE1,则PE3向PE1发送源树用户侧组播加入路由。
在步骤S660中,PE1判断源树用户侧组播加入路由是来自PE2还是来自PE3。如果PE1判定源树用户侧组播加入路由来自PE3,则执行步骤S670。
在步骤S670中,PE1向PE2和PE3发送激活组播源自动发现路由。
在步骤S680中,PE2和PE3各自判断自身是否接收到共享树用户侧组播加入路由。接收到激活组播源自动发现路由的PE设备判断是否接收到共享树用户侧组播加入路由。如果判定接收到共享树用户侧组播加入路由,则确定自身没有处于SPT路径上,此时执行步骤S690。
PE2可判定自身接收到共享树用户侧组播加入路由,并且PE3可判定自身没有接收到共享树用户侧组播加入路由。
在步骤S690中,PE2进行剪枝处理,以将转发组播流量的隧道接口剪掉(剪掉沿着PE2转发至PE3的流量)。PE1(源PE设备)和PE3(接收者PE设备)不需要进行剪枝处理。
示例性的,PE2可根据接收到的激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉该隧道接口。可选的,待剪枝PE设备PE2从自身的组播路由表中删除自身用于转发组播流量的隧道接口,从而剪掉自身用于转发组播流量的隧道接口。
该隧道接口为相容性组播服务隧道接口。如果PE2存在本地接收者,则PE2此时为接收者PE设备,故不会剪掉自身的连接本地接收者的普通接口。
因此,在源PE设备接收到来自非RP所发送的源树用户侧组播加入路由的情况下,源PE设备发送激活组播源自动发现路由。由此,在源PE设备接收到源树用户侧组播加入路由时,源PE设备需要先判断源树用户侧组播加入路由的发送方是否为RP所在的PE设备并且根据判断结果来确定是否发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。而非RP的PE设备发送源树用户侧组播加入路由的时间很大可能比RP发送的晚,故与现有技术相比,本公开实施例延迟了激活组播源自动发现路由的发送时机,从而延迟了剪枝操作的时机。
此外,经RPT路径转发的组播流量还需要一段时间才能够转发到接收者PE设备,若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由,根据现有技术或本公开实施例的剪枝操作的触发/判断条件,则会使得在满足剪枝操作的触发/判断条件以进行剪枝操作时,某些通过RPT转发的组播流量可能并未到达接收者PE设备,从而可能导致经RPT路径转发的组播流量无法完成转发即断流。因此,本公开实施例延迟激活组播源自动发现路由的发送时机能够减少断流的发生。
并且,针对图5所示的组网,由于现有技术中的剪枝操作的触发/判断条件包括PE设备没有发送源树用户侧组播加入路由,因此,在现有技术中,PE2不满足剪枝操作的触发/判断条件,这使得PE2无法剪掉自身用于转发组播流量的隧道接口,由此,接收者PE设备PE3接收到沿着RPT路径(即,PE1-PE2-PE3)转发的组播流量和沿着SPT路径(即,PE1-PE3)转发的组播流量这两份组播流量,现有技术无法实现剪掉重复流量,并且也没有将转发组播流量的路径切换为SPT路径。
与之相比,在本公开实施例中,剪枝操作的触发/判断条件包括接收到激活组播源自动发现路由和接收到共享树用户侧组播加入路由,因此本公开实施例的剪枝操作的触发/判断条件不包括PE设备没有发送源树用户侧组播加入路由,因而,在本公开实施例中,PE2满足剪枝操作的触发/判断条件,这使得PE2可以剪掉自身用于转发播组播流量的隧道接口,由此,接收者PE设备PE3仅能接收到沿着SPT路径(即,PE1-PE3)转发的组播流量,本公开可以实现剪掉重复流量,并且还可以将转发组播流量的路径切换为SPT路径。
因此,与现有技术相比,本公开实施例简化了剪枝操作的触发/判断条件,不仅将转发组播流量的路径切换为SPT,并且还使得非SPT上的PE设备例如RP不会向下游PE设备例如接收者PE设备转发组播流量、从而能够及时剪掉重复的流量,能够避免浪费中间链路(例如,由RP向接收者PE设备转发组播流量的链路)的带宽。
图7是RPT与SPT不重合并且沿着选择性组播服务隧道转发组播流量的一种应用场景示意图。如图7所示,该VPN组网包括P、PE1、PE2、PE3、PE4、CE2、CE3和CE4,CE3与PE3相连并且CE3上连接有组播源Source,CE2与PE2相连并且CE2上连接有接收者Receiver,PE2为私网RP,CE4与PE4相连并且CE4上连接有接收者Receiver,因此,PE3为源PE设备、PE2为RP、PE2和PE4为接收者PE设备。针对转发到PE4的组播流量,RPT为PE3-P-PE2-PE4并且SPT为PE3-P-PE4。针对通过PE2转发到CE2的组播流量,RPT和SPT均为PE3-P-PE2,此种情况RPT和SPT重合,可参阅前文针对图3和图4的描述,在此不再赘述。
P、PE1、PE2、PE3、PE4采用如上所述的组网中创建相容性组播服务隧道的方法可以在相邻的两个设备之间创建相容性组播服务隧道,可参阅前文针对图3和图4的描述,在此不再赘述。
图8是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。该流量处理方法可应用于RPT与SPT不重合并且沿着选择性组播服务隧道转发组播流量的场景,结合图7和图8,该流量处理方法可包括如下步骤。
在步骤S801中,在CE4上有接收者Receiver加入时,PE4向PE2发送共享树用户侧组播加入路由。
在步骤S802中,在PE2接收到PE3发送的组播流量时,PE2向PE3发送源树用户侧组播加入路由并且将组播流量沿着PE2与PE3之间的相容性组播服务隧道转发给PE1和PE4。其中,PE2还将组播流量转发至本地接收者CE2。具体可参见上述步骤S420的描述,在此不再赘述。
在步骤S803中,PE3判断源树用户侧组播加入路由是来自PE1、PE2和PE4中的哪一个。如果PE1判定源树用户侧组播加入路由来自PE2,则执行步骤S804。
在步骤S804中,PE3不发送激活组播源自动发现路由。
在步骤S805中,在满足由相容性组播服务隧道向选择性组播服务隧道的切换条件的情况下,PE3向PE1、PE2和PE4发送选择性隧道自动发现路由。由相容性组播服务隧道向选择性组播服务隧道的切换条件可参阅前文的描述,在此不再赘述。
在步骤S806中,在PE4接收到PE2转发的组播流量之后,PE4查找组播源Source的最优路由,如果PE4查找到组播源Source的最优路由下一跳是PE3,则PE4向PE3发送源树用户侧组播加入路由。
在步骤S807中,PE1、PE2和PE4各自判断本地是否存在组播接收者,如果判定本地存在组播接收者,则向PE3发送叶子节点自动发现路由。
PE1判定不存在组播接收者,PE2和PE4判定存在组播接收者,因此PE2和PE4向PE3发送叶子节点自动发现路由。
示例性的,PE1、PE2和PE4接收到选择性隧道自动发现路由后,PE1、PE2和PE4按照选择性隧道自动发现路由所携带的源地址和目的组地址查找本地是否存在组播接收者,PE1没有组播接收者因而不向PE3回应叶子节点自动发现路由,PE2和PE4有组播接收者因而向PE3回应叶子节点自动发现路由。
在步骤S808中,PE3判断源树用户侧组播加入路由是来自PE1、PE2和PE4中的哪一个。如果PE3判定源树用户侧组播加入路由来自PE4,则执行步骤S809。
在步骤S809中,PE3向PE2和PE4发送激活组播源自动发现路由。
在步骤S810中,PE3接收PE2和PE4所发送的叶子节点自动发现路由。
在步骤S811中,PE3将IP地址所标识的PE设备即PE2和PE4确定为选择性组播服务隧道的目的节点。选择性组播服务隧道的目的节点集合为<PE2,PE4>,从而将相容性组播服务隧道切换为选择性组播服务隧道。
在步骤S812中,PE2和PE4各自判断自身是否接收到共享树用户侧组播加入路由。接收到激活组播源自动发现路由的PE设备判断是否接收到共享树用户侧组播加入路由。如果判定接收到共享树用户侧组播加入路由,则确定自身未处于SPT路径上,执行步骤S813。
PE2可判定自身接收到共享树用户侧组播加入路由,并且PE4可判定自身没有接收到共享树用户侧组播加入路由。
在步骤S813中,PE2进行剪枝处理,以将转发组播流量的隧道接口剪掉(剪掉沿着PE2转发至PE4的流量)。具体可参见上述步骤S690的描述,在此不再赘述。
示例性的,PE2可根据接收到的激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉该隧道接口。可选的,待剪枝PE设备PE2从自身的组播路由表中删除自身用于转发组播流量的隧道接口,从而剪掉自身用于转发组播流量的隧道接口。
该隧道接口为选择性组播服务隧道接口。如果PE2存在本地接收者,则PE2此时为接收者PE设备,故不会剪掉自身的连接本地接收者的普通接口。
因此,在源PE设备接收到来自非RP所发送的源树用户侧组播加入路由的情况下,源PE设备发送激活组播源自动发现路由,由此,在源PE设备接收到源树用户侧组播加入路由时,源PE设备需要先判断源树用户侧组播加入路由的发送方是否非为RP并且根据判断结果来确定是否发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。
与现有技术相比,本公开实施例延迟了激活组播源自动发现路由的发送时机,从而延迟了剪枝操作的时机。此外,经RPT路径转发的组播流量还需要一段时间才能够转发到接收者PE设备,若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由,根据现有技术的剪枝操作的触发/判断条件,无法实现延迟激活组播源自动发现路由的发送时机,这使得在满足剪枝操作的触发/判断条件以进行剪枝操作时可能还没有完成经RPT路径转发的组播流量就剪掉RPT路径,从而可能导致经RPT路径转发的组播流量无法完成转发即断流。因此,本公开实施例延迟激活组播源自动发现路由的发送时机能够减少断流的发生。
并且,针对图7所示的组网,由于现有技术中的剪枝操作的触发/判断条件包括PE设备没有发送源树用户侧组播加入路由,因此,在现有技术中,PE2不满足剪枝操作的触发/判断条件,这使得PE2无法剪掉自身用于转发组播流量的隧道接口,由此,接收者PE设备PE4接收到沿着RPT路径(即,PE3-PE2-PE4)转发的组播流量和沿着SPT路径(即,PE3-PE4)转发的组播流量这两份组播流量,现有技术无法实现剪掉重复流量,并且也没有将转发组播流量的路径切换为SPT路径。
与之相比,在本公开实施例中,剪枝操作的触发/判断条件为PE设备接收到激活组播源自动发现路由和接收到共享树用户侧组播加入路由,因此本公开实施例的剪枝操作的触发/判断条件不包括PE设备没有发送源树用户侧组播加入路由,因而,在本公开实施例中,PE2满足剪枝操作的触发/判断条件,这使得PE2可以剪掉自身用于转发播组播流量的隧道接口,由此,接收者PE设备PE4仅能接收到沿着SPT路径(即,PE3-PE4)转发的组播流量,本公开可以实现剪掉重复流量,并且还可以将转发组播流量的路径切换为SPT路径。
因此,与现有技术相比,本公开实施例简化了切换条件,不仅将转发组播流量的路径切换为SPT,并且还使得非SPT上的PE设备例如RP不会向下游PE设备例如接收者PE设备转发组播流量、从而能够及时剪掉重复流量,能够避免浪费中间链路(例如,由RP向接收者PE设备转发组播流量的链路)的带宽。
图9是VPN组网中存在路由反射器RR的一种应用场景示意图。如图9所示,该VPN组网包括RR、PE1、PE2、PE3、PE4、CE2和CE4,CE2与PE2相连并且CE2上连接有组播源Source,CE4与PE4相连并且CE4上连接有接收者Receiver,PE3为私网RP,因此,PE2为源PE设备、PE3为RP、PE4为接收者PE设备,RPT为PE2-RR-PE3-RR-PE4并且SPT为PE2-RR-PE4。
RR、PE1、PE2、PE3、PE4采用如上所述的组网中创建相容性组播服务隧道的方法可以在相邻的两个设备之间创建相容性组播服务隧道,可参阅前文针对图3和图4的描述,在此不再赘述。
图10是根据一示例性实施例示出的一种流量处理方法的一个示例的流程图。该流量处理方法可应用于VPN组网中存在路由反射器RR的场景,结合图9和图10,该流量处理方法可包括如下步骤。
在步骤S1001中,在CE4上有接收者Receiver加入时,PE4向RR发送共享树用户侧组播加入路由。
在步骤S1002中,RR将PE4所发送的共享树用户侧组播加入路由转发至PE1、PE2和PE3。
在步骤S1003中,在PE3接收到组播流量时,PE3向RR发送源树用户侧组播加入路由并且将组播流量沿着相容性组播服务隧道转发给PE4。具体可参见上述步骤S420的描述,在此不再赘述。
在步骤S1004中,RR将PE3所发送的源树用户侧组播加入路由转发至PE1、PE2和PE4。
在步骤S1005中,PE2判断源树用户侧组播加入路由是来自PE1、PE3和PE4中的哪一个。如果PE2判定源树用户侧组播加入路由来自PE3,则执行步骤S1006。
在步骤S1006中,PE2不发送激活组播源自动发现路由。
在步骤S1007中,PE4查找组播源Source的最优路由,如果PE4查找到组播源Source的最优路由下一跳是PE2,则PE4向RR发送源树用户侧组播加入路由。
在步骤S1008中,RR将接收到的源树用户侧组播加入路由转发至PE1、PE2和PE3。
RR收到源树用户侧组播加入路由会进行路由优选,并将优选后的路由通知给其它PE设备,可以通过配置路由策略或路由优先级或其他方式使得对于前缀相同的源树用户侧组播加入路由,RR每次都优选来自非RP的路由,PE2接收到源树用户侧组播加入路由,能够根据路由下一跳地址判断出源树用户侧组播加入路由的发送方是非RP,PE2立即发送激活组播源自动发现路由。此时,通过RR对来自RP的源树用户侧组播路由进行阻挡过滤,可减少组网中不必要的路由发送,节省网络资源。
在步骤S1009中,PE2判断源树用户侧组播加入路由是来自PE1、PE3和PE4中的哪一个。如果PE2判定源树用户侧组播加入路由来自PE4,则执行步骤S1010。
在步骤S1010中,PE2向RR发送激活组播源自动发现路由并且RR向PE1、PE3和PE4转发激活组播源自动发现路由。
在步骤S1011中,PE1、PE3和PE4各自判断自身是否接收到共享树用户侧组播加入路由。如果判定自身接收到共享树用户侧组播加入路由,则确定自身未处于SPT路径上,执行步骤S1012。
PE1、PE3可判定自身接收到共享树用户侧组播加入路由,并且PE4可判定自身没有接收到共享树用户侧组播加入路由。由于PE1没有接收者,因此PE1不存在用于转发组播流量的隧道接口,自然也就不存在是否进行剪切操作。但转发到PE1的组播流量会被PE1丢弃,因此会造成公网带宽的浪费。故在该实施例中,可选择将相容性组播服务隧道切换到选择性组播服务隧道,以减少公网带宽的浪费。可选的,在满足相容性组播服务隧道切换到选择性组播服务隧道切换的切换条件的情况下,PE2可以将相容性组播服务隧道切换为选择性组播服务隧道,采用切换后的选择性组播服务隧道转发组播流量。
在步骤S1012中,PE3进行剪枝处理,以将转发组播流量的隧道接口剪掉(剪掉沿着PE3转发至PE4的流量)。具体可参见上述步骤S690的描述,在此不再赘述。
该隧道接口为相容性组播服务隧道接口。如果PE3存在本地接收者,则PE3此时为接收者PE设备,故不会剪掉自身的连接本地接收者的普通接口。
若PE2将相容性组播服务隧道切换为选择性组播服务隧道,则该隧道接口为选择性组播服务隧道接口。
因此,在源PE设备接收到来自非RP所发送的源树用户侧组播加入路由的情况下,源PE设备发送激活组播源自动发现路由,由此,在源PE设备接收到源树用户侧组播加入路由时,源PE设备需要先判断源树用户侧组播加入路由的发送方是否为RP并且根据判断结果来确定是否发送激活组播源自动发现路由,而非现有技术中的若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由。
与现有技术相比,本公开实施例延迟了激活组播源自动发现路由的发送时机,从而延迟了剪枝操作的时机。此外,经RPT路径转发的组播流量还需要一段时间才能够转发到接收者PE设备,若源PE设备接收到源树用户侧组播加入路由就会发送激活组播源自动发现路由,根据现有技术的剪枝操作的触发/判断条件,无法实现延迟激活组播源自动发现路由的发送时机,这使得在满足剪枝操作的触发/判断条件以进行剪枝操作时、可能还没有完成经RPT路径转发的组播流量就剪掉RPT路径,从而可能导致经RPT路径转发的组播流量无法完成转发即断流。因此,本公开实施例延迟激活组播源自动发现路由的发送时机能够减少断流的发生。
并且,针对图9所示的组网,由于现有技术中的剪枝操作的触发/判断条件包括PE设备没有发送源树用户侧组播加入路由,因此,在现有技术中,PE3不满足剪枝操作的触发/判断条件,这使得PE3无法剪掉自身用于转发组播流量的隧道接口,由此,接收者PE设备PE4接收到沿着RPT路径(即,PE2-RR-PE3-RR-PE4)转发的组播流量和沿着SPT路径(即,PE2-RR-PE4)转发的组播流量这两份组播流量,现有技术无法实现剪掉重复流量,并且也没有将转发组播流量的路径切换为SPT路径。
与之相比,在本公开实施例中,剪枝操作的触发/判断条件为PE设备接收到激活组播源自动发现路由和接收到共享树用户侧组播加入路由,因此本公开实施例的剪枝操作的触发/判断条件不包括PE设备没有发送源树用户侧组播加入路由,因而,在本公开实施例中,PE3满足剪枝操作的触发/判断条件,这使得PE3可以剪掉自身用于转发播组播流量的隧道接口,由此,接收者PE设备PE4仅能接收到沿着SPT路径(即,PE2-RR-PE4)转发的组播流量,本公开实施例可以实现剪掉重复流量,并且还可以将转发组播流量的路径切换为SPT路径。
因此,与现有技术相比,本公开实施例简化了剪枝操作的触发/判断条件,不仅将转发组播流量的路径切换为SPT,并且还使得非SPT上的PE设备例如RP不会向下游PE设备例如接收者PE设备转发组播流量、从而能够及时剪掉重复流量,能够避免浪费中间链路(例如,由RP向接收者PE设备转发组播流量的链路)的带宽。
图11是根据一示例性实施例示出的一种流量处理装置1100的结构框图。该流量处理装置1100可以应用于组播虚拟专用网MVPN组网,该流量处理装置1100可以包括判断模块1110和发送模块1130。判断模块1110和发送模块1130可由软件和/或硬件实现,判断模块1110和发送模块1130可集成在用于提供流量处理服务的通信设备或系统中,可通过执行流量处理方法来进行流量处理。可选的,判断模块1110和发送模块1130可以被配置在源PE设备中。
其中,判断模块1110用于在组网中的源PE设备接收到源树用户侧组播加入路由的情况下,判断源树用户侧组播加入路由是否来自组网中的汇聚点RP。发送模块1130用于在判定源树用户侧组播加入路由来自RP的情况下,不发送激活组播源自动发现路由。
在一种可能的实现方式中,发送模块1130还用于在判定源树用户侧组播加入路由来自除汇聚点RP之外的PE设备的情况下,发送激活组播源自动发现路由。
图12是根据一示例性实施例示出的一种流量处理装置1200的结构框图。该流量处理装置1200可以应用于组播虚拟专用网MVPN组网,该流量处理装置1200可以包括判断模块1210、发送模块1230、第一接收模块1250和判定模块1270。该装置的各模块可由软件和/或硬件实现,该装置的各模块可集成在用于提供流量处理服务的通信设备或系统中,可通过执行流量处理方法来进行流量处理。可选的,判断模块1110和发送模块1130可以被配置在源PE设备中,第一接收模块1250和判定模块1270可以被配置在待剪枝PE设备中。
判断模块1210和发送模块1230的说明可以参阅前文针对图11的描述。第一接收模块1250用于控制待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由,其中,待剪枝PE设备为接收到激活组播源自动发现路由的设备;判定模块1270用于在确定待剪枝PE设备判定自身接收到共享树用户侧组播加入路由的情况下,控制待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。
在一种可能的实现方式中,判定模块1270用于控制待剪枝PE设备根据激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉该隧道接口。可选的,待剪枝PE设备从自身的组播路由表中删除自身用于转发组播流量的隧道接口,从而剪掉自身用于转发组播流量的隧道接口。
图13是根据一示例性实施例示出的一种流量处理装置1300的结构框图。该流量处理装置1300可以应用于组播虚拟专用网MVPN组网,该流量处理装置1300可以包括判断模块1310、发送模块1330、检测模块1350、第二接收模块1370和确定模块1390。该装置的各模块可由软件和/或硬件实现,该装置的各模块可集成在用于提供流量处理服务的通信设备或系统中,可通过执行流量处理方法来进行流量处理。可选的,判断模块1310、发送模块1330、检测模块1350、第二接收模块1370和确定模块1390可以被配置在源PE设备中。
判断模块1310和发送模块1330的说明可以参阅前文针对图11的描述。
检测模块1350用于检测是否满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件,在检测模块1350检测到满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件的情况下,发送模块1330发送选择性隧道自动发现路由。第二接收模块1370用于接收根据选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由。确定模块1390用于将发送叶子节点自动发现路由的PE设备确定为选择性组播服务隧道的目的节点。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开某些实施例还可提供一种流量处理系统,该系统可以为图1、3、5、7和9中的任一系统,该系统所包括的任一设备的具体描述可参阅前文针对这些图的工作原理的说明,在此不再赘述。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (8)
1.一种流量处理方法,应用于组播虚拟专用网MVPN组网,其特征在于,包括:
在所述组网中的源PE设备接收到源树用户侧组播加入路由的情况下,所述源PE设备判断所述源树用户侧组播加入路由是否来自所述组网中的汇聚点RP;
在判定所述源树用户侧组播加入路由来自所述汇聚点RP的情况下,所述源PE设备不发送激活组播源自动发现路由;
在判定所述源树用户侧组播加入路由来自除所述汇聚点RP之外的PE设备的情况下,所述源PE设备发送所述激活组播源自动发现路由。
2.根据权利要求1所述的流量处理方法,其特征在于,
接收到所述激活组播源自动发现路由的待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由;
在判定自身接收到所述共享树用户侧组播加入路由的情况下,所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。
3.根据权利要求2所述的流量处理方法,其特征在于,所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口包括:所述待剪枝PE设备根据所述激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发组播流量的隧道接口,并剪掉所述隧道接口。
4.根据权利要求1所述的流量处理方法,其特征在于,还包括:
当所述源PE设备检测到满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件时,所述源PE设备发送选择性隧道自动发现路由;
所述源PE设备接收根据所述选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由;所述源PE设备将发送所述叶子节点自动发现路由的PE设备确定为所述选择性组播服务隧道的目的节点。
5.一种流量处理装置,应用于组播虚拟专用网MVPN组网,其特征在于,包括:
判断模块,用于在所述组网中的源PE设备接收到源树用户侧组播加入路由的情况下,判断所述源树用户侧组播加入路由是否来自所述组网中的汇聚点RP;
发送模块,用于在判定所述源树用户侧组播加入路由来自所述汇聚点RP的情况下,不发送激活组播源自动发现路由;
所述发送模块还用于在判定所述源树用户侧组播加入路由来自除所述汇聚点RP之外的PE设备的情况下,发送所述激活组播源自动发现路由。
6.根据权利要求5所述的流量处理装置,其特征在于,还包括:
第一接收模块,用于控制待剪枝PE设备判断自身是否接收到共享树用户侧组播加入路由,其中,所述待剪枝PE设备为接收到所述激活组播源自动发现路由的设备;
判定模块,用于在确定所述待剪枝PE设备判定自身接收到所述共享树用户侧组播加入路由的情况下,控制所述待剪枝PE设备剪掉自身用于转发组播流量的隧道接口。
7.根据权利要求6所述的流量处理装置,其特征在于,所述判定模块用于:控制所述待剪枝PE设备根据所述激活组播源自动发现路由中的组播流量的源地址和目的组地址确定转发所述组播流量的隧道接口,并剪掉所述隧道接口。
8.根据权利要求5所述的流量处理装置,其特征在于,还包括:
检测模块,用于检测是否满足相容性组播服务隧道切换到选择性组播服务隧道的切换条件,在所述检测模块检测到满足所述相容性组播服务隧道切换到所述选择性组播服务隧道的切换条件的情况下,所述发送模块发送选择性隧道自动发现路由;
第二接收模块,用于接收根据所述选择性隧道自动发现路由确定本地存在组播接收者的PE设备发送的叶子节点自动发现路由;
确定模块,用于将发送所述叶子节点自动发现路由的PE设备确定为所述选择性组播服务隧道的目的节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710652346.3A CN107547350B (zh) | 2017-08-02 | 2017-08-02 | 流量处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710652346.3A CN107547350B (zh) | 2017-08-02 | 2017-08-02 | 流量处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547350A CN107547350A (zh) | 2018-01-05 |
CN107547350B true CN107547350B (zh) | 2020-09-08 |
Family
ID=60971335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710652346.3A Active CN107547350B (zh) | 2017-08-02 | 2017-08-02 | 流量处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547350B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113132230A (zh) * | 2019-12-31 | 2021-07-16 | 北京华为数字技术有限公司 | 发送报文的方法、设备及计算机存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035063A (zh) * | 2006-03-07 | 2007-09-12 | 华为技术有限公司 | 组播流转发方法及其路由器和系统 |
CN101631274A (zh) * | 2009-07-28 | 2010-01-20 | 北京交通大学 | 基于标识的组播路由实现系统及其方法 |
CN101789874A (zh) * | 2009-12-15 | 2010-07-28 | 福建星网锐捷网络有限公司 | 一种在pim-sm中实现组播树切换的方法、装置及路由设备 |
CN101808004A (zh) * | 2010-03-23 | 2010-08-18 | 中兴通讯股份有限公司 | 一种实现任意播汇聚点机制的方法和系统 |
CN103401788A (zh) * | 2013-07-30 | 2013-11-20 | 杭州华三通信技术有限公司 | 一种spt建立方法和设备 |
CN104378217A (zh) * | 2014-11-26 | 2015-02-25 | 中国联合网络通信集团有限公司 | 确定组播组数据的方法及装置 |
CN106357541A (zh) * | 2016-09-09 | 2017-01-25 | 杭州华三通信技术有限公司 | 一种信息传递方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7453807B2 (en) * | 2002-06-04 | 2008-11-18 | Lucent Technologies Inc. | Efficient rendezvous point tree to shortest path tree switch-over process |
-
2017
- 2017-08-02 CN CN201710652346.3A patent/CN107547350B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035063A (zh) * | 2006-03-07 | 2007-09-12 | 华为技术有限公司 | 组播流转发方法及其路由器和系统 |
CN101631274A (zh) * | 2009-07-28 | 2010-01-20 | 北京交通大学 | 基于标识的组播路由实现系统及其方法 |
CN101789874A (zh) * | 2009-12-15 | 2010-07-28 | 福建星网锐捷网络有限公司 | 一种在pim-sm中实现组播树切换的方法、装置及路由设备 |
CN101808004A (zh) * | 2010-03-23 | 2010-08-18 | 中兴通讯股份有限公司 | 一种实现任意播汇聚点机制的方法和系统 |
CN103401788A (zh) * | 2013-07-30 | 2013-11-20 | 杭州华三通信技术有限公司 | 一种spt建立方法和设备 |
CN104378217A (zh) * | 2014-11-26 | 2015-02-25 | 中国联合网络通信集团有限公司 | 确定组播组数据的方法及装置 |
CN106357541A (zh) * | 2016-09-09 | 2017-01-25 | 杭州华三通信技术有限公司 | 一种信息传递方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107547350A (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7925778B1 (en) | Method and apparatus for providing multicast messages across a data communication network | |
US8218429B2 (en) | Method and device for multicast traffic redundancy protection | |
EP3151488B1 (en) | Multicast only fast re-route over remote loop-free alternate backup path | |
US7848224B2 (en) | Method and apparatus for constructing a repair path for multicast data | |
US7899049B2 (en) | Methods and apparatus for minimizing duplicate traffic during point to multipoint tree switching in a network | |
US20070147372A1 (en) | Method for Implementing Multicast in Virtual Router-Based Virtual Private Network | |
US8619774B2 (en) | Method and apparatus for providing multicast messages within a virtual private network across a data communication network | |
US6879594B1 (en) | System and method for loop avoidance in multi-protocol label switching | |
CN102148745B (zh) | 提高虚拟专用局域网业务网络转发效率的方法和系统 | |
CN102137000B (zh) | 一种建立切换组播分发树的方法、装置及系统 | |
US7398322B1 (en) | System using routing bridges to transparently interconnect multiple network links to form a single virtual network link | |
US9521072B2 (en) | Method and network device for distributing multi-protocol label switching labels | |
WO2009056023A1 (fr) | Procédé, réseau et routeur de multidiffusion pour établir le voisin pim et participer à la multidiffusion | |
CN104937878B (zh) | 在单向隧道存在的情况下建立协议无关多播树的方法 | |
WO2013139234A1 (zh) | 一种组播传输方法、装置和网络系统 | |
CN101163103A (zh) | 一种实现快速重路由的方法 | |
CN107547377B (zh) | 一种组播流量传输方法和装置 | |
CN107547350B (zh) | 流量处理方法及装置 | |
CN107547337B (zh) | 隧道切换方法、叶子节点自动发现路由发送方法和装置 | |
CN103634210B (zh) | 发现vpls实例的对端pe设备的方法及设备 | |
CA2376690A1 (en) | System and method for loop avoidance in multi-protocol label switching | |
EP3151489A1 (en) | Mldp multicast only fast re-route over remote loop-free alternate backup path | |
CN102404218B (zh) | 一种隧道切换方法及装置 | |
CN111565149B (zh) | 一种在ldp rlfa frr场景下远端会话保活的方法及装置 | |
EP3907940B1 (en) | Ingress replication procedures to facilitate migration to segment routing technology in a computer network |
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 |