CN111464323A - 节点带宽的调度方法和调度装置 - Google Patents
节点带宽的调度方法和调度装置 Download PDFInfo
- Publication number
- CN111464323A CN111464323A CN201910048493.9A CN201910048493A CN111464323A CN 111464323 A CN111464323 A CN 111464323A CN 201910048493 A CN201910048493 A CN 201910048493A CN 111464323 A CN111464323 A CN 111464323A
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- data
- node
- target node
- prediction model
- 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 61
- 238000012549 training Methods 0.000 claims abstract description 111
- 238000012360 testing method Methods 0.000 claims abstract description 98
- 238000012545 processing Methods 0.000 claims abstract description 32
- 238000011156 evaluation Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 description 31
- 238000010586 diagram Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000009499 grossing Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- 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
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
Abstract
本发明公开了节点带宽的调度方法和调度装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取训练样本集和测试样本集,并根据训练样本集和测试样本集,生成带宽预测模型;获取目标节点的目标特征数据,并利用带宽预测模型,根据目标特征数据,确定目标节点的预测带宽数据;根据预测带宽数据和目标节点的当前带宽数据,结合带宽调度策略,对目标节点执行带宽调度处理。该实施方式能够利用生成的带宽预测模型,得到目标节点的预测带宽数据,可以提高带宽预测的准确率,并且结合带宽调度策略,对目标节点的带宽进行调度处理,从而可以实现全局带宽均衡,提高用户的体验。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种节点带宽的调度方法和调度装置。
背景技术
为了解决网络拥挤的状况,提高用户访问网址的速度,内容分发网络(ContentDelivery Network,即CDN)应运而生。CDN的基本原理为:用户在自己的浏览器中输入要访问的网站的域名,浏览器向本地域名服务器(Domain Name Server,即DNS)请求对该域名的解析,本地DNS将请求发到网站的主DNS,主DNS确定当时最适当的CDN节点,并将解析的结果(互联网协议地址,即IP地址)发给用户,用户向给定的CDN节点请求相应网站的内容。
当某些CDN节点的带宽增加时,这些CDN节点的处理能力会产生瓶颈,为了保证服务质量需要把一部分带宽调度到其他可以服务的CDN节点。因此,如何对CDN节点的带宽进行调度,达到全局负载均衡具有重要意义。
当前,CDN节点带宽的调度是由运维人员根据经验和公司的带宽采买计划来预估的,这种方法主要存在以下的几个问题:一、依靠运维人员的经验来保障CDN带宽预估的准确性,准确性较低;二、对于突发流量不能迅速的做出反应,通常是在异常流量产生后才做出反应;三、需要大量的人力成本。
发明内容
有鉴于此,本发明实施例提供一种节点带宽的调度方法和调度装置,能够提高带宽预测的准确率,从而可以实现全局带宽均衡,提高用户的体验。
为实现上述目的,根据本发明实施例的第一方面,提供了一种节点带宽的调度方法。
本发明实施例的一种节点带宽的调度方法,包括:获取训练样本集和测试样本集,并根据所述训练样本集和所述测试样本集,生成带宽预测模型;获取目标节点的目标特征数据,并利用所述带宽预测模型,根据所述目标特征数据,确定所述目标节点的预测带宽数据;根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理。
可选地,所述获取训练样本集和测试样本集,包括:获取训练特征数据和训练特征数据对应的真实带宽数据,所述训练特征数据和所述训练特征数据对应的真实带宽数据组成训练样本集;获取测试特征数据和测试特征数据对应的真实带宽数据,所述测试特征数据和所述测试特征数据对应的真实带宽数据组成测试样本集。
可选地,所述根据所述训练样本集和所述测试样本集,生成带宽预测模型,包括:对所述训练特征数据和所述训练特征数据对应的真实带宽数据进行训练,生成预测模型集,所述预测模型集中的预测模型输入的是特征数据,输出的是特征数据对应的预测带宽数据;针对所述预测模型集中的任意一个预测模型,将所述测试特征数据输入所述任意一个预测模型,得到所述测试特征数据对应的预测带宽数据;根据所述测试特征数据对应的预测带宽数据和所述测试特征数据对应的真实带宽数据,利用评价函数计算所述任意一个预测模型的性能值;从所述预测模型集中,选择性能值最高的预测模型为带宽预测模型。
可选地,在利用评价函数计算所述预测模型的性能值之前,所述方法还包括:根据所述测试数据对应的真实带宽数据,设置所述评价函数中的权重值。
可选地,所述训练特征数据的组数包括至少一组;以及在获取训练特征数据之后,所述方法还包括:分别设置每组训练特征数据的权重值。
可选地,所述根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理,包括:根据所述当前带宽数据或者所述预测带宽数据,计算所述目标节点的带宽利用率;在所述当前带宽数据或者所述预测带宽数据超过所述目标节点的上限带宽数据时,或者在所述目标节点的带宽利用率超过预设的带宽利用率阈值时,对所述目标节点执行带宽调出处理;在所述当前带宽数据或者所述预测带宽数据低于所述目标节点的保底带宽数据时,对所述目标节点执行带宽调入处理。
可选地,所述对所述目标节点执行带宽调出处理,包括:根据所述当前带宽数据、所述预测带宽数据、所述上限带宽数据以及所述预设的带宽利用率阈值,计算所述目标节点的带宽调出量;获取与所述目标节点的业务相同的候选节点集;根据节点服务状态、节点链路状态和节点成本,从所述候选节点集中选择所述目标节点对应的归属节点;将所述目标节点的带宽调出量调入至所述目标节点对应的归属节点。
可选地,所述对所述目标节点执行带宽调入处理,包括:根据所述当前带宽数据、所述预测带宽数据以及所述保底带宽数据,计算所述目标节点的带宽调入量;根据所述目标节点的带宽掉入量、所述目标节点的节点服务状态、所述目标节点的节点链路状态和所述目标节点的节点成本,确定所述目标节点对应的来源节点;接收所述目标节点对应的来源节点向所述目标节点调入的带宽量。
为实现上述目的,根据本发明实施例的第二方面,提供了一种节点带宽的调度装置。
本发明实施例的一种节点带宽的调度装置,包括:生成模块,用于获取训练样本集和测试样本集,并根据所述训练样本集和所述测试样本集,生成带宽预测模型;确定模块,用于获取目标节点的目标特征数据,并利用所述带宽预测模型,根据所述目标特征数据,确定所述目标节点的预测带宽数据;调度模块,用于根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理。
为实现上述目的,根据本发明实施例的第三方面,提供了一种电子设备。
本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例的节点带宽的调度方法。
为实现上述目的,根据本发明实施例的第四方面,提供了一种计算机可读介质。
本发明实施例的一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现本发明实施例的节点带宽的调度方法。
上述发明中的一个实施例具有如下优点或有益效果:因为能够获取训练样本集和测试样本集,生成带宽预测模型,克服了不能准确预测节点带宽的问题。此外,本发明中可以结合带宽调度策略,对目标节点的带宽进行调度处理,从而可以实现全局带宽均衡,提高用户的体验。另外,本发明生成带宽预测模型的过程中,首先利用训练样本集生成多个预测模型,然后结合评价函数和测试样本集,对多个预测模型进行性能评价,从而可以选择性能最优的预测模型为带宽预测模型,达到准确预测节点带宽的效果。还有,本发明在训练预测模型和利用评价函数的过程中,对不同时间属性的数据设置了不同的权重,这样可以减低带宽低的时候的预测偏差的惩罚,增大带宽高峰时刻预测偏差的惩罚,使得本技术方案的实用性更强。而且,本发明结合节点的服务能力、链路状态以及成本等因素来确定目标节点对应的归属节点或者来源节点,达到全局负载均衡的目的。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的节点带宽的调度方法的主要步骤的示意图;
图2是根据本发明的再一个可参考实施例的生成带宽预测模型的方法的主要流程示意图;
图3是根据本发明的又一个可参考实施例的节点带宽的调度方法的主要流程示意图;
图4是根据本发明实施例的节点带宽的调度装置的主要模块的示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的节点带宽的调度方法的主要步骤的示意图。作为本发明的一个可参考实施例,如图1所示,本发明实施例的节点带宽的调度方法的可以包括步骤S101、S102和S103。
步骤S101:获取训练样本集和测试样本集,并根据训练样本集和测试样本集,生成带宽预测模型;
步骤S102:获取目标节点的目标特征数据,并利用带宽预测模型,根据目标特征数据,确定目标节点的预测带宽数据;
步骤S103:根据预测带宽数据和目标节点的当前带宽数据,结合带宽调度策略,对目标节点执行带宽调度处理。
在采用CDN技术的网络中,当某些CDN节点带宽增加时,这些节点的处理能力会产生瓶颈,为了保证服务质量需要把一部分带宽调度至其他可以服务的CDN节点。因此,通过预测CDN节点的带宽,用于指导调度系统来进行全局的负载均衡是个很好的想法。但是由于CDN节点带宽具有突发性,如何能够准确地预测CDN节点的带宽具有重要的意义。本发明中在步骤S101中,利用训练样本集和测试样本集,生成CDN节点的带宽预测模型。然后在步骤S102中,获取目标节点的目标特征数据,将目标特征数据输入步骤S101中训练的带宽预测模型,得到目标节点的预测带宽数据。最后,根据目标节点的当前带宽数据的预测带宽数据,对目标节点执行带宽调度处理。需要注意的是,本发明中的带宽是指网络带宽,也就是指在单位时间(一般指的是1秒钟)内能传输的数据量。
通过上述分析得知,本发明的目的是预测CDN节点的带宽,然后利用预测的节点带宽进行后续的调度处理。通过分析可知,一个典型的CDN节点的带宽具有如下特点:早上9点左右开始,带宽开始突增,中午达到小高峰,晚上9点10点左右达到当天最高峰,然后带宽开始持续下降,凌晨3点左右达到带宽最低点。其次,预测CDN节点带宽的目的是为后续的全局负载均衡做指导。当一个节点的带宽超过其负载能力的时候肯定是该节点的带宽大的时候,因此构建带宽预测模型时,需要考虑节点的带宽规律,减低带宽低的时候的预测偏差的惩罚,增大流带宽高峰时刻预测偏差的惩罚,此处在后续的公式中会具体介绍。
此外,CDN节点的真实带宽会出现波峰和波谷的抖动,为了保证带宽的稳定,本发明中可以对带宽进行滑动窗口的平滑。平滑后,当前时刻的带宽值为当前时刻一段时间窗口的平均值,另外基于窗口的平滑,会导致平滑后的带宽产生一定的滞后性以及数值上的偏差,需要控制该窗口的大小,本发明中可以但不限于是选择该窗口的大小为一小时。最后,由于从调度系统下发调度命令到DNS生效到最终的带宽迁移有一定的延迟以及为了保证服务的稳定性,不能高频率的来回调节服务的CDN节点。因此,本发明可以设置CDN节点的带宽预测时间粒度为一小时,即指预测CDN节点每天各个小时的带宽最高值,如0到1点、1到2点、….、23到24点,当然,本发明中带宽预测时间粒度可以但不限于是一小时,可以根据实际情况调整,本发明对此不做限定。
当然,本发明中也可以把节点的带宽值占该节点上限带宽的比例分桶,接着预测节点的带宽落在哪个桶区间里面,将回归问题转化为一个多分类问题,把预测的节点带宽所处的区间作为预测值来指导后续的全局负载均衡。例如,有一个节点,它的上限带宽为40Gbps,本发明中可以直接预测该节点的带宽值,也可以预测该节点的带宽的取值范围(0到上限带宽,是个连续的值),本发明中可以把带宽值分桶为0到10Gbps、10到20Gbps、20到30Gbps、30到40Gbps和40Gbps以上这五类,可以构建带宽预测模型预测真实的带宽在哪个范围(离散值),这样预测的输出也是属于哪个范围了。为了便于描述,下文描述中,设置本发明建立的带宽预测模型是:预测每个CDN节点每天中各个小时的带宽峰值,当然这只是为了便于描述,并不是对于带宽预测模型的限制。
本发明可以根据网络结构、带宽计划和带宽规律来预测CDN节点的带宽,即预测各个CDN节点未来一段时间内的带宽峰值的大小。因此,本发明训练模型主要考虑的特征可以包括:节点的带宽特征、物理网络结构特征、DNS配置逻辑结构特征、带宽采买计划特征和带宽突增节日特征。
(1)节点的带宽特征。构建带宽预测模型的目的是预测每个CDN节点在未来一段时间的带宽峰值,因此这些CDN节点的历史带宽是最直接有效的数据。在CDN的节点结构和DNS配置的结构没有变化且没有重大的活动时,每个CDN节点的带宽和之前相比变化是非常小的。另外,需要预测的节点是边缘节点,按照归属逻辑划分,边缘节点还有上级的区域节点以及相邻节点,区域节点包含多个边缘节点。区域节点带宽和内部每个边缘节点带宽的相关性是非常强的,因此区域节点的带宽和相邻节点的带宽也作为节点的带宽特征。其次,全网的带宽是整体带宽的反映,在大规模增加带宽前,该带宽变动较小,得到全网带宽也应该属于节点的带宽特征。最后,从时间角度考虑,节点的带宽和每天中相同的小时、每周中相同的天、每年中相同的月份和每年同期的带宽具有强相关性。
举例说明,本发明节点的带宽特征可以包括:边缘节点近24小时各个小时的带宽数据、边缘节点在昨天同小时的带宽数据、边缘节点在前天同小时的带宽数据、边缘节点在前一周同小时的带宽数据、边缘节点在上周同天的带宽数据、边缘节点在上上周同天的带宽数据、边缘节点在上月同天的带宽数据、边缘节点在去年同天的带宽数据、边缘节点在前年同天的带宽数据、边缘节点在近三年同天的带宽数据、边缘节点的相邻节点近24小时各个小时的带宽数据、边缘节点的相邻节点在昨天同小时的带宽数据、边缘节点的相邻节点在前天同小时的带宽数据、边缘节点的相邻节点在前一周同小时的带宽数据、边缘节点的相邻节点在上周同天的带宽数据、边缘节点的相邻节点在上上周同天的带宽数据、边缘节点的相邻节点在上月同天的带宽数据、边缘节点的相邻节点在去年同天的带宽数据、边缘节点的相邻节点在前年同天的带宽数据、边缘节点的相邻节点在近三年同天的带宽数据、边缘节点的区域节点近24小时各个小时的带宽数据、边缘节点的区域节点在昨天同小时的带宽数据、边缘节点的区域节点在前天同小时的带宽数据、边缘节点的区域节点在前一周同小时的带宽数据、边缘节点的区域节点在上周同天的带宽数据、边缘节点的区域节点在上上周同天的带宽数据、边缘节点的区域节点在上月同天的带宽数据、边缘节点的区域节点在去年同天的带宽数据、边缘节点的区域节点在前年同天的带宽数据、边缘节点的区域节点在近三年同天的带宽数据、全网近24小时各个小时的带宽数据、全网在昨天同小时的带宽数据、全网在前天同小时的带宽数据、全网在前一周同小时的带宽数据、全网在上周同天的带宽数据、全网在上上周同天的带宽数据、全网在上月同天的带宽数据、全网在去年同天的带宽数据、全网在前年同天的带宽数据、全网在近三年同天的带宽数据等等。
(2)物理网络结构特征。此处的物理网络结构指的是物理节点的结构,例如当前节点属于哪个上层区域节点、当前节点有哪些相邻节点(即,与当前节点在同区域内的边缘节点)、当前节点的上限带宽(即,当前节点所能服务的最大流量带宽)以及当前节点色保底带宽(即,向运营商购买的起步付费带宽值,比如一个节点的保底带宽为20Gbps,即使实际的带宽没有超过20Gbps,也需要按照该值来付费)。
(3)DNS配置逻辑结构特征。节点的带宽是由DNS对网络请求的重定向(即,通过各种方法将各种网络请求重新定个方向转到其它位置)带来的,因此这部分也直接影响了节点的带宽。CDN节点和DNS的逻辑节点配置是多对多的关系,同一个DNS逻辑节点下可以包含多个CDN节点,同一个CDN节点也可以属于多个DNS逻辑节点。这部分特征可以把所有的DNS逻辑节点展开,如果某个CDN节点属于该逻辑节点,则相应的值为相应的DNS配置的流量切分比例,否则为0。一个CDN节点对应的各个DNS逻辑节点的比例和为1。
(4)带宽采买计划特征。当遇到重大的活动前,CDN的使用方会向各个CDN公司采买带宽,会涉及到什么时间段采买多少带宽,每个区域的大概值。因此,可以根据这部分信息来预测相应的突发流量。同时运维人员会根据采买计划来调整CDN节点的容量和DNS的结构,这部分数据在上面的两种特征中也有体现。
(5)带宽突增节日特征。在经济高速发展的当今社会,一些活动的会在每年的固定时间开展,比如说电商促销的双十一和六一八,比如说某公司的系统软件发布,还有政府的一些会议活动,体育赛事等。本发明可以采集多个重大活动的历史带宽数据和网络配置数据,在预测带宽的时候也应该考虑到这些固定的节日。这部分特征可以分两块来设计,一是判断是否属于其中某个活动,二是该活动历史的带宽数据和配置数据,这部分特征按照带宽和配置格式来处理。
此外,生成CDN节点的带宽预测模型是本发明的重要技术手段。本发明训练模型主要考虑的特征可以包括:节点的带宽特征、物理网络结构特征、DNS配置逻辑结构特征、带宽采买计划特征和带宽突增节日特征。在构建带宽预测模型时,首先需要获取训练样本集和测试样本集,其中训练样本集用于训练生成预测模型,测试样本集用于对训练生成的预测模型进行测试,从而可以得到预测准确率较高的带宽预测模型。本发明实施例中,训练样本集可以包括:训练特征数据和训练特征数据对应的真实带宽数据;测试样本集可以包括:测试特征数据和测试特征数据对应的真实带宽数据。
训练特征数据和测试特征数据均可以从数据仓库中随机获取,且它们的数据结构相同,均包括上文介绍的节点的带宽特征、物理网络结构特征、DNS配置逻辑结构特征、带宽采买计划特征和带宽突增节日特征,但是需要注意的是,训练特征数据和测试特征数据的数据结构相同,但是必须是不相同的数据。本发明中训练样本集和测试样本集均包括多组样本数据,用X表示特征数据,Y表示特征数据对应的真实数据,举例说明,一组样本的Y值是在2018年10月3日12点到13点的带宽最大值,相应的X值为:在当前时间(此例子中的当前时间为2018年10月3日12点)前1小时的带宽数据、当前时间前2小时带宽数据、当前时间前24小时带宽数据等等特征组成的一条记录。
本发明获取到训练样本集和测试样本集之后,利用获取的训练样本集和测试样本集,生成带宽预测模型,具体可以包括:对训练特征数据和训练特征数据对应的真实带宽数据进行训练,生成预测模型集,预测模型集中的预测模型输入的是特征数据,输出的是特征数据对应的预测带宽数据;针对预测模型集中的任意一个预测模型,将测试特征数据输入该预测模型,得到测试特征数据对应的预测带宽数据;根据测试特征数据对应的预测带宽数据和测试特征数据对应的真实带宽数据,利用评价函数计算该预测模型的性能值;从预测模型集中,选择性能值最高的预测模型为带宽预测模型。
本发明中构建预测带宽模型的目标是通过节点的带宽特征、物理网络结构特征、DNS配置逻辑结构特征、带宽采买计划特征和带宽突增节日特征来预测未来各个小时的带宽。在此,可以选用采用XGBOOST(即,一个用户机器学习的算法工具)训练预测模型,在预测模型时,选择的损失函数是线性回归参数,可以是以最小化每个小时预测带宽数据的均方根误差的方式来训练的模型。调参过程中,主要设定的参数如表1所示。
当然,构建模型时还有其他参数,此处不再一一列举。本发明中,还可以使用了XGBOOST自带的GridSearchCV方式来遍历参数组合以及交叉验证寻找最优的参数。通过GridSearchCV训练出了最优的模型参数,将这组参数输入模型,利用训练样本集中的训练特征数据和特征数据对应的真实数据来训练出最优的预测模型并保存在某一路径。
表1构建模型时,设置的参数表
本发明中训练集中包括很多组训练特征数据以及训练特征数据对应的真实数据。同时,利用训练集可以生成多个预测模型,然后采用评价函数,从多个预测模型中选择性能值最高的预测模型为预测带宽模型。上文分析过,预测的带宽和真实的带宽是存在偏差的,本发明调节带宽的目的是把过高的、节点服务不了的请求调度到别的节点来响应,因此带宽峰值的预测准确率就比较重要,这个时候应该增大预测错误的惩罚,而在带宽低的时候,即使存在些偏差,可能也设计不到调度流量,所以可以减少这部分预测偏差的惩罚。因此,本发明中预测更偏重于带宽数据高的时间点的准确性,训练集中各个时间点的样本对于高带宽时间点的贡献是不一样的。
综上所述,在获取训练特征数据之后,本发明的带宽调度方法还可以包括:在获取到多组训练特征数据之后,分别设置每组训练特征数据的权重值。本发明中,可以按照以下的规则来设定测试集中各组训练特征数据的权重:(1)统计每个小时各个节点的带宽峰值的和,每天会有24个带宽峰值和,即a1、a2、…a24;(2)统计最近三个月(本发明中可以但不限于是三个月,可以根据实际情况调整)的各个小时带宽峰值的总和均值,即a1_avg、a2_avg…a24_avg;(3)计算得到各个小时的权重为wi=ai/max(a1_avg、a2_avg…a24_avg),其中i代表第i个小时。当设定训练特征数据的权重后,带宽高的时刻,权重会增大,这正好满足关注晚上9点左右和中午两点左右高带宽时间的需求。
为了提高带宽预测模型的准确性,本发明中将测试样本集中的测试特征数据输入至预测模型中,得到测试特征数据对应的预测带宽数据,然后将测试特征数据对应的预测带宽数据和测试特征数据对应的真实数据代入到评价函数中,得到预测模型的性能值,从而可以从经过训练样本集训练出来的多个预测模型中,选择哪个预测模型最好。作为本发明的再一个可参考实施例,在利用评价函数计算预测模型的性能值之前,节点带宽的调度方法还可以包括:根据测试数据对应的真实带宽数据,设置评价函数中的权重值。本发明的评价函数可以选用如下的加权的RMSE函数。
其中权重ai为各组测试特征数据的权重,它的取值为所预测时间段的带宽峰值和每天中的带宽峰值的比例,这两个带宽峰值为统计近一个月时间(本发明中,可以但不限于是一个月时间,可以根据实际情况调整)的所有节点的带宽峰值的均值,yi为第i组测试特征数据对应的真实带宽数据,为第i组测试特征数据对应的预测带宽数据,n为测试特征数据的组数。评价函数用来判断模型好坏的一种标准,针对本发明的评价函数,当RMSE越小,表明模型训练的越好,预测的带宽数据越接近真实数据。
本发明中模型训练阶段和模型测试阶段,提取特征数据的方式是一致的,而模型训练阶段需要设置训练特征数据的权重,利用测试样本集,得到最优的带宽预测模型。然后将目标节点的目标特征数据输入至最优的带宽预测模型,可以得到目标节点在未来一段时间的带宽数据。还需要注意的是,目标特征数据的提取方式与训练特征数据和测试特征数据的提取方式也是相同的。
图2是根据本发明的再一个可参考实施例的生成带宽预测模型的方法的主要流程示意图。如图2所示,生成带宽预测模型的方法主要可以包括:
步骤S201:获取训练特征数据和训练特征数据对应的真实带宽数据,获取测试特征数据和测试特征数据对应的真实带宽数据;
步骤S202:分别设置每组训练特征数据的权重值;
步骤S203:对训练特征数据和训练特征数据对应的真实带宽数据进行训练,生成预测模型集,其中,预测模型集中的预测模型输入的是特征数据,输出的是特征数据对应的预测带宽数据;
步骤S204:计算预测模型集中所有预测模型的性能值;
步骤S205:从预测模型集中,选择性能值最高的预测模型为带宽预测模型。
在步骤S204中,具体的计算一个预测模型的性能值的方法为:从预测模型集中选择一个预测模型M;将测试特征数据输入预测模型M,得到测试特征数据对应的预测带宽数据;将测试特征数据对应的预测带宽数据和测试特征数据对应的真实带宽数据,代入至评价函数,得到预测模型M的性能值。就这样,计算预测模型集中所有预测模型的性能值。此外,还需要注意的是,评价函数RMSE在上文已经具体介绍,此处不再累述。
预测带宽模型的构建是本发明重要的技术手段,如何利用带宽预测模型对节点带宽进行调度是本发明的另一个重要的技术手段。具体的实现方法可以包括:根据当前带宽数据或者预测带宽数据,计算目标节点的带宽利用率;在当前带宽数据或者预测带宽数据超过目标节点的上限带宽数据时,或者在目标节点的带宽利用率超过预设的带宽利用率阈值时,对目标节点执行带宽调出处理;在当前带宽数据或者预测带宽数据低于目标节点的保底带宽数据时,对目标节点执行带宽调入处理。
节点带宽的调度是CDN全局负载均衡的实现方式,本发明调量触发是执行带宽调度的开关,它用来检测全局带宽的均衡性以及异常服务的状态。本发明可以认为以下两种情况发生时便需要触发带宽调度:
(1)目标节点的带宽过高的情况,此时触发带宽调出。带宽过高是目标节点的当前带宽或者目标节点的预测带宽超过或接近目标节点的上限带宽或者是说目标节点的带宽利用率超过预设的带宽利用率阈值。不能超过目标节点的上限带宽是超过之后,节点的服务质量会急速下降,而预设的带宽利用率阈值是根据业务和分析大量的带宽数据选择的一个调量基准。各个节点的利用率越接近该值表示带宽越均衡。
(2)目标节点的带宽过低的情况,此时可以申请带宽调入。带宽过低是指目标节点的当前带宽或者目标节点的预测带宽低于目标节点的保底带宽。保底带宽是流量采买时定的最低付费带宽,利用率到不了保底带宽会出造成全局成本的浪费。因此,当目标节点的带宽过低时,可以触发调入带宽至目标节点。
上述情况讨论了触发目标节点进行带宽调入或带宽调出的情形,接下来详细说明具体的带宽调入量或者带宽调出量。本发明实施例中,对目标节点执行带宽调出处理,可以包括:根据当前带宽数据、预测带宽数据、上限带宽数据以及带宽利用率阈值,计算目标节点的带宽调出量;获取与目标节点的业务相同的候选节点集;根据节点服务状态、节点链路状态和节点成本,从候选节点集中选择目标节点对应的归属节点;将目标节点的带宽调出量调入至目标节点对应的归属节点。
本发明的目标节点的带宽调出量的计算公式可以为:
band_out=band_node–min(1,band_all+C)*band_node_max
其中,band_out为目标节点的带宽调出量,band_node为目标节点的当前带宽数据或者预测带宽数据,band_node_max为目标节点的上限带宽数据,band_all为全网带宽利用率,C为可以根据实际情况调整的参数,band_all+C为预设的带宽利用率阈值。目标节点的带宽调出量计算得到的,那么需要确定将这些带宽调入至哪个节点中,也就是指目标节点对应的归属节点。本发明中只有业务相同的节点之间的带宽才可以互相调入或者调出。因此,当目标节点的带宽可以调出时,首先获取与目标节点的业务相同的节点,这些节点构成候选节点集。然后可以根据节点服务状态、节点链路状态和节点成本从候选节点集中选择归属节点。可以采用如下的加权策略,计算候选节点集中每个节点的分数:
score_n=a*link+b*quality_n+c*cost_save
其中,a、b和c都是参数;link为用户更改访问节点的链路延迟变化值;quality_n为节点的服务质量变化分,主要为访问的丢包率和下载速度请求响应速度;cost_save为调量造成的成本变动值。按照以上的方法计算出所有候选节集中节点针对目标节点的综合调量质量分后,对这些候选节点按照从高到低排序,选取综合调量质量分高的节点来接收目标节点需要调出的带宽。
相应地,对目标节点执行带宽调入处理可以包括:根据当前带宽数据、预测带宽数据以及保底带宽数据,计算目标节点的带宽调入量;根据目标节点的带宽掉入量、目标节点的节点服务状态、目标节点的节点链路状态和目标节点的节点成本,确定目标节点对应的来源节点;接收目标节点对应的来源节点向目标节点调入的带宽量。本发明中的目标节点的带宽调入量是保底带宽数据与调量时刻的带宽数据的差值,其中调量时刻的带宽数据可以是目标节点的当前带宽数据,也可以是目标节点的预测带宽数据。当目标节点需要带宽调入时,可以将目标节点的带宽调入量、目标节点的节点服务状态、目标节点的节点链路状态和目标节点的节点成本发送至调度中心,这样调度中心可以获取到目标节点的状态,从而可以为目标节点配置与目标节点对应的来源节点。
图3是根据本发明的又一个可参考实施例的节点带宽的调度方法的主要流程示意图。如图3所示,节点带宽的调度方法主要可以包括:
步骤S301:利用训练特征数据、训练特征数据对应的真实带宽数据、测试特征数据和测试特征数据对应的真实带宽数据,生成带宽预测模型;
步骤S302:将目标节点的目标特征数据输入至带宽预测模型中,得到目标节点的预测带宽数据;
步骤S303:根据目标节点的当前带宽数据或者预测带宽数据,计算目标节点的带宽利用率;
步骤S304:根据目标节点的当前带宽数据、预测带宽数据和带宽利用率,判断目标节点是否应该将带宽调出,若是,则执行步骤S305,否则,执行步骤S308;
步骤S305:根据当前带宽数据、预测带宽数据、上限带宽数据以及预设的带宽利用率阈值,计算目标节点的带宽调出量;
步骤S306:获取与目标节点的业务相同的候选节点集,并根据节点服务状态、节点链路状态和节点成本,从候选节点集中选择目标节点对应的归属节点;
步骤S307:将目标节点的带宽调出量调入至目标节点对应的归属节点;
步骤S308:判断目标节点是否应该接收带宽调入,若是,则执行步骤S309;
步骤S309:根据当前带宽数据、预测带宽数据以及保底带宽数据,计算目标节点的带宽调入量;
步骤S310:根据目标节点的带宽掉入量、目标节点的节点服务状态、目标节点的节点链路状态和目标节点的节点成本,确定目标节点对应的来源节点;
步骤S311:接收目标节点对应的来源节点向目标节点调入的带宽量。
在步骤S301中具体的带宽预测模型的生成过程在上文中的步骤S201至步骤S205中已经具体介绍,此处不再累述。另外,步骤S304中目标节点应该将带宽调出的情形可以包括:(1)目标节点的当前带宽数据超过目标节点的上限带宽数据;(2)目标节点的预测带宽数据超过目标节点的上限带宽数据;(3)目标节点的带宽利用率超过预设的全网带宽利用率。步骤S308中目标节点应该接收带宽调入的情绪可以包括:(1)目标节点的当前带宽数据低于目标节点的保底带宽数据;(2)目标节点的预测带宽数据低于目标节点的保底带宽数据。此外,步骤S304和步骤S308的判断顺序可以根据实际情况调整,本发明对此不做限定。
根据本发明的节点带宽的调度技术方案,因为能够获取训练样本集和测试样本集,生成带宽预测模型,克服了不能准确预测节点带宽的问题。此外,本发明中可以结合带宽调度策略,对目标节点的带宽进行调度处理,从而可以实现全局带宽均衡,提高用户的体验。另外,本发明生成带宽预测模型的过程中,首先利用训练样本集生成多个预测模型,然后结合评价函数和测试样本集,对多个预测模型进行性能评价,从而可以选择性能最优的预测模型为带宽预测模型,达到准确预测节点带宽的效果。还有,本发明在训练预测模型和利用评价函数的过程中,对不同时间属性的数据设置了不同的权重,这样可以减低带宽低的时候的预测偏差的惩罚,增大带宽高峰时刻预测偏差的惩罚,使得本技术方案的实用性更强。而且,本发明结合节点的服务能力、链路状态以及成本等因素来确定目标节点对应的归属节点或者来源节点,达到全局负载均衡的目的。
图4是根据本发明实施例的节点带宽的调度装置的主要模块的示意图。如图4所示,本发明实施例的节点带宽的调度装置400主要包括以下模块:生成模块401、确定模块402和调度模块403。其中,
生成模块401可用于:获取训练样本集和测试样本集,并根据训练样本集和测试样本集,生成带宽预测模型;
确定模块402可用于:获取目标节点的目标特征数据,并利用带宽预测模型,根据目标特征数据,确定目标节点的预测带宽数据;
调度模块403可用于:根据预测带宽数据和目标节点的当前带宽数据,结合带宽调度策略,对目标节点执行带宽调度处理。
本发明实施例中,生成模块401还可用于:获取训练特征数据和训练特征数据对应的真实带宽数据,训练特征数据和训练特征数据对应的真实带宽数据组成训练样本集;获取测试特征数据和测试特征数据对应的真实带宽数据,测试特征数据和测试特征数据对应的真实带宽数据组成测试样本集。
本发明实施例中,生成模块401还可用于:对训练特征数据和训练特征数据对应的真实带宽数据进行训练,生成预测模型集,预测模型集中的预测模型输入的是特征数据,输出的是特征数据对应的预测带宽数据;针对预测模型集中的任意一个预测模型,将测试特征数据输入该预测模型,得到测试特征数据对应的预测带宽数据;根据测试特征数据对应的预测带宽数据和测试特征数据对应的真实带宽数据,利用评价函数计算该预测模型的性能值;从预测模型集中,选择性能值最高的预测模型为带宽预测模型。
本发明实施例中,生成模块401还可用于:根据测试数据对应的真实带宽数据,设置评价函数中的权重值。
本发明实施例中,训练特征数据的组数可以包括至少一组;以及生成模块401还可用于:分别设置每组训练特征数据的权重值。
本发明实施例中,调度模块403还可用于:根据当前带宽数据或者预测带宽数据,计算目标节点的带宽利用率;在当前带宽数据或者预测带宽数据超过目标节点的上限带宽数据时,或者在目标节点的带宽利用率超过预设的带宽利用率阈值时,对目标节点执行带宽调出处理;在当前带宽数据或者预测带宽数据低于目标节点的保底带宽数据时,对目标节点执行带宽调入处理。
本发明实施例中,调度模块403还可用于:根据当前带宽数据、预测带宽数据、上限带宽数据以及预设的带宽利用率阈值,计算目标节点的带宽调出量;获取与目标节点的业务相同的候选节点集;根据节点服务状态、节点链路状态和节点成本,从候选节点集中选择目标节点对应的归属节点;将目标节点的带宽调出量调入至目标节点对应的归属节点。
本发明实施例中,调度模块403还可用于:根据当前带宽数据、预测带宽数据以及保底带宽数据,计算目标节点的带宽调入量;根据目标节点的带宽掉入量、目标节点的节点服务状态、目标节点的节点链路状态和目标节点的节点成本,确定目标节点对应的来源节点;接收目标节点对应的来源节点向目标节点调入的带宽量。
从以上描述可以看出,因为能够获取训练样本集和测试样本集,生成带宽预测模型,克服了不能准确预测节点带宽的问题。此外,本发明中可以结合带宽调度策略,对目标节点的带宽进行调度处理,从而可以实现全局带宽均衡,提高用户的体验。另外,本发明生成带宽预测模型的过程中,首先利用训练样本集生成多个预测模型,然后结合评价函数和测试样本集,对多个预测模型进行性能评价,从而可以选择性能最优的预测模型为带宽预测模型,达到准确预测节点带宽的效果。还有,本发明在训练预测模型和利用评价函数的过程中,对不同时间属性的数据设置了不同的权重,这样可以减低带宽低的时候的预测偏差的惩罚,增大带宽高峰时刻预测偏差的惩罚,使得本技术方案的实用性更强。而且,本发明结合节点的服务能力、链路状态以及成本等因素来确定目标节点对应的归属节点或者来源节点,达到全局负载均衡的目的。
图5示出了可以应用本发明实施例的节点带宽的调度方法或节点带宽的调度装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的节点带宽的调度方法一般由服务器505执行,相应地,节点带宽的调度装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括生成模块、确定模块和调度模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,生成模块还可以被描述为“获取训练样本集和测试样本集,并根据训练样本集和测试样本集,生成带宽预测模型的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取训练样本集和测试样本集,并根据训练样本集和测试样本集,生成带宽预测模型;获取目标节点的目标特征数据,并利用带宽预测模型,根据目标特征数据,确定目标节点的预测带宽数据;根据预测带宽数据和目标节点的当前带宽数据,结合带宽调度策略,对目标节点执行带宽调度处理。
根据本发明实施例的技术方案,因为能够获取训练样本集和测试样本集,生成带宽预测模型,克服了不能准确预测节点带宽的问题。此外,本发明中可以结合带宽调度策略,对目标节点的带宽进行调度处理,从而可以实现全局带宽均衡,提高用户的体验。另外,本发明生成带宽预测模型的过程中,首先利用训练样本集生成多个预测模型,然后结合评价函数和测试样本集,对多个预测模型进行性能评价,从而可以选择性能最优的预测模型为带宽预测模型,达到准确预测节点带宽的效果。还有,本发明在训练预测模型和利用评价函数的过程中,对不同时间属性的数据设置了不同的权重,这样可以减低带宽低的时候的预测偏差的惩罚,增大带宽高峰时刻预测偏差的惩罚,使得本技术方案的实用性更强。而且,本发明结合节点的服务能力、链路状态以及成本等因素来确定目标节点对应的归属节点或者来源节点,达到全局负载均衡的目的。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (11)
1.一种节点带宽的调度方法,其特征在于,包括:
获取训练样本集和测试样本集,并根据所述训练样本集和所述测试样本集,生成带宽预测模型;
获取目标节点的目标特征数据,并利用所述带宽预测模型,根据所述目标特征数据,确定所述目标节点的预测带宽数据;
根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理。
2.根据权利要求1所述的调度方法,其特征在于,所述获取训练样本集和测试样本集,包括:
获取训练特征数据和训练特征数据对应的真实带宽数据,所述训练特征数据和所述训练特征数据对应的真实带宽数据组成训练样本集;
获取测试特征数据和测试特征数据对应的真实带宽数据,所述测试特征数据和所述测试特征数据对应的真实带宽数据组成测试样本集。
3.根据权利要求2所述的调度方法,其特征在于,所述根据所述训练样本集和所述测试样本集,生成带宽预测模型,包括:
对所述训练特征数据和所述训练特征数据对应的真实带宽数据进行训练,生成预测模型集,所述预测模型集中的预测模型输入的是特征数据,输出的是特征数据对应的预测带宽数据;
针对所述预测模型集中的任意一个预测模型,将所述测试特征数据输入所述任意一个预测模型,得到所述测试特征数据对应的预测带宽数据;
根据所述测试特征数据对应的预测带宽数据和所述测试特征数据对应的真实带宽数据,利用评价函数计算所述任意一个预测模型的性能值;
从所述预测模型集中,选择性能值最高的预测模型为带宽预测模型。
4.根据权利要求3所述的调度方法,其特征在于,在利用评价函数计算所述预测模型的性能值之前,所述方法还包括:根据所述测试数据对应的真实带宽数据,设置所述评价函数中的权重值。
5.根据权利要求2所述的调度方法,其特征在于,所述训练特征数据的组数包括至少一组;以及
在获取训练特征数据之后,所述方法还包括:分别设置每组训练特征数据的权重值。
6.根据权利要求1所述的调度方法,其特征在于,所述根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理,包括:
根据所述当前带宽数据或者所述预测带宽数据,计算所述目标节点的带宽利用率;
在所述当前带宽数据或者所述预测带宽数据超过所述目标节点的上限带宽数据时,或者在所述目标节点的带宽利用率超过预设的带宽利用率阈值时,对所述目标节点执行带宽调出处理;
在所述当前带宽数据或者所述预测带宽数据低于所述目标节点的保底带宽数据时,对所述目标节点执行带宽调入处理。
7.根据权利要求6所述的调度方法,其特征在于,所述对所述目标节点执行带宽调出处理,包括:
根据所述当前带宽数据、所述预测带宽数据、所述上限带宽数据以及所述预设的带宽利用率阈值,计算所述目标节点的带宽调出量;
获取与所述目标节点的业务相同的候选节点集;
根据节点服务状态、节点链路状态和节点成本,从所述候选节点集中选择所述目标节点对应的归属节点;
将所述目标节点的带宽调出量调入至所述目标节点对应的归属节点。
8.根据权利要求6所述的调度方法,其特征在于,所述对所述目标节点执行带宽调入处理,包括:
根据所述当前带宽数据、所述预测带宽数据以及所述保底带宽数据,计算所述目标节点的带宽调入量;
根据所述目标节点的带宽掉入量、所述目标节点的节点服务状态、所述目标节点的节点链路状态和所述目标节点的节点成本,确定所述目标节点对应的来源节点;
接收所述目标节点对应的来源节点向所述目标节点调入的带宽量。
9.一种节点带宽的调度装置,其特征在于,包括:
生成模块,用于获取训练样本集和测试样本集,并根据所述训练样本集和所述测试样本集,生成带宽预测模型;
确定模块,用于获取目标节点的目标特征数据,并利用所述带宽预测模型,根据所述目标特征数据,确定所述目标节点的预测带宽数据;
调度模块,用于根据所述预测带宽数据和所述目标节点的当前带宽数据,结合带宽调度策略,对所述目标节点执行带宽调度处理。
10.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910048493.9A CN111464323A (zh) | 2019-01-18 | 2019-01-18 | 节点带宽的调度方法和调度装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910048493.9A CN111464323A (zh) | 2019-01-18 | 2019-01-18 | 节点带宽的调度方法和调度装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111464323A true CN111464323A (zh) | 2020-07-28 |
Family
ID=71679730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910048493.9A Pending CN111464323A (zh) | 2019-01-18 | 2019-01-18 | 节点带宽的调度方法和调度装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111464323A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112243025A (zh) * | 2020-09-22 | 2021-01-19 | 网宿科技股份有限公司 | 节点成本的调度方法、电子设备及存储介质 |
CN112491971A (zh) * | 2020-11-09 | 2021-03-12 | 苏州浪潮智能科技有限公司 | 一种计算集群节点调度方法、装置、设备、产品 |
CN112583658A (zh) * | 2020-11-20 | 2021-03-30 | 鹏城实验室 | 一种可用带宽测量方法、存储介质及设备 |
CN113014422A (zh) * | 2021-02-09 | 2021-06-22 | 北京金山云网络技术有限公司 | 一种内容分发网络带宽调度的方法、装置及设备 |
CN113033783A (zh) * | 2021-04-07 | 2021-06-25 | 苏州瑞立思科技有限公司 | 一种基于bp神经网络的带宽调整方法 |
CN113079045A (zh) * | 2021-03-26 | 2021-07-06 | 北京达佳互联信息技术有限公司 | 带宽分配方法、装置、服务器及存储介质 |
CN113179175A (zh) * | 2021-03-16 | 2021-07-27 | 国家电网有限公司信息通信分公司 | 一种电力通信网业务的实时带宽预测方法及装置 |
CN113691463A (zh) * | 2021-08-19 | 2021-11-23 | 网宿科技股份有限公司 | Cdn调度参数调整方法、装置、电子设备及存储介质 |
CN114500339A (zh) * | 2022-02-07 | 2022-05-13 | 北京百度网讯科技有限公司 | 一种节点带宽监测方法、装置、电子设备及存储介质 |
CN114726732A (zh) * | 2022-02-28 | 2022-07-08 | 网宿科技股份有限公司 | Cdn带宽资源的规划方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103746934A (zh) * | 2013-12-24 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种cdn带宽平衡的方法、cdn控制中心及系统 |
CN105471759A (zh) * | 2016-01-11 | 2016-04-06 | 北京百度网讯科技有限公司 | 数据中心的网络流量调度方法和装置 |
CN105634992A (zh) * | 2015-12-29 | 2016-06-01 | 网宿科技股份有限公司 | Cdn平台自适应带宽控制方法和系统 |
CN107124375A (zh) * | 2017-03-27 | 2017-09-01 | 网宿科技股份有限公司 | Cdn网络带宽资源的错峰调度方法、系统以及服务器 |
CN107465708A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种cdn带宽调度系统及方法 |
CN107707382A (zh) * | 2017-08-15 | 2018-02-16 | 贵州白山云科技有限公司 | 一种智能调度方法和装置 |
-
2019
- 2019-01-18 CN CN201910048493.9A patent/CN111464323A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103746934A (zh) * | 2013-12-24 | 2014-04-23 | 乐视网信息技术(北京)股份有限公司 | 一种cdn带宽平衡的方法、cdn控制中心及系统 |
CN105634992A (zh) * | 2015-12-29 | 2016-06-01 | 网宿科技股份有限公司 | Cdn平台自适应带宽控制方法和系统 |
US20180316623A1 (en) * | 2015-12-29 | 2018-11-01 | Wangsu Science & Technology Co., Ltd. | Method and system for self-adaptive bandwidth control of cdn platform |
CN105471759A (zh) * | 2016-01-11 | 2016-04-06 | 北京百度网讯科技有限公司 | 数据中心的网络流量调度方法和装置 |
CN107465708A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种cdn带宽调度系统及方法 |
CN107124375A (zh) * | 2017-03-27 | 2017-09-01 | 网宿科技股份有限公司 | Cdn网络带宽资源的错峰调度方法、系统以及服务器 |
CN107707382A (zh) * | 2017-08-15 | 2018-02-16 | 贵州白山云科技有限公司 | 一种智能调度方法和装置 |
Non-Patent Citations (1)
Title |
---|
杨戈;樊秀梅;: "基于CDN的流媒体动态调度算法", 通信学报, no. 02, 15 February 2009 (2009-02-15) * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112243025A (zh) * | 2020-09-22 | 2021-01-19 | 网宿科技股份有限公司 | 节点成本的调度方法、电子设备及存储介质 |
CN112243025B (zh) * | 2020-09-22 | 2023-10-17 | 网宿科技股份有限公司 | 节点成本的调度方法、电子设备及存储介质 |
CN112491971B (zh) * | 2020-11-09 | 2022-05-31 | 苏州浪潮智能科技有限公司 | 一种计算集群节点调度方法、装置、设备、产品 |
CN112491971A (zh) * | 2020-11-09 | 2021-03-12 | 苏州浪潮智能科技有限公司 | 一种计算集群节点调度方法、装置、设备、产品 |
CN112583658A (zh) * | 2020-11-20 | 2021-03-30 | 鹏城实验室 | 一种可用带宽测量方法、存储介质及设备 |
CN113014422A (zh) * | 2021-02-09 | 2021-06-22 | 北京金山云网络技术有限公司 | 一种内容分发网络带宽调度的方法、装置及设备 |
WO2022170934A1 (zh) * | 2021-02-09 | 2022-08-18 | 北京金山云网络技术有限公司 | 一种内容分发网络带宽调度的方法、装置及设备 |
CN113014422B (zh) * | 2021-02-09 | 2022-09-23 | 北京金山云网络技术有限公司 | 一种内容分发网络带宽调度的方法、装置及设备 |
CN113179175A (zh) * | 2021-03-16 | 2021-07-27 | 国家电网有限公司信息通信分公司 | 一种电力通信网业务的实时带宽预测方法及装置 |
CN113079045A (zh) * | 2021-03-26 | 2021-07-06 | 北京达佳互联信息技术有限公司 | 带宽分配方法、装置、服务器及存储介质 |
CN113033783A (zh) * | 2021-04-07 | 2021-06-25 | 苏州瑞立思科技有限公司 | 一种基于bp神经网络的带宽调整方法 |
CN113033783B (zh) * | 2021-04-07 | 2024-04-26 | 苏州瑞立思科技有限公司 | 一种基于bp神经网络的带宽调整方法 |
CN113691463A (zh) * | 2021-08-19 | 2021-11-23 | 网宿科技股份有限公司 | Cdn调度参数调整方法、装置、电子设备及存储介质 |
CN114500339A (zh) * | 2022-02-07 | 2022-05-13 | 北京百度网讯科技有限公司 | 一种节点带宽监测方法、装置、电子设备及存储介质 |
CN114726732A (zh) * | 2022-02-28 | 2022-07-08 | 网宿科技股份有限公司 | Cdn带宽资源的规划方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111464323A (zh) | 节点带宽的调度方法和调度装置 | |
Tang et al. | Dynamic request redirection and elastic service scaling in cloud-centric media networks | |
CN113037869B (zh) | 用于内容分发网络系统的回源的方法和装置 | |
Niu et al. | When hybrid cloud meets flash crowd: Towards cost-effective service provisioning | |
US8190593B1 (en) | Dynamic request throttling | |
US7356592B2 (en) | Method and apparatus for web farm traffic control | |
CN109831524B (zh) | 一种负载均衡处理方法及装置 | |
Prachitmutita et al. | Auto-scaling microservices on IaaS under SLA with cost-effective framework | |
Meng et al. | Joint optimization of wireless bandwidth and computing resource in cloudlet-based mobile cloud computing environment | |
Liu et al. | Performance modeling of representative load sharing schemes for clustered servers in multiaccess edge computing | |
Chiang et al. | Profit optimization in SLA-aware cloud services with a finite capacity queuing model | |
Wang et al. | Multi-leader multi-follower Stackelberg game based dynamic resource allocation for mobile cloud computing environment | |
Nazar et al. | Modified shortest job first for load balancing in cloud-fog computing | |
CN112506619B (zh) | 作业处理方法、装置、电子设备和存储介质 | |
US20140143427A1 (en) | Providing Resources in a Cloud | |
CN111654561B (zh) | 一种ip地址数量确定方法、装置、电子设备及存储介质 | |
Rekha et al. | Dynamic cost-load aware service broker load balancing in virtualization environment | |
Tiwary et al. | CPS: a dynamic and distributed pricing policy in cyber foraging systems for fixed state cloudlets | |
Xue et al. | Mining association rules for admission control and service differentiation in e‐commerce applications | |
US11374869B2 (en) | Managing bandwidth based on user behavior | |
Yu et al. | Energy-efficient, qos-aware packet scheduling in high-speed networks | |
Presti et al. | Dynamic replica placement in content delivery networks | |
Mirampalli et al. | Hierarchical fuzzy‐based Quality of Experience (QoE)‐aware application placement in fog nodes | |
CN113626175A (zh) | 数据处理的方法和装置 | |
Zheng et al. | Simulation study on latency-aware network in edge computing |
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 |