一种基于IP百分比调度的CDN客户带宽精准牵引方法与流程
- 国知局
- 2024-08-22 14:50:15
本发明属于互联网,具体涉及一种基于ip百分比调度的cdn客户带宽精准牵引方法。
背景技术:
1、cdn(content delivery network)是一种网络架构,用于提供高质的内容分发服务。cdn通过将内容存储在离用户较近的服务器上,从而提高内容的访问速度和可用性。
2、在cdn网络中,一般使用一个至多个上流量ip(边缘缓存服务器的对外暴露的可供用户访问内容的ip地址)来为域名(客户需要加速的域名)-区域(客户服务用户所在的地理位置加运营商粒度的规划)粒度的客户带宽进行服务。ip是cdn带宽调度的最细单元,一台边缘缓存机器会包含一个至多个上流量ip,一个边缘节点会由一台至多台边缘缓存机器组成,一个边缘机房由一个至多个边缘节点组成。基于ip百分比的调度,能够实现按百分比牵引域名-区域-ip粒度的部分带宽到满足条件的调入ip上,调度更加精细化。但是ip百分比调度因为每轮的调度带宽都有可能不同,需要实时修正,对调入ip的承载能力判断要求更高,需要考虑调入ip各维度带宽冗余是否足够承载(包括边缘缓存机器的带宽冗余是否足够承载,边缘节点交换机的带宽冗余是否足够承载和边缘机房交换机的带宽冗余是否足够承载)。如果对于客户带宽的牵引不够精准,导致某一维度的承载带宽超越最大可承载上限,将会影响客户的服务质量,引发客户投诉。
3、因此,需要提供一种基于ip百分比调度的cdn客户带宽精准牵引方法、电子设备及存储介质,以改善上述情形。
技术实现思路
1、本发明所要解决的技术问题是针对背景技术中当前如果对客户带宽牵引不够精准,容易导致服务器负载不均匀、用户访问的网络性能不稳定和难以应对突发流量等问题的不足提供一种基于ip百分比调度的cdn客户带宽精准牵引方法;能够基于ip百分比调度更加精准的牵引带宽,在提升用户服务质量的同时还能降低cdn带宽和硬件成本。
2、本发明为解决上述技术问题采用以下技术方案:
3、一种基于ip百分比调度的cdn客户带宽精准牵引方法,具体包含以下步骤:
4、步骤s1:计算域名-区域-ip粒度的调度比例;
5、步骤s2:获取域名-区域-ip粒度的实时带宽;
6、步骤s3:设计一种多批次带宽预扣模块,用于对每轮的调度带宽变化量进行精准计算;
7、步骤s4:设计一种自适应带宽生效模块,用于根据不同域名预占不同的带宽冗余;
8、步骤s5:设计一种多维度带宽承载判断模块,用于根据域名-区域-ip粒度的调出带宽寻找满足资源使用规则的计划调入ip,并对计划调入ip的各维度机器承载能力进行判断,包含缓存服务器维度、边缘节点维度和边缘机房维度,寻找各维度机器承载能力都满足要求的ip进行带宽牵引。
9、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s1中,所述域名-区域-ip粒度的调度比例为该ip在这个域名-区域粒度需要牵引的带宽比例,取值范围在0至100之间,0表示不需要进行带宽牵引,100表示该ip在这个域名-区域粒度的带宽需要都牵引到调入ip上。
10、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,所述步骤s3具体包含如下步骤;
11、步骤s3-1:每分钟计算域名-区域-ip粒度的带宽调度比例;
12、步骤s3-2:根据域名-区域-ip粒度的带宽调度比例和实时带宽计算本轮的调出带宽,公式如下:
13、outbw=outrate*bw
14、其中,outrate表示本轮域名-区域-ip粒度的调度比例,bw表示本轮域名-区域-ip粒度的实时带宽,outbw表示本轮计算得到的该域名-区域-ip粒度的调出带宽;
15、步骤s3-3:统计该域名-区域-ip粒度之前轮次的调出带宽总和;
16、步骤s3-4:计算当前轮次调出带宽与之前轮次调出带宽总和的差值,生成本轮调出带宽变化量;
17、步骤s3-5:存储本轮的调出带宽变化量,即带宽预扣记录。
18、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s3-4中,调出带宽变化量可能为正数也可能为负数,正数表示本轮需要调出的带宽比之前多,负数表示本轮需要调出的带宽比之前少。
19、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s3-5中,域名-区域-ip粒度的调度线为100m,在00分时,实时带宽为70m,低于调度线因此不需要调度,此时调出带宽为0m;
20、在01分时,实时带宽为120m,高于调度线,此时调出带宽为20m,因为此时为第一轮调出,因此之前轮次的调出带宽总和为0,预扣记录为+20m;
21、在02分时,实时带宽为140m,此时调出带宽为40m,01分已经调出20m,本轮预扣记录为+20m;
22、在03分时,实时带宽为150m,此时调出带宽为50m,预扣记录为+10m;
23、在04分时,实时带宽为140m,此时调出带宽为40m,之前轮次的调出带宽总和为50m,因此预扣记录为-10m;
24、在05分时,实时带宽为130m,此时调出带宽为30m,预扣记录为-10m;
25、在06分时,实时带宽为115m,调出带宽为15m,预扣记录为-15m;
26、在07分时,实时带宽为100m,不需要调出,调出带宽为0m,因为之前轮次的调出带宽总和为15m,预扣记录为-15m。
27、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s4中,所述自适应带宽生效模块,具体包含如下步骤;
28、步骤s4-1:配置部署生效时间阈值为t;
29、步骤s4-2:计算域名的带宽生效时长e,不同域名的带宽生效时长并不一样,针对不同域名计算各自的带宽生效时长,
30、步骤s4-3:根据部署生效时间阈值t和域名带宽生效时长e,计算该牵引带宽在各个时刻的带宽生效比例,公式如下:
31、
32、步骤s4-4:遍历域名-区域-ip每轮的调出带宽变化量,根据当前时间计算每轮调出带宽的未生效带宽并汇聚到ip粒度,供后续多维度带宽承载判断模块使用。
33、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,所述步骤s4-2具体包含如下步骤,
34、步骤s4-2-1:获取域名-区域-ip每分钟的实时牵引带宽;
35、步骤s4-2-2:统计开始牵引带宽时间与结束牵引带宽时间的差值,即为本次带宽牵引的生效时长;
36、步骤s4-2-3:对多次带宽牵引的生效时长取众数再乘以放大因子r(默认配置为1.2),即为该域名的带宽生效时长e;
37、步骤s4-2-4:配置默认的带宽生效时长,直至系统能够自动计算出带宽生效时长,再采用系统实时更新计算的带宽生效时长e。
38、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s4-3中,配置部署生效时间阈值t等于120秒,设域名的带宽生效时长e等于480秒,得到带宽生效比例趋势图,从图中可看到0至120秒处于部署生效时间内,此期间带宽牵引还未开始,带宽生效比例为0,需要预占全部的带宽冗余;120至360秒,带宽牵引已经开始,但是受限于localdns的缓存时间和域名所属业务客户端缓存策略等等因素的影响,带宽牵引相对较慢,此期间带宽生效比例也较低,需要预占较多的带宽冗余;360至600秒,此期间大多数localdns的缓存时间已过期,会重新请求,带宽牵引相对较快,直至全部牵引完成。
39、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,在步骤s4-4中,计划调入ip1在当前时刻至前10分钟内的带宽预扣记录,根据步骤s4-3公式计算当前时刻至前10分钟内每分钟的带宽未生效比例,进而计算之前每轮在当前时刻的未生效带宽,把未生效带宽进行累加得到数值23.5m即为此计划调入ip1在当前时刻需要预占的带宽总量。
40、作为本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法的进一步优选方案,所述步骤s5具体包含如下步骤;
41、步骤s5-1:获取计划调入ip所属边缘缓存机器的实时带宽和额定带宽,获取边缘缓存机器所有上流量ip的未生效带宽,计算边缘缓存机器当前时刻的带宽冗余,公式如下:
42、bwredu=ratebw-realbw-sum(ipnoteffetbw)
43、其中,ratebw表示边缘缓存机器的额定带宽,即边缘缓存服务器的最大承载带宽;realbw表示边缘缓存服务器的实时带宽,即当前带宽;ipnoteffectbw表示边缘缓存服务器下单个上流量ip的未生效带宽;bwredu即为边缘缓存服务器当前时刻的冗余带宽,即还可承接的带宽量;
44、步骤s5-2:判断边缘缓存机器的带宽冗余是否大于等于牵引带宽,如果不满足则继续校验其他满足资源使用规则的计划调入ip,如果满足则继续校验边缘节点交换机的带宽冗余是否足够;
45、步骤s5-3:获取满足边缘缓存服务器带宽冗余的计划调入ip所属边缘节点的交换机实时带宽和上限出口带宽,获取边缘节点下所有上流量ip的未生效带宽,计算边缘节点当前时刻的带宽冗余,公式如下:
46、bwredu=upoutbw-realbw-sum(ipnoteffetbw)
47、其中,upoutbw表示边缘节点交换机的上限出口带宽,即边缘节点的最大承载带宽;realbw表示边缘节点的实时带宽,即当前带宽;ipnoteffectbw表示边缘节点下单个上流量ip的未生效带宽;bwredu即为边缘节点当前时刻的冗余带宽,即还可承接的带宽量;
48、步骤s5-4:判断边缘节点的带宽冗余是否大于等于牵引带宽,如果不满足则继续校验其他满足资源使用规则的计划调入ip,如果满足则继续校验边缘机房交换机的带宽冗余是否足够;
49、步骤s5-5:获取满足边缘节点带宽冗余的计划调入ip所属边缘机房的交换机实时带宽和机房最大传输带宽,获取边缘机房下所有上流量ip的未生效带宽,计算边缘机房当前时刻的带宽冗余,公式如下:
50、bwredu=maxtranbw-realbw-sum(ipnoteffetbw)
51、在上述公式中,maxtranbw表示边缘机房交换机的最大传输带宽,即边缘机房的最大承载带宽;realbw表示边缘机房的实时带宽,即当前带宽;ipnoteffectbw表示边缘机房下单个上流量ip的未生效带宽;bwredu即为边缘机房当前时刻的冗余带宽,即还可承接的带宽量;
52、步骤s5-6:判断边缘机房的带宽冗余是否大于等于牵引带宽,如果不满足则继续校验其他满足资源使用规则的计划调入ip,如果满足则选取此ip为最终的调入ip,把带宽牵引到该ip上,并记录带宽预扣记录供后续自适应带宽生效模块使用。
53、本发明采用以上技术方案与现有技术相比,具有以下技术效果:
54、1、本发明一种基于ip百分比调度的cdn客户带宽精准牵引方法,能够基于ip百分比调度更加精准的牵引带宽,在提升用户服务质量的同时还能降低cdn带宽和硬件成本;
55、2、本发明设计了一种多批次带宽预扣模块,能够对每个轮次的域名-区域-ip粒度的调度带宽变化量进行精准计算并存储,避免对调入ip牵引过多的带宽,导致调入ip超过自身承载能力,影响调入ip的服务质量;
56、3、本发明设计了一种自适应带宽生效模块,能够根据不同域名计算契合的带宽生效比例,提升节点带宽利用率的同时还能降低调入ip受影响的风险;
57、4、本发明设计了一种多维度带宽承载判断模块,能够对满足资源使用规则的计划调入ip判断缓存服务器维度、边缘节点维度和边缘机房维度的带宽冗余,保障调入ip的各维度带宽承载不受影响。
本文地址:https://www.jishuxx.com/zhuanli/20240822/280066.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。