一种组播的方法及路由设备转让专利

申请号 : CN201811348150.6

文献号 : CN111181855B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 廖婷张俊钱小兵蒋文斌孙北锋

申请人 : 北京华为数字技术有限公司

摘要 :

本申请实施例公开了一种组播的方法及路由设备,方法包括:当第一路由设备上有组播组接入时,所述第一路由设备为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;所述第一路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之后,所述第一路由设备接收通过所述隧道转发的组播数据;其中,所述第二路由设备为所述组播组的源接入节点设备。采用本申请实施例,可实现组播业务在SR网络中的灵活承载,充分发挥SR网络的工作效率。

权利要求 :

1.一种组播的方法,其特征在于,包括:当第一路由设备上有组播组接入时,所述第一路由设备为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;

所述第一路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;

当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之后,所述第一路由设备接收通过所述隧道转发的组播数据;

其中,所述第二路由设备为所述组播组的源接入节点设备;

所述第一路由设备为所述组播组分配组播分段标识时,根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识的映射关系;或者接收所述其他路由设备在所述组播组接入时通告的携带组播分段标识的报文,当所述组播组接入所述第一路由设备时,为所述组播组分配相同的组播分段标识。

2.根据权利要求1所述的方法,其特征在于,所述报文的报文格式中包含一个组播标识字段;或者

所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型。

3.根据权利要求1或2所述的方法,其特征在于,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者

所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道。

4.一种组播的方法,其特征在于,包括:第二路由设备接收第一路由设备通告的携带组播分段标识的报文,所述组播分段标识是在所述组播组接入所述第一路由设备时,由所述第一路由设备根据预设组播映射表或者根据接收到的其他路由设备在所述组播组接入时通告的携带组播分段标识的报文为所述组播组分配,并通过所述报文在分段路由域中通告,所述组播分段标识用于指示当前承载的业务为组播业务;

所述第二路由设备根据所述报文创建用于承载组播数据的隧道;

所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备;

其中,所述第二路由设备为所述组播组的源接入节点设备。

5.根据权利要求4所述的方法,其特征在于,所述报文的报文格式中包含一个组播标识字段;或者所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型;

所述第二路由设备根据所述报文创建用于承载组播数据的隧道,包括:所述第二路由设备根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。

6.根据权利要求4所述的方法,其特征在于,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者

所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道,其中所述P2MP隧道下创建了通过所述第一路由设备到所述组播分段标识的标签交换路径LSP。

7.根据权利要求6所述的方法,其特征在于,若需要在所述P2MP隧道中指定路径,则将指定路径信息的LSP保存在分段路由的标签栈中。

8.根据权利要求4‑7任一项所述的方法,其特征在于,所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备之前,还包括:所述第二路由设备配置组播组转发表项,所述组播组转发表项的出接口为所述隧道,或所述隧道的多个LSP。

9.根据权利要求8所述的方法,其特征在于,当有组播组发生变化时,所述第二路由设备根据组播组的变化改变相应的隧道,所述变化包括更新或删除。

10.一种路由设备,其特征在于,包括:处理单元,用于当路由设备上有组播组接入时,为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;

收发单元,用于将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;以及当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之后,所述路由设备接收通过所述隧道转发的组播数据;

其中,所述第二路由设备为所述组播组的源接入节点设备;

所述处理单元具体用于:

根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识的映射关系;或者通过所述收发单元接收所述其他路由设备在所述组播组接入时通告的携带组播分段标识的报文,当所述组播组接入所述路由设备时,为所述组播组分配相同的组播分段标识。

11.根据权利要求10所述的路由设备,其特征在于,所述报文的报文格式中包含一个组播标识字段;或者

所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型。

12.根据权利要求10或11所述的路由设备,其特征在于,所述隧道是目的地址为所述路由设备的单播分段路由隧道;或者所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道。

13.一种路由设备,其特征在于,包括:收发单元,用于接收第一路由设备通告的携带组播分段标识的报文,所述组播分段标识是在所述组播组接入所述第一路由设备时,由所述第一路由设备根据预设组播映射表或者根据接收到的其他路由设备在所述组播组接入时通告的携带组播分段标识的报文为所述组播组分配,并通过所述报文在分段路由域中通告,所述组播分段标识用于指示当前承载的业务为组播业务;

处理单元,用于根据所述报文创建用于承载组播数据的隧道;

所述收发单元还用于通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备;

其中,所述路由设备为所述组播组的源接入节点设备。

14.根据权利要求13所述的路由设备,其特征在于,所述报文的报文格式中包含一个组播标识字段;或者所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型;

所述处理单元具体用于:

根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。

15.根据权利要求14所述的路由设备,其特征在于,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道,其中所述P2MP隧道下创建了通过所述第一路由设备到所述组播分段标识的标签交换路径LSP。

16.根据权利要求15所述的路由设备,其特征在于,所述处理单元还用于:若需要在所述P2MP隧道中指定路径,则将指定路径信息的LSP保存在分段路由的标签栈中。

17.根据权利要求13‑16任一项所述的路由设备,其特征在于,所述处理单元还用于:配置组播组转发表项,所述组播组转发表项的出接口为所述隧道,或所述隧道的多个LSP。

18.根据权利要求17所述的路由设备,其特征在于,所述处理单元还用于:当有组播组发生变化时,所述路由设备根据组播组的变化改变相应的隧道,所述变化包括更新或删除。

19.一种路由设备,其特征在于,包括:处理器、存储器和总线,所述处理器和存储器通过总线连接,其中,所述存储器用于存储一组程序代码,所述处理器用于调用所述存储器中存储的程序代码,执行如权利要求1‑3任一项所述的步骤。

20.一种路由设备,其特征在于,包括:处理器、存储器和总线,所述处理器和存储器通过总线连接,其中,所述存储器用于存储一组程序代码,所述处理器用于调用所述存储器中存储的程序代码,执行如权利要求4‑9任一项所述的步骤。

说明书 :

一种组播的方法及路由设备

技术领域

[0001] 本申请涉及通信技术领域,尤其涉及一种组播的方法及路由设备。

背景技术

[0002] 随着多协议标签交换(Multi‑Protocol Label Switching,简称MPLS)相关标准的逐渐成熟,网络电视和视频会议等网络多媒体应用的使用日益广泛。在MPLS网络中,分段路
由(Segment Routing,简称SR)作为一种新型的技术具有非常广阔的发展前景。其在控制面
通过内部网关协议(Interior Gateway Protocol,Interior Gateway Protocol,简称
IGP)、边界网关协议(Border Gateway Protocol,简称BGP)来通告全局标签,在数据面通过
MPLS或者IPv6报文头扩展来携带数据报文。简化了现有MPLS标签分发协议(Label 
Distribution Protocol,简称LDP)及针对流量工程扩展的资源预留协议(Resource 
Reservation Protocol‑Traffic Engineering,简称RSVP TE)的实现,减少了资源占用。但
是当前更多的应用在单播数据报文的传输上。
[0003] 如果能在MPLS网络中利用组播技术来支持点到多点、多点到多点通信,则可以减少带宽消耗,提高服务质量。对于组播数据报文的传输,现有技术中需要根据组播组接入情
况预先计算一颗剪枝的多播分配树(multicast distribution tree,简称MDT)具体可通过
在IGP协议中扩展协议无关组播(Protocol Independent Multicast,简称PIM)的状态机来
对MDT进行剪枝,然后为MDT分配一个或多个分段标识(Segment Identification,简称
SID),该SID与常规单播SID格式相同。因此,在控制层面,需要IGP扩展PIM的状态机来做处
理,在转发层面,需要根据转发表以及SID和隧道(tunnel)来做转发,其中隧道用于指定报
文的整个传输路径,这样使得中间转发节点需要维护组播组状态,转发表项亦需要进行相
应感知,使得组播报文的转发过程相当复杂,与SR协议设计的初衷相悖。

发明内容

[0004] 本申请实施例所要解决的技术问题在于,提供一种组播的方法及路由设备,以实现组播业务在SR网络中的灵活承载。
[0005] 第一方面,本申请的实施例提供了一种组播的方法,可包括:
[0006] 当第一路由设备上有组播组接入时,所述第一路由设备为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;
[0007] 所述第一路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;
[0008] 当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之后,所述第一路由设备接收通过所述隧道转发的组播数据;
[0009] 其中,所述第二路由设备为所述组播组的源接入节点设备。
[0010] 通过改造组播SID,使得多个路由设备在相同组播组接入时采用相同的组播SID,并且源接入节点设备也根据该组播SID创造隧道来承载和转发组播数据,从而简化了组播
业务的承载,利用充分发挥SR网络的工作效率。
[0011] 在一种可能的实现方式中,所述报文的报文格式中包含一个组播标识字段;或者
[0012] 所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型。
[0013] 通过对报文的改造可以实现组播SID用于指示当前承载的业务为组播业务,与现有的单播SID进行区分。
[0014] 在一种可能的实现方式中,所述第一路由设备为所述组播组分配组播分段标识时,
[0015] 根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识的映射关系;或者
[0016] 接收所述其他路由设备在所述组播组接入时通告的携带组播分段标识的报文,当所述组播组接入所述第一路由设备时,为所述组播组分配相同的组播分段标识。
[0017] 在一种可能的实现方式中,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0018] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道。
[0019] 在一种可能的实现方式中,所述组播SID中包含组播组的IP地址信息。
[0020] 第二方面,本申请的实施例提供了一种组播的方法,包括:
[0021] 第二路由设备接收第一路由设备通告的携带组播分段标识的报文,所述组播分段标识是在所述组播组接入所述第一路由设备时,由所述第一路由设备为所述组播组分配并
通过所述报文在分段路由域中通告,所述组播分段标识用于指示当前承载的业务为组播业
务;
[0022] 所述第二路由设备根据所述报文创建用于承载组播数据的隧道;
[0023] 所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备;
[0024] 其中,所述第二路由设备为所述组播组的源接入节点设备。
[0025] 在一种可能的实现方式中,
[0026] 所述报文的报文格式中包含一个组播标识字段;或者所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型;
[0027] 所述第二路由设备根据所述报文创建用于承载组播数据的隧道,包括:
[0028] 所述第二路由设备根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。
[0029] 在一种可能的实现方式中,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0030] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道,其中所述P2MP隧道下创建了通过所述第一路由设备到所述组播分段标识的标签交换路径
LSP。
[0031] 在一种可能的实现方式中,若需要在所述P2MP隧道中指定路径,则将指定路径信息的LSP保存在分段路由的标签栈中。
[0032] 在一种可能的实现方式中,所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备之前,还包括:
[0033] 所述第二路由设备配置组播组转发表项,所述组播组转发表项的出接口为所述隧道,或所述隧道的多个LSP。
[0034] 在一种可能的实现方式中,当有组播组发生变化时,所述第二路由设备根据组播组的变化改变相应的隧道,所述变化包括更新或删除。
[0035] 第三方面,本申请的实施例提供了一种路由设备,可包括:
[0036] 处理单元,用于当路由设备上有组播组接入时,为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;
[0037] 收发单元,用于将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;以及当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之后,所
述第一路由设备接收通过所述隧道转发的组播数据;
[0038] 其中,所述第二路由设备为所述组播组的源接入节点设备。
[0039] 在一种可能的实现方式中,
[0040] 所述报文的报文格式中包含一个组播标识字段;或者
[0041] 所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型。
[0042] 在一种可能的实现方式中,所述处理单元具体用于:
[0043] 根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识的映射关系;或者
[0044] 通过所述收发单元接收所述其他路由设备在所述组播组接入时通告的携带组播分段标识的报文,当所述组播组接入所述第一路由设备时,为所述组播组分配相同的组播
分段标识。
[0045] 在一种可能的实现方式中,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0046] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道。
[0047] 第四方面,本申请实施例提供了一种路由设备,可包括:
[0048] 收发单元,用于接收第一路由设备通告的携带组播分段标识的报文,所述组播分段标识是在所述组播组接入所述第一路由设备时,由所述第一路由设备为所述组播组分配
并通过所述报文在分段路由域中通告,所述组播分段标识用于指示当前承载的业务为组播
业务;
[0049] 处理单元,用于根据所述报文创建用于承载组播数据的隧道;
[0050] 所述收发单元还用于通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备;
[0051] 其中,所述路由设备为所述组播组的源接入节点设备。
[0052] 在一种可能的实现方式中,所述报文的报文格式中包含一个组播标识字段;或者所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型;
[0053] 所述处理单元具体用于:
[0054] 根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。
[0055] 在一种可能的实现方式中,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0056] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道,其中所述P2MP隧道下创建了通过所述第一路由设备到所述组播分段标识的标签交换路径
LSP。
[0057] 在一种可能的实现方式中,所述处理单元还用于:
[0058] 若需要在所述P2MP隧道中指定路径,则将指定路径信息的LSP保存在分段路由的标签栈中。
[0059] 在一种可能的实现方式中,所述处理单元还用于:
[0060] 配置组播组转发表项,所述组播组转发表项的出接口为所述隧道,或所述隧道的多个LSP。
[0061] 在一种可能的实现方式中,所述处理单元还用于:
[0062] 当有组播组发生变化时,所述第二路由设备根据组播组的变化改变相应的隧道,所述变化包括更新或删除。
[0063] 第五方面,本申请的实施例提供了一种路由设备,可包括:
[0064] 处理器、存储器和总线,所述处理器和存储器通过总线连接,其中,所述存储器用于存储一组程序代码,所述处理器用于调用所述存储器中存储的程序代码,执行本申请实
施例第一方面或第一方面任一实现方式中的步骤。
[0065] 第六方面,本申请的实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,实现上述第一方面或第一方面任一实现方
式所述的方法。
[0066] 第七方面,本申请的实施例提供了一种路由设备,可包括:
[0067] 处理器、存储器和总线,所述处理器和存储器通过总线连接,其中,所述存储器用于存储一组程序代码,所述处理器用于调用所述存储器中存储的程序代码,执行本申请实
施例第二方面或第二方面任一实现方式中的步骤。
[0068] 第八方面,本申请的实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,实现上述第二方面或第二方面任一实现方
式所述的方法。

附图说明

[0069] 为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
[0070] 图1为本申请实施例提供的一种MPLS组播的系统架构示意图;
[0071] 图2为本申请实施例提供的一种组播的方法的流程示意图;
[0072] 图3为本申请实施例提供的另一种组播的方法的流程示意图;
[0073] 图4为本申请实施例提供的一种路由设备的组成示意图;
[0074] 图5为本申请实施例提供的另一种路由设备的组成示意图;
[0075] 图6为本申请实施例提供的又一种路由设备的组成示意图;
[0076] 图7为本申请实施例提供的又一种路由设备的组成示意图。

具体实施方式

[0077] 下面结合本申请实施例中的附图对本申请的实施例进行描述。
[0078] 本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产
品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或
可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0079] 请参见图1,图1为本申请实施例提供的一种MPLS组播的系统架构示意图;该系统可以包括但不限于由若干路由设备组成的分段路由域(SR Domain)。其中,图1所述的路由
设备R1‑R6均为支持SR的节点设备,如果有组播接入,这些节点设备都具备网际组管理协议
(Internet Group Management Protocol,IGMP)组播识别能力。根据其在分段路由域中的
位置,可具体分为源接入节点设备、中间节点设备和出节点设备。例如,路由设备R6接入了
两个组播组G1和G2。在图1表示为(*,G1)和(*,G2),*可表示出节点设备。路由设备R5接入了
一个组播组G1,可表示为(*,G1)。R2为组播组G1的源接入节点设备,可表示(S,G1),S表示源
接入节点设备;R1为组播组G2的源接入节点设备,可表示为(S,G2)。R3和R4可以作为中间节
点设备。可选地,当R3上有组播组G1接入时,R3也可以变为出节点设备。当需要对G2进行组
播时,R5和R6可以为G2分配相同的组播SID,可以由R1创建目的地址为R5和R6的两条单播分
段路由隧道,或者创建目的地址为组播组IP地址或组播SID的点到多点(point 2 multiple 
point,简称P2MP)隧道,将组播数据通过创建的隧道分发给R5和R6,此时,R5和R6为出节点
设备,隧道中组播数据途径的节点设备可视为中间节点设备。
[0080] 下面结合图2‑图3对本申请组播的方法进行详细描述。
[0081] 请参见图2,图2为本申请实施例提供的一种组播的方法的流程示意图;为了体现组播的实现,在本申请实施例中一个组播组同时接入第一路由设备和第三路由设备,且第
二路由设备为源接入节点设备,该方法具体包括如下步骤:
[0082] S201.当第一路由设备上有组播组接入时,所述第一路由设备为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务。
[0083] S202.所述第一路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备。
[0084] S203.当第三路由设备上有所述组播组接入时,所述第三路由设备为所述组播组分配与所述第一路由设备相同的组播分段标识。
[0085] S204.所述第三路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备。
[0086] 可结合图1进行举例说明,如第一路由设备为图1中的R6,第三路由设备为图1中的R5,第二路由设备为图1中的R1。当R6上有组播组接入时,如组播组G1、G2接入,G1、G2为不同
组播组地址,R6给G1分配一个组播SID如Prefix SID1,给G2分配一个另一个组播SID 
Prefix SID2。相对于常规的单播SID相比,可以对报文格式三元组(Type‑length‑value,
tlv)三元组进行重配置。其中T、L字段的长度往往固定(通常为1~4bytes),V字段长度可
变。其中,T字段表示报文类型,L字段表示报文长度、V字段往往用来存放报文的内容。在本
申请实施例中,可以通过在Prefix SID中指定其中一个Flag标识来标识该SID是组播SID或
者是通过新的类型TYPE来标识该类型SID为组播SID;即可以在所述报文的报文格式中包含
一个组播标识字段;或者可以配置一个新的类型字段,使用所述报文的报文格式中的类型
字段,来用于指示所述组播分段标识的类型为组播类型。
[0087] R6通过IGP协议将自身携带的组播组的组播SID通告出来;当这个组播组接入其它节点时,其它节点分配相同的组播SID并通告,如R5上也给G1分配相同的Prefix SID 1。要
实现不同路由设备给相同组播组分配相同的组播SID,可以预先从管理员处获取预设组播
映射表,根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识
的映射关系;对于R5来说,或者还可以是接收R6在所述组播组接入时通告的组播分段标识,
当所述组播组接入R5时,为所述组播组分配相同的组播分段标识。其中,在R6通告的组播
SID信息中绑定了组播组的IP地址信息,R5获取到该地址信息后,当本地有该组播IP的组加
入时,也自动分配相同的组播SID给该组播组的IP地址,并同时通过IGP协议通告出来。
[0088] 当然,除了上述两种分配组播SID的方式之外,如果第一路由设备是初次为组播组分配组播SID,或者在分配组播SID之前没有接收到其他路由设备通告的携带组播SID的报
文,则第一路由设备还可以自动从SID空间内随机分配一个未使用的SID值给该组播组。其
中,SID空间用于表示可分配的SID值的区间范围。第三路由设备等其他路由设备也可以参
照这种方式进行初始分配,此处不再赘述。
[0089] S205.所述第二路由设备根据所述报文创建用于承载组播数据的隧道。
[0090] 可选地,所述第二路由设备可以根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。
[0091] 如图1所示,组播组G1的源接入节点设备为第二路由设备即R2,依据组播组Prefix SID1通告过来的路由设备R5和R6,可以自动创建目的地址为R5和R6的两个单播隧道
TUNNEL1和TUNNEL2,隧道默认可以按最短路径建立;可选地,也可以按指定路径建立。或者,
还可以自动创建目的地址为组播组G1的IP地址IP1或组播SID1的P2MP(点到多点)隧道
TUNNELA,其中,隧道TUNNELA中各LSP为通过不同路径R5、R6到组播SID;如需额外指定路径,
可将指定路径信息放在标签栈中指导路径转发,也即通过SR的Slist标签栈将不同路径的
LSP表示出来,比如LSP1为SLIST1,标签栈信息为SID of R5,SID1,LSP2为SLIST2,标签栈信
息为SID of R6,SID1。
[0092] 类似地,图1中,组播组G2的源接入节点设备为R1,依据接收到的R5通告过来的组播组Prefix SID2,创建目的地址是R5的隧道TUNNEL1;或者创建目的地址是组播SID2的隧
道TUNNELB,隧道B下创建经过R5到SID2的LSP。
[0093] S206.所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备和所述第三路由设备。
[0094] 当承载组播数据的隧道建立之后,便可以将组播数据通过建立的隧道发送到第一路由设备和第三路由设备。
[0095] 如图1所示,可以配置组播组转发表项的出接口为上述建立的隧道,R2上的组播转发表到Prefix SID1的下一跳为TUNNEL1和TUNNEL2;或者是TUNNELA的各LSP。类似地,R1上
的组播转发表到Prefix SID2的下一跳是TUNNEL1;或者是TUNNELB。
[0096] 当需要进行组播时,组播数据可以依据多个下一跳复制多份后各自承载在隧道中转发至各个目的节点。
[0097] 在本申请实施例中,通过对常规SID进行改造,使其转变为组播SID,可指示当前承载的业务为组播业务,并且多个路由设备针对相同组播组均使用相同的组播SID,而该组播
组的源接入节点设备也可以根据该组播SID创建承载组播数据的隧道,从而可以实现对组
播数据的承载和转发,充分发挥了SR网络的工作效率,可简化网络运维和管理,增强路径调
整和控制能力。
[0098] 参见图3,图3为本申请实施例提供的另一种组播的方法的流程示意图;在本实施例中,除了第一路由设备和第三路由设备接入了同一个组播组,还新增了第四路由设备接
入同一个组播组,第二路由设备为源接入节点设备,所述方法包括的步骤S301‑S304和图2
中步骤S201‑S204相同,在步骤S304之后还包括步骤:
[0099] S305.当有新的第四路由设备上有用户加入所述组播组时,所述第四路由设备为所述组播组分配与第一路由设备和第三路由设备相同的组播分段标识。
[0100] S306.所述第四路由设备将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备。
[0101] S307.所述第二路由设备根据所述报文创建用于承载组播数据的隧道。
[0102] S308.所述第二路由设备通过所述隧道将组播数据发送给所述第一路由设备、所述第三路由设备和所述第四路由设备。
[0103] 请参见图1,假如第四路由设备即R3上有用户加入G1组播组时,R3给G1也分配一个Prefix SID1并通过IGP协议将自身携带的组播SID通告出来;
[0104] 组播组G1的源接入节点设备R2,接收到的R3通告过来的组播组Prefix SID1后,自动创建目的地址为R3的隧道Tunnel3;或者TUNNELA下的LSP3,途径R3到SID1的标签路径,数
据面可封装该SR的SLIST3标签栈信息。
[0105] 组播组转发表项的出接口新增加一个Tunnel3出接口;或者多了一条LSP3。这样,当需要进行组播时,组播数据可以依据多个下一跳复制多份后各自承载在隧道中转发至各
个目的节点对应的出接口。
[0106] S309.当组播组发生更新或删除时,所述第二路由设备对应的更新或删除相应的隧道。
[0107] 例如,组播组G1删除时,则其对应的隧道TUNNEL1、TUNNEL2、TUNNEL3或其他P2MP隧道的LSP条目都可以相应的删除。发生更新时,则可以相应的更新,此处不再赘述。
[0108] 请参照图4,为本申请实施例提供的一种路由设备的组成示意图;可包括:
[0109] 处理单元100,用于当路由设备上有组播组接入时,为所述组播组分配组播分段标识,所述组播分段标识用于指示当前承载的业务为组播业务;
[0110] 收发单元200,用于将携带所述组播分段标识的报文通告给分段路由域中的其他路由设备;以及当第二路由设备根据接收到的所述报文,创建用于承载组播数据的隧道之
后,所述第一路由设备接收通过所述隧道转发的组播数据;
[0111] 其中,所述第二路由设备为所述组播组的源接入节点设备。
[0112] 可选地,所述报文的报文格式中包含一个组播标识字段;或者
[0113] 所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型。
[0114] 可选地,所述处理单元100具体用于:
[0115] 根据预设组播映射表进行分配,所述组播映射表用于保存组播组与组播分段标识的映射关系;或者
[0116] 通过所述收发单元200接收所述其他路由设备在所述组播组接入时通告的携带组播分段标识的报文,当所述组播组接入所述第一路由设备时,为所述组播组分配相同的组
播分段标识。
[0117] 可选地,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0118] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道。
[0119] 该路由设备所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法实施例中关于这些内容的描述,此处不做赘述。
[0120] 请参照图5,为本申请实施例提供的另一种路由设备的组成示意图;如图6所示,该路由设备可以包括处理器110、存储器120和总线130。处理器110和存储器120通过总线130
连接,该存储器120用于存储指令,该处理器110用于执行该存储器120存储的指令,以实现
如上图2‑图3对应的方法中第一路由设备执行的步骤。
[0121] 进一步的,该路由设备还可以包括、输入口140和输出口150。其中,处理器110、存储器120、输入口140和输出口150可以通过总线130相连。
[0122] 处理器110用于执行该存储器120存储的指令,以控制输入口140接收信号,并控制输出口150发送信号,完成上述方法中路由设备执行的步骤。其中,输入口140和输出口150
可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为输入输出口。所述存储
器120可以集成在所述处理器110中,也可以与所述处理器110分开设置。
[0123] 作为一种实现方式,输入口140和输出口150的功能可以考虑通过收发电路或者收发的专用芯片实现。处理器110可以考虑通过专用处理芯片、处理电路、处理器或者通用芯
片实现。
[0124] 作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的路由设备。即将实现处理器110,输入口140和输出口150功能的程序代码存储在存储器
中,通用处理器通过执行存储器中的代码来实现处理器110,输入口140和输出口150的功
能。
[0125] 该路由设备所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于第一路由设备的描述,此处不做赘述。
[0126] 请参照图6,为本申请实施例提供的又一种路由设备的组成示意图;可包括:
[0127] 收发单元300,用于接收第一路由设备通告的携带组播分段标识的报文,所述组播分段标识是在所述组播组接入所述第一路由设备时,由所述第一路由设备为所述组播组分
配并通过所述报文在分段路由域中通告,所述组播分段标识用于指示当前承载的业务为组
播业务;
[0128] 处理单元400,用于根据所述报文创建用于承载组播数据的隧道;
[0129] 所述收发单元300还用于通过所述隧道将组播数据发送给所述第一路由设备和所述组播组接入的其他路由设备;
[0130] 其中,所述路由设备为所述组播组的源接入节点设备。
[0131] 可选地,所述报文的报文格式中包含一个组播标识字段;或者所述报文的报文格式中的类型字段,用于指示所述组播分段标识的类型为组播类型;
[0132] 所述处理单元400具体用于:
[0133] 根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。
[0134] 所述第二路由设备根据所述报文中的组播标识字段或者类型字段,创建用于承载组播数据的隧道。
[0135] 可选地,所述隧道是目的地址为所述第一路由设备的单播分段路由隧道;或者
[0136] 所述隧道是目的地址为所述组播组IP地址或组播分段标识的点到多点P2MP隧道,其中所述P2MP隧道下创建了通过所述第一路由设备到所述组播分段标识的标签交换路径
LSP。
[0137] 可选地,所述处理单元400还用于:
[0138] 若需要在所述P2MP隧道中指定路径,则将指定路径信息的LSP保存在分段路由的标签栈中。
[0139] 可选地,所述处理单元400还用于:
[0140] 配置组播组转发表项,所述组播组转发表项的出接口为所述隧道,或所述隧道的多个LSP。
[0141] 可选地,所述处理单元400还用于:
[0142] 当有组播组发生变化时,所述第二路由设备根据组播组的变化改变相应的隧道,所述变化包括更新或删除。
[0143] 该路由设备所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法实施例中关于这些内容的描述,此处不做赘述。
[0144] 请参照图7,为本申请实施例提供的另一种路由设备的组成示意图;如图7所示,该路由设备可以包括处理器210、存储器220和总线230。处理器210和存储器220通过总线230
连接,该存储器220用于存储指令,该处理器210用于执行该存储器220存储的指令,以实现
如上图2‑图3对应的方法中第二路由设备执行的步骤。
[0145] 进一步的,该路由设备还可以包括、输入口240和输出口250。其中,处理器210、存储器220、输入口240和输出口250可以通过总线230相连。
[0146] 处理器210用于执行该存储器220存储的指令,以控制输入口240接收信号,并控制输出口250发送信号,完成上述方法中路由设备执行的步骤。其中,输入口240和输出口250
可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为输入输出口。所述存储
器220可以集成在所述处理器210中,也可以与所述处理器210分开设置。
[0147] 作为一种实现方式,输入口240和输出口250的功能可以考虑通过收发电路或者收发的专用芯片实现。处理器210可以考虑通过专用处理芯片、处理电路、处理器或者通用芯
片实现。
[0148] 作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的路由设备。即将实现处理器210,输入口240和输出口250功能的程序代码存储在存储器
中,通用处理器通过执行存储器中的代码来实现处理器210,输入口240和输出口250的功
能。
[0149] 该路由设备所涉及的与本申请实施例提供的技术方案相关的概念,解释和详细说明及其他步骤请参见前述方法或其他实施例中关于第二路由设备的描述,此处不做赘述。
[0150] 本领域技术人员可以理解,为了便于说明,图5和图7仅示出了一个存储器和处理器。在实际的控制器中,可以存在多个处理器和存储器。存储器也可以称为存储介质或者存
储设备等,本申请实施例对此不做限制。
[0151] 应理解,在本申请实施例中,处理器可以是中央处理单元(Central Processing Unit,简称为“CPU”),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成
电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑
器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处
理器等。
[0152] 该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。
[0153] 该总线除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线。
[0154] 在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器
执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储
器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成
熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上
述方法的步骤。为避免重复,这里不再详细描述。
[0155] 根据本申请实施例提供的方法,本申请实施例还提供一种系统,其包括前述的路由设备和一个或多于一个的网络设备。
[0156] 还应理解,本文中涉及的第一、第二、第三、第四以及各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围。
[0157] 应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0158] 应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施
过程构成任何限定。
[0159] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各种说明性逻辑块(illustrative logical block)和步骤(step),能够以电子硬件、或者计算机软件
和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的
特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所
描述的功能,但是这种实现不应认为超出本申请的范围。
[0160] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统、路由设备和方法,可以通过其它的方式实现。例如,以上所描述的路由设备实施例仅仅是示意性的,例如,所
述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单
元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,
所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,路由设备或
单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0161] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或
部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计
算机、计算机网络、或者其他可编程路由设备。所述计算机指令可以存储在计算机可读存储
介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计
算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、
数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务
器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质
或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质
可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态
硬盘Solid State Disk(SSD))等。
[0162] 以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵
盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。