CN115150318A - 组播控制方法、装置、电子设备及存储介质 - Google Patents
组播控制方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115150318A CN115150318A CN202210804006.9A CN202210804006A CN115150318A CN 115150318 A CN115150318 A CN 115150318A CN 202210804006 A CN202210804006 A CN 202210804006A CN 115150318 A CN115150318 A CN 115150318A
- Authority
- CN
- China
- Prior art keywords
- multicast
- router
- information
- tree
- forwarding
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000003860 storage Methods 0.000 title claims abstract description 22
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 27
- 230000011664 signaling Effects 0.000 abstract description 15
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 230000010076 replication Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000004422 calculation algorithm Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种组播控制方法、装置、电子设备及存储介质,涉及通信技术领域。该方法包括采集组播域中各个路由器的拓扑信息;接收组播域中入口路由器和出口路由器上报的组播信息;基于所述拓扑信息和所述组播信息计算组播树,以建立转发隧道;向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发。本公开缩短了组播树中的信令传递流程,加快了组播树的收敛速度。
Description
技术领域
本公开涉及通信技术领域,尤其涉及一种组播控制方法、装置、电子设备及存储介质。
背景技术
组播是指单个发送者对应多个接收者的一种网络通信方式,组播技术有效地解决了数据传输过程中单点发送、多点接收的问题。其中,基于多协议标签交换(Multi-Protocol Label Switching,MPLS)隧道的组播方式是应用最为广泛的组播方式之一。
在当前基于MPLS隧道的组播方式中,往往采用的是东西向的信令,并基于多播标签分发协议(Multicast Label Distribution Protocol,mLDP)和边界网关协议(BorderGateway Protocol,BGP)的逐跳的方式建立的组播树,但该方式在树节点上的组播控制较为复杂,信令流程长,收敛速度慢。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种组播控制方法、装置、电子设备及存储介质,至少在一定程度上克服由于相关技术中组播树收敛慢、信令传递流程长的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种组播控制方法,包括:
采集组播域中各个路由器的拓扑信息;
接收组播域中入口路由器和出口路由器上报的组播信息;
基于所述拓扑信息和所述组播信息计算组播树,以建立转发隧道;
向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发。
在本公开的一个实施例中,所述组播控制信息包括:目标路由器转发隧道的隧道端口信息和目标路由器下游路由器的树标签,其中,所述隧道端口信息用于指定组播数据的转发隧道,所述树标签用于指定组播数据的转发方式。
在本公开的一个实施例中,所述组播树中的各个路由器还用于将各自下游路由器的树标签封装至组播数据,以使接收到组播数据的下游路由器在监测到组播数据中包含自身的树标签后,对组播数据进行复制。
在本公开的一个实施例中,在向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发之前,所述方法还包括:
基于组播域中各个路由器本地的分段路由本地标签段SRLB,为各个路由器分别指定树标签。
在本公开的一个实施例中,所述入口路由器上报的组播信息包括:所述入口路由器身份标识和所述入口路由器的组播地址;
所述出口路由器上报的组播信息包括:所述出口路由器身份标识和所述出口路由器的组播地址。
在本公开的一个实施例中,当组播方式为特定源组播SSM时,所述入口路由器上报的组播信息还包括:所述入口路由器的组播源地址;所述出口路由器上报的组播信息包括:所述出口路由器的组播源地址。
在本公开的一个实施例中,所述组播控制方法由路径计算单元PCE控制器执行。
根据本公开的再一个方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的组播控制方法。
根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的组播控制方法。
本公开的实施例所提供的组播控制方法、装置、电子设备及存储介质,在采集组播域中各个路由器的拓扑信息,并接收组播域中入口路由器和出口路由器上报的组播信息后,基于拓扑信息和组播信息计算组播树,以建立转发隧道,最后向组播树中的各个路由器下发组播控制信息,以使组播数据经转发隧道进行转发。本公开实施例通过对组播域中的各个路由器进行统一调度和控制,缩短了组播树中的信令传递流程,加快了组播树的收敛速度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开实施例中一种通信网络示意图;
图2示出相关技术中一种组播控制方法的示意图;
图3示出本公开实施例中一种组播控制方法流程图;
图4示出本公开实施例中一种组播信息示意图;
图5示出本公开实施例中一种组播信息示意图;
图6示出本公开实施例中一种组播控制方法的信息传递路径示意图;
图7示出本公开实施例中一种组播控制装置示意图;和
图8示出本公开实施例中一种电子设备的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
为了便于理解,下面首先对本公开涉及到的几个名词进行解释如下:
组播,是主机间一对多的通讯模式,组播是一种允许一个或多个组播源发送同一报文到多个接收者的技术。一份组播报文,使用一个组播地址作为目的地址。一个组播地址发送且仅发送一份报文。网络中部署的组播协议为此组播报文建立一棵树型路由,根是组播源,叶子是所有组播组成员。组播方式下,单一的信息流沿树型路径被同时发送给一组用户,相同的组播数据流在每一条链路上最多仅有一份。相比单播来说,使用组播方式传递信息,用户的增加不会显著增加网络的负载,减轻了服务器和CPU的负荷。组播技术有效地解决了单点发送多点接收的问题,实现了IP网络中点到多点的高效数据传送。
计算单元通信协议(Path Computation Element Communication Protocol,PCEP),是一个基于传输控制协议(Transmission Control Protocol,TCP)的应用层协议,开放网络操作系统(Open Network Operating System,ONOS)的南向接口协议之一。PCEP用于对所有路由器上的流量工程扩展的资源预留协议(RSVP-TE:Resource ReSerVationProtocol-Traffic Engineering)进行路径计算,从而可以做到集中算路。其中,路径计算单元(Path Computation Element,PCE)是算路服务器,路径计算客户端(PathComputation Client,PCC)是算路请求客户端,路径计算通过PCEP在PCE和PCC之间完成,而路径建立是由路由器之间通过资源预留协议(Resource ReSerVation Protocol,RSVP)完成,这也是一个转控分离的原始形态。
多协议标签交换(Multi-Protocol Label Switching,MPLS),是一种在开放的通信网上利用标签引导数据高速、高效传输的新技术。多协议的含义是指MPLS不但可以支持多种网络层层面上的协议,还可以兼容第二层的多种数据链路层技术。
边界网关协议(Border Gateway Protocol,BGP),是运行于TCP上的一种自治系统的路由协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。BGP构建在外部网关协议(Exterior GatewayProtocol,EGP)的经验之上。BGP系统的主要功能是和其他的BGP系统交换网络可达信息。网络可达信息包括列出的自治系统(Autonomous System,AS)的信息。这些信息有效地构造了AS互联的拓扑图并由此清除了路由环路,同时在AS级别上可实施策略决策。
在正式介绍本公开之前,下面首先对本公开提供的组播控制方法、装置、电子设备及存储介质的应用场景进行介绍。
本公开实施例提供的组播控制方法可以应用于通信网络中,该通信网络例如可以是数据中心网络(Data Center Network,DCN)、城域网络、广域网络或园区网络等。
该通信网络中包括多个网络设备。可选地,该多个网络设备包括至少一个控制设备和多个转发设备,该多个转发设备通信连接,且每个转发设备与该控制设备通信连接,该控制设备用于对转发设备进行控制,转发设备用于在该控制设备的控制下进行业务转发。其中,转发设备可以是交换机、路由器(router)、虚拟交换机或虚拟路由器等能够支持组播功能的设备,并且同一通信网络中的多个转发设备可以是相同的转发设备,也可以是不同的转发设备,例如,同一通信网络中的所有转发设备均是路由器,或者,一部分转发设备是路由器,另一部分转发设备是交换机。控制设备可以是控制器,例如可以是终端、服务器、部署在服务器中的功能模块、由若干台服务器组成的服务器集群或者是一个云计算服务中心,本公开实施例对此不做限定。
控制设备可以根据通信网络的网络拓扑计算组播树,进而获得转发路径,并向该转发路径上的转发设备发送该转发路径的路径信息,转发设备根据接收到的路径信息确定转发路径,并通过确定的转发路径进行业务转发。示例性地,该转发路径可以通过基于MPLS的标签转发,本公开实施例不对转发路径的可实现形式进行限定。
按照业务的流向,转发路径上的转发设备可以包括入口(ingress)设备、出口(egress)设备以及位于该入口设备与该出口设备之间的中转(transit)设备,控制设备可以向转发隧道上的入口设备发送该转发隧道的路径信息,也可以向转发隧道上的其他设备发送该转发隧道的路径信息,本公开实施例对此不做限定。其中,入口设备是位于转发隧道的源端的转发设备(也即是源转发设备),出口设备是位于转发隧道的目的端的转发设备(也即是目的转发设备)。通信网络中的转发设备也可称为转发节点,其中入口设备可称为头节点(head node),出口设备可称为尾节点(end node),中转设备可称为中转节点或中间节点。容易理解,根据转发隧道的长短,转发隧道上可以仅存在入口设备和出口设备,而不存在中转设备。其中,控制设备与转发设备之间可以基于路径PCEP通信。示例地,控制设备可以是PCE控制器,转发设备(例如,入口设备)可以是PCC设备,PCE控制器与PCC设备之间基于PCEP通信。其中,PCE控制器是一个能够根据网络拓扑计算转发隧道的实体,其可以是一个网络节点或者一台服务器,PCE控制器能够响应通信网络中的路径计算请求,根据通信网络的网络拓扑计算出符合约束的转发隧道,PCC设备是向PCE控制器发送路径计算请求的设备。可选地,由PCC设备来向PCE控制器发送路径计算请求,该PCE控制器上可以运行有PCE应用程序,由该PCE应用程序响应路径计算请求来计算转发隧道。
在实际组播场景中,转发隧道上的转发设备不仅需要获知转发隧道的路径信息,还需要获知对于该转发隧道中的组播数据的处理方式,以便于转发设备在接收到组播数据后执行相关操作。因此,控制设备还可以向该转发隧道上的转发设备发送该转发隧道的路径约束。例如,控制设备向转发隧道上的转发设备发送该转发隧道的带宽约束,该转发隧道上的转发设备根据该转发隧道的带宽约束对该转发隧道进行带宽预留。
示例地,请参考图1,其示出了本公开实施例提供的一种通信网络的示意图,该通信网络包括网络设备101~107,网络设备101是控制设备(例如,PCE控制器),网络设备102~107均是转发设备(例如,路由器),网络设备101可以根据该通信网络的网络拓扑计算转发隧道,例如网络设备101计算出的转发隧道为转发隧道S1(该转发隧道S1为:网络设备102—>网络设备103—>网络设备104—>网络设备105),该网络设备101可以向该转发隧道S1上的网络设备(例如网络设备102,也即是入口设备)发送该转发隧道S1的路径信息,该网络设备102根据接收到的路径信息确定该转发隧道S1,根据该转发隧道S1的路径约束通过该转发隧道S1进行业务转发。
需要说明的是,图1所示的通信网络仅用于举例,并非用于限制本公开实施例的技术方案,在具体实现过程中,通信网络中还可能包括其他设备,并且可以根据需要来配置控制设备的数量以及转发设备的数量。
进一步地,图2示出了相关技术中的组播控制方法的示意图。
以图2中示出的组播域为例,该组播域中包括路由器201~210,每个路由器能够与其相邻的路由器建立通信。在相关技术中,在该组播域中建立基于mLDP和BGP的MPLS组播树需要采用逐跳信令的方式完成。需要从下游路由器逐跳向上游路由器传递信令(例如,从路由器205向路由器204传递信令),然后在根节点(路由器201)获得完整的树信息,对应生成组播路径,标签信息等,然后再通过逐跳的信令向下游传递(例如,从路由器201向路由器202传递信令),最后完成MPLS隧道的建立以支持组播数据的转发。在该方式中,头端路由器(路由器201)和复制节点(路由器202、路由器203)需要处理较多信令,控制面复杂,并且逐跳进行信令传递,信令流程长,收敛慢,拓扑变化对于组播树收敛影响较大。
有鉴于此,在本公开实施例提供的技术方案中,通过控制设备采集组播域中各个路由器的拓扑信息,并接收组播域中入口路由器和出口路由器上报的组播信息后,基于拓扑信息和组播信息计算组播树,以建立转发隧道,最后通过控制设备向组播树中的各个路由器下发组播控制信息,以使组播数据经转发隧道进行转发。从而实现将组播树的计算,转发隧道建立等功能移至外部控制设备,并通过外部控制设备将控制信息下发给各个树节点,使无需树节点之间进行控制信息交互,保持简单的控制面,完成组播树的建立。
为便于理解,下面结合附图及实施例对本示例实施方式进行详细说明。
首先,本公开实施例中提供了一种组播控制方法,该方法可以由任意具备计算处理能力的电子设备执行。
图3示出本公开实施例中一种组播控制方法流程图,如图3所示,本公开实施例中提供的组播控制方法包括如下步骤:
S302,控制设备采集组播域中各个路由器的拓扑信息。
需要说明的是,组播域是指组播数据在组播过程中能够覆盖的范围,一个组播域中通常包括多个用于复制或转发组播数据的路由器,根据组播域内路由器的数量,一个组播域中可以存在一个或多个控制设备,一个控制设备也可以对应于一个或多个组播域。其中,组播域中与组播源直接通信的路由器为入口路由器,与接收者直接通信的路由器为出口路由器。
需要说明的是,各个路由器的拓扑信息可以由控制设备基于BGP链接状态(BGPLink-state,BGP-LS)协议、链路状态路由协议(Open Shortest Path First,OSPF)协议或中间系统到中间系统(Intermediate System to Intermediate System,ISIS)协议采集,也可以结合链路层发现协议(Link Layer Discovery Protocol,LLDP)和开放流(Openflow)协议采集。应当理解,任何能够被控制设备和路由器支持的,且具有收集网络拓扑功能的协议均可用于收集组播域中的网络拓扑信息,本公开实施例对此不作限定。
在一些实施例中,控制设备可通过Openflow协议与组播域中全部路由器建立连接。当网络中所有路由器接入连接,并注册完成后,命令组播网络中的各个路由器发出LLDP链路探测包,其相邻的路由器收到这个LLDP探测包后,会把它封装形成新的数据包上传,进而根据网络中所有路由器返回的新的数据包可以得到网络的拓扑信息。
需要说明的是,本公开实施例中路由器可以是任意支持组播功能的转发设备,例如,还可以是支持组播功能的交换机、虚拟路由器、虚拟交换机等,本公开实施例对此不作限定。
在一些实施例中,控制设备可以是PCE控制器,以使控制设备可以通过PCEP协议与各个路由器建立通信,在该实施例中,与PCE控制器建立通信的路由器为基于PCC的转发设备。
S304,控制设备接收组播域中入口路由器和出口路由器上报的组播信息。
需要说明的是,本公开实施例中的术语“入口”和“出口”用于指示组播域中的入口和出口。术语“入口路由器”和“出口路由器”仅用于示出该路由器在组播域中相对位置,而不涉及对路由器功能和类型的限定。具体地,“入口路由器”和“出口路由器”分别为位于组播域入口的路由器和位于组播域出口的路由器。
需要说明的是,入口路由器上报的组播信息包括入口路由器身份标识和入口路由器的组播地址,其中,采用特定源组播(Source Specific Multicast,SSM)的组播方式时,入口路由器上报的组播信息还包括入口路由器的组播源地址。
类似地,出口路由器上报的组播信息包括:出口路由器身份标识和出口路由器的组播地址,其中,采用SSM的组播方式时,出口路由器上报的组播信息还包括出口路由器的组播源地址。
示例性地,请参考图4,图4为本公开实施例中的一种组播信息示意图,该组播信息可由组播域中的入口路由器或出口路由器上报。入口路由器或出口路由器生成的携带该组播信息的报文可以是PCEP报文(通过PCRpt消息),该报文中包括TLV字段,该组播信息位于该TLV字段中。其中,该TLV字段中至少包括类型字段(type)和长度字段(length),该类型字段中的值用于指示该TLV字段中的值的类型,该长度字段中的值用于指示该TLV字段中的值的长度。
请继续参考图4,本公开实施例中在该TLV字段中还包括组播组地址(MulticastGroup address)和可选地组播源地址(Multicast Source address)。
需要说明的是,组播组地址是按照国际通用的地址规划的组播地址,用于表示某个特定组播。
具体地,一个特定组播可以这样表示:(组播源,组播组)或者(*,组播组)。其中,前者需要指定组播源,例如,SSM场景下;后者不需要指定组播源,例如,任意源组播(Any-Source Multicast,ASM)场景下,其中,“*”用于表示可使用任意组播源。
在本公开实施例的一个应用场景中,某个体育直播的组播源A,它可以为组播组B服务,则这个组播可以表示为(A,B)。入口路由器将该信息通过PCEP报文上报控制设备,告知控制设备存在组播源A可以为组播组B服务,即告知控制设备(A,B)。类似于入口路由器,出口路由器接到用户的对于组播(A,B)的请求时,告知控制设备该出口路由器有申请加入组播(A,B)的用户,以使控制设备计算路径提供服务。
在本公开实施例的另一个应用场景中,某个组播组C不存在固定的组播源,任意发送方均可作为组播源向其他接收方发送消息,此时该组播可以表示为(*,C),且入口路由器和出口路由器上报的组播信息中不包含组播源地址。
此外,入口路由器或出口路由器上报的TLV字段中还包括预留字段(flags),该预留字段的长度为1个字节,该预留字段可以用于承载除组播信息之外的其他信息。本公开实施例中可利用该预留字段承载路由器身份标识(role,即图4中的R),例如,当R=0时为入口路由器身份,当R=1时为出口路由器身份。
S306,控制设备基于拓扑信息和组播信息计算组播树,以建立转发隧道。
具体地,控制器可以根据拓扑信息以及入口路由器和出口路由器上报的组播信息计算组播树,得到组播域中各个路由器对应的端口信息,以此建立转发隧道。
在一些实施例中,组播树的计算可以通过最短路径树算法、最小生成树算法等算法来生成。示例性地,最小生成树算法可以是克鲁斯卡尔(kruskal)算法或普里姆(prim)算法。本公开实施例对此不做限定。
需要说明的是,转发隧道为组播树中相邻路由器传递组播数据的隧道。
在一些实施例中,转发隧道可以是MPLS隧道。
S308,控制设备向组播树中的各个路由器下发组播控制信息,以使组播数据经转发隧道进行转发。
需要说明的是,组播控制信息包括目标路由器转发隧道的隧道端口信息和目标路由器下游路由器的树标签。
具体地,本公开实施例中的目标路由器为接收该组播控制信息的路由器,即组播控制信息的接收者。例如,在控制设备向路由器A发送的组播控制信息中,路由器A即为该组播控制信息的目标路由器。
示例性地,请参考图5,图5为本公开实施例中的一种组播控制信息示意图,该组播控制信息可由控制设备下发至组播树的树节点。
控制设备生成的携带该组播控制信息的报文可以是PCEP报文(通过PCUpd消息),该报文中包括TLV字段,该组播控制信息位于该TLV字段中。其中,该TLV字段中至少包括类型字段(type)和长度字段(length),该类型字段中的值用于指示该TLV字段中的值的类型,该长度字段中的值用于指示该TLV字段中的值的长度。
请继续参考图5,本公开实施例中在该TLV字段中还包括转发隧道的隧道端口信息(Tunnel Endpoint)和树标签(Tree Label)。
需要说明的是,转发隧道的隧道端口信息可以是转发隧道的出口和入口的端口信息。
需要说明的是,树标签一种MPLS标签,每个路由器的树标签本地有效,且在一个组播树中,不同路由器对应的树标签可以相同,也可以不同;而在多个组播树中,同一路由器在不同的组播树中对应不同的树标签。
例如,假设路由器A同时包含在组播树1和组播树2中,且路由器B是路由器A在组播树1中的上游路由器,路由器C是路由器A在组播树2中的上游路由器。此时,路由器A在组播树1和组播树2中分别对应两个不同的树标签,但对于同一个组播树中,例如组播树1中,路由器B和路由器A可以具有相同的树标签,也可以具有不同的树标签。
在一些实施例中,在下发至组播树中各个路由器的组播控制信息中,可以包含下游路由器的树标签。组播控制信息的树标签由目标路由器封装至需要转发的组播数据中,以使下游路由器在监测到组播数据中存在自身的树标签时,对组播数据进行复制后,再完成组播数据的转发。
在一些实施例中,树标签由控制设备统一管理。在向各个路由器下发组播控制信息之前,控制设备基于组播域中各个路由器本地的分段路由本地标签段(Segment RoutingLocal Block,SRLB),为各个路由器分别指定树标签。
示例性地,请参考图6,图6示出了本公开实施例提供的一种组播控制方法的信息传递路径示意图。
具体地,图6示出的组播域中包含PCE控制器612和多个路由器(入口路由器A 601、复制路由器B 602、复制路由器C 603、出口路由器D 605、出口路由器E 607、出口路由器F610、中间路由器604,606,608,609)。在PCE控制器获取到组播域中的网络拓扑信息后,入口路由器A 601以及出口路由器D 605、出口路由器E 607、出口路由器F 610首先上报组播信息,即入口路由器A 601向PCE控制器612上报组播源地址以及组播源服务的组播组地址,出口路由器D 605、出口路由器E 607和出口路由器F 610分别向PCE控制器612上报接收者请求的组播源地址以及组播组地址。
PCE控制器612根据网络拓扑信息和接收到的组播信息计算出组播树,并建立转发隧道,随后向组播树中的各个树节点路由器(即图中“入口路由器A 601”、“复制路由器B602”、“复制路由器C 603”、“出口路由器D 605”、“出口路由器E 607”、“出口路由器F 610”)分配树标签。
PCE控制器向各个树节点路由器下发组播控制信息,该组播控制信息包括转发隧道的隧道端口信息和下游路由器的树标签。
示例性地,PCE控制器612向入口路由器A 601下发入口路由器A601和复制路由器B602之间的转发隧道信息(入口路由器A 601的出口信息、复制路由器B 602的入口信息),以及其下游路由器(复制路由器B 602)的树标签(例如,树标签B)。入口路由器A 601在接收到组播控制信息后,将树标签B封装至需要转发的组播数据中,随后将封装好的组播数据通过转发隧道转发至复制路由器B 602。
进一步地,PCE控制器612向复制路由器B 602下发复制路由器B 602和复制路由器C 603之间的转发隧道信息(复制路由器B 602的出口信息、复制路由器C 603的入口信息)、复制路由器B 602和出口路由器F 610之间的转发隧道信息(复制路由器B 602的出口信息、出口路由器F 610的入口信息),以及其下游路由器(复制路由器C 603、出口路由器F 610)的树标签(例如,树标签C和树标签F)。同时,复制路由器B 602检测到入口路由器A 601下发到组播数据中存在自身的树标签B后,对组播数据进行复制后再将复制得到多份组播数据分别转发至复制路由器C 603和出口路由器F 610,并在转发至复制路由器C 603和出口路由器F 610的组播数据中分别封装树标签C和树标签F。
与上述过程类似地,组播数据经过多次复制和转发,最终到达出口路由器D 605、出口路由器E 607和出口路由器F 610,并由出口路由器D 605、出口路由器E 607和出口路由器F 610分别转发至相应的接收者。
本公开实施例提供的组播控制方法,使用PCE控制器612收集组播信息,结合PCE控制器612的拓扑采集能力进行路径计算,将组播树的计算和维护上移至PCE控制器612,缩短组播树生成的信令流程,加快组播树收敛。同时,在PCE控制器612的统一管理下,该组播控制方法相对于相关技术而言,信令处理流程短,收敛快,拓扑变化对于组播树收敛影响小。
此外,本公开实施例利用PCE控制器612向组播域中的各个路由器发送控制信息,从而使得各个路由器之间无需交互控制面信息,保持了简单的控制面,只需要组播树中的树节点处理控制器下发的控制信息即可。
基于同一发明构思,本公开实施例中还提供了一种组播控制装置,如下面的实施例所述。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。
图7示出本公开实施例中一种组播控制装置示意图,如图7所示,该装置700包括:
信息采集模块701,用于采集组播域中各个路由器的拓扑信息。
信息接收模块702,用于接收组播域中入口路由器和出口路由器上报的组播信息。
隧道建立模块703,用于基于拓扑信息和组播信息计算组播树,以建立转发隧道。
组播控制模块704,用于向组播树中的各个路由器下发组播控制信息,以使组播数据经转发隧道进行转发。
需要说明的是,本公开实施例中路由器可以是任意支持组播功能的转发设备,例如,还可以是支持组播功能的交换机、虚拟路由器、虚拟交换机等,本公开实施例对此不作限定。
在一些实施例中,组播控制信息包括:目标路由器转发隧道的隧道端口信息和目标路由器下游路由器的树标签,其中,隧道端口信息用于指定组播数据的转发隧道,树标签用于指定组播数据的转发方式。
在一些实施例中,组播树中的各个路由器还用于将各自下游路由器的树标签封装至组播数据,以使接收到组播数据的下游路由器在监测到组播数据中包含自身的树标签后,对组播数据进行复制。
在一些实施例中,该装置还包括标签指定模块,用于基于组播域中各个路由器本地的分段路由本地标签段SRLB,为各个路由器分别指定树标签。
在一些实施例中,组播树的计算可以通过最短路径树算法或者最小生成树算法等算法来生成。示例性地,最小生成树算法可以是克鲁斯卡尔(kruskal)算法或普里姆(prim)算法。本公开实施例对此不做限定。
在一些实施例中,入口路由器上报的组播信息包括:入口路由器身份标识和入口路由器的组播地址;
出口路由器上报的组播信息包括:出口路由器身份标识和出口路由器的组播地址。
在一些实施例中,当组播方式为特定源组播SSM时,入口路由器上报的组播信息还包括:入口路由器的组播源地址;出口路由器上报的组播信息包括:出口路由器的组播源地址。
在一些实施例中,该组播控制装置700基于PCE控制器构建。
需要说明的是,上述实施例提供的组播控制装置在用于组播控制时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的组播控制装置与组播控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图8来描述根据本公开的这种实施方式的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,处理单元810可以执行上述方法实施例的如下步骤:采集组播域中各个路由器的拓扑信息;接收组播域中入口路由器和出口路由器上报的组播信息;基于拓扑信息和组播信息计算组播树,以建立转发隧道;向组播树中的各个路由器下发组播控制信息,以使组播数据经转发隧道进行转发。
在一些实施例中,组播控制信息包括:目标路由器转发隧道的隧道端口信息和目标路由器下游路由器的树标签,其中,隧道端口信息用于指定组播数据的转发隧道,树标签用于指定组播数据的转发方式。
在一些实施例中,组播树中的各个路由器还用于将各自下游路由器的树标签封装至组播数据,以使接收到组播数据的下游路由器在监测到组播数据中包含自身的树标签后,对组播数据进行复制。
在一些实施例中,处理单元810还可执行:
基于组播域中各个路由器本地的分段路由本地标签段SRLB,为各个路由器分别指定树标签。
在一些实施例中,入口路由器上报的组播信息包括:入口路由器身份标识和入口路由器的组播地址;
出口路由器上报的组播信息包括:出口路由器身份标识和出口路由器的组播地址。
在一些实施例中,当组播方式为特定源组播SSM时,入口路由器上报的组播信息还包括:入口路由器的组播源地址;出口路由器上报的组播信息包括:出口路由器的组播源地址。
在一些实施例中,处理单元810可以是PCE控制器。
存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(ROM)8203。
存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备800也可以与一个或多个外部设备840(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质。其上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (10)
1.一种组播控制方法,其特征在于,包括:
采集组播域中各个路由器的拓扑信息;
接收组播域中入口路由器和出口路由器上报的组播信息;
基于所述拓扑信息和所述组播信息计算组播树,以建立转发隧道;
向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发。
2.根据权利要求1所述的组播控制方法,其特征在于,所述组播控制信息包括:目标路由器转发隧道的隧道端口信息和目标路由器下游路由器的树标签,其中,所述隧道端口信息用于指定组播数据的转发隧道,所述树标签用于指定组播数据的转发方式。
3.根据权利要求2所述的组播控制方法,其特征在于,所述组播树中的各个路由器还用于将各自下游路由器的树标签封装至组播数据,以使接收到组播数据的下游路由器在监测到组播数据中包含自身的树标签后,对组播数据进行复制。
4.根据权利要求2所述的组播控制方法,其特征在于,在向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发之前,所述方法还包括:
基于组播域中各个路由器本地的分段路由本地标签段SRLB,为各个路由器分别指定树标签。
5.根据权利要求1所述的组播控制方法,其特征在于,所述入口路由器上报的组播信息包括:所述入口路由器身份标识和所述入口路由器的组播地址;
所述出口路由器上报的组播信息包括:所述出口路由器身份标识和所述出口路由器的组播地址。
6.根据权利要求5所述的组播控制方法,其特征在于,当组播方式为特定源组播SSM时,所述入口路由器上报的组播信息还包括:所述入口路由器的组播源地址;所述出口路由器上报的组播信息包括:所述出口路由器的组播源地址。
7.根据权利要求1至6任一项所述的组播控制方法,其特征在于,所述组播控制方法由路径计算单元PCE控制器执行。
8.一种组播控制装置,其特征在于,包括:
信息采集模块,用于采集组播域中各个路由器的拓扑信息;
信息接收模块,用于接收组播域中入口路由器和出口路由器上报的组播信息;
隧道建立模块,用于基于所述拓扑信息和所述组播信息计算组播树,以建立转发隧道;和
组播控制模块,用于向所述组播树中的各个路由器下发组播控制信息,以使组播数据经所述转发隧道进行转发。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~7中任意一项所述的组播控制方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任意一项所述的组播控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210804006.9A CN115150318A (zh) | 2022-07-07 | 2022-07-07 | 组播控制方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210804006.9A CN115150318A (zh) | 2022-07-07 | 2022-07-07 | 组播控制方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115150318A true CN115150318A (zh) | 2022-10-04 |
Family
ID=83412569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210804006.9A Pending CN115150318A (zh) | 2022-07-07 | 2022-07-07 | 组播控制方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115150318A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207559A (zh) * | 2006-12-18 | 2008-06-25 | 中兴通讯股份有限公司 | 多协议标签交换网络中组播树的建立装置 |
US20110202761A1 (en) * | 2008-10-23 | 2011-08-18 | Telefonaktiebolaget L M Ericsson (Publ) | Mobility Handling For Multicast Services |
CN105119795A (zh) * | 2015-07-14 | 2015-12-02 | 中国联合网络通信集团有限公司 | 一种组播隧道的建立方法及装置 |
CN113630320A (zh) * | 2020-05-06 | 2021-11-09 | 瞻博网络公司 | 计算机网络内创建隧道的方法、入口网络装置及存储介质 |
-
2022
- 2022-07-07 CN CN202210804006.9A patent/CN115150318A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101207559A (zh) * | 2006-12-18 | 2008-06-25 | 中兴通讯股份有限公司 | 多协议标签交换网络中组播树的建立装置 |
US20110202761A1 (en) * | 2008-10-23 | 2011-08-18 | Telefonaktiebolaget L M Ericsson (Publ) | Mobility Handling For Multicast Services |
CN105119795A (zh) * | 2015-07-14 | 2015-12-02 | 中国联合网络通信集团有限公司 | 一种组播隧道的建立方法及装置 |
CN113630320A (zh) * | 2020-05-06 | 2021-11-09 | 瞻博网络公司 | 计算机网络内创建隧道的方法、入口网络装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111865796B (zh) | 用于网络业务的路径计算单元中央控制器(pcecc) | |
US10097372B2 (en) | Method for resource optimized network virtualization overlay transport in virtualized data center environments | |
US10250459B2 (en) | Bandwidth on-demand services in multiple layer networks | |
US8077713B2 (en) | Dynamic update of a multicast tree | |
EP2399363B1 (en) | System and method for point to multipoint inter-domain multiprotocol label switching traffic engineering path calculation | |
US8310957B1 (en) | Minimum-cost spanning trees of unicast tunnels for multicast distribution | |
US20160006614A1 (en) | Source Routing Using Path Computation Elements | |
WO2019134639A1 (zh) | 实现无缝最优跨域路径的方法、装置、设备及存储介质 | |
US10623302B2 (en) | X channel to zone in zone routing | |
EP2109260A1 (en) | Multicast method and multicast routing method | |
CN111245644B (zh) | 一种sdn场景下扩展pcep协议自动创建隧道的方法及系统 | |
WO2009043256A1 (fr) | Procédé, système et dispositif d'obtention de trajets à commutation par étiquette | |
CN104753713A (zh) | 一种sdn部署业务的方法和sdn控制器 | |
WO2007079667A1 (fr) | Procédé de calcul des moyens de prévision d'écoulement du trafic entre des zones, système, équipement et support de stockage | |
US20220286360A1 (en) | Global network state management | |
WO2017211164A1 (zh) | 一种确定跨域标签交换路径隧道的方法、设备和系统 | |
WO2013107298A1 (zh) | 环网标签交换路径创建方法及相关设备和通信系统 | |
CN105634941A (zh) | 一种跨域路径的计算方法及装置 | |
US9008118B2 (en) | Multicast data delivery over mixed multicast and non-multicast networks | |
WO2015113291A1 (zh) | 无线网络数据处理装置和无线网络系统 | |
US10020952B1 (en) | PIM relay mode in computer networks | |
US20140185607A1 (en) | Communication system, communication path establishing method and management server | |
WO2015014197A1 (zh) | 组播负载场景下选路的方法和路由器 | |
US8798050B1 (en) | Re-optimization of loosely routed P2MP-TE sub-trees | |
WO2013037319A1 (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 |