技术新讯 > 电子通信装置的制造及其应用技术 > 一种基于DNS的CDN多方引流调度算法的制作方法  >  正文

一种基于DNS的CDN多方引流调度算法的制作方法

  • 国知局
  • 2024-10-21 15:06:26

本发明涉及it与软件开发,尤其涉及一种基于dns的cdn多方引流调度算法。

背景技术:

1、域名系统(domain name system,dns):是互联网的一项服务,它作为将域名和ip地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

2、内容分发网络(contentdeliverynetwork,cdn):是一种新型网络内容服务体系,其基于ip网络而构建,基于内容访问与应用的效率要求、质量要求和内容秩序而提供内容的分发和服务。cdn因其可以显著缓解源站压力,提高内容分发和服务的速度,已被广泛应用于网站加速、点直播、游戏加速等场景。

3、cdn因其可以显著缓解源站压力,提高内容分发和服务的速度,已被广泛应用于网站加速、点直播、游戏加速等场景。但随着公司业务的发展,传统的cdn也暴露出了很多问题,比如很多企业在使用cdn产品时,经常多个事业部或项目同时使用一个云厂商的产品,当云厂商出现网络故障时,只能等待云厂商解决问题;面对突发的大流量,无法快速有效的提供优质的网络资源;企业项目,事业部太多,在云产品上无法做到细分,成本最后无法分摊等,这些都会影响企业的业务。为了解决这些问题,融合cdn的方案就诞生了,融合cdn的目的是整合目前优质的云厂商资源,通过融合技术,实现对数据网络加速进一步优化的融合管理。不仅将多cdn备灾、带宽用量等问题完美解决,还为企业使用cdn服务提供优质的加速体验,同时如果企业都在使用融合的方案也会倒逼云厂商不断的完善自己的服务质量,而融合cdn的核心算法中,如何让多cdn厂商按指定比例精确引流的算法成为关键。

4、然而目前,大部分应用和业务都采用域名作为服务的入口,因此用dns来负载均衡和区域调度是非常普遍的做法,然而因为dns协议ip个数有限、本地dns缓存以及缓存时间长等缘故,会导致多方引流的效果不佳,无法按照指定的比例精确引流。因此,为了优化多方厂商引流带宽尽量贴近指定比例,本发明提出了一种基于dns的cdn多方引流调度算法,以改善上述情形。

技术实现思路

1、本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。

2、鉴于上述一种基于dns的cdn多方引流调度算法的问题,提出了本发明。

3、因此,本发明目的是提供一种基于dns的cdn多方引流调度算法,其用于解决目前大部分应用和业务都采用域名作为服务的入口,因此用dns来负载均衡和区域调度是非常普遍的做法,然而因为dns协议ip个数有限、本地dns缓存以及缓存时间长等缘故,会导致多方引流的效果不佳,无法按照指定的比例精确引流等问题。

4、为解决上述技术问题,本发明提供如下技术方案:一种基于dns的cdn多方引流调度算法,包括以下步骤:

5、步骤s1:实时获取当前配置的响应总ip个数,记为m;总方数记为m;各方的ip集合,其ip个数记为n1、n2、n3、...、nm;指定的比例,记为p1:p2:p3:...:pm;计算制定的比例之和;

6、步骤s2:若ni≥pi,则表明各方ip均足够,可以精确地将比例进行放大至总ip数不超过m的最大个数,算法结束;否则继续以下步骤;

7、步骤s3:将最大响应ip个数m按比例p1:p2:p3:...:pm进行分配,并与各自的ip个数ni取较小值,得到q1,q2,q3,...,qm;

8、步骤s4:以满足条件qi=ni的ip个数ni为基准,计算出基准总ip数,取bi的最小值得到最终基准ip响应个数b=min(bi);

9、步骤s5:若b为非整数,则对小数部分进行概率补偿得到本次响应ip总个数t;

10、步骤s6:根据基准响应ip个数b,按比例p1:p2:p3:...:pm计算各方的ip个数,与对应方ip个数ni取较小值得到各方响应ip个数r1,r2,r3,...rm;

11、步骤s7:对各方响应ip个数r1,r2,r3,...rm的小数部分进行概率补偿。

12、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s1中,p1、p2、p3、...、pm互质。

13、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s1中,计算制定的比例之和的公式为

14、

15、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s2的计算公式ni≥pi中,i=1,2,3,...,m。

16、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤3中,将最大响应ip个数m按比例进行分配时向下取整。

17、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s4中,计算出基准总ip数的公式为:

18、bi=ni*s/pi。

19、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s6中,按比例p1:p2:p3:...:pm计算各方的ip个数是含小数点的。

20、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s6中,与对应方ip个数ni取较小值得到各方响应ip个数r1,r2,r3,...rm是含小数点的。

21、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s7中,概率补偿的补偿次数为响应ip总个数t减去各方响应ip个数的整数部分。

22、作为本发明所述一种基于dns的cdn多方引流调度算法的一种优选方案,其中:在步骤s7中,概率补偿时采用随机数生成法生成0到1之间的随机数,若随机数落在某一方占比之内,则表示该方补偿一个ip。

23、本发明的有益效果:

24、1.在dns响应时,通过概率补偿的方式,在响应尽量多的ip响应个数的同时达到或趋近于指定的比例。

25、2.不受限于方数,理论上可以支持无限多方的比例。

技术特征:

1.一种基于dns的cdn多方引流调度算法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s1中,p1、p2、p3、...、pm互质。

3.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s1中,计算制定的比例之和的公式为

4.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s2的计算公式ni≥pi中,i=1,2,3,...,m。

5.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤3中,将最大响应ip个数m按比例进行分配时向下取整。

6.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s4中,计算出基准总ip数的公式为:

7.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s6中,按比例p1:p2:p3:...:pm计算各方的ip个数是含小数点的。

8.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s6中,与对应方ip个数ni取较小值得到各方响应ip个数r1,r2,r3,...rm是含小数点的。

9.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s7中,概率补偿的补偿次数为响应ip总个数t减去各方响应ip个数的整数部分。

10.根据权利要求1所述的一种基于dns的cdn多方引流调度算法,其特征在于:在步骤s7中,概率补偿时采用随机数生成法生成0到1之间的随机数,若随机数落在某一方占比之内,则表示该方补偿一个ip。

技术总结本发明公开了一种基于DNS的CDN多方引流调度算法,包括以下步骤:步骤S1:实时获取当前配置的响应总IP个数,记为M;总方数记为m;各方的IP集合;指定的比例;计算制定的比例之和;步骤S2:若Ni≥Pi,则表明各方IP均足够,可以精确地将比例进行放大至总IP数不超过M的最大个数,算法结束;否则继续以下步骤;步骤S3:将最大响应IP个数M按比例P1:P2:P3:...:Pm进行分配,并与各自的IP个数Ni取较小值;步骤S4:以满足条件Qi=Ni的IP个数Ni为基准,计算出基准总IP数;步骤S5:若B为非整数,则对小数部分进行概率补偿得到本次响应IP总个数T;步骤S6:根据基准响应IP个数B;步骤S7:对各方响应IP个数R1,R2,R3,...Rm的小数部分进行概率补偿。技术研发人员:唐国明,向校民,陈义伟,王金土,林詹健,姜梦雪受保护的技术使用者:天翼云科技有限公司技术研发日:技术公布日:2024/10/17

本文地址:https://www.jishuxx.com/zhuanli/20241021/320537.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。