CN117061420A - 路由路径确定方法、装置、设备、介质以及程序产品 - Google Patents
路由路径确定方法、装置、设备、介质以及程序产品 Download PDFInfo
- Publication number
- CN117061420A CN117061420A CN202210489163.5A CN202210489163A CN117061420A CN 117061420 A CN117061420 A CN 117061420A CN 202210489163 A CN202210489163 A CN 202210489163A CN 117061420 A CN117061420 A CN 117061420A
- Authority
- CN
- China
- Prior art keywords
- nodes
- network
- data
- routing
- node
- 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 60
- 238000003860 storage Methods 0.000 claims abstract description 35
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims abstract description 14
- 230000005540 biological transmission Effects 0.000 claims description 28
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 12
- 230000005856 abnormality Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 32
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000013439 planning Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 9
- 238000013480 data collection Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 239000010410 layer Substances 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 239000002355 dual-layer Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000013210 evaluation model Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 241000209140 Triticum Species 0.000 description 1
- 235000021307 Triticum Nutrition 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000009514 concussion Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 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/302—Route determination based on requested QoS
-
- 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/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0826—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network costs
-
- 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
- H04L45/123—Evaluation of link metrics
Abstract
本公开涉及一种路由路径确定方法、装置、设备、介质以及计算机程序产品。在此描述的路由路径确定方法,包括获取网络中的多个节点的资源使用数据和服务质量(QoS)数据,其中资源使用数据可以包括处理资源使用量、存储资源使用量、带宽使用量等,QoS数据可以指示网络的时延、抖动以及丢包率等。方法还包括基于资源使用数据和QoS数据来确定多个节点中的节点之间的路由路径,并向网络中的多个节点发送所确定的路由路径。根据本公开的实施例节点之间的流量调度方案,不仅考虑了影响用户体验的QoS指标,而且考虑了网络中的运营成本情况,也即同时兼顾了用户体验和运营成本。因此,本公开的实施例能够提高网络中的资源利用率,从而降低网络的运营成本。
Description
技术领域
本公开总体上涉及网络技术领域,更特别地涉及一种路由路径确定方法、装置、设备、计算机可读存储介质以及计算机程序产品。
背景技术
在网络中,节点是指网络中的连接点,其可以表示一个再分发的点或者一个通信端点(例如终端设备)。节点是一个连接到网络的有源电子设备,其能够通过通信通道发送、接收和/或转发数据。节点可以是计算机、手机等用户终端设备,也可以是工作站、服务等设备。整个网络就是由这许许多多的节点组成的,把许多的网络节点通过有线和/或无线的通信链路连接起来,形成一定的几何关系,从而形成计算机网络拓扑。
在网络使用过程中,由于节点的位置、带宽、流量等因素的影响,访问各个节点的网络延迟会有所不同。服务质量(QoS)是评价一个网络服务质量好坏的常见指标,为了在网络上开展实时性业务,通常需要避免网络拥塞。QoS针对各种业务的不同需求,为其提供端到端的服务质量保证。在有限的带宽资源下,QoS的出现允许不同的流量不平等地竞争网络资源,语音、视频等重要数据应用在网络中可以优先得到服务。
发明内容
根据本公开的一些实施例,提供了一种路由路径确定方法、装置、设备、计算机可读存储介质以及计算机程序产品。
在本公开的第一方面,提供了一种路由路径确定方法。该方法包括:获取网络中的多个节点的资源使用数据和服务质量QoS数据,其中QoS数据指示时延、抖动以及丢包率中的至少一项。方法还包括基于资源使用数据和QoS数据来确定多个节点中的节点之间的路由路径,并且向多个节点发送所确定的路由路径。根据本公开的第一方面的路由路径确定方法,不仅考虑了影响用户体验的QoS指标,同时还考虑了网络中的资源使用的成本情况,因此,本公开的实施例能够提高网络中的资源利用率,从而降低网络的运营成本。
在一些实施例中,其中获取网络中的多个节点的资源使用数据和服务质量QoS数据包括:获取网络的网络拓扑结构;以及采集多个节点在历史一段时间内的资源使用数据、用户数据以及QoS数据,其中资源使用数据包括节点的处理资源使用量、存储资源使用量、带宽资源使用量中的至少一项,并且用户数据包括在线用户数峰值。通过获得历史的资源使用数据(如历史成本数据)、用户数据和QoS数据,能够基于多重维度来进行节点路由规划,从而进一步降低网络运营成本。
在一些实施例中,其中基于资源使用数据和QoS数据,确定多个节点中的节点之间的路由路径包括:在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径。通过这种方式,避免单纯地考虑用户体验而造成较高的运营成本,而是能够在满足客户QoS指标的前提下,尽量控制运营成本,例如选择成本最小或者较小的路由路径。
在一些实施例中,其中在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径包括:针对使用网络的第一用户,确定多个节点中的节点之间的第一组路由路径;以及针对使用网络的第二用户,确定多个节点中的节点之间的第二组路由路径,其中第一用户和第二用户具有不同的服务等级协议(SLA)。在市场说,不同的用户或客户对于网络服务有着不同的要求,通过区分不同用户的需求,提供能够分别满足其需求的网络服务,从而进一步降低网络运营成本。
在一些实施例中,其中针对使用网络的第一用户,确定多个节点中的节点之间的第一组路由路径包括:针对一天内的第一时间段,确定多个节点中的节点之间的第三组路由路径;以及针对一天内的第二时间段,确定多个节点中的节点之间的第四组路由路径,其中第一时间段和第二时间段是一天内的不同时间段。不同的时间段,网络的使用情况差别可能很大(例如,晚上的网络直播通常会比白天更多),通过区分不同的时间段,能够在不同时段分别提供最优的节点路由路径,从而兼顾运营成本和用户体验。
在一些实施例中,其中针对一天内的第一时间段,确定多个节点中的节点之间的第三组路由路径包括:针对多个节点中的第一节点和第二节点,确定第一节点与第二节点之间成本最小的多条路由路径,多条路由路径中的每条路由路径包括开始节点的标识、结束节点的标识、以及中间路由路径。例如,可以为每两个节点生成3条备选路由路径。通过这种方式,能够在实际某条路由路径发生故障时,选择下一条备选路由路径,由此保证网络的可靠性和稳定性。
在一些实施例中,其中向多个节点发送所确定的路由路径包括:将第三组路由路径和第四组路由路径缓存到存储器的数据库中;以及通过调度执行器向多个节点中的每个节点发送至少第三组路由路径和第四组路由路径。通过将所生成的路由路径进行缓存,能够为下一次路径生成提供查询和参考,提高了路径生成的效率。
在一些实施例中,方法还包括:响应于多个节点中的异常节点发生异常,实时更新多个节点中的节点之间的路由路径。通过这种方式,本公开的不仅可以使用历史的数据进行路径规划的优化,还能够实时进行调整,进一步提高了方案的时效性和效率。
在一些实施例中,其中实时更新多个节点中的节点之间的路由路径包括:在存储路由路径的存储器的数据库中查询与异常节点有关的异常路由路径;以及通过从路由路径删除异常路由路径,来实时更新路由路径。通过查询缓存的数据库,能够避免重复计算,提高了方案的运行效率。
在一些实施例中,其中通过从路由路径删除异常路由路径,来实时更新路由路径包括:在更新后的路由路径中,确定每两个节点之间的路由路径数目是否小于阈值数目;响应于确定某两个节点之间的路由路径数目小于阈值数目,重新确定这两个节点之间的阈值数目个路由路径;以及响应于确定每两个节点之间的路由路径数目均大于等于阈值数目,将更新后的路由路径存储在存储器的数据库中。通过这种方式,能够每两个节点之间都有多条备选路由路径,能够在实际某条路由路径发生故障时,选择下一条备选路由路径,由此保证网络的可靠性和稳定性。
在一些实施例中,其中向多个节点发送所确定的路由路径包括:向调度执行器发送更新后的路由路径;以及由调度执行器向多个节点发送更新后的路由路径。通过调度执行器下发更新的路由路径,能够实时动态进行调整,提高了路由路径的实时性和准确性。
在一些实施例中,方法还包括:接收关注度超过阈值的对象上线的通知;以及响应于接收到通知,实时更新多个节点中的节点之间的路由路径。例如,在直播平台有大主播上线时,由于大主播会占用大量流量资源,因而可以将大主播的流量尽量汇聚到更少的中心节点,由此减少对网络中其他中心节点的影响,从而提高网络的整体传输效率。
在一些实施例中,方法还包括调整网络的网络拓扑结构,其中网络拓扑结构指示网络中的节点的簇划分。通过这种方式,能够动态地调整网络拓扑结构,使得网络拓扑结构更准确和高效,从而提高网络的传输效率。
在一些实施例中,其中网络中的节点分类为中心节点和边缘节点,其中多个边缘节点和一个中心节点组成边缘簇,所有中心节点组成中心簇,边缘簇和中心簇构成双层Mesh网络架构。通过使用双层Mesh网络架构,能够在每层架构中都能自由通信,提高了网络的传输效率。
在一些实施例中,其中网络为用户提供实时通信(RTC)业务的云服务,RTC业务的视频流量通过边缘节点和中心节点进行传输,其中不同边缘簇之间的视频流量通过中心节点进行传输。通过本公开的方案,能够为RTC服务提供兼顾用户体验和运营成本的技术方案,从而使得RTC服务的运营成本最优或更优。
在本公开的第二方面,提供了一种路由路径确定装置。该装置包括数据获取模块、路由确定模块、以及路由发送模块。数据获取模块被配置为获取网络中的多个节点的资源使用数据和服务质量QoS数据,其中QoS数据指示时延、抖动以及丢包率中的至少一项。路由确定模块被配置为基于资源使用数据和QoS数据,确定多个节点中的节点之间的路由路径。路由发送模块被配置为向多个节点发送所确定的路由路径。根据本公开的第二方面的路径确定装置,在提供网络服务时,兼顾了用户体验和运营成本,能够在保证用户体验的情况下降低网络的运营成本。
在本公开的第三方面,提供了一种电子设备。该电子设备包括处理器以及存储器,其中存储器存储有指令,指令在被处理器执行时,使得电子设备执行根据第一方面中的任一项的方法。电子设备例如可以为服务器、工作站、计算机、或者以上一个或多个的组合。
在本公开的第四方面,提供了一种计算机可读存储介质。计算机可读存储介质存储有指令,指令在被电子设备执行时,使得电子设备执行根据第一方面中任一项的方法。在一些实施例中,计算机可读存储介质可以是非瞬态的。计算机可读存储介质包括但不限于易失性存储器(例如随机访问存储器)、非易失性存储器(例如快闪存储器、硬盘(hard diskdrive,HDD)、固态盘(solid state drive,SSD)等)。
在本公开的第五方面,提供一种计算机程序产品。计算机程序产品包括指令,指令在被电子设备执行时,使得电子设备执行根据第一方面中任一项的方法。在一些实施例中,程序产品可以包括一个或多个软件安装包,在需要使用前述第一方面或其可能的变形提供的方法的情况下,可以下载或拷贝软件安装包并在电子设备上执行。
附图说明
结合附图并参考以下详细说明,本公开各实现方式的特征、优点以及其他方面将变得更加明显。在此以示例性而非限制性的方式示出了本公开的若干实现方式,在附图中:
图1示出了根据本公开的实施例的示例网络环境的示意图;
图2示出了根据本公开的实施例的路由路径确定方法的流程图;
图3示出了根据本公开的实施例的示例实时通信(RTC)场景的示意图;
图4示出了根据本公开的实施例的示例RTC云服务的架构图;
图5示出了根据本公开的实施例的基于时延的RTC节点之间端到端调度的示意图;
图6A示出了根据本公开的实施例的离线成本优先路由规划的泳道图;
图6B示出了根据本公开的实施例的离线成本优先路由决策的流程图;
图7A示出了基于用户体验的路由路径的示意图;
图7B示出了根据本公开的实施例的基于用户体验和运营成本二者的路由路径的示意图;
图8A示出了根据本公开的实施例的实时成本优先路由规划的泳道图;
图8B示出了根据本公开的实施例的实时成本优先路由决策的流程图;
图9示出了根据本公开的一些实施例的路由路径确定装置的示意性框图;以及
图10示出了可以用来实施本公开内容的示例性实现方式的示例设备的示意性框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现。虽然附图中示出本公开的示例实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或者”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“实施例”和“一些实施例”均表示“至少一些实施例”。下文还可能包括其他明确的和隐含的定义。
通常,很多网络业务(例如实时业务)对用户体验特别敏感,比如,通信时延较长,会导致音视频滞后时间太长,影响了实时交互效果,可能会影响用户的体验。因此,传统的方案为了给用户提供好的用户体验,使用了体验优先的调度方式,会尽可能使用各种资源来提高用户体验,从而使得时延最低、丢包率最小、抖动最少等等,各种QoS指标都尽量达到最优。可见,传统方案只考虑体验维度优先调度,使得网络中的接入用户的时延、丢包等QoS指标尽量达到最优。
然而,发明人发现在QoS指标最优的情况下,可能需要消耗较多的资源并且耗费较高的运营成本。发明人还发现如果QoS指标稍降一点,QoS指标仍然满足用户需求和网络业务,但是却能节省很多运营成本。此外,如果仅考虑成本而不考虑用户体验,对于实时性要求较高的网络业务,将会导致时延等用户体验特别差。为此,本公开的实施例提供了一种成本优先的流量调度方案,不仅考虑影响用户体验的QoS指标,同时还考虑网络中的资源使用的成本情况,因此,本公开的实施例能够提高网络中的资源利用率,从而降低网络的运营成本。
此外,不同的用户可能有着不同的服务等级协议(SLA),不同用户对用户体验和成本的要求可能不一样,如果都按照最高的要求统一处理,在提供良好的用户体验时不考虑成本因素,将是不经济的。在本公开的一些实施例中,区分了不同用户的需求,提供能够分别满足其需求的网络服务,从而进一步降低网络运营成本。此外,例如在RTC的场景中,RTC用户量会逐渐增多,由于终端用户一般在就近接入时网络质量达到最优,所以一条流需要在更加多的节点上被拉取,导致节点规模和运营成本也逐渐增大。为此,本公开的实施例提出的成本维度优先调度,成本达到最优的同时也不影响或者较小程度影响用户体验,从而降低网络的运营成本。
以下将参考附图1-10描述了本公开的一些示例实施例。
图1示出了根据本公开的实施例的示例网络环境100的示意图。如图1所示,在网络环境100中,用户设备(UE)131和UE 132正在通过无线或者有线方式与网络101相连接,网络101中包括多个节点111、112、113、114、121、122以及123,其中每个节点可以包括服务器或者服务器集群。应当理解,图1中的网络101可以包括更多的或更少的节点,并且可以包括除了服务器之外的其他类型的节点设备。
在一个示例中,UE 131和UE 132之间正在视频通话,UE 131的视频流可以通过节点113、节点114、节点111、节点121、节点122的路由路径传输到UE 132,从而完成单向的视频传输。通常,用户侧的调度称为接入调度,例如节点113与UE 131之间的调度,接入调度主要控制每个UE接入到网络中的一个节点。节点之间的调度称为回源调度,例如节点113与节点122之间,回源调度主要控制节点向网络中其他节点的拉流,其中拉流表示从一个网络节点向另一个网络节点请求流量的过程。
网络101可以采用Mesh网络拓扑结构或者其他网络拓扑结构进行构建。在一些实施例,网络101中的节点可以根据相关参数被划分为多个簇(Cluster),也称为集群。例如,可以根据地理位置对网络101中的节点进行划分,使得同一区域(例如同一省)中的节点组成同一个簇。在一些实施例中,网络101可以为云厂商提供的云服务,其可以为用户/客户提供基础的流量带宽调度服务等。
图2示出了根据本公开的实施例的路由路径确定方法200的流程图。方法200可以由网络服务的管理软件和/或服务器等来执行。以下参考图1的示例来一起描述图2的路径确定方法200。
在框202,获取网络中的多个节点的资源使用数据和服务质量QoS数据。例如,可以采集图1中的网络101中的各节点(例如节点111、112、113、114、121、122以及123)在历史一段时间的历史数据,包括历史资源使用数据、历史QoS数据等。在一些实施例中,历史资源使用数据可以包括处理资源使用量(如CPU使用量)、存储资源使用量(如存储器使用量)、带宽资源使用量(如带宽使用量),并且还可以包括带宽的单价。
在本公开的实施例中,QoS数据指示时延、抖动以及丢包率中的至少一项。时延是指一个报文或分组从网络的发送端到接收端所需要的延迟时间,一般由传输延迟及处理延迟组成。抖动用来描述延迟变化的程度,也就是最大延迟与最小延迟的时间差。抖动对于实时性的传输是一个重要参数。例如,语音和视像等实时业务极不容忍抖动,因为抖动会造成语音或视像的断续。抖动也会影响一些网络协议的处理。有些协议是按固定的时间间隔发送交互性报文,抖动过大会导致协议震荡。丢包率是指在网络传输过程中丢失报文的数量占传输报文总数的百分比。少量的丢包对业务的影响并不大,例如,在语音传输中,丢失一个比特或一个分组的信息,通话双方往往注意不到。在视频的传输中,丢失一个比特或一个分组可能造成在屏幕上瞬间的波形干扰,但能很快恢复正常。但大量的丢包会影响传输效率。在QoS中,通常关注的是丢包的统计数据,也就是丢包率。所以正常传输时,需要将网络丢包率控制在一定范围内。
在框204,基于资源使用数据和QoS数据,确定多个节点中的节点之间的路由路径。例如,基于网络101中的各节点的历史的资源使用量等成本数据和QoS数据,预测网络101中的各节点之间的最优路由路径,这个最优路由路径不仅考虑了与用户体验有关的QoS数据,还考虑了网络101中的各节点的运营成本,因而可以是在保证用户体验的前提下成本最小的路由路径。在一些实施例中,可以将所生成的路由路径缓存在存储器中或者在存储设备中持久性存储。
在框206,向多个节点发送所确定的路由路径。例如,在根据本公开的实施例确定路由路径之后,将路由路径发送给网络101中的各个节点。节点在网络通信时,参考路由路径进行网络数据的传输。在一些实施例中,可以将所有节点的路由路径发送到网络101中的所有节点,节点在访问时通过查询确定其自身的路由路径。备选地,也可以向网络101中的各个节点仅发送与其相关的路由路径,由此减少所发送的数据量。
根据本公开的实施例节点间的路由路径确定方法200,不仅考虑影响用户体验的QoS指标,同时还考虑网络中的资源使用的成本情况,因此,本公开的实施例能够提高网络中的资源利用率,从而降低网络的运营成本。
图3示出了根据本公开的实施例的示例RTC场景300的示意图。应当理解,虽然本公开的一些实施例结合RTC场景来进行描述,然而,本公开的实施例不仅适用于RTC场景,还可以与其他的音视频相关的传输场景结合使用。如图3所示,其示出了网络直播的示例RTC场景,RTC服务器310具有房间管理、音视频混流、统计分析、对象存储等功能。主播321和322不仅需要发布视频流,也需要订阅视频流,观众331、332、333通常只需订阅视频流。在一些场景中,观众也可以发起连麦请求,并且也发布视频流。RTC服务器310可以接收连麦请求,指示连麦用户加入到实时音视频流的房间,并且支持将主播端发布的流进行混流、录制等实时音视频处理。
在一些场景中,直播平台会同时涉及RTC和内容分发网络(CDN),CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。为了保证直播即时的互动效果,超低时延直播(LLL)以其时延较低而具特色,成为直播技术发展的主流。用户感知体验(QoE)也是用于评价用户体验的一套体系,其可以理解为用户体验或者用户感知,即从用户的角度出发来衡量网络质量的好坏。
RTC服务器310可以为包括多个节点的分布式或者云服务,根据本公开的实施例的路由路径确定方案,不仅能够保证图3的RTC场景中的主播和观众流畅直播,保证观众的收看体验,也能够减少RTC服务器310的运营成本,从而提高处理、存储等资源的利用效率。虽然图3中示出的直播的RTC场景,然而应当理解,本公开的实施例也可以与其他的场景结合使用,例如不同RTC业务(例如大班课、小班课)中的流量调度、超低时延直播业务中的流量调度、虚拟现实(VR)或云游戏互动场景中的流量调度,以及远程驾驶、远程医疗、视频客服等场景。
图4示出了根据本公开的实施例的示例RTC云服务400的架构图。如图4所示,云服务400包括大数据平台410、RTC系统420、调度执行器430、数据采集模块440、离线成本优先决策模块450、以及可选的实时成本优先决策模块460。
应当理解,虽然以图4的RTC云服务400描述本公开的一些实施例,然而本公开的实施例也可以在其他系统中适应实施。另外,虽然RTC云服务400包括上述部件,但是RTC云服务400可以包括更少的或者未示出的更多部件。例如,RTC云服务400可以为参考图3所描述的RTC服务器310所提供的云服务。在一些实施例中,大数据平台410、调度执行器430、数据采集模块440、离线成本优先决策模块450、以及可选的实时成本优先决策模块460中的一项或多项可作为RTC云服务400的后台管理软件的一部分而被部署在一台或多台服务器中。
大数据平台410是用于收集和存储RTC系统420中的大量数据的平台,大数据平台410在大数据基础上融合RTC系统420中的结构化和非结构化数据,为RTC业务直接提供数据集。大数据平台410利用其计算能力来存储海量数据,并且处理速度快,能够提供署支持和数据分析等功能。例如,大数据平台可以存储RTC系统420的网络拓扑结构,可以存储RTC系统420中各节点运营成本数据,包括处理器使用量、存储器使用量、带宽使用量、节点带宽单价等;用户数据,包括最大在线用户数、主播数、选看用户数等;节点QoS数据,包括时延、抖动、丢包率等。
RTC系统420包括网络中提供RTC数据传输服务的多个节点,例如可以包括以上图1的网络101中的节点111、112、113、114、121、122以及123,或者可以包括以下图5中的节点511、512、513、521、522、523、524、531、532以及533。RTC系统中的每个RTC节点可以包括服务器或者服务器集群。
参考图5,其示出了根据本公开的实施例的基于时延的RTC节点之间端到端调度的示意图。在图5中,RTC系统420包括节点511、512、513、521、522、523、524、531、532以及533,为了提高传输效率、提高用户体验并且降低调度的复杂度,可以将这些节点分为多个边缘簇。在一些实施例中,可以根据地理位置对RTC系统420中的节点进行划分,使得同一区域(例如同一省)中的节点组成同一个簇,例如,节点511、512、513构成边缘簇510,节点521、522、523、524构成边缘簇520、节点531、532、533构成边缘簇530。在初始节点,可以由管理人员对节点进行簇的划分,后续可以基于各个节点之间的网络情况,来动态调整边缘簇的划分,例如,如果节点522与边缘簇510中的节点的时延均小于与边缘簇520中的节点的时延,则可以将节点522动态地划分到边缘簇510中。
在一些实施例中,可以将每个边缘簇中容量较大、带宽较好和/或网络QoS最好的节点分别选成每个边缘簇的中心节点。例如,可以将中心城市的多线机房的节点选成中心节点,从而选出中心节点511、521和531,而图5的示例中其他的节点均为边缘节点。然后,可以将所有的中心节点组成一个中心簇,例如,图5中的中心节点511、521和531组成中心簇540,不同边缘簇之间的流量需通过中心节点进行转发。例如,从边缘簇510到边缘簇520的流量,需要经过中心节点511和521进行转发。
在一些实施例中,中心簇和边缘簇可以构成双层的Mesh网络架构,其中,中心簇为Mesh网络架构的第一层,边缘簇为Mesh网络架构的第二层。Mesh网络是一种在网络节点间透过动态路由的方式来进行信息与控制指令的传送。这种网络可以保持每个节点间的连线完整,当网络拓扑中有某节点失效或无法服务时,这种架构允许使用跳跃的方式形成新的路由后将数据送达传输目的地。在Mesh网络中,所有节点都可与拓扑中所有节点进行连线而形成一个网络。Mesh网络与一般网络架构的差异处在于,所有节点可以透过多次跳跃进行数据通信。根据Mesh网络架构,中心簇中的中心节点511、521和531可以任意进行通信,而同一个边缘簇中的所有节点也可以任意进行通信,比如节点521、522、523和524可以任意通信。通过使用双层Mesh网络架构,能够在每层架构中都能自由通信,能够提高RTC场景中各节点之间的数据传输效率。
在图5的示例中,由不同区域的五名用户通过用户设备UE 551、552、553、554和555共同加入同一视频会议房间。RTC业务对端到端的时延敏感,其直接影响到用户的沟通质量。传统的方法基于体验优先生成调度策略,使得路由决策达到体验最优,例如,在两个节点之间的通信,仅仅考虑总体时延的最小。本公开的实施例不仅考虑节点之间的传输时延最小,还综合节点运营成本情况,在时延尽量小且满足用户需求的情况下,使得运营成本也尽量小,从而降低了网络运营成本。
返回图4,调度执行器430(简称调度器)控制RTC系统420中的各个节点之间的调度。例如,调度执行器430可以基于时延的周期性进行簇自动规划和调整。调度执行器430定期向大数据平台410请求网络时延数据、节点故障等历史数据,基于网络稳定性以及时延分布数据,对RTC系统420中的网络架构的簇进行周期性调整,并将簇配置下发至配置模块进行缓存,进而下发到RTC系统420中的各个节点,各个节点根据调度执行器430的控制实现节点之间的路由转发。调度执行器430可以采集实时网络时延数据与拓扑模型抽象,调度执行器430实时向大数据平台410请求当前网络状态数据。在端到端低时延策略即以时延数据为主的场景下,调度执行器430将节点间时延抽象为节点间边的权重,作为后续路由计算的拓扑依据。
调度执行器430还可以进行调度路由规划计算,基于抽象的拓扑网络以及所计算出的簇配置约束,使用最短路径算法对各个节点间进行路由计算。其中调度维度为节点间的调度,采用了高效并发的最短路径计算算法,而对于其余调度维度或不同的组网规模及复杂度,路由规划模块具有算法选择的能力。调度执行器430还可以调度规划策略生成与下发执行。根据路由计算的结果,调度执行器430对于不同节点进行不同调度执行策略的下发,例如在图5中,对于节点512向其下发512至节点513、522、523、524、532和533的调度路由路径。
数据采集模块440用于从大数据平台410采集根据本公开的实施例所需的决策数据,并发送给离线成本优先决策模块450和/或实时成本优先决策模块460进行决策,为两个决策模块提供接口查询决策依据,由此实现兼顾用户体验和运营成本的路由路径规划。数据采集模块440从RTC系统420以及大数据平台410获取RTC系统420的当前的Mesh网络拓扑结构,并采集用于决策的大数据,并进行数据的存储和管理。数据采集模块440对采集的数据进行汇总,并保存到数据库中。在一些实施例中,数据采集模块440可以提供历史数据的老化能力,定时检查数据库中超期的信息,超期的数据会自动删除,例如将超过30天的数据自动删除。
在一些实施例,数据采集模块440所采集的数据可以包括资源使用数据(例如节点运营成本数据)、用户数据以及节点QoS数据等。例如,节点运营成本数据可以包括处理资源使用量(例如处理器使用量,诸如使用的CPU的总核数)、存储资源使用量(例如存储器使用量,诸如存储器总大小)、带宽资源使用量(例如带宽使用量)中的一项或多项,节点运营成本数据可以包括节点带宽成本、处理器使用成本、存储器使用成本等数据。在直播业务的场景中,用户数据例如可以包括最大在线用户数、主播数、选看用户数等。QoS数据可以包括时延、丢包/丢包率、抖动等。
离线成本优先决策模块450可以从数据采集模块440获得节点运营成本数据、用户数据以及节点QoS数据,并基于这些离线数据生成RTC系统420中的离线路由路径。例如,离线成本优先决策模块450可以使用专家经验规则、多目标进化算法、LSTM深度神经网络等算法或模型中的一种或多种,基于运营成本数据、用户数据以及节点QoS数据,确定并生成RTC系统420中的各节点之间的兼顾体验和成本的最优路由路径。多目标进化算法是在某个情景中在需要达到多个目标时,由于容易存在目标间的内在冲突,一个目标的优化是以其他目标劣化为代价,因此很难出现唯一最优解,取而代之的是在他们中间做出协调和折衷处理,使总体的目标尽可能的达到最优。在本公开的实施例中,可以将用户体验和运营成本作为多个目标进行同时优化。任何已知的或者将来开发的相关决策算法和模型可以与离线成本优先决策模块450结合使用,从而可将运营成本数据、用户数据以及节点QoS数据作为算法或模型的输入,成本最优路由路径作为算法或模型的输出。
在一些实施例中,离线成本优先决策模块450根据数据采集模块440的基础数据,预测出接下来一段时间的运营成本、用户数据、QoS特征,然后根据多目标优化算法生成兼顾体验和成本的最优路由路径,然后通过调度执行器430下发给RTC系统420中的各个节点,RTC系统420根据离线成本优先决策模块450的决策结果动态调整RTC系统420中的Mesh网络架构。以下参考图6A-6B描述了离线成本优先路由规划的示例实现。
实时成本优先决策模块460可以从数据采集模块440获得一些实时的数据,并根据实时流数据(位置信息、QoS特征等)生成实时的兼顾体验和成本的最优路由路径。然后,实时成本优先决策模块460可以将路由的调整实时下发到调度执行器430,进而下发到RTC系统420中的各个节点,例如,RTC系统420中的边缘节点拉流时首先向调度执行器430查询对应的路由路径。以下参考图8A-8B描述了实时成本优先路由规划的示例实现。
在本公开的一些实施例中,离线数据是指先前的历史数据,例如前一日的数据以及可能的更早的数据,离线数据的特征是数据量大,适合进行一些大数据的分析。实时数据是指流式实时产生的数据,数据时效性较强,实时需要不停地进行数据计算,即每秒钟或者每分钟进行数据清洗和计算,对计算资源的消耗较大,数据的准确性和体系性也较差。
图6A示出了根据本公开的实施例的离线成本优先路由规划的泳道图600。如图6A所示,在602,数据采集模块440从大数据平台410获取节点历史的相关数据,例如上文所描述的节点运营成本数据、用户数据以及节点QoS数据等。在604,数据采集模块440对所采集的数据进行整理、存储,并且可以定期对老化数据进行自动删除。在606,数据采集模块440将所整理的数据发送给离线成本优先决策模块450。
在608,离线成本优先决策模块450基于所获得历史数据,例如历史的一段时间内的成本数据、用户数据、QoS数据生成不同时段的用户特征、不同时段的节点QoS特征,基于多目标进化算法根据预测的用户特征和节点QoS特征生成成本最优路由路径。也就是说,可以在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径。在一些实施例中,离线成本优先决策模块450可以包括RTC成本模型和QoS评价模型,其中RTC成本模型可以计算出每个节点的流量运营单价,QoS评价模型可以综合时延、抖动、丢包率等因素,确定综合的用户体验评价。通过获得历史的节点成本数据、用户数据和QoS数据,能够基于多重维度来进行节点路由规划,从而进一步降低网络运营成本。
图6B示出了根据本公开的实施例的离线成本优先路由决策的流程图650,其可以为图6A中608的示例实现。在框652,在从数据采集模块440获取RTC系统420中的节点之间的网络探测数据之后,对所获取的所有RTC节点进行过滤,例如可以过滤异常和/或挂起的节点,并保存在缓冲中。
继续参考图6B,在框654,分用户执行成本最优路由路径规划。在获取所有用户的标识、服务总流量、QoS指标之后,分用户执行后续决策操作。例如,针对使用RTC服务的第一用户,确定各个节点之间的一组路由路径,针对使用RTC服务的第二用户,确定各个节点之间的另一组路由路径,其中第一用户和第二用户具有不同的SLA。不同的用户对于网络服务有着不同的要求,通过区分不同用户的需求,提供能够分别满足其需求的网络服务,从而进一步降低网络运营成本。
继续参考图6B,在框656,分时段执行成本最优路由路径规划。例如,所获取的数据是一天内分时段的用户量和数据使用情况。例如,针对一天内的第一时间段(白天),确定多个节点中的节点之间的一组路由路径;针对一天内的第二时间段(夜晚),确定多个节点中的节点之间的另一组路由路径,其中第一时间段和第二时间段是一天内的不同时间段。再例如,可以将一天中每6个小时作为一个时间段,从而一天可以分成4个时间段。不同的时间段,网络的使用情况差别可能很大(例如,晚上的网络直播通常会比白天更多),通过区分不同的时间段,能够在不同时段分别提供成本最优路由路径,从而兼顾运营成本和用户体验。
继续参考图6B,在框658,计算针对某个用户的某一时间段内满足QoS指标时每两个节点之间的多条备选路由路径,其中多条路由路径中的每条路由路径包括开始节点的标识、结束节点的标识、以及中间路由路径。例如,可以为每两个节点生成3条备选路由路径。通过这种方式,能够在实际某条路由路径发生故障时,选择下一条备选路由路径,由此保证网络的可靠性和稳定性。在框660,将所生成的成本最优路由路径缓存到存储器的数据库中,例如可以保存作为上次决策成功结果。通过将所生成的路由路径进行缓存,能够为下一次路径生成提供查询和参考,提高了路径生成的效率。在框662,对成本最优路由路径进行压缩、加密等操作。
返回参考图6A,在610,离线成本优先决策模块450将所确定和生成的成本最优路由路径发送给调度执行器430。在612,调度执行器430将成本最优路由路径发送给RTC系统420中的各个节点。在一些实施例中,调度执行器430可以定期地将成本最优路由路径发送给RTC系统420中的各个节点,节点在回源请求时根据成本最优路由路径向上一级节点拉流。备选地,调度执行器430可以在接收到RTC系统420中的节点查询请求时,将成本最优路由路径发送给该节点。在一些实施例中,RTC系统420可以根据成本最优路由路径来动态调整其Mesh网络架构。通过这种方式,能够动态地调整网络拓扑结构,使得网络拓扑结构更准确和高效,从而提高网络的传输效率。应当理解,在此所描述的成本最优路由路径是指兼顾用户体验和运营成本而确定的最优路由路径,也就是说,成本最优路由路径仍能保证用户的用户体验,使其满足约定的或者最低要求。
图7A示出了基于用户体验的路由路径700的示意图,如图7A所示,根据传统的方法,如果仅考虑用户体验,比如时延最小,UE 551要与UE 553传输数据时,图5示例中的边缘节点512至边缘节点522之间的最优路由路径700是:边缘节点512-中心节点511-中心节点521-边缘节点523-边缘节点522。图7B示出了根据本公开的实施例的基于用户体验和运营成本的路由路径750的示意图,根据本公开的实施例,兼顾用户体验和运营成本,所确定的边缘节点512至边缘节点522之间的最优路由路径750是:边缘节点512-中心节点511-中心节点521-边缘节点522。可以看出,路由路径750比路由路径700的时延总共只多10ms,占整体时延的不到6%,对于用户体验的影响很小并且仍能满足用户要求,但是却减少了边缘节点523的网络流量和资源使用。因此,本公开的实施例的方案能够提高网络中的资源利用率,从而降低网络的运营成本。
图8A示出了根据本公开的实施例的实时成本优先路由规划的泳道图800。如图8A所示,在802,RTC系统420向数据采集模块440发送突发情况的异常情况通知。在一些实施例中,异常通知可以与节点的故障或者运营情况有关,例如节点状态服务质差时、节点下线等情况,将不再接入该节点。备选地,异常情况还可能与例如直播平台的大主播上线有关,由于大主播上线涉及的网络流量较大,为了减少运营成本,可以将大主播流量尽量汇聚到少量的中心节点,从而减少中心节点的出流带宽。在804,数据采集模块440进行节点数据更新,例如更新部分节点的用户特征和QoS特征。在806,数据采集模块440向实时成本优先决策模块460发送更新数据。在808,实时成本优先决策模块460基于实时成本和QoS数据来确定流级别实时的最优路由路径。
图8B示出了根据本公开的实施例的实时成本优先路由决策的流程图850,其可以为图8A中808的示例实现。在框852,接收异常情况的通知。在框854,在路由路径数据库855中查询与异常节点相关的路由路径。在框856,删除异常节点的相关异常路由路径。通过查询缓存的数据库,能够避免重复计算,提高了方案的运行效率。备选地或者附加地,在大主播上线时,根据历史数据预估其观众数目,可以汇聚大主播所涉及的中心节点流量。由于大主播会占用大量流量资源,所以可以将大主播的流量尽量汇聚到更少的中心节点,由此减少对网络中其他中心节点的影响,从而提高网络的整体传输效率。
继续参考图8B,在框858,在删除一个或多个路由路径之后,判断是否有节点间的备选路由路径小于阈值数目,例如3条。如果是,则在框860,重新确定这两个节点之间的3条备选路由路径,直到所有节点之间的备选路由路径都等于3条。如果否,则在862,将更新的路由路径缓存到存储器的路由路径数据库855中。通过这种方式,能够保证每两个节点之间都有多条备选路由路径,能够在实际某条路由路径发生故障时,选择下一条备选路由路径,由此保证网络的可靠性和稳定性。在框864,对更新的路由路径的数据进行压缩、加密等操作。
返回参考图8A,在810,实时成本优先决策模块460将所生成的实时最优路由路径发送给调度执行器430。在812,调度执行器430将实时的最优路由路径的更新发送给RTC系统420中的各个节点。在一些实施例中,调度执行器430可以立即将实时的最优路由路径的更新发送给RTC系统420中的各个节点,节点在回源请求时根据实时的最优路由路径向上一级节点拉流。备选地,调度执行器430可以在接收到RTC系统420中的节点查询请求时,将实时的最优路由路径发送给该节点。在一些实施例中,RTC系统420可以根据实时的最优路由路径来动态更新其Mesh网络架构。通过这种方式,本公开的不仅可以使用历史的离线数据进行路径规划的优化,还能够实时进行调整,进一步提高了方案的时效性和效率。
实时成本优先决策模块460实时预测针对一条RTC流进行最优路由决策,路由决策不仅计算量比较小,而且下发到RTC节点的消息体较短,因此时效性比离线成本优先决策模块450离线预测更加高。在本公开的一些实施例中,实时预测作为离线预测的补充,在一定程度上能够防止以上突发情况对成本的影响。
因此,根据本公开的一些实施例,在RTC双层Mesh网络架构下,在网络QoS指标可接受的情况下,基于离线的历史成本数据、用户数据和QoS数据和/或实时的用户数据和QoS数据,利用例如多目标进化算法来生成流级别的成本优先路由路径,并且与小数量的实时路由相结合,指导RTC节点回源并且动态调整Mesh网络架构,从而达到RTC服务运营成本最优或者更优的技术效果。
图9示出了根据本公开的一些实施例的路由路径确定装置900的示意性框图。如图9所示,路由路径确定装置900包括数据获取模块910、路由确定模块920、以及路由发送模块930。数据获取模块910被配置为获取网络中的多个节点的资源使用数据和服务质量QoS数据,其中QoS数据指示时延、抖动以及丢包率中的至少一项。路由确定模块920被配置为基于资源使用数据和QoS数据,确定多个节点中的节点之间的路由路径。路由发送模块930被配置为向多个节点发送所确定的路由路径。根据本公开的实施例的路由路径确定装置900,在提供网络服务时,兼顾了用户体验和运营成本,能够在保证用户体验的情况下降低网络的运营成本。
在一些实施例中,其中数据获取模块910包括:拓扑获取模块,被配置为获取网络的网络拓扑结构;以及数据采集模块,被配置为采集多个节点在历史一段时间内的资源使用数据、用户数据以及QoS数据,其中资源使用数据包括节点的处理资源使用量、存储资源使用量、带宽资源使用量中的至少一项,并且用户数据包括在线用户数峰值。
在一些实施例中,其中路由确定模块920包括:最高利用率确定模块,被配置为在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径。
在一些实施例中,其中最高利用率确定模块包括:第一用户确定模块,被配置为针对使用网络的第一用户,确定多个节点中的节点之间的第一组路由路径;以及第二用户确定模块,被配置为针对使用网络的第二用户,确定多个节点中的节点之间的第二组路由路径,其中第一用户和第二用户具有不同的服务等级协议(SLA)。
在一些实施例中,其中第一用户确定模块包括:第一时段确定模块,被配置为针对一天内的第一时间段,确定多个节点中的节点之间的第三组路由路径;以及第二时段确定模块,被配置为针对一天内的第二时间段,确定多个节点中的节点之间的第四组路由路径,其中第一时间段和第二时间段是一天内的不同时间段。
在一些实施例中,其中第一时段确定模块包括:多条路径确定模块,被配置为针对多个节点中的第一节点和第二节点,确定第一节点与第二节点之间成本最小的多条路由路径,多条路由路径中的每条路由路径包括开始节点的标识、结束节点的标识、以及中间路由路径。
在一些实施例中,其中路由发送模块930包括:路径缓存模块,被配置为将第三组路由路径和第四组路由路径缓存到存储器的数据库中;以及多组路径发送模块,被配置为通过调度执行器向多个节点中的每个节点发送至少第三组路由路径和第四组路由路径。
在一些实施例中,其中路径确定装置900还包括实时更新模块,被配置为响应于多个节点中的异常节点发生异常,实时更新多个节点中的节点之间的路由路径。
在一些实施例中,其中实时更新模块包括:路径查询模块,被配置为在存储路由路径的存储器的数据库中查询与异常节点有关的异常路由路径;以及路径删除模块,被配置为通过从路由路径删除异常路由路径,来实时更新路由路径。
在一些实施例中,其中路径删除模块包括:路径数目判断模块,被配置为在更新后的路由路径中,确定每两个节点之间的路由路径数目是否小于阈值数目;重新确定模块,被配置为响应于确定某两个节点之间的路由路径数目小于阈值数目,重新确定这两个节点之间的阈值数目个路由路径;以及更新路径存储模块,被配置为响应于确定每两个节点之间的路由路径数目均大于等于阈值数目,将更新后的路由路径存储在存储器的数据库中。
在一些实施例中,其中路由发送模块930包括:第一发送模块,被配置为向调度执行器发送更新后的路由路径;以及第二发送模块,被配置为由调度执行器向多个节点发送更新后的路由路径。
在一些实施例中,路径确定装置900还包括:通知接收模块,被配置为接收关注度超过阈值的对象上线的通知;以及通知响应模块,被配置为响应于接收到通知,实时更新多个节点中的节点之间的路由路径。
在一些实施例中,路径确定装置900还包括拓扑调整模块,被配置为调整网络的网络拓扑结构,网络拓扑结构指示网络中的节点的簇划分。
在一些实施例中,其中网络中的节点分类为中心节点和边缘节点,其中多个边缘节点和一个中心节点组成边缘簇,所有中心节点组成中心簇,边缘簇和中心簇构成双层Mesh网络架构。
在一些实施例中,其中网络为用户RTC业务的云服务,RTC业务的视频流量通过边缘节点和中心节点进行传输,其中不同边缘簇之间的视频流量通过中心节点进行传输。
图10示出了可以用来实施本公开内容的示例性实现方式的示例设备1000的示意性框图,其可以用于实现本公开的实施例的方法或者过程中的至少一部分。如图所示,设备1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序指令或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序指令,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个方法和/或过程可由处理单元1001执行。例如,在一些示例性实现方式中,方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些示例性实现方式中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序被加载到RAM 1003并由CPU1001执行时,可以执行上文描述的方法的一个或多个动作。
根据本公开的示例性实现方式,提供了一种电子设备,包括:至少一个处理器和至少一个存储器,至少一个存储器被耦合到至少一个处理器并且存储用于由至少一个处理单元执行的指令,指令当由至少一个处理单元执行时,使得该设备执行如上文所述的方法。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是、但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。在此所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
在此所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言,以及常规的过程式编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些示例性实现方式中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
在此参照根据本公开示例性实现方式的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个示例性实现方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
已经描述了本公开的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。
Claims (19)
1.一种路由路径确定方法,其特征在于,包括:
获取网络中的多个节点的资源使用数据和服务质量QoS数据,其中所述QoS数据指示时延、抖动以及丢包率中的至少一项;
基于所述资源使用数据和所述QoS数据,确定所述多个节点中的节点之间的路由路径;以及
向所述多个节点发送所确定的路由路径。
2.根据权利要求1所述的方法,其特征在于,获取网络中的多个节点的资源使用数据和服务质量QoS数据包括:
获取所述网络的网络拓扑结构;以及
采集所述多个节点在历史一段时间内的所述资源使用数据、用户数据以及所述QoS数据,其中所述资源使用数据包括节点的处理资源使用量、存储资源使用量、带宽资源使用量中的至少一项,并且所述用户数据包括在线用户数峰值。
3.根据权利要求1所述的方法,其特征在于,基于所述资源使用数据和所述QoS数据,确定所述多个节点中的节点之间的路由路径包括:
在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径。
4.根据权利要求3所述的方法,其特征在于,在满足QoS指标的情况下,确定节点之间资源利用率最高的路由路径包括:
针对使用所述网络的第一用户,确定所述多个节点中的节点之间的第一组路由路径;以及
针对使用所述网络的第二用户,确定所述多个节点中的节点之间的第二组路由路径,其中所述第一用户和所述第二用户具有不同的服务等级协议(SLA)。
5.根据权利要求4所述的方法,其特征在于,针对使用所述网络的第一用户,确定所述多个节点中的节点之间的第一组路由路径包括:
针对一天内的第一时间段,确定所述多个节点中的节点之间的第三组路由路径;以及
针对一天内的第二时间段,确定所述多个节点中的节点之间的第四组路由路径,其中所述第一时间段和所述第二时间段是一天内的不同时间段。
6.根据权利要求5所述的方法,其特征在于,针对一天内的第一时间段,确定所述多个节点中的节点之间的第三组路由路径包括:
针对所述多个节点中的第一节点和第二节点,确定第一节点与第二节点之间成本最小的多条路由路径,所述多条路由路径中的每条路由路径包括开始节点的标识、结束节点的标识、以及中间路由路径。
7.根据权利要求5所述的方法,其特征在于,向所述多个节点发送所确定的路由路径包括:
将所述第三组路由路径和所述第四组路由路径缓存到存储器的数据库中;以及
通过调度执行器向所述多个节点中的每个节点发送至少所述第三组路由路径和所述第四组路由路径。
8.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述多个节点中的异常节点发生异常,实时更新所述多个节点中的节点之间的路由路径。
9.根据权利要求8所述的方法,其特征在于,实时更新所述多个节点中的节点之间的路由路径包括:
在存储所述路由路径的存储器的数据库中查询与异常节点有关的异常路由路径;以及
通过从所述路由路径删除所述异常路由路径,来实时更新所述路由路径。
10.根据权利要求9所述的方法,其特征在于,通过从所述路由路径删除所述异常路由路径,来实时更新所述路由路径包括:
在更新后的路由路径中,确定每两个节点之间的路由路径数目是否小于阈值数目;
响应于确定某两个节点之间的路由路径数目小于所述阈值数目,重新确定这两个节点之间的所述阈值数目个路由路径;以及
响应于确定每两个节点之间的路由路径数目均大于等于所述阈值数目,将更新后的路由路径存储在所述存储器的所述数据库中。
11.根据权利要求10所述的方法,其特征在于,向所述多个节点发送所确定的路由路径包括:
向调度执行器发送更新后的路由路径;以及
由所述调度执行器向所述多个节点发送更新后的路由路径。
12.根据权利要求1所述的方法,其特征在于,还包括:
接收关注度超过阈值的对象上线的通知;以及
响应于接收到所述通知,实时更新所述多个节点中的节点之间的路由路径。
13.根据权利要求1所述的方法,其特征在于,还包括:
调整所述网络的网络拓扑结构,所述网络拓扑结构指示所述网络中的节点的簇划分。
14.根据权利要求1-13中任一项所述的方法,其特征在于,所述网络中的节点分类为中心节点和边缘节点,其中多个边缘节点和一个中心节点组成边缘簇,所有中心节点组成中心簇,所述边缘簇和所述中心簇构成双层Mesh网络架构。
15.根据权利要求14所述的方法,其特征在于,所述网络为用户提供实时通信(RTC)业务的云服务,所述RTC业务的视频流量通过边缘节点和中心节点进行传输,其中不同边缘簇之间的视频流量通过中心节点进行传输。
16.一种路由路径确定装置,其特征在于,包括:
数据获取模块,被配置为获取网络中的多个节点的资源使用数据和服务质量QoS数据,其中所述QoS数据指示时延、抖动以及丢包率中的至少一项;
路由确定模块,被配置为基于所述资源使用数据和所述QoS数据,确定所述多个节点中的节点之间的路由路径;以及
路由发送模块,被配置为向所述多个节点发送所确定的路由路径。
17.一种电子设备,其特征在于,包括:
处理器;以及
存储器,所述存储器存储有指令,所述指令在被所述处理器执行时,使得所述电子设备执行根据权利要求1至15中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,所述指令在被电子设备执行时,使得所述电子设备执行根据权利要求1至15中任一项所述的方法。
19.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,所述指令在被电子设备执行时,使得所述电子设备执行根据权利要求1至15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210489163.5A CN117061420A (zh) | 2022-05-06 | 2022-05-06 | 路由路径确定方法、装置、设备、介质以及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210489163.5A CN117061420A (zh) | 2022-05-06 | 2022-05-06 | 路由路径确定方法、装置、设备、介质以及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117061420A true CN117061420A (zh) | 2023-11-14 |
Family
ID=88667919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210489163.5A Pending CN117061420A (zh) | 2022-05-06 | 2022-05-06 | 路由路径确定方法、装置、设备、介质以及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117061420A (zh) |
-
2022
- 2022-05-06 CN CN202210489163.5A patent/CN117061420A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113595766B (zh) | 通信方法和装置 | |
US10574586B2 (en) | Method and system for self-adaptive bandwidth control of CDN platform | |
US10084665B1 (en) | Resource selection using quality prediction | |
US11924650B2 (en) | System, method and service product for content delivery | |
US9137278B2 (en) | Managing streaming bandwidth for multiple clients | |
EP2656549B1 (en) | Communications network management | |
CN112822050B (zh) | 用于部署网络切片的方法和装置 | |
CN106961616B (zh) | 一种多cdn辅助的多层云的直播分发系统 | |
CN107637046B (zh) | 用于控制多连接以提高数据传输率的方法和设备 | |
Farahani et al. | ES-HAS: an edge-and SDN-assisted framework for HTTP adaptive video streaming | |
Bronzino et al. | Exploiting network awareness to enhance DASH over wireless | |
Chang et al. | Edge-assisted adaptive video streaming with deep learning in mobile edge networks | |
CN114760482A (zh) | 直播回源方法及装置 | |
Viola et al. | Predictive CDN selection for video delivery based on LSTM network performance forecasts and cost-effective trade-offs | |
US20200236056A1 (en) | Controlling Data Rate Based on Domain and Radio Usage History | |
Dubin et al. | A fair server adaptation algorithm for HTTP adaptive streaming using video complexity | |
KR102647461B1 (ko) | 비디오 스트리밍에서의 다중 프로토콜 예측 및 세션내 적응 | |
CN117061420A (zh) | 路由路径确定方法、装置、设备、介质以及程序产品 | |
Liu et al. | Qfr: A qoe-driven fine-grained routing scheme for virtual reality video streaming over sdn | |
Erfanian et al. | On maximizing QoE in AVC-based HTTP adaptive streaming: An SDN approach | |
CN112106335B (zh) | 用于经由内容分发网络流式传输媒体数据的方法及系统 | |
Han et al. | Streaming video optimization in mobile communications | |
He et al. | Towards smart routing: Exploiting user context for video delivery in mobile networks | |
Kryftis et al. | Epidemic models using resource prediction mechanism for optimal provision of multimedia services | |
KR102390522B1 (ko) | 적응형 비디오 스트리밍 서비스를 위한 블록체인 기반의 안정적인 체감품질 가속기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |