CN109391478B - 一种组播业务控制方法和装置、计算机可读存储介质 - Google Patents
一种组播业务控制方法和装置、计算机可读存储介质 Download PDFInfo
- Publication number
- CN109391478B CN109391478B CN201710680526.2A CN201710680526A CN109391478B CN 109391478 B CN109391478 B CN 109391478B CN 201710680526 A CN201710680526 A CN 201710680526A CN 109391478 B CN109391478 B CN 109391478B
- Authority
- CN
- China
- Prior art keywords
- multicast service
- path
- bit string
- bits
- forwarding table
- 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
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
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1845—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast broadcast or multicast in a specific location, e.g. geocast
-
- 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/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
- H04W4/08—User group management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种组播业务控制方法、装置及计算机可读存储介质,该组播业务控制方法包括:控制器获取组播业务的入口节点和各出口节点信息,确定所述入口节点至所述各出口节点的路径集;所述控制器为所述路径集经过的邻接分配比特位;所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表配置到所述路径集经过的转发节点;所述控制器确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点。本申请基于组播业务进行比特位的分配,实现资源的动态灵活的按需分配。
Description
技术领域
本发明涉及通信技术,尤指一种组播业务控制方法和装置、计算机可读存储介质。
背景技术
位索引显式复制(Bit Indexed Explicit Replication,简称BIER)是一种组播数据转发技术,将组播网络划分为BIER域,包括入口节点(Bit-Forwarding Ingress Router,简称BFIR)和出口节点(Bit-Forwarding Egress Routers,简称BFER),该技术利用比特位(BitPosition,简称BP)来标识目的节点,转发节点(Bit-Forwarding Forwarding Router,简称BFR)根据路由表及BIER信息生成BIER转发表(Bit Index Forwarding Table,简称BIFT),BFR根据组播报文携带的BIER头封装中的比特位串(BitString,简称BST)和BIFT进行转发和复制组播报文。
BIER技术中转发表是基于路由表生成的,只能指定哪些BFER需要接收报文,但并不能显式的指定报文的转发路径。draft-eckert-bier-te-arch-04提出了基于流量工程的BIER转发架构,称为BIER-TE技术,该技术引入BIER-TE控制器层,通过控制器下发转发表,同时使用路径算法计算路径,通过显式的逐跳方式转发报文。在BIER-TE中,各相邻节点之间的链路以及链路集合,统一称为邻接(adjacency)。BIER-TE不再使用BitString中的BP来标识目的节点,而是用来标识一个或多个adjacency,并根据该BP生成转发表项。adjacency类型分为四种,分别为Forward Connected,Forward Routed,ECMP和Local Decap。现有的BIER-TE方案未明确定义网络中adjacency的BP的分配原则,如果按照已有的网络拓扑全量分配,不仅灵活性差,无法实现资源的灵活调整和优化,而且极大可能导致同一路径的报文在不同的BitString中转发,从而导致组播报文转发中断或失败。
发明内容
本发明至少一实施例提供一种组播业务控制方法和装置、计算机可读存储介质,实现资源的动态分配。
为了达到本发明目的,本发明至少一实施例提供了一种组播业务控制方法,包括:
控制器获取组播业务的入口节点和各出口节点信息,确定所述入口节点至所述各出口节点的路径集;
所述控制器为所述路径集经过的邻接分配比特位;
所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表到所述路径集经过的转发节点;
所述控制器确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点。
在一可选实施例中,所述控制器为所述路径集经过的邻接分配比特位包括:
为所述路径集经过的邻接分配比特位时,同一路径上的每个邻接所分配的比特位中存在一个比特位属于同一由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述控制器为所述路径集经过的邻接分配比特位包括:
如果所述路径集中的K条路径的所有邻接均未分配比特位,则为所述K条路径分配M个由子域标识、子集标识和比特位串长度构成的集,为该K条路径的每个邻接分配比特位时,为同一条路径的每个邻接分别分配一个属于同一个由子域标识、子集标识和比特位串长度构成的集的比特位,所述K小于等于所述组播业务的路径的总条数,所述M小于等于K。
在一可选实施例中,所述控制器为所述路径集经过的邻接分配比特位包括:
对所述路径集中所经过的部分邻接已被分配过比特位的路径,按如下方式分配比特位:
如果该路径经过的部分邻接所分配的比特位属于同一由子域标识、子集标识和比特位串长度构成的集,且该路径经过的部分邻接所属的该由子域标识、子集标识和比特位串长度构成的集还有足够的未占用的比特位,则为该路径经过的其他邻接分配该由子域标识、子集标识和比特位串长度构成的集的比特位,否则,为该路径分配新的由子域标识、子集标识和比特位串长度构成的集,并为该路径经过的所有邻接分配比特位。
在一可选实施例中,所述控制器为所述路径集经过的邻接分配比特位包括:
为每个邻接分配一个或多个比特位,当分配多个比特位时,该多个比特位均属于不同的由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述控制器为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集,增量生成所述转发表。
在一可选实施例中,所述转发表中携带转发表标识,每个所述转发表标识唯一对应一个由子域标识、子集标识和比特位串长度构成的集,所述转发表标识指示所述转发表中携带的比特位所属的由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述转发表中携带转发表类型信息,所述转发表类型信息指示所述组播业务的转发技术类型。
在一可选实施例中,所述控制器确定所述组播业务对应的比特位串信息包括:
所述控制器根据为所述组播业务分配的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集生成一个或多个比特位串,每个比特位串对应一个由子域标识、子集标识和比特位串长度构成的集;
所述比特位串信息包括所述组播业务的所有比特位串以及每个比特位串对应的由子域标识、子集标识和比特位串长度构成的集,或者,包括所述组播业务的所有比特位串和每个比特位串对应的转发表标识,每个所述转发表标识指示一个由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述方法还包括:
当所述组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,所述方法还包括:
当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,所述方法还包括:
当有新的组播业务时,为所述新的组播业务的路径集的所有邻接分配比特位及其所属的由子域标识、子集标识和比特位串长度构成的集;
根据为所述新的组播业务新分配的比特位生成增量转发表并下发到转发节点;
根据为所述新的组播业务分配的比特位及转发表,生成比特位串信息,并下发到入口节点。
本发明一实施例提供一种组播业务控制装置,包括:
路径计算模块,设置为,获取组播业务的入口节点和各出口节点,确定所述入口节点至所述各出口节点的路径集;
策略控制模块,设置为,为所述路径集经过的邻接分配比特位;
资源管理模块,设置为,根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表配置到所述路径集经过的转发节点,以及,确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点。
在一可选实施例中,所述策略控制模块为所述路径集经过的邻接分配比特位包括:
为所述路径集经过的邻接分配比特位时,同一路径上的每个邻接所分配的比特位中存在一个比特位属于同一由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述策略控制模块为所述路径集经过的邻接分配比特位包括:
如果所述路径集中的K条路径的所有邻接均未分配比特位,则为所述K条路径分配M个由子域标识、子集标识和比特位串长度构成的集,为该K条路径的每个邻接分配比特位时,为同一条路径的每个邻接分别分配一个属于同一个由子域标识、子集标识和比特位串长度构成的集的比特位,所述K小于等于所述组播业务的路径的总条数,所述M小于等于K。
在一可选实施例中,所述策略控制模块为所述路径集经过的邻接分配比特位包括:
对所述路径集中所经过的部分邻接已被分配过比特位的路径,按如下方式分配比特位:
如果该路径经过的部分邻接所分配的比特位属于同一由子域标识、子集标识和比特位串长度构成的集,且该路径经过的部分邻接所属的该由子域标识、子集标识和比特位串长度构成的集还有足够的未占用的比特位,则为该路径经过的其他邻接分配该由子域标识、子集标识和比特位串长度构成的集的比特位,否则,为该路径分配新的由子域标识、子集标识和比特位串长度构成的集,并为该路径经过的所有邻接分配比特位。
在一可选实施例中,所述资源管理模块根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述资源管理模块为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集,增量生成所述转发表。
在一可选实施例中,所述转发表中携带转发表标识,每个所述转发表标识唯一对应一个由子域标识、子集标识和比特位串长度构成的集,所述转发表标识指示所述转发表中携带的比特位所属的由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述转发表中携带转发表类型信息,所述转发表类型信息指示所述组播业务的转发技术类型。
在一可选实施例中,所述资源管理模块确定所述组播业务对应的比特位串信息包括:
所述资源管理模块根据为所述组播业务分配的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集生成一个或多个比特位串,每个比特位串对应一个由子域标识、子集标识和比特位串长度构成的集;
所述比特位串信息包括所述组播业务的所有比特位串以及每个比特位串对应的由子域标识、子集标识和比特位串长度构成的集,或者,包括所述组播业务的所有比特位串和每个比特位串对应的转发表标识,每个比特位串对应的转发表标识指示该比特位串对应的由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,所述策略控制模块还用于,当组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,所述策略控制模块还用于,当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
本发明一实施例提供一种组播业务控制装置,包括存储器和处理器,所述存储器存储有程序,所述程序在被所述处理器读取执行时,实现上述组播业务控制方法。
本发明一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述组播业务控制方法。
与现有技术相比,本申请中,基于组播业务需求进行BP分配及转发控制,使得同一路径的所有邻接分配的比特位在同一个BitString报文中携带,保障了报文的正确转发,同时实现BIER资源的动态灵活的按需分配,保障高效可靠的组播业务。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为BIER-TE层次架构图;
图2为本发明一实施例提供的组播业务控制装置框图;
图3为本发明一实施例提供的组播业务控制方法流程图;
图4为本发明一实施例提供的BIER-TE BP分配策略及转发表生成流程图;
图5为本发明一实施例提供的BIER-TE组网示意图;
图6(a)为本发明一实施例提供的组播业务控制方法流程图;
图6(b)为本发明实施例一提供的BP分配示意图;
图7(a)为本发明一实施例提供的组播业务控制方法流程图;
图7(b)为本发明实施例一提供的BP分配示意图;
图8(a)为本发明一实施例提供的组播业务控制方法流程图;
图8(b)为本发明实施例一提供的BP分配示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
与BIER不同,BIER-TE的adjacency数量远远大于目的节点,需要分配大量BP。由于BitString长度(BitStringLength,BSL)是受限的,BIER域进一步划分为子域(Sub-Domain,简称SD),同时利用子集标识(Set Identifier,简称SI)进行分层,因此,BitString和由SD、SI和BSL构成的集<SD:SI:BSL>共同决定报文转发的adjacency集合,保障流量能够按照指定路径发送到所有目的节点。
BIER-TE中组播业务入口节点到每个出口节点需要经过多个adjacency,因此从BFIR到某一个BFER途中经过的所有的adjacency所分配的BP,必须同时存在于一个<SD:SI:BSL>,才能保证报文在一个BitString中转发到该BFER。但draft-eckert-bier-te-arch-04中未明确定义网络中adjacency的BP的分配原则,并且按照架构中的流程,需要先给网络内所有adjacency分配BP再计算组播流路径,导致待分配的adjacency数量庞大,如果任意分配,极大可能BFIR到每个BFER的路径经过adjacency的BP分配到不同的<SD:SI:BSL>集,即无法在同一个BitString报文中携带,从而导致组播报文转发中断或失败,使BIER-TE无法完成组播报文转发。
本申请中,不再是基于网络拓扑进行BP分配,而是基于组播业务需求;不再是对网络内所有adjacency进行全网BP分配,而是只对组播流的路径经过的adjacency进行BP分配。从而实现BIER资源的动态灵活的按需分配,保障高效可靠的组播业务转发。
如图1所示为本发明一实施例提供的BIER-TE的层次结构图,Multicast FlowOverlay(组播业务层)101和Routing Underlay(路由层)104功能与BIER一致。BIER-TEController(BIER-TE控制器)102作为BIER-TE的控制平面,通过Restconf协议接收组播流配置,通过Netconf等南向协议发现网络拓扑,分配BP并将生成的转发表配置到BFR。BIER-TE Forwarding Layer(BIER-TE转发层)103查找BIFT中BitString的BP,转发报文到相应的adjacency。
本发明一实施例提供一种组播业务控制装置,如图2所示,包括:拓扑管理模块201、协议适配模块202、路径计算模块203、策略控制模块204和资源管理膜205,其中:
拓扑管理模块201,设置为,获取网络拓扑信息;具体的,从设备侧收集网络拓扑信息,发送给资源管理模块205;设备侧包括网络中各节点;
协议适配模块202,设置为,进行南向和北向协议通信的适配功能;
路径计算模块203,设置为,获取组播业务的入口节点和各出口节点,确定所述入口节点至各出口节点的路径集;其中,该路径集中包括一个或多个路径;
策略控制模块204,设置为,为所述路径集经过的邻接分配比特位;
资源管理模块205,设置为,根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表配置到所述路径集经过的转发节点;以及,确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点。
在一可选实施例中,策略控制模块204分配比特位时,使得同一路径上的每个邻接所分配的比特位中存在一个比特位属于同一<SD:SI:BSL>。
在一可选实施例中,所述策略控制模块204根据如下方式分配<SD:SI:BSL>和BP:
如果所述路径集中的K条路径的所有邻接均未分配比特位,则为该K条路径分配M个由子域标识、子集标识和比特位串长度构成的集,为该K条路径的每个邻接分配比特位,为同一条路径的每个邻接分别分配一个属于同一个由子域标识、子集标识和比特位串长度构成的集的比特位,所述K小于等于所述组播业务的路径的总条数,所述M小于等于K。
对所述路径集中所经过的部分邻接已被分配过比特位的路径,按如下方式为该路径分配比特位:
如果该路径经过的部分邻接所分配的比特位属于同一由子域标识、子集标识和比特位串长度构成的集,且该路径经过的部分邻接所属的该由子域标识、子集标识和比特位串长度构成的集还有足够的未占用的比特位,则为该路径经过的其他邻接分配该由子域标识、子集标识和比特位串长度构成的集的比特位,否则,为该路径分配新的由子域标识、子集标识和比特位串长度构成的集,并为该路径经过的所有邻接分配比特位。
可能出现以下多种情况:
情况一
K=N,N为所述组播业务的路径的总条数。此时为所述组播业务的所有路径所经过的邻接分配M个<SD:SI:BSL>,为每个邻接分配比特位,且M小于等于N。
情况二
K<N,此时:
为所述K条路径所经过的邻接分配M个<SD:SI:BSL>,为每个邻接分配比特位,M小于等于K。
对除该K条路径以外的其他任一路径:
如果该路径的部分邻接属于同一<SD:SI:BSL>,且该路径的部分邻接所属的该<SD:SI:BSL>还有足够的未占用的比特位,则为该路径的其他邻接分配该<SD:SI:BSL>的比特位;否则,为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配该新的<SD:SI:BSL>的比特位。此处也包括两种情况:如果该路径的所有邻接不属于同一<SD:SI:BSL>,则为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配比特位;如果该路径的部分邻接属于同一<SD:SI:BSL>,但该路径的部分邻接所属的该<SD:SI:BSL>没有足够的未占用的比特位,则为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配该新的<SD:SI:BSL>的比特位。
情况三
K=0,此时对该路径集中的每条路径按如下方式分配BP:
如果该路径的部分邻接属于同一<SD:SI:BSL>,且该路径的部分邻接所属的该<SD:SI:BSL>还有足够的未占用的比特位,则为该路径的其他邻接分配该<SD:SI:BSL>的比特位;否则,为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配该新的<SD:SI:BSL>的比特位。此处也包括两种情况:如果该路径的所有邻接不属于同一<SD:SI:BSL>,则为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配比特位;如果该路径的部分邻接属于同一<SD:SI:BSL>,但该路径的部分邻接所属的该<SD:SI:BSL>没有足够的未占用的比特位,则为该路径分配新的<SD:SI:BSL>,为该路径的所有邻接分配该新的<SD:SI:BSL>的比特位。
所述资源管理模块205根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述资源管理模块205所述控制器为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集,增量生成所述转发表。
在申请中,转发表是控制器根据组播业务需求及其分配的资源动态生成并配置到相关转发节点,并可以根据业务需求及其分配资源灵活调整。
本申请中,可扩展BIER-TE转发表配置的南向协议数据,在转发表中新增转发表标识(BIFT-id)字段,唯一标识一张子表,每个转发表标识唯一对应一个<SD:BSL:SI>集,在BIER域中全局唯一。需要说明的是,一个转发表由一个或多个子表构成,对同一个节点的转发表配置中可携带多个转发表标识,即配置多个转发表子表。所述转发表中携带转发表标识,所述转发表标识指示所述转发表中携带的比特位所属的<SD:BSL:SI>集集,
由于BIER和BIER-TE中BP位标识的意义不同,转发表中对应的表项及数据也不同,为了区分BIER和BIER-TE转发表,本申请中,扩展BIER-TE转发表配置的南向协议数据,新增转发表类型字段,携带转发表类型信息,用于指示所述组播业务的转发技术类型。比如,如下表1中的BIFT-type,用于区分转发技术为BIER还是BIER-TE类型。当然,如果未来扩展了其他类型的转发表,也可以用转发表类型进行指示。
如表1所示的BIER-TE转发表示意图,转发表以BIFT-id为索引,BIFT-type为BIER-TE,转发表的表项为本节点相关adjacency及BP。
表1 BIER-TE转发表
表1中,以第二行为例,ID:1中ID是BIFT-id,1为BP值。
在本申请中,比特位串是控制器根据组播业务的入口节点和各出口节点经过的路径集的所有邻接分配的比特位生成的,一个组播业务对应一个或多个比特位串,每个比特位串唯一对应一个<SD:BSL:SI>集。由于比特位分配时是根据组播业务的路径集分配<SD:BSL:SI>集再分配比特位,能够保证入口节点到每个出口节点的路径经过的邻接可以在一个<SD:BSL:SI>集中。
在本申请中,可扩展BIER-TE比特位串配置的南向协议数据,在比特位串配置中新增转发表标识(BIFT-id)字段,每个转发表标识唯一对应一个<SD:BSL:SI>集,在BIER域中全局唯一。需要说明的是,该转发表标识在控制器配置转发表时生成,在比特位串信息中携带,下发到入口节点。在组播报文转发时,转发表标识封装在报文头中,用于查找转发表,并根据转发表和比特位串复制并转发组播报文。
在一可选实施例中,所述资源管理模块205确定所述组播业务对应的比特位串信息包括:
所述资源管理模块205根据为所述组播业务分配的比特位及其所属<SD:BSL:SI>集生成一个或多个比特位串,每个比特位串对应一个<SD:BSL:SI>集;所述比特位串信息包括所述组播业务的所有比特位串以及每个比特位串对应的<SD:BSL:SI>集,或者,包括所述组播业务的所有比特位串和每个比特位串对应的转发表标识,每个比特位串对应的转发表标识指示该比特位串对应的由子域标识、子集标识和比特位串长度构成的集。
在一可选实施例中,
所述策略控制模块还用于,当组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,
所述策略控制模块还用于,当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
上述组播业务控制装置可设置在控制器中。
如图3所示,本发明一实施例提供一种组播业务控制方法,包括:
步骤301,所述控制器获取组播业务的入口节点和各出口节点;
比如,所述控制器通过接收组播业务下发的BFIR和BFER和相关的出入端口信息,确定入口节点和出口节点。
步骤302,所述控制器确定所述入口节点至所述各出口节点的路径集,为所述路径集经过的邻接分配比特位;
其中,可以通过路径计算算法计算出BFIR到各个BFER的路径,具体路径计算算法本申请不作限定。
步骤303,所述控制器根据为所述路径集所分配的BP,生成转发表并下发转发表到所述路径集经过的转发节点;
比如,为所述路径集的所有邻接分配<SD:SI:BSL>,为该路径集的每个邻接分配BP,且同一路径上的每个邻接存在一个比特位,属于同一<SD:SI:BSL>。
例如,可以通过南向接口Netconf将转发表下发到所述路径集经过的转发节点。
步骤304,所述控制器确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点。
在一可选实施例中,还可包括,步骤300,控制器获取网络拓扑信息;
比如,通过南向接口Netconf等从设备侧获取拓扑信息。设备侧包括BFIR、BFER和BFR等。需要说明的是,网络拓扑信息可以在系统启动后获取,然后记录网络拓扑的更新信息即可。
在其他实施例中,还可包括:步骤305,设备侧按照所述转发表逐跳转发和复制所述组播业务的组播报文。
在一可选实施例中,为每个邻接分配一个或多个比特位,且该多个比特位均属于不同的<SD:SI:BSL>。
下面进一步说明步骤302中的<SD:SI:BSL>和BP分配方式。
若入口节点为BFIR,出口节点为N个BFER,使用路径计算算法为BFIR到每个BFER计算路径后,得出N条路径,按如下方式分配:
若N条路径中的所有adjacency都未分配BP,则为N条路径经过的所有adjacency分配M个<SD:SI:BSL>,并分别分配BP,M<=N。
若N条路径中有部分路径已分配BP,则分离出未分配的K条路径,为K条路径经过的所有adjacency分配M个<SD:SI:BSL>,并分别分配BP,M<=K。
遍历每条已分配BP的路径,若该路径中经过的所有adjacency已分配了相同的<SD:SI:BSL>,则不需要再另外分配BP;若该路径经过的adjacency分配了不同的<SD:SI:BSL>,则为该条路径重新分配<SD:SI:BSL>,并为经过的所有adjacency分配BP;若该路径经过的部分adjacency分配了相同<SD:SI:BSL>,且该<SD:SI:BSL>还有足够的BP位分配,则为该条路径的未分配BP的adjacency分配该<SD:SI:BSL>的BP。
如图4所示,一种实现BP分配的方式如下,包括:
步骤401,获取一条路径,判断该路径经过的所有邻接是否已分配BP,如果都没有,转步骤408,否则,转步骤402;
步骤402,判断该路径经过的所有邻接是否都已分配BP,如果是,转步骤403,否则,转步骤404;
步骤403,判断该路径经过的所有邻接是否属于同一<SD:SI:BSL>,如果是,转步骤409,否则,转步骤405;
步骤404,为路径部分邻接分配的BP是否属于同一<SD:SI:BSL>,如果是,转步骤406,否则,转步骤405;
步骤405,为该路径重新分配一个<SD:SI:BSL>,转步骤409;
步骤406,该路径的部分邻接所属的<SD:SI:BSL>是否存在足够未分配的BP,如果是,转步骤407,否则,转步骤405;
步骤407,该路径的未分配BP的邻接分配该路径的部分邻接所属的<SD:SI:BSL>中剩余的BP,转步骤409;
步骤408,为该路径经过的所有邻接分配<SD:SI:BSL>,并分别为该路径经过的每个邻接分配BP;
步骤409,判断是否是最后一条路径,如果是,结束;否则,获取下一条路径,进行下一条路径的BP分配,转步骤401。
BP分配完成后,根据新增的BP分配资源计算新增转发表项,通过南向接口下发到设备侧。
在一可选实施例中,所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述控制器为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属<SD:SI:BSL>集,增量生成所述转发表。因为当前的组播业务可能使用之前为其他组播业务的路径集分配的比特位,而之前的比特位相关信息已经下发到转发节点,所以此处只需要基于新增的比特位生成转发表并下发。当然,本申请不限于此,也可以基于该组播业务的路径集相关的全部比特位生成转发表然后下发到转发节点。
在一可选实施例中,所述转发表中携带转发表标识,每个所述转发表标识唯一对应一个<SD:SI:BSL>集,所述转发表标识指示所述转发表中携带的比特位所属的<SD:SI:BSL>集,
在一可选实施例中,所述转发表中携带转发表类型信息,所述转发表类型信息指示所述组播业务的转发技术类型。在一可选实施例中,若某组播业务删除,需要删除该组播业务使用的所有BP,若某些BP已被其他组播业务使用,则只需要删除其单独使用的BP,被其他组播业务使用的BP不变,被删除的BP和SI可以给其他adjacency继续分配;若某组播业务的路径集中的路径经过的链路发生拓扑变化或故障时,则删除分配给该所述路径且未被其他路径使用的比特位,获取该组播业务的更新路径,为更新路径重新分配比特位。比特位更新完成后,根据比特位及其所属的<SD:SI:BSL>集变化生成转发表标识及类型,更新转发表。
在一可选实施例中,所述方法还包括:
当所述组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,所述方法还包括:
当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
在一可选实施例中,所述方法还包括:
当有新的组播业务时,为所述新的组播业务的路径集的所有邻接分配比特位及其所属的由子域标识、子集标识和比特位串长度构成的集;
根据为所述新的组播业务新分配的比特位生成增量转发表并下发到转发节点;
根据为所述新的组播业务分配的比特位及转发表,生成比特位串信息,并下发到入口节点。
本申请中,转发表的生成不再是基于网络拓扑计算全网的转发表,而是基于新增BP,增量生成转发表。BIER-TE根据业务需求分配BP完成后,根据新增的BP分配计算新增转发表。由于BIER封装格式要求,BitString对应一个<SD:SI:BSL>集,BIER头中携带BIFT-id,BIFT-id实际上是<SD:SI:BSL>对应的BIFT子表号,BIFT-id具有全局唯一性。当报文为MPLS封装时,BIFT-id可以为BIER label。在BFR转发组播流时,通过BIFT-id查找转发表对应<SD:SI:BSL>集。BIFT-id由控制器全局统一分配并且每个节点都获取到同样的BIFT-id与<SD:SI:BSL>的映射信息。因此,在控制器生成转发表时按照<SD:SI:BSL>为索引生成多个子表,同时为每张子表分配BIFT-id,将新增的子表通过南向协议下发到各个BFR,实现转发表基于业务增量下发的机制。
下面通过具体实施例进一步说明本申请。
实施例一
本实施例基于图5所示的BIER组网场景。
如图5所示,BIER-TE域中包括节点BFIR1,BFIR2,BFR3,BFR4,BFR5,BFER1和BFER2。节点间的链路与端口如图5所示,每个端口在BIER-TE中分配一个adjacency ID(邻接标识),分别为A1~A14。
该网络中有两个组播业务,组播业务一和组播业务二。其中,组播业务一指定BFIR2为入节点,指定BFER1和BFER2为对其感兴趣的出口节点,使用路径计算算法,分别为首节点到两个尾节点分别计算路径,得到BFIR2到BFER1和BFER2的两条路径,如图5中虚线所示,这两条路径经过的adjacency分别如下:
BFIR2->BFER1:SRC->A13->A1->A2->A6->A7->A11->RCVs
BFIR2->BFER2:SRC->A13->A1->A2->A6->A8->A3->A5->A9->A10->A12->RCVs
组播业务二指定BFIR1为入节点,指定BFER1和BFER2为对其感兴趣的出口节点,使用路径计算算法,分别为首节点到两个尾节点分别计算路径,得到BFIR1到BFER1和BFER2的两条路径,如图5中点线所示。这两条路径经过的adjacency分别如下:
BFIR1->BFER1:SRC->A14->A4->A3->A8->A7->A11->RCVs
BFIR1->BFER2:SRC->A14->A4->A5->A9->A10->A12->RCVs
本实施例中,为组播业务一的两条路径分配相同的<SD:SI:BSL>,如<0:0:16>,分配全局唯一的BIFT-id为1,该BIFT-id与<0:0:16>对应,BIFT-type为BIER-TE。
如图6(a)所示,包括:
步骤601,控制器收集网络拓扑信息。
步骤602,组播业务一指定的入口节点和出口节点分别为BFIR2和BFER1,BFER2,控制器进行路径计算,得出BFIR2通往BFER1和BFER2的路径:
BFIR2->BFER1:SRC->A13->A1->A2->A6->A7->A11->RCVs
BFIR2->BFER2:SRC->A13->A1->A2->A6->A8->A3->A5->A9->A10->A12->RCVs
步骤603,控制器为BFIR2->BFER1所经过的所有adjacency分配SD=0,SI=0,BSL=16,对应的BIFT-id为1。对应的<SI:BP>分别为:
A13->0:13;A1->0:1;A2->0:2;A6->0:6;A7->0:7;A11->0:11。
为BFIR2->BFER2所经过所有adjacency分配<SD:SI:BSL>为SD=0,SI=0,BSL=16。对应的<SI:BP>分别为:
A8->0:8;A3->0:3;A5->0:5;A9->0:9;A10->0:10;A12->0:12。
如图6(b)所示,邻接A13被分配的<SD:SI:BSL>为<0:0:16>,对应的BIFT-id为1,分配的BP为13,图6(b)中以1:p13示意。图6(b)中其余各邻接上的示意类似,此处不再赘述。
步骤604,根据已分配的<SD:SI:BSL>以及BP,下发每个BFR的转发表。如表2所示。
表2转发表<SD=0,SI=0,BSL=16>,BIFT-id=1
需要说明的是,表2为下发给各节点的转发表的汇总。下发给各节点的转发表配置仅包含表2中的该节点相关的信息。比如,下发给BFIR2的转发表中包括如下信息:
1:p13:local_decap()
1:p2:forward_connected(BFR3)
步骤605,控制器根据SI将路径合成一个BitString下发,保留对端邻接后,合成后经过路径为:A2,A5,A7,A8,A10,A12,A11,即下发到BFIR2的SI为:Bitstring为0:0000111011010010。
组播报文转发时,设备侧各个节点将转发表项生成Bit的String形式,与BitString相与,查找不为0的bit位,逐跳转发和复制组播报文。
实施例二
本实施例基于图5所示组网,详细组网方式参考实施例一中的相关描述。
本实施例中,根据BP分配策略,为两条路径的adjacency分配不同的<SD:SI:BSL>集,分别为<0:0:8>和<0:1:16>,分别分配全局唯一的BIFT-id:2和3,BIFT-type为BIER-TE,如图7(a)所示,包括:
步骤701,控制器收集网络拓扑信息。
步骤702,组播业务指定的入口节点为BFIR2和出口节点为BFER1和BFER2,控制器进行路径计算,得出通往BFER1和BFER2的路径:
BFIR2->BFER1:SRC->A13->A1->A2->A6->A7->A11->RCVs
BFIR2->BFER2:SRC->A13->A1->A2->A6->A8->A3->A5->A9->A10->A12->RCVs
步骤703,根据策略为BFIR2->BFER1所经过的所有adjacency分配<SD:SI:BSL>为SD=0,SI=0,BSL=8。对应的<SI:BP>分别为:
A13->0:1;A1->0:2;A2->0:3;A6->0:4;A7->0:5;A11->0:6。
根据策略为BFIR2->BFER2所经过所有adjacency分配<SD:SI:BSL>为SD=0,SI=1,BSL=16。对应的<SI:BP>分别为:
A13->1:1;A1->1:2;A2->1:3;A6->1:4;A8->1:5;A3->1:6;A5->1:7;A9->1:8;A10->1:9;A12->1:10。
如图7(b)所示,邻接A13被分配的<SD:SI:BSL>为<0:0:8>,对应的BIFT-id为2,相应的BP为1,A13还被分配的<SD:SI:BSL>为<0:1:16>,对应的BIFT-id为3,相应的BP为1,图7(b)中以2:p1和3:p1示意。图7(b)中其余各邻接上被分配的<SD:SI:BSL>和BP的示意类似,此处不再赘述。
步骤704,根据已分配的<SD:SI:BSL>和BP,下发每个BFR的转发表。如表3所示。
表3<SD=0,SI=0,BSL=8>,BIFT-id=2<SD=0,SI=1,BSL=16>,BIFT-id=3
需要说明的是,表3为下发给各节点的转发表的汇总。下发给各节点的转发表仅包含表3中的该节点对应的信息。比如,下发给BFIR2的转发表中包括如下信息:
2:p1:local_decap()
2:p3:forward_connected(BFR3)
3:p1:local_decap()
3:p3:forward_connected(BFR3)
下发给BFIR2的转发表中包括两个子表,一个是BIFT-id=2对应的子表如下:
2:p1:local_decap()
2:p3:forward_connected(BFR3)
一个是BIFT-id=3对应的子表如下:
3:p1:local_decap()
3:p3:forward_connected(BFR3)
步骤705,控制器根据SI分成两个BitString下发。下发到BFIR2的Bitstring,保留对端邻接后的路径分别为:A2,A7,A11和A2,A8,A5,A10,A12,SI:Bitstring分别为0:00110100和1:0000001101010100。
组播报文转发时,设备侧各个节点将转发表项生成Bit的String形式,与BitString相与,查找不为0的bit位,逐跳转发和复制组播报文。
实施例三
本实施例中,在已建立组播业务一且已分配BP的BIER域中建立组播业务二,其中,组播业务一按实施例二中所示分配BP。本实施例中,根据BP分配策略,分别为两条路径分配BP。其中,路径BFIR1->BFER1经过的adjacency中,A3和A8已分配到SI=1,A7和A11已分配到S1=0,在不同的SI(即不属于同一<SD:SI:BSL>,因此为该路径重新分配SI=2,BSL=8,分配全局唯一的BIFT-id为4。BFIR1->BFER2经过的adjacency A14,A4未分配,其他邻接分配到SI=1,BSL=16,而SD=0,SI=1,BSL=16中还有足够的未占用的BP,因此为A14,A4分配SD=0,SI=1,BSL=16中的BP。
如图8(a)所示,包括:
步骤801,控制器收集网络拓扑。
步骤802,组播业务二指定入口节点和出口节点分别为BFIR1和BFER1,BFER2。控制器进行路径计算,得出两条路径:
BFIR1->BFER1:SRC->A14->A4->A3->A8->A7->A11->RCVs
BFIR1->BFER2:SRC->A14->A4->A5->A9->A10->A12->RCVs
步骤803,根据策略为BFIR1->BFER1所经过所有adjacency分配<SD:SI:BSL>为SD=0,SI=2,BSL=8。对应的<SI:BP>分别为:
A14->2:1;A4->2:2;A3->2:3;A8->2:4;A7->2:5;A11->2:6。
根据策略为BFIR1->BFER2待分配的adjacency继续分配<SD:SI:BSL>为SD=0,SI=1,BSL=16。对应的<SI:BP>分别为:
A14->1:11;A4->1:12。
各邻接被分配的<SD:SI:BSL>和BP如图8(b)所示,可以看到,相比图7(b),图8(b)中,A7被分配的<SD:SI:BSL>和BP为2:p5,4:p5,相比图7(b)增加了4:p5。
步骤804,根据新增分配的BP,生成增量转发表,如表4所示。
表4<SD=0,SI=1,BSL=16>,BIFT-id=3以及<SD=0,SI=2,BSL=8>,BIFT-id=4的转发表
需要说明的是,由于只有表4中几个节点的邻接所分配的BP发生变化,因此,增量转发表只包括上述信息。其余未发生变化的BP无需再次下发。不同于相关技术中全网一次性下发转发表,本申请中,当有新组播业务时,根据为该组播业务分配的BP中新增的BP,下发增量转发表,携带新增的BP信息。
步骤805,控制器根据SI分成两个BitString下发。下发到BFIR1的Bitstring,保留对端邻接后的路径分别为:A3,A7,A11和A5,A10,A12,SI:Bitstring分别为2:00110100和1:0000001101000000。
组播报文转发时,设备侧各个节点将转发表项生成Bit的String形式,与BitString相与,查找不为0的bit位,逐跳转发和复制组播报文。
需要说明的是,上述实施例中所述的SI,BP,BSL的具体取值为简单示例,实际数据按照网络设备要求而定。
本发明一实施例提供一种组播业务控制装置,包括存储器和处理器,所述存储器存储有程序,所述程序在被所述处理器读取执行时,实现上述组播业务控制方法,因此,所述程序在被所述处理器读取执行时,执行的具体操作可参考上述组播业务控制方法实施例。
本发明一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述组播业务控制方法。因此,所述程序在被所述处理器读取执行时,执行的具体操作可参考上述组播业务控制方法实施例。
所述计算机可读存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (16)
1.一种组播业务控制方法,其特征在于,包括:
控制器获取组播业务的入口节点和各出口节点信息,确定所述入口节点至所述各出口节点的路径集;
所述控制器为所述路径集经过的邻接分配比特位;
所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表到所述路径集经过的转发节点;
所述控制器确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点;
所述控制器为所述路径集经过的邻接分配比特位包括:
为所述路径集经过的邻接分配比特位时,同一路径上的每个邻接所分配的比特位中存在一个比特位属于同一由子域标识、子集标识和比特位串长度构成的集;
所述控制器根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述控制器为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集,增量生成所述转发表;
所述转发表中携带转发表标识,每个所述转发表标识唯一对应一个由子域标识、子集标识和比特位串长度构成的集,所述转发表标识指示所述转发表中携带的比特位所属的由子域标识、子集标识和比特位串长度构成的集;
所述控制器确定所述组播业务对应的比特位串信息包括:
所述控制器根据为所述组播业务分配的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集生成一个或多个比特位串,每个比特位串对应一个由子域标识、子集标识和比特位串长度构成的集;
所述比特位串信息包括所述组播业务的所有比特位串以及每个比特位串对应的由子域标识、子集标识和比特位串长度构成的集,或者,包括所述组播业务的所有比特位串和每个比特位串对应的转发表标识,每个所述转发表标识指示一个由子域标识、子集标识和比特位串长度构成的集。
2.如权利要求1所述的组播业务控制方法,其特征在于,所述控制器为所述路径集经过的邻接分配比特位包括:
如果所述路径集中的K条路径的所有邻接均未分配比特位,则为所述K条路径分配M个由子域标识、子集标识和比特位串长度构成的集,为该K条路径的每个邻接分配比特位时,为同一条路径的每个邻接分别分配一个属于同一个由子域标识、子集标识和比特位串长度构成的集的比特位,所述K小于等于所述组播业务的路径的总条数,所述M小于等于K。
3.如权利要求1所述的组播业务控制方法,其特征在于,所述控制器为所述路径集经过的邻接分配比特位包括:
对所述路径集中所经过的部分邻接已被分配过比特位的路径,按如下方式分配比特位:
如果该路径经过的部分邻接所分配的比特位属于同一由子域标识、子集标识和比特位串长度构成的集,且该路径经过的部分邻接所属的该由子域标识、子集标识和比特位串长度构成的集还有足够的未占用的比特位,则为该路径经过的其他邻接分配该由子域标识、子集标识和比特位串长度构成的集的比特位,否则,为该路径分配新的由子域标识、子集标识和比特位串长度构成的集,并为该路径经过的所有邻接分配比特位。
4.如权利要求1所述的组播业务控制方法,其特征在于,所述控制器为所述路径集经过的邻接分配比特位包括:
为每个邻接分配一个或多个比特位,当分配多个比特位时,该多个比特位均属于不同的由子域标识、子集标识和比特位串长度构成的集。
5.如权利要求1所述的组播业务控制方法,其特征在于,所述转发表中携带转发表类型信息,所述转发表类型信息指示所述组播业务的转发技术类型。
6.如权利要求1至5任一所述的组播业务控制方法,其特征在于,所述方法还包括:
当所述组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
7.如权利要求1至5任一所述的组播业务控制方法,其特征在于,所述方法还包括:
当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
8.如权利要求1至5任一所述的组播业务控制方法,其特征在于,所述方法还包括:
当有新的组播业务时,为所述新的组播业务的路径集的所有邻接分配比特位及其所属的由子域标识、子集标识和比特位串长度构成的集;
根据为所述新的组播业务新分配的比特位生成增量转发表并下发到转发节点;
根据为所述新的组播业务分配的比特位及转发表,生成比特位串信息,并下发到入口节点。
9.一种组播业务控制装置,其特征在于,包括:
路径计算模块,设置为,获取组播业务的入口节点和各出口节点,确定所述入口节点至所述各出口节点的路径集;
策略控制模块,设置为,为所述路径集经过的邻接分配比特位;
资源管理模块,设置为,根据为所述路径集经过的所有邻接所分配的比特位,生成转发表并下发转发表配置到所述路径集经过的转发节点,以及,确定所述组播业务对应的比特位串信息,将所述比特位串信息下发到所述组播业务的入口节点;
所述策略控制模块为所述路径集经过的邻接分配比特位包括:
为所述路径集经过的邻接分配比特位时,同一路径上的每个邻接所分配的比特位中存在一个比特位属于同一由子域标识、子集标识和比特位串长度构成的集;
所述资源管理模块根据为所述路径集经过的所有邻接所分配的比特位,生成转发表包括:
所述资源管理模块为所述组播业务的路径集经过的所有邻接分配比特位后,根据为所述组播业务新增的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集,增量生成所述转发表;
所述转发表中携带转发表标识,每个所述转发表标识唯一对应一个由子域标识、子集标识和比特位串长度构成的集,所述转发表标识指示所述转发表中携带的比特位所属的由子域标识、子集标识和比特位串长度构成的集;
所述资源管理模块确定所述组播业务对应的比特位串信息包括:
所述资源管理模块根据为所述组播业务分配的比特位及其所属的由子域标识、子集标识和比特位串长度构成的集生成一个或多个比特位串,每个比特位串对应一个由子域标识、子集标识和比特位串长度构成的集;
所述比特位串信息包括所述组播业务的所有比特位串以及每个比特位串对应的由子域标识、子集标识和比特位串长度构成的集,或者,包括所述组播业务的所有比特位串和每个比特位串对应的转发表标识,每个比特位串对应的转发表标识指示该比特位串对应的由子域标识、子集标识和比特位串长度构成的集。
10.如权利要求9所述的组播业务控制装置,其特征在于,所述策略控制模块为所述路径集经过的邻接分配比特位包括:
如果所述路径集中的K条路径的所有邻接均未分配比特位,则为所述K条路径分配M个由子域标识、子集标识和比特位串长度构成的集,为该K条路径的每个邻接分配比特位时,为同一条路径的每个邻接分别分配一个属于同一个由子域标识、子集标识和比特位串长度构成的集的比特位,所述K小于等于所述组播业务的路径的总条数,所述M小于等于K。
11.如权利要求9所述的组播业务控制装置,其特征在于,所述策略控制模块为所述路径集经过的邻接分配比特位包括:
对所述路径集中所经过的部分邻接已被分配过比特位的路径,按如下方式分配比特位:
如果该路径经过的部分邻接所分配的比特位属于同一由子域标识、子集标识和比特位串长度构成的集,且该路径经过的部分邻接所属的该由子域标识、子集标识和比特位串长度构成的集还有足够的未占用的比特位,则为该路径经过的其他邻接分配该由子域标识、子集标识和比特位串长度构成的集的比特位,否则,为该路径分配新的由子域标识、子集标识和比特位串长度构成的集,并为该路径经过的所有邻接分配比特位。
12.如权利要求9所述的组播业务控制装置,其特征在于,所述转发表中携带转发表类型信息,所述转发表类型信息指示所述组播业务的转发技术类型。
13.如权利要求9至12任一所述的组播业务控制装置,其特征在于,
所述策略控制模块还用于,当组播业务删除时,删除分配给该组播业务且未被其他组播业务使用的比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,删除所述组播业务对应的比特位串信息,并下发到相关节点。
14.如权利要求9至12任一所述的组播业务控制装置,其特征在于,
所述策略控制模块还用于,当所述组播业务的路径发生拓扑变化或故障时,删除分配给所述路径且未被其他路径使用的比特位,获取所述组播业务的更新路径,为所述更新路径所经过的邻接分配比特位,通知所述资源管理模块进行更新;
所述资源管理模块还用于,接收到所述策略控制模块的通知后,更新转发表,更新所述组播业务对应的比特位串信息,并下发到相关节点。
15.一种组播业务控制装置,其特征在于,包括存储器和处理器,所述存储器存储有程序,所述程序在被所述处理器读取执行时,实现如权利要求1至8任一所述的组播业务控制方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1至8任一所述的组播业务控制方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710680526.2A CN109391478B (zh) | 2017-08-10 | 2017-08-10 | 一种组播业务控制方法和装置、计算机可读存储介质 |
PCT/CN2018/099946 WO2019029698A1 (zh) | 2017-08-10 | 2018-08-10 | 一种组播业务控制方法和装置、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710680526.2A CN109391478B (zh) | 2017-08-10 | 2017-08-10 | 一种组播业务控制方法和装置、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109391478A CN109391478A (zh) | 2019-02-26 |
CN109391478B true CN109391478B (zh) | 2021-09-10 |
Family
ID=65273318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710680526.2A Active CN109391478B (zh) | 2017-08-10 | 2017-08-10 | 一种组播业务控制方法和装置、计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109391478B (zh) |
WO (1) | WO2019029698A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110324263B (zh) | 2018-03-30 | 2021-06-29 | 华为技术有限公司 | 传输组播报文的方法、设备和系统 |
CN112511988B (zh) * | 2020-03-06 | 2024-04-19 | 中兴通讯股份有限公司 | 报文转发方法、设备、系统、网络设备和存储介质 |
WO2022053122A1 (en) * | 2020-09-08 | 2022-03-17 | Huawei Technologies Co., Ltd. | Terminal-based internet services over converged ethernet |
CN114531392A (zh) * | 2020-11-03 | 2022-05-24 | 南京中兴软件有限责任公司 | 组播业务设计方法、服务器及存储介质 |
CN114095374A (zh) * | 2021-11-11 | 2022-02-25 | 北京金山云网络技术有限公司 | 网络拓扑的确定方法、装置和电子设备 |
CN115022241B (zh) * | 2022-05-31 | 2023-06-09 | 烽火通信科技股份有限公司 | 一种bier自动配置及管理bsl的方法和装置 |
CN115225566B (zh) * | 2022-07-22 | 2023-05-23 | 中国人民解放军空军工程大学 | 不确定性视角下航空集群机载网络Group-Oblivious组播路由方法 |
CN117834591A (zh) * | 2022-09-29 | 2024-04-05 | 中兴通讯股份有限公司 | 组播流量报文转发方法、系统、计算机设备及可读介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106572023A (zh) * | 2015-10-12 | 2017-04-19 | 中兴通讯股份有限公司 | 一种实现比特位索引显示复制的方法及比特位转发路由器 |
CN106603413A (zh) * | 2015-10-14 | 2017-04-26 | 中兴通讯股份有限公司 | 通过指定路径传输流量的方法和装置 |
CN106656794A (zh) * | 2015-10-30 | 2017-05-10 | 中兴通讯股份有限公司 | 一种报文传输方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10033641B2 (en) * | 2014-11-06 | 2018-07-24 | Juniper Networks, Inc. | Deterministic and optimized bit index explicit replication (BIER) forwarding |
US9705784B2 (en) * | 2014-12-31 | 2017-07-11 | Juniper Networks, Inc. | Bit index explicit replication (BIER)forwarding for network device components |
-
2017
- 2017-08-10 CN CN201710680526.2A patent/CN109391478B/zh active Active
-
2018
- 2018-08-10 WO PCT/CN2018/099946 patent/WO2019029698A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106572023A (zh) * | 2015-10-12 | 2017-04-19 | 中兴通讯股份有限公司 | 一种实现比特位索引显示复制的方法及比特位转发路由器 |
CN106603413A (zh) * | 2015-10-14 | 2017-04-26 | 中兴通讯股份有限公司 | 通过指定路径传输流量的方法和装置 |
CN106656794A (zh) * | 2015-10-30 | 2017-05-10 | 中兴通讯股份有限公司 | 一种报文传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019029698A1 (zh) | 2019-02-14 |
CN109391478A (zh) | 2019-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109391478B (zh) | 一种组播业务控制方法和装置、计算机可读存储介质 | |
US7570649B2 (en) | Forwarding state sharing between multiple traffic paths in a communication network | |
CN107005462B (zh) | 软件定义网络中数据转发的方法、设备和系统 | |
EP2224649B1 (en) | Load balancing network traffic on a label switched path using resource reservation protocol with traffic engineering | |
US7889675B2 (en) | Method and system for multi-layer network routing | |
US11792044B2 (en) | Offset label for aggregating multicasts from multiple virtual private networks on a single multicast distribution tree | |
US7672313B2 (en) | Method for realizing route forwarding in network | |
US20070268821A1 (en) | Rpr representation in ospf-te | |
CN115004656B (zh) | 一种报文发送方法、设备及系统 | |
US11502896B2 (en) | Network failure protection method, system, and storage medium | |
CN112311592B (zh) | SRv6 SID的自适应组网方法及装置 | |
CN101326791A (zh) | 以太网的通用多协议标签交换控制 | |
WO2019007316A1 (zh) | 实现双向segment routing隧道的方法及装置、存储介质及设备 | |
WO2017045561A1 (zh) | 分配全局标签的方法、获取全局标签的方法及相关装置 | |
US7649896B2 (en) | System using label switching techniques to support QoS for mobile ad-hoc networks and its label distributing and switching method | |
CN115277548A (zh) | 一种传输方法、装置及存储介质 | |
CN110581806B (zh) | 一种自动切分网络的方法、装置、设备及存储介质 | |
CN114205282B (zh) | SRv6 Policy的调度方法、系统、路由器和控制器 | |
US11477041B2 (en) | Stateless multicast based on local label spaces | |
CN105591911A (zh) | 一种lsp的生成方法和装置 | |
US11706136B2 (en) | Stateless multicasting over traffic engineered unicast tunnels | |
CN102497324B (zh) | 一种不同mst域之间的数据传输方法和设备 | |
WO2009052720A1 (fr) | Procédé, dispositif et système d'allocation d'étiquette de nœud en amont pour un tunnel point à multipoint | |
CN116112431A (zh) | 一种隧道建立、报文传输方法及设备、存储介质 | |
CN111935016A (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 |