一种基于网络延时的CDN调度算法及系统技术方案

技术编号:23153027 阅读:21 留言:0更新日期:2020-01-18 14:57
本发明专利技术公开了一种基于网络延时的CDN调度算法,其特征在于包括以下步骤:(a)客户端发起业务访问流程;(b)所述客户端的网络调度模块接收到DNS服务器请求;(c)所述网络调度模块发送查询请求到CDN调度中心;(d)所述CDN调度中心的CDN负载均衡器查找n台备选缓存服务器;(e)n台备选缓存服务器地址返回给所述客户端的网络调度模块;(f)所述网络调度模块同时向n台备选缓存服务器发送网络探测报文;(g)最先返回的缓存服务器作为本次连接的目的地址;(h)如果产生网络连接中断、延迟超过阈值时,重新进行返回到步骤(f)。针对客户端为APP的场景下,CDN节点分配算法增加终端网络探测数据,更加有效地进行网络加速。

CDN scheduling algorithm and system based on network delay

【技术实现步骤摘要】
一种基于网络延时的CDN调度算法及系统
本专利技术涉及通信领域,具体涉及一种基于网络延时的CDN调度算法及系统。
技术介绍
CDN返回给用户的目标CDN节点通常是根据物理距离的远近来分配,例如浙江省绍兴市的用户会访问杭州(离他最近)的CDN节点,这样分配的原则一般情况下是对的,但是终端用户常常出现连接的最近的CDN节点后出现连接失败或者网络卡顿的问题。这是由于没有考虑到不同运营商的互联互通问题,导致该CDN节点目前的网络拥塞等问题。智能DNS解析可以一定程度的解决上面所述的问题。DNS策略解析最基本的功能是可以智能的判断终端用户的地域、源IP的运营商,然后根据不同的访问者把域名分别解析成不同的IP地址。如访问者是网通用户,DNS策略解析服务器会把你的域名对应的网通IP地址解析给这个访问者。如访问者是电信用户,DNS策略解析服务器会把您域名对应的电信IP地址解析给这个访问者。但是现有方案也存在如下缺点:1这种方式是基于“地理位置+运营商类型”双因素来判断用户连接到这个CDN节点,理论上应该最快。但是现实中的网络情况收到较多其他因素的干扰,例如:该CDN节点目前的网络负载情况是否较高,该节点是否正在受到DDoS/CC等攻击,运营商基础网络情况,例如绍兴电信的的终端用户连接到杭州电信的CDN节快还是上海电信的节点更快?实际上是不一定的,甚至是实时变化的。智能DNS的方案就没办法解决这样的问题。2因为客户端上一般都存在域名缓存的问题,一旦当前连接的CDN节点出现故障连接不通,重新需要进行DNS解析的时候操作系统取的仍然是缓存的信息,终端会有几分钟的时间连接不了网络。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提供一种基于网络延时的CDN调度算法及系统。为了解决上述技术问题,采用如下技术方案:一种基于网络延时的CDN调度算法,包括以下步骤:(a)客户端发起业务访问流程;(b)所述客户端的网络调度模块接收到DNS服务器请求;(c)所述网络调度模块发送查询请求到CDN调度中心;(d)所述CDN调度中心的CDN负载均衡器查找n台备选缓存服务器;(e)n台备选缓存服务器地址返回给所述客户端的网络调度模块;(f)所述网络调度模块同时向n台备选缓存服务器发送网络探测报文;(g)最先返回的缓存服务器作为本次连接的目的地址;(h)如果产生网络连接中断、延迟超过阈值时,重新进行返回到步骤(f)。进一步,所述CDN负载均衡器查找所述备选缓存服务器是基于现有的CDN网络,按照地理位置、服务器负载情况以及运营商信息综合选择最近的备选缓存服务器。进一步,所述备选缓存服务器的数量大于等于3。一种基于网络延时的CDN调度系统,包括客户端、CDN调度中心和缓存服务器,所述客户端连接有网络调度模块,所述网络调度模块连接所述CDN调度中心,所述CDN调度中心连接有CDN负载均衡器,所述CDN负载均衡器查找所述缓存服务器;所述客户端为终端客户APP端;所述CDN调度中心:用于接收所述DNS服务器的请求,并根据所述客户端的业务访问流程的请求,由CDN负载均衡器查找备选缓存服务器。由于采用上述技术方案,具有以下有益效果:本专利技术为一种基于网络延时的CDN调度算法及系统,针对客户端为APP的场景下,CDN节点分配算法增加终端网络探测数据,更加有效地进行网络加速。由于本专利技术将网络调度的触角延伸到终端上,可以感知到真实的网络情况,让终端根据真实的网络情况选择最快的节点,可以较大幅度提升用户的使用体验。附图说明下面结合附图对本专利技术作进一步说明:图1为本专利技术中一种基于网络延时的CDN调度算法的流程示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明了,下面通过附图及实施例,对本专利技术进行进一步详细说明。但是应该理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限制本专利技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本专利技术的概念。如图1所示,一种基于网络延时的CDN调度算法,包括以下步骤:(a)客户端发起业务访问流程。(b)所述客户端的网络调度模块接收到DNS服务器请求。(c)所述网络调度模块发送查询请求到CDN调度中心。(d)所述CDN调度中心的CDN负载均衡器查找n台备选缓存服务器;所述备选缓存服务器的数量大于等于3。(e)n台备选缓存服务器地址返回给所述客户端的网络调度模块。(f)所述网络调度模块同时向n台备选缓存服务器发送网络探测报文。(g)最先返回的缓存服务器作为本次连接的目的地址。(h)如果产生网络连接中断、延迟超过阈值时,重新进行返回到步骤(f)。所述CDN负载均衡器查找所述备选缓存服务器是基于现有的CDN网络,按照地理位置、服务器负载情况以及运营商信息综合选择最近的备选缓存服务器。具体地,终端客户App端进行域名解析时,首先被终端客户App端预置的网络调度模块截获,CDN调度中心根据该终端所处地理位置、运营商情况返回前三台可能最快的CDN节点信息,预置的App调度模块同时发送网络探测报文到这三台CDN节点,最先返回的CDN节点即是最优的连接目标,网络调度模块将选择的结果上传到CDN分配调度中心。如果客户端网络延迟达到某个阈值(例如大于500ms)网络调度模块会对这三台CDN备选节点重新进行网络探测,重新选择最快的节点。一种基于网络延时的CDN调度系统,包括客户端、CDN调度中心和缓存服务器,所述客户端连接有网络调度模块,所述网络调度模块连接所述CDN调度中心,所述CDN调度中心连接有CDN负载均衡器,所述CDN负载均衡器查找所述缓存服务器;所述客户端为终端客户APP端;所述CDN调度中心:用于接收所述DNS服务器的请求,并根据所述客户端的业务访问流程的请求,由CDN负载均衡器查找备选缓存服务器。所述备选缓存服务器指的是CDN的缓存服务器,比如www.baidu.com这个域名对应的全国有30台缓存服务器(实际上我们在杭州访问百度和在北京访问百度对应的服务器IP地址是不一样的,存在很多的镜像服务器也叫缓存服务器),分布在各个省里面,一个杭州的用户用浏览器来访问www.baidu.com的时候CDN缓存服务器,CDN调度中心认为可能最快的三台缓存服务器应该是杭州、上海、南京三个地方的缓存服务器,这时候用户电脑上的网络调度模块同时向这三个缓存服务器IP发送网络探测报文(可以理解为Ping),最先返回的就说明他的网络是最快的。探测报文不是文件,是网络数据包。为了更好地理解本专利技术,参看下表1的实验数据表1从上表数据可以看出,相同源IP到同一城市里不同运营商机房的服务器延迟相差较大。延迟从最高的203.97提高到43.86。(以上每组数据为测试20次的平均值)...

【技术保护点】
1.一种基于网络延时的CDN调度算法,其特征在于包括以下步骤:/n(a)客户端发起业务访问流程;/n(b)所述客户端的网络调度模块接收到DNS服务器请求;/n(c)所述网络调度模块发送查询请求到CDN调度中心;/n(d)所述CDN调度中心的CDN负载均衡器查找n台备选缓存服务器;/n(e)n台备选缓存服务器地址返回给所述客户端的网络调度模块;/n(f)所述网络调度模块同时向n台备选缓存服务器发送网络探测报文;/n(g)最先返回的缓存服务器作为本次连接的目的地址;/n(h)如果产生网络连接中断、延迟超过阈值时,重新进行返回到步骤(f)。/n

【技术特征摘要】
1.一种基于网络延时的CDN调度算法,其特征在于包括以下步骤:
(a)客户端发起业务访问流程;
(b)所述客户端的网络调度模块接收到DNS服务器请求;
(c)所述网络调度模块发送查询请求到CDN调度中心;
(d)所述CDN调度中心的CDN负载均衡器查找n台备选缓存服务器;
(e)n台备选缓存服务器地址返回给所述客户端的网络调度模块;
(f)所述网络调度模块同时向n台备选缓存服务器发送网络探测报文;
(g)最先返回的缓存服务器作为本次连接的目的地址;
(h)如果产生网络连接中断、延迟超过阈值时,重新进行返回到步骤(f)。


2.根据权利要求1所述的一种基于网络延时的CDN调度算法,其特征在于:所述CDN负载均衡器...

【专利技术属性】
技术研发人员:赵飞
申请(专利权)人:杭州云缔盟科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1