CN116471225A - 组播流传输路径的优选方法及装置、电子设备、存储介质 - Google Patents
组播流传输路径的优选方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116471225A CN116471225A CN202310691008.6A CN202310691008A CN116471225A CN 116471225 A CN116471225 A CN 116471225A CN 202310691008 A CN202310691008 A CN 202310691008A CN 116471225 A CN116471225 A CN 116471225A
- Authority
- CN
- China
- Prior art keywords
- node
- priority value
- path
- real
- priority
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000005457 optimization Methods 0.000 title description 2
- 238000013439 planning Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 abstract description 2
- 230000000903 blocking effect Effects 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种组播流传输路径的优选方法及装置、电子设备、存储介质,涉及网络通信技术领域,其中,方法包括:针对待传输的第一组播流的每条备选路径,计算备选路径上各个节点的节点优先级值;其中,节点优先级值包括实时优先级值、计划优先级值、以及链路优先级值;累加备选路径上所有节点的节点优先级值,以确定备选路径的路径优先级值;将路径优先级值最高的备选路径确定为目标路径,并基于目标路径传输第一组播流;本申请实施例尤其适用于对组播流有强管控需求的场景,可以实现合理地分配组播流在网络中的传输,提高网络利用率,降低网络阻塞。
Description
技术领域
本申请涉及网络通信技术领域,特别是涉及组播流传输路径的优选方法及装置、电子设备、存储介质。
背景技术
随着广播电视领域的IP(Internet Protocol,网际互联协议)化发展,IP视频网络逐渐替代了传统的SDI(Serial digital interface,数字串行接口)视频网络,在IP视频网络中常用的视音频数据流就是基于IP组播技术的组播流。通常一路视音频流包含:1路视频组播流,1路音频组播流,1路辅助数据组播流。
传统SDI数据线能够混合传输视音频流,因此可以简单地用SDI线来定义和管控一路视音频信号,但在IP网络中,视频信号无法再使用单线单信号的方式进行简单管理。由此引入的SDN(Software-Defined Networking,软件定义网络)技术虽然能够解决部分视频流传输问题,但现有的SDN实现机制中,路径算法大多比较简单,通常采用最短路径或最小延迟算法,没有考虑实时的路径节点流量,以及实际使用规划。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
鉴于上述有强管控需求的领域,尤其是在广电领域中IP的组播流多路径传输和选择策略仍有待进一步优化和提高的问题,提出了本申请以便提供克服上述问题或者至少部分地解决上述问题的组播流传输路径的优选方法及装置、电子设备、存储介质,包括:
一种组播流传输路径的优选方法,所述方法包括:
针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;
根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值;
将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
可选地,所述针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值,还包括:
按照所述备选路径上各个节点的传输顺序、依次计算所述备选路径的节点的节点优先级值。
可选地,在所述根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值之前,所述方法还包括:
当计算出所述备选路径中的节点优先级值为无效值时,将所述备选路径剔除。
可选地,所述方法还包括:
对待传输的第一组播流按照预设命名规范命名,确定所述第一组播流的第一组播流名称,所述第一组播流名称包含所述第一组播流传输所需的传输流量、第一组播流发送端关键字以及第一组播流接收端关键字。
可选地,所述针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值,包括:
针对待传输的第一组播流的每条备选路径的每个节点,确定所述每个节点对应的流入端口的实时流入流量,以及所述每个节点对应的流出端口的实时流出流量;
根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值;
确定所述每个节点对应的流入端口的计划流入流量,以及所述每个节点对应的流出端口的计划流出流量;
根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值;
根据所述第一组播流发送端关键字和第一组播流接收端关键字以及所述每个节点对应的链路,查询预设链路优先级表,确定所述每个节点的链路优先级值;所述预设链路优先级表用于记录各个关键字与各个链路关联的优先级值;
根据所述每个节点的实时优先级值、计划优先级值以及链路优先级值,得到所述每个节点的节点优先级值。
可选地,所述根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值,包括:
根据所述实时流入流量和所述传输流量的第一流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的实时流入优先级值;
根据所述实时流出流量和所述传输流量的第二流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的实时流出优先级值;
根据所述实时流入优先级值和所述实时流出优先级值确定所述每个节点的实时优先级值。
可选地,所述方法还包括:
当所述流入端口的实时流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
当所述流出端口的实时流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
可选地,所述根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值,包括:
根据所述计划流入流量和所述传输流量的第三流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的计划流入优先级值;
根据所述计划流出流量和所述传输流量的第四流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的计划流出优先级值;
根据所述计划流入优先级值和所述计划流出优先级值确定所述每个节点的计划优先级值。
可选地,所述方法还包括:
当所述流入端口的计划流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
当所述流出端口的计划流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
一种组播流传输路径的优选装置,所述装置包括:
节点优先级值确定模块,用于针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;
路径优先级值确定模块,用于根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值;
目标路径确定模块,用于将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
可选地,所述节点优先级值确定模块还用于按照所述备选路径上各个节点的传输顺序、依次计算所述备选路径的节点的节点优先级值。
可选地,所述装置还包括:
备选路径剔除模块,用于当计算出所述备选路径中的节点优先级值为无效值时,将所述备选路径剔除。
可选地,所述装置还包括:
组播流命名模块,用于对待传输的第一组播流按照预设命名规范命名,确定所述第一组播流的第一组播流名称,所述第一组播流名称包含所述第一组播流传输所需的传输流量、第一组播流发送端关键字以及第一组播流接收端关键字。
可选地,所述节点优先级值确定模块包括:
实时流量确定子模块,用于针对待传输的第一组播流的每条备选路径的每个节点,确定所述每个节点对应的流入端口的实时流入流量,以及所述每个节点对应的流出端口的实时流出流量;
实时优先级值计算子模块,用于根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值;
计划流量确定子模块,用于确定所述每个节点对应的流入端口的计划流入流量,以及所述每个节点对应的流出端口的计划流出流量;
计划优先级值计算子模块,用于根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值;
链路优先级值计算子模块,用于根据所述第一组播流发送端关键字和第一组播流接收端关键字以及所述每个节点对应的链路,查询预设链路优先级表,确定所述每个节点的链路优先级值;所述预设链路优先级表用于记录各个关键字与各个链路关联的优先级值;
节点优先级值计算子模块,用于根据所述每个节点的实时优先级值、计划优先级值以及链路优先级值,得到所述每个节点的节点优先级值。
可选地,所述实时优先级值计算子模块,包括:
第一确定单元,用于根据所述实时流入流量和所述传输流量的第一流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的实时流入优先级值;
第二确定单元,用于根据所述实时流出流量和所述传输流量的第二流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的实时流出优先级值;
第三确定单元,用于根据所述实时流入优先级值和所述实时流出优先级值确定所述每个节点的实时优先级值。
可选地,所述装置还包括:
第一剔除模块,用于当所述流入端口的实时流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
第二剔除模块,用于当所述流出端口的实时流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
可选地,所述计划优先级值计算子模块,包括:
第四确定单元,用于根据所述计划流入流量和所述传输流量的第三流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的计划流入优先级值;
第五确定单元,用于根据所述计划流出流量和所述传输流量的第四流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的计划流出优先级值;
第六确定单元,用于根据所述计划流入优先级值和所述计划流出优先级值确定所述每个节点的计划优先级值。
可选地,所述装置还包括:
第三剔除模块,用于当所述流入端口的计划流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
第四剔除模块,用于当所述流出端口的计划流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的组播流传输路径的优选方法。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的组播流传输路径的优选方法。
本申请具有以下优点:
本申请实施例提供的组播流传输路径的优选方法,针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;其中,所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;根据所述备选路径上所有节点的节点优先级值,以确定所述备选路径的路径优先级值;将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流;结合节点的实时优先级值、计划优先级值、链路优先级值来进行最优路径的选择,尤其适用于对组播流有强管控需求的场景,可以实现合理地分配组播流在网络中的传输,提高网络利用率,降低网络阻塞。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的一种组播流传输路径的优选方法的步骤流程图;
图2为本申请一示例中的网络拓扑示意图;
图3为本申请一示例中确定节点优先级值的步骤流程图;
图4为本申请一示例中对多条备选路径同步计算节点优先级值的示意图;
图5为本申请实施例的一种组播流传输路径的优选装置的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例的核心发明点之一在于,考虑到实际使用中对于实时流量、管控策略等因素,通过确定可以用于传输第一组播流的至少一条备选路径,针对每条备选路径,计算该备选路径上各个节点的节点优先级值,该节点优先级值是根据与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、与节点对应的链路相关的链路优先级值的节点优先级值得到的,再基于该备选路径上所有节点的节点优先级值确定该备选路径的路径优先级值,从至少一条备选路径中确定出路径优先级值最高的目标路径来传输第一组播流,实现合理地分配组播流在网络中的传播,提高网络利用率,降低网络阻塞。
参照图1,示出了本申请一实施例提供的一种组播流传输路径的优选方法的步骤流程图,本申请实施例尤其适用于对组播流有管控需求的场景,例如广播电视领域中对视音频信号流有强管控需求的场景。本申请实施例提供的组播流路径的优选方法,具体可以包括如下步骤:
步骤102,针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值。
其中,第一组播流可以指待传输的组播流中的任意一路,对于任一待传输的组播流,可以确定该组播流的源端口信息和目的端口信息,根据待传输的第一组播流的源端口信息和目的端口信息,确定用于传输所述第一组播流的至少一条备选路径。其中,源端口是指初始发送该组播流的端口,目的端口是指最终接收该组播流的端口。结合网络拓扑结构,可以确定至少一条连接源端口和目的端口的路径,将该路径记为备选路径。
其中,所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值。
在确定出多条备选路径后,对于每一条备选路径可以执行相同的步骤,即计算该备选路径上各个节点的节点优先级值。
需要强调的是,在本申请实施例中,节点优先级值包括与节点的实时流量相关的实时优先级值,与节点的计划流量相关的计划优先级值,与节点对应的链路相关的链路优先级值,通过综合多种因素来确定最优传输路径,可以提高组播流传输的合理性。
步骤103,根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值。
针对每一条备选路径,通过步骤102可以得到该备选路径上各个节点的节点优先级值,进而根据该备选路径的所有节点的节点优先级值,确定该备选路径的路径优先级值。
示例性地,可以将该备选路径的所有节点的节点优先级值进行累加,累加得到的值即为该备选路径的路径优先级值。
步骤104,将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
在得到每条备选路径的路径优先级值后,可以对所有备选路径的路径优先级值进行排序或比较大小,从中确定出最高路径优先级值,将最高路径优先级值对应的备选路径确定为目标路径,即最优路径,并通过目标路径传输该第一组播流。
本申请实施例通过根据待传输的第一组播流的源端口信息和目的端口信息,确定用于传输所述第一组播流的至少一条备选路径;针对每条备选路径,计算所述备选路径上各个节点的节点优先级值;其中,所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;累加所述备选路径上所有节点的节点优先级值,以确定所述备选路径的路径优先级值;将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流;结合节点的实时优先级值、计划优先级值、链路优先级值来进行最优路径的选择,尤其适用于对组播流有强管控需求的场景,可以实现合理地分配组播流在网络中的传输,提高网络利用率,降低网络阻塞。
下面,将对本示例性实施例中组播流传输路径的优选方法作进一步地说明。
在步骤102之前,可以根据待传输的第一组播流的源端口信息和目的端口信息,确定用于传输所述第一组播流的至少一条备选路径。
以广播电视领域中传输视频信号为例,视频信号包括视频流、音频流、辅助数据流,其中,视频流、音频流、辅助数据流均为一路组播流。
在一些实施例中,对于视频信号的传输,可以为视频流、音频流、辅助数据流分别采用本申请实施例提供的组播流传输路径的优选方法确定出各自传输的最优路径,并在各自对应的最优路径上传输。
由于音频流和辅助数据流相对于视频流而言,数据量较小,因此,在实际使用中,对于视频信号的传输,可以只根据视频流采用本申请实施例提供的组播流传输路径的优选方法确定出最优路径,并基于最优路径传输该视频信号的视频流、音频流以及辅助数据流。
一路组播流从源端口到目的端口需要经过一个或多个交换机,并且可能有多条路径可供选择,在本申请实施例中,为避免混淆,将待传输的组播流记为第一组播流,例如,将一路待传输的视频信号中的视频流记为第一组播流;将可以将该第一组播流从源端口传输到目的端口的路径记为备选路径。
如图2所示,图2示出了一示例中包含第一组播流的源端口与目的端口的网络拓扑示意图,其中,PC1表示第一组播流的发送端,S1、S2、S3、S4表示交换机,该交换机支持OpenFlow协议,并且已经处于SDN控制器管控下,该SDN控制器基于OpenFlow协议对交换机进行管控,PC2表示第一组播流的接收端。图中的连线表示第一组播流在网络中的物理线路中的可用走向,其中,连线箭头指向表示第一组播流的流向,连线的两端分别表示各个设备的接入端口。例如,连线PC1→S1.1表示第一组播流从PC1的端口流向交换机S1的1端口。
根据PC1到PC2之间的连线,按顺序进行排列组合,可以得到第一组播流的所有可用路径,即第一组播流的所有备选路径。在图2中,第一组播流的备选路径如表1所示。
表1
从表1中可以得到,第一组播流的备选路径有两条分别为:备选路径1:PC1→S1.1,S1.11→S2.1,S2.11→S4.1,S4.11→PC2;备选路径2:PC1→S1.1,S1.12→S3.1,S3.11→S4.2,S4.11→PC2。
在步骤102中,针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值。
其中,所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、与节点对应的链路相关的链路优先级值。
在本申请一可选实施例中,可以通过优先级计算模块来计算备选路径上各个节点的节点优先级值,其中,该优先级计算模块包括三个子模块,分别为第一优先级计算子模块、第二优先级计算子模块、第三优先级计算子模块。其中,第一优先级计算子模块可以定期获取节点的各个端口的实时流量信息,以计算与节点的实时流量相关的实时优先级值;第二优先级计算子模块可以获取已经规划好的组播流所占用的各个节点端口的出入流量,以计算与节点的计划流量相关的计划优先级值;第三优先级计算子模块用于查找预设链路优先级表,以计算与节点在路径中的链路相关的链路优先级值。
在本申请实施例中,节点优先级值与待传输的第一组播流的发送端特性以及接收端特性相关。发送端特性用于表示第一组播流在发送端的相关信息,接收端特性用于表示第一组播流在接收端的相关信息。在一示例中,发送端特性可以包括第一组播流的源频道、第一组播流所属码流、第一组播流的源名称;接收端特性可以包括第一组播流的目的频道、第一组播流在接收端的用途、第一组播流的目的名称。需要说明的是,在实际应用中,可以根据实际需求确定具体的发送端特性和接收端特性。
例如,当第一组播流的源频道为01频道(CH01),所属码流是主路码流(M),源名称为循环1(LOOP1),是用于循环播放的视频流时,第一组播流发送端特性可以记为CH01-M-LOOP1,即第一组播流发送端关键字包括关键字1:CH01,关键字2:M,关键字3:LOOP1。
当第一组播流的目的频道是01频道(CH01),第一组播流在接收端的用途是审看(CHECK),第一组播流的目的名称是测试1(TEST1)时,第一组播流接收端特性可以记为CH01-CHECK-TEST1,即第一组播流接收端关键字包括关键字4:CH01,关键字5:CHECK,关键字6:TEST1。
为了便于计算节点优先级值,在一些可选实施例中,可以对待传输的第一组播流按照预设命名规范命名,确定所述第一组播流的第一组播流名称,所述第一组播流名称包含所述第一组播流传输所需的传输流量、第一组播流发送端关键字以及第一组播流接收端关键字;从而可以根据第一组播流名称来确定第一组播流传输所需的传输流量、第一组播流发送端关键字、第一组播流接收端关键字。在一示例中,预设命名规范如下表2所示。
表2
其中,第一部分(Part1)表示第一组播流的传输流量,第二部分(Part2)表示第一组播流发送端关键字,表2中,第一组播流发送端关键字有3个,关键字1(key1)表示源频道,关键字2(key2)表示所属码流(包括主路码流(M)和备路码流(S)),关键字3(key3)表示源名称;第三部分(Part3)表示第一组播流接收端关键字,表2中,第一组播流接收端关键字也有3个,分别为关键字4(key4)、关键字5(key5)以及关键字6(key6),key4表示目的频道,key5表示用途(审看(CHECK)、预览(PREVIEW)), key6表示目的名称。可以理解,预设命名规范中第二部分的关键字与发送端特性相关,第三部分的关键字与接收端特性相关。
示例性地,参照图3所示,上述针对每条备选路径,计算所述备选路径上各个节点的节点优先级值,可以包括如下步骤1021-1026。
步骤1021,针对待传输的第一组播流的每条备选路径的每个节点,确定每个节点对应的流入端口的实时流入流量,以及每个节点对应的流出端口的实时流出流量。
其中,每个节点对应的流入端口和流出端口与备选路径相关,例如,在图2所示网络拓扑图中,节点S1具有端口S1.1、S1.11、S1.12,在备选路径1中,节点S1的流入端口为S1.1,流出端口为S1.11。
在确定每条备选路径的每个节点在该备选路径中的流入端口以及流出端口后,可以获取流入端口的实时流入流量以及流出端口的实时流出流量,该实时流入流量是指当前传输到流入端口的数据所占用的流量;实时流出流量是指当前从流出端口输出的数据所占用的流量。
具体地,可以通过SDN控制器相关功能和接口,获取每条备选路径的每个节点对应端口的实时流量,具体地,可以定期获取各个端口的实时流量,并记录到实时流量记录表中,即实时流量记录表定期更新,如下表3所示,为一示例中的所需节点对应端口的实时流量记录表。其中,最大入流量或最大出流量一般小于网口标称的最大流量,以应对流量瞬时爆发等情况。
表3
步骤1022,根据传输流量、实时流入流量和实时流出流量确定每个节点的实时优先级值。
其中,传输流量是指传输第一组播流所需的流量。
根据传输流量、实时流入流量和实时流出流量确定每个节点的实时优先级值,可以理解,节点的实时优先级值与流入端口的实时流入流量、流出端口的实时流出流量以及待传输的第一组播流所需的传输流量相关。
在一可选实施例中,上述根据传输流量、实时流入流量和实时流出流量确定每个节点的实时优先级值,可以包括:
根据所述实时流入流量和所述传输流量的第一流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的实时流入优先级值;
根据所述实时流出流量和所述传输流量的第二流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的实时流出优先级值;
根据所述实时流入优先级值和所述实时流出优先级值确定所述每个节点的实时优先级值。
考虑到在实际使用中,对于任意一个交换机节点,当流入端口的实时可传输流量小于待传输的第一组播流的传输流量时,无法传输第一组播流;或者,当流出端口的实时可传输流量小于待传输的第一组播流的传输流量时,无法传输第一组播流。其中,流入端口的实时可传输流量等于流入端口的最大流量值与实时流入流量的差值;流出端口的实时可传输流量等于流出端口的最大流量值与实时流出流量的差值。
因此,可以根据实时流入流量和传输流量的流量和、与流入端口的最大流量值之间的关系,确定流入端口的实时流入优先级值;为便于区分,将实时流入流量和传输流量的流量和记为第一流量和。当第一流量和大于流入端口的最大流量值时,该流入端口无法传输该第一组播流,对应的实时流入优先级值为无效值,可以记为N/A。
当节点的实时流入优先级值或实时流出优先级值为无效值时,该节点的实时优先级值为无效值,表示在该备选路径中,该节点无法传输第一组播流,相应地,该备选路径也无法传输第一组播流,可以直接将该备选路径剔除,不再执行后续的步骤。
当流入端口的实时流入优先级值为无效值时,说明该流入端口无法接收第一组播流,相应地,在包含该流入端口的备选路径中也无法传输第一组播流,可以直接将包含该流入端口的备选路径剔除。
当流出端口的实时流出优先级值为无效值时,说明该流出端口无法输出第一组播流,相应地,在包含该流出端口的备选路径中也无法传输第一组播流,可以直接将包含该流出端口的备选路径剔除。
也就是说,当备选路径中存在任意一个流入端口的实时流入优先级值为无效值,或存在任意一个流出端口的实时流出优先级值为无效值时,将该备选路径剔除。
当第一流量和小于或等于流入端口的最大流量值时,该流入端口可以传输该第一组播流,对应的实时流入优先级值可以用一个固定的数值表示,例如,当第一流量和小于或等于流入端口的最大流量值时,对应的实时流入优先级值为1;也可以与流入端口实时可传输流量呈线性或非线性关系,一般地,流入端口实时可传输流量越大,对应的实时流入优先级值越大;可以理解,在流入端口的最大流量值一定时,实时流入流量越大,对应的实时流入优先级值越小。
同理,可以确定实时流出优先级值。
在得到节点的实时流入优先级值和实时流出优先级值后,可以根据实时流入优先级值和实时流出优先级值确定节点的实时优先级值。
示例性地,可以将节点的实时流入优先级值与实时流出优先级值相乘,得到的积作为该节点的实时优先级值。
当然,也可以通过其他计算方式计算节点的实时优先级值,包括但不限于将节点的实时流入优先级值与实时流出优先级值相加的和作为该节点的实时优先级值。
步骤1023,确定每个节点对应的流入端口的计划流入流量,以及每个节点对应的流出端口的计划流出流量。
对于一条备选路径中的一个节点而言,计划流入流量是指预先确定的、需要从该节点接入该备选路径中的流入端口输入、流出端口输出的计划组播流所需的流量。每个节点的流入端口的计划流入流量和流出端口的计划流出流量可以记录在预设计划组播流表中,该计划组播流表可以由工作人员预先设置得到。如表4所示,为一示例的计划组播流表。
表4
通过预设计划组播流表,可以确定节点对应的流入端口的计划流入流量和流出端口的计划流出流量,例如,表4中,节点S1的流入端口S1.1的计划流入流量为50+50+50=150Mbps;再如,表4中,节点S1的流出端口S1.11的计划流出流量为50+50=100Mbps。
步骤1024,根据传输流量、计划流入流量和计划流出流量确定每个节点的计划优先级值。
根据传输流量、计划流入流量和计划流出流量确定每个节点的计划优先级值,可以理解,节点的计划优先级值与流入端口的计划流入流量、流出端口的计划流出流量以及待传输的第一组播流所需的传输流量相关。
在一可选实施例中,上述根据传输流量、计划流入流量和计划流出流量确定每个节点的计划优先级值,可以包括:
根据所述计划流入流量和所述传输流量的第三流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的计划流入优先级值;
根据所述计划流出流量和所述传输流量的第四流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的计划流出优先级值;
根据所述计划流入优先级值和所述计划流出优先级值确定所述每个节点的计划优先级值。
考虑到在实际使用中,为了确保计划组播流可以顺利传输,对于任意一个交换机节点,当流入端口的计划可传输流量小于待传输的第一组播流的传输流量时,无法传输第一组播流;或者,当流出端口的计划可传输流量小于待传输的第一组播流的传输流量时,无法传输第一组播流。其中,流入端口的计划可传输流量等于流入端口的最大流量值与计划流入流量的差值;流出端口的计划可传输流量等于流出端口的最大流量值与计划流出流量的差值。
因此,可以根据计划流入流量和传输流量的流量和、与流入端口的最大流量值之间的关系,确定流入端口的计划流入优先级值;为便于区分,将计划流入流量和传输流量的流量和记为第三流量和。当第三流量和大于流入端口的最大流量值时,该流入端口无法传输该第一组播流,对应的计划流入优先级值为无效值,可以记为N/A。
当节点的计划流入优先级值或计划流出优先级值为无效值时,该节点的计划优先级值为无效值,表示在该备选路径中,该节点无法传输第一组播流,相应地,该备选路径也无法传输第一组播流,可以直接将该备选路径剔除,不再执行后续的步骤。
当流入端口的计划流入优先级值为无效值时,说明该流入端口无法接收第一组播流,相应地,在包含该流入端口的备选路径中也无法传输第一组播流,可以直接将包含该流入端口的备选路径剔除。
当流出端口的计划流出优先级值为无效值时,说明该流出端口无法输出第一组播流,相应地,在包含该流出端口的备选路径中也无法传输第一组播流,可以直接将包含该流出端口的备选路径剔除。
也就是说,当备选路径中存在任意一个流入端口的计划流入优先级值为无效值,或存在任意一个流出端口的计划流出优先级值为无效值时,将该备选路径剔除。
当第三流量和小于或等于流入端口的最大流量值时,该流入端口可以传输该第一组播流,对应的计划流入优先级值可以用一个固定的数值表示,例如,当第三流量和小于或等于流入端口的最大流量值时,对应的计划流入优先级值为1;也可以与流入端口计划可传输流量呈线性或非线性关系,一般地,流入端口计划可传输流量越大,对应的计划流入优先级值越大;可以理解,在流入端口的最大流量值一定时,计划流入流量越大,对应的计划流入优先级值越小。
同理,可以确定计划流出优先级值。
在得到节点的计划流入优先级值和计划流出优先级值后,可以根据计划流入优先级值和计划流出优先级值确定节点的计划优先级值。
示例性地,可以将节点的计划流入优先级值与计划流出优先级值相乘,得到的积作为该节点的计划优先级值,其中,优先级值一般为自然数。
当然,也可以通过其他计算方式计算节点的计划优先级值,包括但不限于将节点的计划流入优先级值与计划流出优先级值相加的和作为该节点的计划优先级值。
步骤1025,根据第一组播流发送端关键字和第一组播流接收端关键字以及每个节点对应的链路,查询预设链路优先级表,确定每个节点的链路优先级值;预设链路优先级表用于记录各个关键字与各个链路关联的优先级值。
其中,预设链路优先级表用于记录各个关键字与各个链路关联的优先级值,而关键字与待传输的第一组播流的发送端特性以及接收端特性相关。
预设链路优先级表一般由相关人员根据经验和/或网络规划制定,如下表5所示为本申请一示例中的预设链路优先级表。
表5
其中,预设链路优先级表的关键字由点分隔为三段(形式如x.y.z),x表示所属组播流名称的部分(当x=2时,表示第二部分;当x=3时,表示第三部分);y表示所属部分中的第几个关键字(当y=1时,表示关键字1或关键字4;当y=2时,表示关键字2或关键字5;当y=3时,表示关键字3或关键字6);z表示具体内容。
如关键字2.1.CH01,表示第一组播流名称中第二部分的关键字1的内容为CH01,也就是说,如果第一组播流名称中第二部分的关键字1的内容如果包含或等于CH01,那么,对应的节点链路S1.11 →S2.1的优先级值为100,S2.11→S4.1的优先级值为100,S1.12→S3.1的优先级值为0。特殊地,当节点链路关键字对应优先级值为N/A时,即该优先级值无效,表示该链路不允许包含相对应的关键字的组播流通过,可以直接将该备选路径剔除,不再执行后续的步骤。
根据第一组播流名称中的各个部分的关键字,以及节点对应的链路,通过查表可以得到各个部分的关键字在节点对应的链路中的优先级值,进而得到第一组播流名称中的所有关键字对应的优先级值的和,即节点的链路优先级值。
步骤1026,根据每个节点的实时优先级值、计划优先级值以及链路优先级值,得到每个节点的节点优先级值。
当一个节点的实时优先级值、计划优先级值以及链路优先级值均为有效值时,根据实时优先级值、计划优先级值以及链路优先级值,得到该节点的节点优先级值。
在一可选实施例中,根据实时优先级值、计划优先级值以及链路优先级值具体可以是将同一节点的实时优先级值与计划优先级值以及链路优先级值进行累加求和,得到节点的节点优先级值。
在其他可选实施例中,根据实时优先级值、计划优先级值以及链路优先级值,包括但不限于将同一节点的实时优先级值与计划优先级值以及链路优先级值进行连续相乘,得到节点的节点优先级值。
可选地,上述针对每条备选路径,计算所述备选路径上各个节点的节点优先级值,还可以包括:
按照所述备选路径上各个节点的传输顺序、依次计算所述备选路径的节点的节点优先级值。
在本实施例中,在计算每条备选路径上各个节点的节点优先级值的过程中,可以按照备选路径上各个节点的传输顺序,依次计算节点优先级值。
可以理解的是,在确定出多条备选路径后,对于每一条备选路径可以执行相同的步骤,即计算该备选路径上各个节点的节点优先级值。如图4所示,对多条备选路径的节点计算应是一个并行对齐的过程,即从所有备选路径的第一个节点开始计算,计算完所有备选路径的第1个节点后开始进行第一个节点的节点优先级值判断,即当节点优先级值为无效值时,移除相应无效的备选路径,再计算剩余的备选路径的下一个节点优先级值,直至所有节点计算完毕。
按照各个节点的传输顺序,依次计算节点优先级值,在计算节点优先级值的过程中,当计算出节点的流入端口的实时/计划流入优先级值为无效值时,直接将包含该流入端口的所有备选路径剔除,同理,当计算出节点的流出端口的实时/计划流出优先级值为无效值时,直接将包含该流出端口的所有备选路径剔除,可以减少不必要的计算资源,提高目标路径的选择效率。
在步骤103中,根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值。
针对每一条备选路径,通过步骤102可以得到该备选路径上各个节点的节点优先级值,进而将该备选路径的所有节点的节点优先级值进行累加,累加得到的值即为该备选路径的路径优先级值。
在步骤104中,将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
在得到每条备选路径的路径优先级值后,可以对所有备选路径的路径优先级值进行排序或比较大小,从中确定出最高路径优先级值,将最高路径优先级值对应的备选路径确定为目标路径,即最优路径,并通过目标路径传输该第一组播流。
本申请实施例通过计算节点的实时优先级值、计划优先级值以及链路优先级值,以得到节点的节点优先级值,然后根据节点优先级值确定路径优先级值,最后将路径优先级值最高的备选路径确定为目标路径来传输第一组播流,实现了综合多种因素来确定最优传输路径,可以提高组播流传输的合理性。
此外,在计算每条备选路径的节点优先级值的过程中,按照各个节点的传输顺序、依次计算,并且当计算出备选路径中的节点优先级值为无效值时,将该备选路径剔除,可以及时将无效备选路径剔除,减少不必要的计算资源的浪费,进而提高确定最优路径的效率。
为方便本领域技术人员理解本方案,下面将结合图2的网络拓扑结构对本申请实施例提供的组播流传输路径的优选方法进行示例性解释、说明。
在本示例中,待传输的第一组播流按照预设命名规范命名后,得到的第一组播流名称为50Mbps@CH01-M-LOOP1@CHECK-TEST1,按照表2对预设命名规范进行样式解析,可以得到如下信息:
第一部分:第一组播流的传输流量为50Mbps;
第二部分:第一组播流的源频道为CH01,属于主路M流,源名称为LOOP1;
第三部分:第一组播流的目的频道为CH01,用途为CHECK,目的名称为TEST1。
通过基于OpenFlow协议的SDN控制器模块,可得到从PC1到PC2的所有可用网络路径作为上述第一组播流的备选路径,备选路径如表 1所示。
然后,针对每一条备选路径,从备选路径的首节点开始到末节点结束,对每一个节点,进行路径优先级分析,即计算节点的节点优先级值,其中,节点优先级值包括实时优先级值、计划优先级值以及链路优先级值。
每个节点的节点优先级值计算过程包括如下四个主要步骤:
第一步,计算节点的计划优先级值。
以计算备选路径1中的节点1的节点优先级值为例,优先级计算模块(简称MC模块)调用第一优先级计算子模块(简称MC.c1)计算节点1的各个端口实时优先级PRIruntime,进而计算节点1的实时优先级值NPRIruntime。对于流入端口而言,其实时优先级可以理解为实时流入优先级值,对于流出端口而言,其实时优先级可以理解为实时流出优先级值。为描述简单起见,本示例使用1-N/A判断方法来计算端口实时优先级,即如果端口流量未达到上限,则实时优先级为1,否则为N/A,表示禁止使用此端口,对应的端口实时优先级计算公式如下:
PRIruntime=Fcurrent+Fadd;
PRIruntime<Fmax?1 : N/A;
其中,PRIruntime表示端口实时优先级,Fcurrent表示端口实时入(或出)流量,Fadd表示当前待加入流的流量,即第一组播流的传输流量,Fmax表示端口的最大入(或出)流量。
节点的实时优先级值计算公式如下:
NPRIruntime=PRIruntime1×PRIruntime2;
其中,NPRIruntime表示节点的实时优先级值,PRIruntime1表示节点第一个端口(流出端口)的实时优先级,PRIruntime2表示节点的第二个端口(流入端口)的实时优先级。需要说明的是,如果任意一个端口的实时优先级为N/A,则该节点的实时优先级值为N/A。
优先级值为N/A的端口将被立刻淘汰,意味着包含该端口的备选路径也将被淘汰。在节点1中,PC1不在SDN网络管控中,认为其不限制流量,因此其优先级为1,S1.1端口在节点1中属于流入端口,并在SDN网络管控之中,根据上面的端口实时优先级计算公式,从预先缓存的最新实时流量表中查询到S1.1端口的实时入流量Fcurrent=100Mbps,最大入流量Fmax=1000Mbps,当前待加入流的流量Fadd=50Mbps,可以得到端口S1.1实时优先级为1,同理,可以得到端口S1.11的实时优先级也为1,最终可得节点1的实时优先级值NPRIruntime=1×1=1。
第二步,计算节点的计划优先级值。
MC模块调用第二优先级计算子模块(简记为MC.c2)来计算节点1的计划优先级值PRIplan,计划优先级值计算过程与上述实时优先级值计算过程类似,为便于理解,这里仍然采用1-N/A判断方法来计算端口计划优先级,即如果端口计划流量小于端口最大流量,其优先级为1,否则为N/A。对应的端口计划优先级计算公式如下:
PRIplan=Fplaned+Fadd;
PRIplan<Fmax?1 : N/A;
其中,PRIplan表示端口的计划优先级,Fplaned表示端口的已规划入(或出)流量,即端口的计划入(或出)流量,Fmax表示端口的最大入(或出)流量。
节点的计划优先级值计算公式如下:
NPRIplan=PRIplan1×PRIplan2;
其中,NPRIplan表示节点的计划优先级值,PRIplan1表示节点第一个端口(流出端口)的计划优先级,PRIplan2表示节点第二个端口(流入端口)的计划优先级。需要说明的是,如果任意一个端口计划优先级为N/A,则该节点的计划优先级值为N/A。
对于节点1中的端口PC1,由于其不在SDN网络管控范围内,认为其最大流量没有限制,因此将其优先级记为1,对于端口S1.1,MC.c2模块查询表4中所有输入S1.1端口的组播流路径,并统计相关路径输入S1.1的流量总和。根据表4所示,共有3条组播流路径向S1.1产生了入流量,其总和为50+50+50=150Mbps,根据3所示,端口S1.1的最大入流量为1000Mbps,根据端口计划优先级计算公式计算得出其计划优先级为1,同理,可以得到端口S1.11的计划优先级也为1,最终根据节点的计划优先级值计算公式计算得出节点1的计划优先级值为NPRIplan=1×1=1。
第三步,计算节点的链路优先级值。
MC模块根据第一组播流名称调用第三优先级计算子模块(简记为MC.c3)来计算节点1的链路优先级值PRIlink。链路优先级值可采用查表方式来计算得到,根据本示例中的第一组播流名称:50Mbps@CH01-M-LOOP1@CH01-CHECK-TEST1,查询表5可以得到各个关键字对应的优先级,将其累加,即可得到节点1的链路优先级值。该节点的链路优先级值的计算公式如下:
NPRIlink=ƩPRIlink;
其中,NPRIlink表示节点的链路优先级值,PRIlink表示节点所对应的单个关键字优先级值,需要说明的是,如果任意一个PRIlink值为N/A,则NPRIlink=N/A,如果PRIlink数量为0,则NPRIlink= 0,取最小优先级。
因节点1的链路无法从表格查询到,所以其链路优先级NPRIlink=0。为举例说明,可以看到,备选路径1的节点2的链路可以从表中查询到,其链路优先级值为500,如下面表6所示。
表6
第四步,合并节点的实时优先级值、计划优先级值以及链路优先级值,得到节点的节点优先级值。
根据上述计算出的实时优先级值、计划优先级值、链路优先级值,可以计算出该节点1的节点优先级值,为方便描述,该节点优先级值的计算公式如下:
NPRI=NPRIruntime+NPRIplan+NPRIlink;
其中,NPRI表示节点的节点优先级值,需要说明的是,如果实时优先级值、计划优先级值、链路优先级值中存在任意一个值为N/A,则节点优先级值为N/A。
通过上述第一步得到节点1的实时优先级值为1,通过上述第二步得到节点1的计划优先级值为1,通过上述第三步得到节点1的链路优先级值为0,因此,根据节点优先级值的计算公式可以计算得到节点1的节点优先级值为NPRI=1+1+0=2。
在得到备选路径的各个节点的节点优先级值后,累加各个节点优先级值,得到该备选路径的路径优先级值。
具体地,优先级计算模块对每条备选路径上的所有节点应用上述的四个主要步骤,可得出所有节点的节点优先级值,进而求出整条备选路径的路径优先级值PPRI,路径优先级值计算公式如下:
PPRI = Ʃ NPRI;
其中,PPRI表示路径优先级值。
备选路径1和备选路径2的路径优先级值计算结果如下表 7所示。
表7
即备选路径1的路径优先级值为1008,备选路径2的路径优先级值为208。
最后,将路径优先级值最高的备选路径确定为最优路径,即目标路径,以传输该第一组播流。
在本示例中,备选路径1的路径优先级值最高,因此,目标路径为备选路径1。
为便于理解,在如图2的网络环境中,若从PC1到PC2的第一组播流的第一组播流名称为50Mbps@CH02-S-TEST1@CH02-CHECK-TEST2,同样存在两条从PC1到PC2的备选路径,根据上述的路径优先级值计算规则,可得到如表8所示的路径优先级值表。
表8
其中,由于备选路径1的第二个节点的节点优先级值为N/A,因此,无需计算后续节点的节点优先级值,直接确定备选路径1的路径优先级值为N/A。备选路径2的路径优先级值为1008,因此,本示例中,备选路径2为目标路径。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图5,示出了本申请的一种组播流传输路径的优选装置实施例的结构框图,与上述组播流传输路径的优先方法实施例对应,在本申请实施例中,该装置可以包括如下模块:
节点优先级值确定模块502,用于针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、与节点对应的链路相关的链路优先级值;
路径优先级值确定模块503,用于根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值;
目标路径确定模块504,用于将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
可选地,所述节点优先级值确定模块502还用于按照所述备选路径上各个节点的传输顺序、依次计算所述备选路径的节点的节点优先级值。
可选地,所述装置还可以包括:
备选路径剔除模块,用于当计算出所述备选路径中的节点优先级值为无效值时,将所述备选路径剔除。
可选地,所述装置还可以包括:
组播流命名模块,用于对待传输的第一组播流按照预设命名规范命名,确定所述第一组播流的第一组播流名称,所述第一组播流名称包含所述第一组播流传输所需的传输流量、第一组播流发送端关键字以及第一组播流接收端关键字。
可选地,所述节点优先级值确定模块502包括:
实时流量确定子模块,用于针对待传输的第一组播流的每条备选路径的每个节点,确定所述每个节点对应的流入端口的实时流入流量,以及所述每个节点对应的流出端口的实时流出流量;
实时优先级值计算子模块,用于根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值;
计划流量确定子模块,用于确定所述每个节点对应的流入端口的计划流入流量,以及所述每个节点对应的流出端口的计划流出流量;
计划优先级值计算子模块,用于根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值;
链路优先级值计算子模块,用于根据所述第一组播流发送端关键字和第一组播流接收端关键字以及所述每个节点对应的链路,查询预设链路优先级表,确定所述每个节点的链路优先级值;所述预设链路优先级表用于记录各个关键字与各个链路关联的优先级值;
节点优先级值计算子模块,用于根据所述每个节点的实时优先级值、计划优先级值以及链路优先级值,得到所述每个节点的节点优先级值。
可选地,所述实时优先级值计算子模块,可以包括:
第一确定单元,用于根据所述实时流入流量和所述传输流量的第一流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的实时流入优先级值;
第二确定单元,用于根据所述实时流出流量和所述传输流量的第二流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的实时流出优先级值;
第三确定单元,用于根据所述实时流入优先级值和所述实时流出优先级值确定所述每个节点的实时优先级值。
可选地,所述装置还可以包括:
第一剔除模块,用于当所述流入端口的实时流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
第二剔除模块,用于当所述流出端口的实时流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
可选地,所述计划优先级值计算子模块,可以包括:
第四确定单元,用于根据所述计划流入流量和所述传输流量的第三流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的计划流入优先级值;
第五确定单元,用于根据所述计划流出流量和所述传输流量的第四流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的计划流出优先级值;
第六确定单元,用于根据所述计划流入优先级值和所述计划流出优先级值确定所述每个节点的计划优先级值。
可选地,所述装置还可以包括:
第三剔除模块,用于当所述流入端口的计划流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
第四剔除模块,用于当所述流出端口的计划流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还公开了电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的组播流传输路径的优选方法。
本申请实施例还公开了计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的组播流传输路径的优选方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本申请实施例中提出的所有获取信息的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种组播流传输路径的优选方法及装置、电子设备、存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种组播流传输路径的优选方法,其特征在于,所述方法包括:
针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;
根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值;
将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
2.根据权利要求1所述的方法,其特征在于,所述针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值,还包括:
按照所述备选路径上各个节点的传输顺序、依次计算所述备选路径的节点的节点优先级值。
3.根据权利要求2所述的方法,其特征在于,在所述根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值之前,所述方法还包括:
当计算出所述备选路径中的节点优先级值为无效值时,将所述备选路径剔除。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
对待传输的第一组播流按照预设命名规范命名,确定所述第一组播流的第一组播流名称,所述第一组播流名称包含所述第一组播流传输所需的传输流量、第一组播流发送端关键字以及第一组播流接收端关键字。
5.根据权利要求4所述的方法,其特征在于,所述针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值,包括:
针对待传输的第一组播流的每条备选路径的每个节点,确定所述每个节点对应的流入端口的实时流入流量,以及所述每个节点对应的流出端口的实时流出流量;
根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值;
确定所述每个节点对应的流入端口的计划流入流量,以及所述每个节点对应的流出端口的计划流出流量;
根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值;
根据所述第一组播流发送端关键字和第一组播流接收端关键字以及所述每个节点对应的链路,查询预设链路优先级表,确定所述每个节点的链路优先级值;所述预设链路优先级表用于记录各个关键字与各个链路关联的优先级值;
根据所述每个节点的实时优先级值、计划优先级值以及链路优先级值,得到所述每个节点的节点优先级值。
6.根据权利要求5所述的方法,其特征在于,所述根据所述传输流量、所述实时流入流量和所述实时流出流量确定所述每个节点的实时优先级值,包括:
根据所述实时流入流量和所述传输流量的第一流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的实时流入优先级值;
根据所述实时流出流量和所述传输流量的第二流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的实时流出优先级值;
根据所述实时流入优先级值和所述实时流出优先级值确定所述每个节点的实时优先级值。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当所述流入端口的实时流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
当所述流出端口的实时流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
8.根据权利要求5所述的方法,其特征在于,所述根据所述传输流量、所述计划流入流量和所述计划流出流量确定所述每个节点的计划优先级值,包括:
根据所述计划流入流量和所述传输流量的第三流量和、与所述流入端口的最大流量值之间的关系,确定所述流入端口的计划流入优先级值;
根据所述计划流出流量和所述传输流量的第四流量和、与所述流出端口的最大流量值之间的关系,确定所述流出端口的计划流出优先级值;
根据所述计划流入优先级值和所述计划流出优先级值确定所述每个节点的计划优先级值。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述流入端口的计划流入优先级值为无效值时,将包含所述流入端口的备选路径剔除;
当所述流出端口的计划流出优先级值为无效值时,将包含所述流出端口的备选路径剔除。
10.一种组播流传输路径的优选装置,其特征在于,所述装置包括:
节点优先级值确定模块,用于针对待传输的第一组播流的每条备选路径,计算所述备选路径上各个节点的节点优先级值;所述节点优先级值包括与节点的实时流量相关的实时优先级值、与节点的计划流量相关的计划优先级值、以及与节点对应的链路相关的链路优先级值;
路径优先级值确定模块,用于根据所述备选路径上所有节点的节点优先级值,确定所述备选路径的路径优先级值;
目标路径确定模块,用于将所述路径优先级值最高的备选路径确定为目标路径,并基于所述目标路径传输所述第一组播流。
11.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至9任一项所述的组播流传输路径的优选方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述的组播流传输路径的优选方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310691008.6A CN116471225B (zh) | 2023-06-12 | 2023-06-12 | 组播流传输路径的优选方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310691008.6A CN116471225B (zh) | 2023-06-12 | 2023-06-12 | 组播流传输路径的优选方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116471225A true CN116471225A (zh) | 2023-07-21 |
CN116471225B CN116471225B (zh) | 2023-08-18 |
Family
ID=87177391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310691008.6A Active CN116471225B (zh) | 2023-06-12 | 2023-06-12 | 组播流传输路径的优选方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116471225B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025628A (zh) * | 2010-12-07 | 2011-04-20 | 北京邮电大学 | 网络流量的分配方法 |
JP2011182294A (ja) * | 2010-03-03 | 2011-09-15 | Kddi Corp | 管理装置、プログラム及びトラフィック制御方法 |
CN104202243A (zh) * | 2014-09-06 | 2014-12-10 | 国家电网公司 | 广域后备保护中多路径同时传输的方法 |
CN104301256A (zh) * | 2014-10-31 | 2015-01-21 | 杭州华三通信技术有限公司 | 一种sdn网络动态预留带宽的方法及控制器 |
CN104780147A (zh) * | 2014-01-14 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种byod访问控制的方法及装置 |
CN109218213A (zh) * | 2018-09-25 | 2019-01-15 | 中国银联股份有限公司 | 一种流量调控方法及装置 |
CN109302346A (zh) * | 2018-10-25 | 2019-02-01 | 网宿科技股份有限公司 | 一种传输数据流量的方法和装置 |
CN109495908A (zh) * | 2018-12-05 | 2019-03-19 | 国网辽宁省电力有限公司大连供电公司 | 一种基于lte无线与超低功耗物联网无线融合的网络优化方法 |
CN112260950A (zh) * | 2020-10-19 | 2021-01-22 | 桂林电子科技大学 | 一种基于业务优先级区分的云存储网络组播流调度方法 |
CN113949659A (zh) * | 2021-10-14 | 2022-01-18 | 中电福富信息科技有限公司 | 一种流量承载路径智能选路方法及其装置 |
CN114024907A (zh) * | 2021-11-15 | 2022-02-08 | 中国电信集团系统集成有限责任公司 | 一种多口字环形结构下的流量调度方法和系统 |
-
2023
- 2023-06-12 CN CN202310691008.6A patent/CN116471225B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011182294A (ja) * | 2010-03-03 | 2011-09-15 | Kddi Corp | 管理装置、プログラム及びトラフィック制御方法 |
CN102025628A (zh) * | 2010-12-07 | 2011-04-20 | 北京邮电大学 | 网络流量的分配方法 |
CN104780147A (zh) * | 2014-01-14 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种byod访问控制的方法及装置 |
CN104202243A (zh) * | 2014-09-06 | 2014-12-10 | 国家电网公司 | 广域后备保护中多路径同时传输的方法 |
CN104301256A (zh) * | 2014-10-31 | 2015-01-21 | 杭州华三通信技术有限公司 | 一种sdn网络动态预留带宽的方法及控制器 |
CN109218213A (zh) * | 2018-09-25 | 2019-01-15 | 中国银联股份有限公司 | 一种流量调控方法及装置 |
CN109302346A (zh) * | 2018-10-25 | 2019-02-01 | 网宿科技股份有限公司 | 一种传输数据流量的方法和装置 |
CN109495908A (zh) * | 2018-12-05 | 2019-03-19 | 国网辽宁省电力有限公司大连供电公司 | 一种基于lte无线与超低功耗物联网无线融合的网络优化方法 |
CN112260950A (zh) * | 2020-10-19 | 2021-01-22 | 桂林电子科技大学 | 一种基于业务优先级区分的云存储网络组播流调度方法 |
CN113949659A (zh) * | 2021-10-14 | 2022-01-18 | 中电福富信息科技有限公司 | 一种流量承载路径智能选路方法及其装置 |
CN114024907A (zh) * | 2021-11-15 | 2022-02-08 | 中国电信集团系统集成有限责任公司 | 一种多口字环形结构下的流量调度方法和系统 |
WO2023082431A1 (zh) * | 2021-11-15 | 2023-05-19 | 中电信数智科技有限公司 | 一种多口字环形结构下的流量调度方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116471225B (zh) | 2023-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5600638A (en) | Method and system for improving the processing time of the path selection in a high speed packet switching network | |
US8400920B2 (en) | Method for optimizing the transfer of information in a telecommunication network | |
Cobb et al. | Time-shift scheduling-fair scheduling of flows in high-speed networks | |
CN103384159B (zh) | 共享接入电缆网络中的绑定信道上的qos | |
Little et al. | Multimedia synchronization protocols for broadband integrated services | |
EP2034731A1 (en) | Multicast service processing method and access equipment | |
US20090238200A1 (en) | Method and Arrangement Relating to Admission Control of Broadband Services | |
US20220217089A1 (en) | Path traffic allocation method, network device, and network system | |
CN112583636B (zh) | 一种政务网络切片的构造方法、电子设备和存储介质 | |
JP2006506845A (ja) | ルータにおけるパケットに対し論理リンクを選択する方法 | |
Kotachi et al. | Multicast routing model to minimize number of flow entries in software-defined network | |
US7920463B2 (en) | Method and network control unit for deactivating a network component | |
CN116471225B (zh) | 组播流传输路径的优选方法及装置、电子设备、存储介质 | |
US20210306267A1 (en) | Optimized network latency using in-band telemetry | |
US11153214B2 (en) | In service flow capability update in guaranteed bandwidth multicast network | |
Sarkar et al. | Fair allocation of utilities in multirate multicast networks | |
CN107508730B (zh) | 一种基于sdn网络的数据中心互联方法及装置 | |
JP4393132B2 (ja) | マルチキャスティング・プロキシのマルチレイヤ・ユーザ・マネジメント方法 | |
JP2008085686A (ja) | 予約受付制御システムと方法およびプログラム | |
Kaur | An overview of quality of service computer network | |
Moshak | Justification of the Choice of Criterion of Effeciency of Infocommunication Network | |
CN116192651B (zh) | 一种基于带宽预留的时间敏感网络调度方法 | |
KR101328351B1 (ko) | 퍼지 로직을 기반으로 하는 트래픽의 대역폭을 제어하는 방법 및 시스템 | |
Dutta et al. | Priority based wavelength routed WDM networks: A queueing theory approach | |
Amado et al. | OpenFlow rule placement in carrier networks for augmented reality applications |
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 |