一种域名带宽调整方法及装置与流程

文档序号:18248457发布日期:2019-07-24 09:32阅读:164来源:国知局
一种域名带宽调整方法及装置与流程

本发明涉及互联网技术领域,特别涉及一种域名带宽调整方法及装置。



背景技术:

随着互联网的发展,CDN(Content Delivery Network,即内容分发网络)系统被越来越多地部署在网络中,用于提高人们访问网站的速度。随着网络中数据流量的激增,特别是针对游戏类、视频类网站,这些网站在进行数据更新时,往往会产生较大的边缘带宽和回源带宽,边缘带宽的持续走高会降低用户访问CDN系统中其它网站的速度,而回源带宽的持续走高则会增加CDN系统中源站的压力,容易引起整个CDN系统的不稳定。

针对上述问题,现有的CDN系统可以根据GPC(Global Protection Control,即全局防护控制系统)对边缘带宽或者回源带宽进行限速,但是在限速状态下,CDN系统容易产生误判,即在边缘带宽或者回源带宽降低时,CDN系统会直接放开对边缘带宽或者回源带宽的限速,容易导致边缘带宽或者回源带宽再次走高。

鉴于此,有必要提供一种新的域名带宽调整方法及装置以解决上述不足。



技术实现要素:

本申请的目的在于提供一种域名带宽调整方法及装置,能够避免直接放开带宽限制,导致目标域名的边缘带宽或者回源带宽再次走高的问题。

为实现上述目的,本申请一方面提供一种域名带宽调整方法,应用于CDN系统中,所述方法包括:判断所述CDN系统是否触发带宽限速策略,若触发,则在所述CDN系统服务的域名中,确定待限速的目标域名,并对所述目标域名执行所述带宽限速策略;在所述带宽限速策略执行时,确定所述目标域名的初始参考带宽,并在指定观察时长内,对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整,以及判断是否解除所述带宽限速策略。

为实现上述目的,本申请另一方面还提供一种域名带宽调整装置,应用于CDN系统中,所述域名带宽调整装置包括限速判断单元,用于判断所述CDN系统是否触发带宽限速策略,以及判断是否解除所述带宽限速策略;域名识别单元,用于在触发所述带宽限速策略后,在所述CDN系统服务的域名中,确定待限速的目标域名;带宽调整单元,用于确定所述目标域名的初始参考带宽,并在指定观察时长内,对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整。

由此可见,本申请提供的技术方案,CDN系统可以根据边缘节点服务器或者中转节点服务器的负载情况,自动判断是否触发带宽限速策略,并在触发带宽限速策略时,自动在边缘节点服务器或者中转节点服务器服务的域名中确定需要进行限速的目标域名,然后根据设定的初始参考带宽对目标域名的边缘带宽或者回源带宽进行限速。如果目标域名的实际带宽小于或者等于初始参考带宽的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽进行阶梯调整,并根据调整后的参考带宽,逐步增加目标域名在整个CDN系统中的可用带宽,以提高用户对目标域名的访问体验。当目标域名的实际带宽小于或者等于初始参考带宽的持续时间达到指定观察时长时,CDN系统会解除带宽限速策略,彻底放开对目标域名的带宽限制。由此可见,本申请提供的技术方案,通过对目标域名进行带宽阶梯调整和限速观察,可以逐步恢复CDN系统对目标域名的加速效果,既提高了用户访问目标域名的体验,又可以避免直接放开带宽限制,导致目标域名的边缘带宽或者回源带宽再次走高。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施方式中域名带宽调整方法的流程图;

图2是本发明实施方式中判断是否对初始参考带宽进行阶梯调整的流程图;

图3是本发明实施方式中对初始参考带宽进行阶梯调整的流程图;

图4是本发明实施方式中判断是否解除带宽限速策略的流程图;

图5是本发明实施方式中域名带宽调整装置的功能模块示意图;

图6是本发明实施方式中域名带宽调整装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。

节点是CDN系统中最基本的部署单元,每个节点都是由缓存服务器集群组成。CDN系统设计的首要目标是尽量减少用户的访问响应时间,为达到这一目标,CDN系统会尽量将用户所需要的内容存放在距离用户最近的位置,也就是说,负责为用户提供内容服务的缓存服务器应部署在物理上的网络边缘位置,上述网络边缘位置可以称为边缘节点,部署在边缘节点的缓存服务器可以称为边缘节点服务器。同时,CDN系统中负责全局性管理和控制的设备组成中心节点,中心节点不仅能对整个CDN网络中的各个子系统和设备进行实时监控,对各种故障产生相应的告警,还可以实时监测到系统中总的流量和各边缘节点的流量,在本申请中,将部署在中心节点的缓存服务器称为中转节点服务器。中转节点服务器保存着最完善的内容副本,当边缘节点服务器未缓存用户访问的内容时,边缘节点服务器会向中转节点服务器发送请求,如果中转节点服务器仍未缓存用户访问的内容,则需要中转节点服务器向源站回源,如果中转节点服务器故障或者服务能力不足,则需要边缘节点服务器直接向源站回源。在本申请中,将用户与边缘节点服务器之间交换数据产生的网络带宽称为边缘带宽,将中转节点服务器与源站之间交换数据产生的网络带宽称为回源带宽。

请一并参阅图1至图4,本申请提供的一种域名带宽调整方法,可以包括以下步骤。

S101:判断CDN系统是否触发带宽限速策略,若触发,则在所述CDN系统服务的域名中,确定待限速的目标域名,并对所述目标域名执行所述带宽限速策略。

在本实施方式中,CDN系统将根据缓存服务器的负载情况、整个网络带宽的负载情况,判断是否触发带宽限速策略。缓存服务器或者网络带宽负载过大,将导致整个CDN系统工作不稳定,影响CDN系统对外提供服务,所以CDN系统会触发带宽限速策略,对网络带宽进行限制,以降低缓存服务器和网络带宽的负载。由于CDN系统会同时为多个域名提供加速服务,所以在触发带宽限速策略时,CDN系统会在所服务的所有域名中识别出带宽跑高的域名,即确定待限速的目标域名,并对目标域名执行带宽限速策略,限制目标域名的访问带宽。

在一个实施方式中,针对所述CDN系统中的边缘节点服务器,当用户访问目标域名时,为目标域名提供服务的边缘节点服务器中已经缓存了用户请求的内容,边缘节点服务器将直接向用户返回请求的内容。如果用户请求的内容数据量较大,例如用户需要进行游戏版本更新、视频下载等,此时会产生较大的边缘带宽,边缘节点服务器也会承受较大的访问压力。此时CDN系统会根据预先设置的冗余资源使用策略,启用边缘节点预留的网络带宽及边缘节点服务器中预留的计算能力,以提高边缘节点的服务能力。CDN系统同时会计算边缘节点服务器的性能指标,上述性能指标包括但不限于延时率、卡顿率、下载速度、打开速度、回源率等,当上述性能指标低于预设指标阈值时,CDN系统将判断预留的网络带宽及计算能力不能满足用户的访问需求,CDN系统将对目标域名触发带宽限速策略。

在另一个实施方式中,针对所述CDN系统中的中转节点服务器,当用户访问目标域名时,为目标域名提供服务的边缘节点服务器,以及为上述边缘节点服务器提供服务的中转节点服务器中都没有缓存用户请求的内容,中转节点服务器将会向源站发出访问请求。如果用户请求的内容数据量较大,例如用户需要进行游戏版本更新、视频下载等,此时会产生较大的回源带宽,中转节点服务器和源站也会承受较大的压力。此时CDN系统会根据预先设置的DNS调度策略,从资源池或者备用池中调用更多的网络带宽和服务器,以提高中转节点的服务能力。在CDN系统中,中转节点服务器处于整个网络的中心位置,对各个边缘节点服务器的回源请求进行收敛。如果在中转节点服务器负载过大时,CDN系统直接对中转节点服务器的性能进行限制,将会导致整个CDN系统性能的下降,严重影响系统的加速服务,所以在中转节点服务器负载过大时,CDN系统不会对中转节点服务器的工作状态进行调整,只有在中转节点服务器的负载达到一定阈值,发出告警信息后,CDN系统才会对中转节点服务器的工作状态进行调整。当CDN系统判断所述中转节点服务器产生告警信息后,CDN系统将对目标域名触发带宽限速策略。

在本实施方式中,在CDN系统中还可以预设消警策略,当CDN系统判断所述中转节点服务器产生告警信息后,自动降低中转节点服务器的负载至安全水平,待中转节点服务器消除告警信息后,再对目标域名触发带宽限速策略,以进一步提高CDN系统的稳定性。

在本实施方式中,当中转节点服务器发出告警信息后,还可以采取人工介入的方式进行处理,例如操作员可以直接降低目标域名在中转节点服务器上的回源带宽,或者直接降低中转节点服务器服务的所有域名的回源带宽,操作员还可以判断告警信息是否为误报,如果是误报,操作员可以直接解除目标域名的带宽限速策略。

S102:在所述带宽限速策略执行时,确定所述目标域名的初始参考带宽,并在指定观察时长内,对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整,以及判断是否解除所述带宽限速策略。

由于CDN系统可以实时监测到目标域名在整个系统中的流量和各边缘节点的流量,所以在本实施方式中,可以将触发带宽限速策略时,目标域名在整个CDN系统中的实际带宽值设定为初始参考带宽,并将上述初始参考带宽设定为目标域名在整个CDN系统中的可用带宽,以避免目标域名的网络带宽无限跑高,影响CDN系统对其它域名的服务质量。需要特别指出的是,也可以将初始参考带宽设定为小于触发带宽限速策略时目标域名在整个CDN系统中的实际带宽值,本申请对此不作限制。

在设定初始参考带宽后,CDN系统将在指定观察时长内,实时比较目标域名在整个CDN系统中的的实际带宽和初始参考带宽的大小,并根据预设的条件判断是否对目标域名的初始参考带宽进行阶梯调整,以及判断是否解除目标域名的带宽限速策略。需要特别指出的是,上述指定观察时长可以根据经验值进行设定,例如设定为30分钟,上述指定观察时长的起点可以设置为CDN系统触发带宽限速策略时的时间点,也可以设置为CDN系统触发带宽限速策略之后任一时间点,本申请对此不作限制。

为便于叙述,下文将初始参考带宽记为C0。

在本实施方式中,CDN系统判断是否对初始参考带宽进行阶梯调整包括以下步骤:

S201:根据所述初始参考带宽和预设比例系数,确定比例参考带宽。

预设比例系数的设定可以采用经验值,例如将预设比例系数设定为0.8,相应的比例参考带宽设定为0.8C0,本申请对预设比例系数的设定不作限制。

S202:记录所述目标域名的实际带宽首次小于或者等于所述比例参考带宽时的时间节点,并从记录的所述时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到预设参考时长。

CDN系统将实时记录目标域名在整个CDN系统中的实际带宽,并实时比较上述实际带宽与上述比例参考带宽的大小关系,当首次出现实际带宽小于或者等于比例参考带宽时,CDN系统将记录下此刻的时间点,并从该时间点开始,判断目标域名的实际带宽小于或者等于比例参考带宽的持续时间是否达到预设参考时长。

需要特别指出的是,上述预设参考时长可以根据经验值进行设定,例如将预设参考时长设定为5分钟,本申请对预设参考时长的具体数值不作限制,但是预设参考时长必须小于指定观察时长。

S203:若所述持续时间达到所述预设参考时长,则对所述初始参考带宽进行阶梯调整。

如果目标域名的实际带宽小于或者等于比例参考带宽的持续时间达到预设参考时长,CDN系统将对目标域名的初始参考带宽进行阶梯调整。

如果目标域名的实际带宽小于或者等于比例参考带宽的持续时间小于所述预设参考时长,CDN系统将从所述目标域名的实际带宽大于比例参考带宽的时刻起,再次记录所述目标域名的实际带宽首次小于或者等于比例参考带宽时的时间节点,并从再次记录的时间节点开始,判断所述目标域名的实际带宽小于或者等于比例参考带宽的持续时间是否达到所述预设参考时长。

下面举例说明CDN系统如何判断是否对目标域名的初始参考带宽进行阶梯调整。

假设目标域名首次出现实际带宽小于或者等于比例参考带宽(假设为0.8C0)的时间节点为11:02,预设参考时长为5分钟,CDN系统将会以11:02为时间节点,判断11:02至11:07这段时长内,目标域名的实际带宽是否一直小于或者等于0.8C0。

如果在11:02至11:07这段时长内,目标域名的实际带宽一直小于或者等于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽(即C0)进行阶梯调整。

如果在11:02至11:07这段时长内,目标域名的实际带宽出现突发,例如在11:04目标域名的实际带宽出现突发,实际带宽大于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间小于预设参考时长,此时CDN系统会维持目标域名的初始参考带宽不变,继续对目标域名进行限速,并以11:04为时间重置点,重新实时比较11:04之后目标域名的实际带宽与0.8C0的大小关系,假设在11:12再次出现实际带宽小于或者等于0.8C0,CDN系统将会以11:12为新的时间节点,并判断11:12至11:17这段时长内,目标域名的实际带宽是否一直小于或者等于0.8C0。如果在11:12至11:17这段时长内,CDN目标域名的实际带宽一直小于或者等于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽进行阶梯调整。如果在11:12至11:17这段时长内,目标域名的实际带宽再次出现突发,导致实际带宽大于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间小于预设参考时长,CDN系统会维持目标域名的初始参考带宽不变,继续对目标域名进行限速,并以实际带宽再次出现突发的时刻为时间重置点,重复进行上述判断过程。

在本实施方式中,当目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽进行阶梯调整,对所述初始参考带宽进行阶梯调整包括以下步骤:

S301:根据所述初始参考带宽和预设增幅系数,确定调整后的阶梯参考带宽,并记录带宽调整时的时间节点。

在本实施方式中,预设增幅系数的设定可以采用经验值,例如将预设增幅系数设定为1.1,相应的对初始参考带宽进行第一次调整后的阶梯参考带宽将为1.1C0,CDN系统将同时记录对初始参考带宽进行第一次调整时的时间节点。需要特别指出的是,当CDN系统每确定一次新的阶梯参考带宽,CDN系统都将同步记录带宽调整时的时间节点。

显然将预设增幅系数设定为1.1,会使调整后的目标域名的阶梯参考带宽大于初始参考带宽,相当于CDN系统增加了目标域名在整个CDN系统中的可用带宽,用户在访问目标域名时可以获得更快的速度,访问体验会更好。

S302:从所述带宽调整时的时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到所述预设参考时长。

在本实施例中,CDN系统将实时记录目标域名的实际带宽,并从上述记录到的带宽调整时的时间节点开始,实时比较目标域名的实际带宽与上述比例参考带宽的大小关系,并判断目标域名的实际带宽小于或者等于上述比例参考带宽的持续时间是否达到预设参考时长。

S303:若所述持续时间达到所述预设参考时长,则根据所述阶梯参考带宽和所述预设增幅系数,确定新的阶梯参考带宽,并记录带宽调整时的时间节点。

如果目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间达到所述预设参考时长,CDN系统将根据所述阶梯参考带宽所述预设增幅系数,再次对目标域名的初始参考带宽进行调整,即确定目标域名新的阶梯参考带宽,CDN系统将同时记录下再次对目标域名的初始参考带宽进行调整时的时间节点。需要特别指出的是,当CDN系统每确定一次新的阶梯参考带宽,CDN系统都将同步记录带宽调整时的时间节点。

如果目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间小于所述预设参考时长,CDN系统将从所述目标域名的实际带宽大于所述比例参考带宽的时刻起,再次记录所述目标域名的实际带宽首次小于或者等于所述比例参考带宽时的时间节点,并从再次记录的时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到所述预设参考时长。

下面举例说明CDN系统如何对目标域名的初始参考带宽进行阶梯调整。

假设预设比例系数设定为0.8,预设增幅系数设定为1.1,预设参考时长为5分钟,假设目标域名首次出现实际带宽小于或者等于比例参考带宽(即0.8C0)的时间节点为15:00,在15:00至15:05这段时长内,目标域名的实际带宽一直小于或者等于0.8C0,CDN系统判断目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽(即C0)进行阶梯调整,并将第一次调整后的阶梯参考带宽调整为1.1C0,并同时记录下对初始参考带宽进行第一次调整时的时间节点(即15:05)。

CDN系统将以15:05为起点,实时比较15:05之后目标域名的实际带宽与0.8C0的大小关系,并判断15:05至15:10这段时长内,目标域名的实际带宽是否一直小于或者等于0.8C0。

如果在15:05至15:10这段时长内,目标域名的实际带宽一直小于或者等于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会以第一次调整后的阶梯参考带宽(即1.1C0)为基础,根据上述预设增幅系数对目标域名的初始参考带宽进行第二次调整,并将第二次调整后的阶梯参考带宽调整为1.1*1.1C0(即1.21C0),,亦即确定新的阶梯参考带宽,CDN系统将同时记录下第二次带宽调整时的时间节点(即15:10)。

显然第二次调整后的阶梯参考带宽大于第一次调整后的阶梯参考带宽,CDN系统进一步增加了目标域名在整个CDN系统中的可用带宽,用户对目标域名的访问体验会进一步提高。

如果在15:05至15:10这段时长内,目标域名的实际带宽出现突发,例如在15:06目标域名的实际带宽出现突发,实际带宽大于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间小于预设参考时长,此时CDN系统会维持第一次调整后的阶梯参考带宽不变(即1.1C0),继续对目标域名进行限速,并以15:06为时间重置点,重新实时比较15:06之后目标域名的实际带宽与0.8C0的大小关系,假设在15:22再次出现实际带宽小于或者等于0.8C0,CDN系统将会以15:22为新的时间节点,判断15:22至15:27这段时长内,目标域名的实际带宽是否一直小于或者等于0.8C0。如果在15:22至15:27这段时长内,CDN目标域名的实际带宽一直小于或者等于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽进行第二次调整。如果在15:22至15:27这段时长内,目标域名的实际带宽再次出现突发,导致实际带宽大于0.8C0,CDN系统将判断目标域名的实际带宽小于或者等于0.8C0的持续时间小于预设参考时长,此时CDN系统会维持第一次调整后的阶梯参考带宽不变(即1.1C0),继续对目标域名进行限速,并以实际带宽再次出现突发的时刻为时间重置点,重复进行上述判断过程。

需要特别指出的是,如果在上述判断过程中目标域名的实际突发带宽大于C0,出于系统稳定性考虑,可以将调整后的阶梯参考带宽重置为初始参考带宽(即C0),并以C0为基础,重新对目标域名进行阶梯调整。CDN系统在确定新的阶梯参考带宽,并记录带宽调整时的时间节点后,将重复进行步骤S302,以进一步增加目标域名在整个CDN系统中的可用带宽,逐步提高用户对目标域名的访问体验。

在本实施方式中,在CDN系统对目标域名的初始参考带宽进行阶梯调整后,还包括判断是否解除所述带宽限速策略的步骤,具体的包括以下步骤:

S401:判断所述目标域名的实际带宽小于或者等于所述初始参考带宽的持续时间是否达到所述指定观察时长。

当CDN系统触发所述带宽限速策略后,CDN系统将以触发带宽限速策略时的时间点为起点,根据设定的指定观察时长,判断在这段时间内目标域名的实际带宽是否一直小于或者等于所述初始参考带宽。

S402:若所述持续时间达到所述指定观察时长,则解除所述带宽限速策略。

如果目标域名的实际带宽在所述指定观察时长内,一直小于或者等于初始参考带宽,CDN系统将判断目标域名的实际带宽小于或者等于初始参考带宽的持续时间达到指定观察时长,用户对目标域名的访问需求已经下降,目标域名的带宽不会再次走高,CDN系统将解除目标域名的带宽限速策略。

若所述持续时间小于所述指定观察时长,CDN系统会将阶梯调整后的参考带宽重置为所述初始参考带宽,并在所述指定观察时长内,重新对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整,以及判断是否解除所述带宽限速策略。

下面举例说明CDN系统是如何判断是否解除目标域名的带宽限速策略。

假设指定观察时长为30分钟,CDN系统触发带宽限速策略时的时间点为12:08,CDN系统将会对比12:08至12:38这段时长内目标域名的实际带宽和初始参考带宽(即C0)的大小。

如果在12:08至12:38这段时长内,目标域名的实际带宽一直小于或者等于C0,CDN系统将判断目标域名的实际带宽小于或者等于C0的持续时间达到指定观察时长,用户对目标域名的访问需求已经下降,目标域名的带宽不会再次走高,CDN系统将解除目标域名的带宽限速策略。

如果在12:08至12:38这段时长内,目标域名的实际带宽出现突发,例如在12:30目标域名的实际带宽出现突发,并且实际突发带宽大于C0,CDN系统将判断目标域名的实际带宽小于或者等于C0的持续时间小于指定观察时长,用户对目标域名的访问需求仍然较大,目标域名的带宽可能会再次走高。此时CDN系统会继续对目标域名执行带宽限速策略,并将目标域名调整后的阶梯参考带宽重置为初始参考带宽(即C0),并以实际带宽出现突发的时刻(即12:30)为时间重置点,重新对比12:30至13:00这段时长内目标域名的实际带宽和初始参考带宽(即C0)的大小,以判断是否对目标域名的初始参考带宽进行阶梯调整,以及判断是否解除目标域名的带宽限速策略。

在本实施方式中,针对所述CDN系统中为所述目标域名提供服务的目标缓存服务器,所述带宽限速策略还包括确定所述目标域名在每一个所述目标缓存服务器上的带宽限制值,并将所述带宽限制值发送至对应的所述目标缓存服务器的步骤。

在CDN系统中,通常会有多个边缘节点服务器或者中转节点服务器同时为目标域名提供加速服务,在本申请中,将为目标域名提供加速服务的边缘节点服务器或者中转节点服务器称为目标缓存服务器,显然,目标域名在整个CDN系统中的可用带宽是通过目标缓存服务器在整个CDN系统中的可用带宽来体现的,当目标缓存服务器在整个CDN系统中的可用带宽增加时,即体现为目标域名在整个CDN系统中的可用带宽增加。CDN系统将统计所有的目标缓存服务器,并根据预设带宽限制总值和当前的目标缓存服务器对应的带宽比例,计算目标域名在每一个目标缓存服务器上的初始带宽限制值,并将上述初始带宽限制值发送至对应的目标缓存服务器上。当CDN系统对目标域名的初始参考带宽进行阶梯调整后,CDN系统将根据调整后的阶梯参考带宽,重新调整目标域名的带宽限制总值,并根据上述带宽比例确定目标域名在每一个目标缓存服务器上的阶梯带宽限制值。CDN系统通过上述阶梯带宽限制值,逐步增加目标缓存服务器在整个CDN系统中的可用带宽,以提高用户对目标域名的访问体验。

在本实施方式中,CDN系统可以在触发目标域名的带宽限速策略时,统计目标域名在各个目标缓存服务器上的实际带宽,并计算上述各个目标缓存服务器间的实际带宽的比值,以此确定当前的目标缓存服务器对应的带宽比例。

在本实施方式中,CDN系统可以根据初始参考带宽对预设带宽限制总值进行设定,预设带宽限制总值的具体数值可以根据经验值进行设置,但是预设带宽限制总值必须小于或者等于初始参考带宽。

在本实施方式中,针对CDN系统中的中转节点服务器,CDN系统还可以根据源站的性能指标来设置预设带宽限制总值,例如源站可以承受的最大回源带宽为10M,CDN系统可以将预设带宽限制总值设定为10M。由于一个中转节点服务器可能同时为多个域名提供加速服务,在某种情况下可能会出现源站可以承受的最大回源带宽大于CDN系统设定的初始参考带宽,此时预设带宽限制总值应当以初始参考带宽为参考标准进行设定。

需要说明的是,带宽限制总值的调整系数可以参考所述预设增幅系数,也可以根据经验值进行设定,本申请对此不作限制。

举例来说,整个CDN网络中只有两台边缘节点服务器为目标域名提供加速服务,分别记为目标缓存服务器A和目标缓存服务器B。假设CDN系统触发目标域名带宽限速策略时,目标域名在目标缓存服务器A上的实际带宽为20M,目标域名在目标缓存服务器B上的实际带宽为30M,初始参考带宽设定为50M,则目标缓存服务器A对应的带宽比例为2/5,目标缓存服务器B对应的带宽比例为3/5,如果预设带宽限制总值设置为40M,则目标域名在目标缓存服务器A上的初始带宽限制值为16M,目标域名在目标缓存服务器B上的初始带宽限制值为24M。带宽限制总值的调整系数取预设增幅系数,当CDN系统对初始参考带宽进行阶梯调整,第一次调整后的的阶梯参考带宽为55M,此时相应的目标域名的带宽限制总值将调整为44M,目标域名在目标缓存服务器A上的阶梯带宽限制值将调整为17.6M,目标域名在目标缓存服务器B上的阶梯带宽限制值将调整为26.4M。

由于目标缓存服务器对目标域名的加速服务是通过软件进程实现的,而每一个目标缓存服务器中会有多个加速进程同时为目标域名提供服务。为进一步提高目标缓存服务器的工作效率,针对目标缓存服务器中的多组进程,CDN系统还可以根据目标缓存服务器的带宽限制值、当前的进程对应的带宽比例,计算目标缓存服务器中每一个进程的带宽限制值。在目标缓存服务器的带宽限制值调整后,相应的对上述每一个进程的带宽限制值进行调整。

请参阅图5,本申请还提供一种域名带宽调整装置,应用于CDN系统中,所述域名带宽调整装置包括:

限速判断单元,用于判断所述CDN系统是否触发带宽限速策略,以及判断是否解除所述带宽限速策略;

域名识别单元,用于在触发所述带宽限速策略后,在所述CDN系统服务的域名中,确定待限速的目标域名;

带宽调整单元,用于确定所述目标域名的初始参考带宽,并在指定观察时长内,对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整。

在一个实施方式中,针对所述CDN系统中的边缘节点服务器,所述判断限速单元还包括:

性能指标计算模块,用于计算所述边缘节点服务器的性能指标,当所述性能指标低于预设指标阈值时,触发所述带宽限速策略。

在一个实施方式中,针对所述CDN系统中的中转节点服务器,所述判断限速单元还包括:

告警信息判断模块,用于判断所述中转节点服务器是否产生告警信息,若产生,则触发所述带宽限速策略。

在一个实施方式中,带宽调整单元判断是否对所述初始参考带宽进行阶梯调整包括:

根据所述初始参考带宽和预设比例系数,确定比例参考带宽;

记录所述目标域名的实际带宽首次小于或者等于所述比例参考带宽时的时间节点,并从记录的所述时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到预设参考时长;

若所述持续时间达到所述预设参考时长,则对所述初始参考带宽进行阶梯调整;

若所述持续时间小于所述预设参考时长,则从所述目标域名的实际带宽大于所述比例参考带宽的时刻起,再次记录所述目标域名的实际带宽首次小于或者等于所述比例参考带宽时的时间节点,并从再次记录的时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到所述预设参考时长。

在一个实施方式中,限速判断单元判断是否解除所述带宽限速策略包括:

判断所述目标域名的实际带宽小于或者等于所述初始参考带宽的持续时间是否达到所述指定观察时长;

若所述持续时间达到所述指定观察时长,则解除所述带宽限速策略;

若所述持续时间小于所述指定观察时长,则将阶梯调整后的参考带宽重置为所述初始参考带宽,并在所述指定观察时长内,重新对所述初始参考带宽和所述目标域名的实际带宽进行比较,以判断是否对所述初始参考带宽进行阶梯调整,以及判断是否解除所述带宽限速策略。

在一个实施方式中,所述带宽调整单元包括:

阶梯带宽计算模块,用于根据所述初始参考带宽和预设增幅系数,确定调整后的阶梯参考带宽,以及根据所述阶梯参考带宽和所述预设增幅系数,确定新的阶梯参考带宽,以及同步记录带宽调整时的时间节点;

阶梯调整判断模块,用于从所述带宽调整时的时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到所述预设参考时长。

在本实施方式中,若从所述带宽调整时的时间节点开始,阶梯调整判断模块判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间达到所述预设参考时长,阶梯带宽计算模块将根据所述阶梯参考带宽和所述预设增幅系数,确定新的阶梯参考带宽,并记录带宽调整时的时间节点。

在本实施方式中,若从所述带宽调整时的时间节点开始,阶梯调整判断模块判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间小于所述预设参考时长,带宽调整单元将从所述目标域名的实际带宽大于所述比例参考带宽的时刻起,再次记录所述目标域名的实际带宽首次小于或者等于所述比例参考带宽时的时间节点,并从再次记录的时间节点开始,判断所述目标域名的实际带宽小于或者等于所述比例参考带宽的持续时间是否达到所述预设参考时长。

在一个实施方式中,针对所述CDN系统中为所述目标域名提供服务的目标缓存服务器,所述域名带宽调整装置还包括:

目标缓存服务器控制单元,用于确定所述目标域名在每一个所述目标缓存服务器上的带宽限制值,并将所述带宽限制值发送至对应的所述目标缓存服务器。

在一个实施方式中,所述目标缓存服务器控制单元包括:

初始带宽限制值计算模块,用于根据预设带宽限制总值和当前的目标缓存服务器对应的带宽比例,确定所述目标域名在所述当前的目标缓存服务器上的初始带宽限制值;

阶梯带宽限制值计算模块,用于在对所述初始参考带宽进行阶梯调整后,根据调整后的参考带宽和所述当前的目标缓存服务器对应的带宽比例,确定所述目标域名在所述当前的目标缓存服务器上的阶梯带宽限制值。

请参阅图6,本申请还提供一种域名带宽调整装置,应用于CDN系统中,所述域名带宽调整装置包括存储器和处理器,所述存储器用于存储计算机程序,所述计算机程序被所述处理器执行时,可以实现如上述的域名带宽调整方法。具体地,在硬件层面,该域名带宽调整装置可以包括处理器、内部总线和存储器。所述存储器可以包括内存以及非易失性存储器。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行。本领域普通技术人员可以理解,图6所示的结构仅为示意,其并不对上述识别装置的结构造成限定。例如,所述域名带宽调整装置还可包括比图6中所示更多或者更少的组件,例如还可以包括其他的处理硬件,如GPU(Graphics Processing Unit,图像处理器),或者对外通信端口,如80端口、443端口、8080端口等。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等。

本实施方式中,所述的处理器可以包括中央处理器(CPU)或图形处理器(GPU),当然也可以包括其他的具有逻辑处理能力的单片机、逻辑门电路、集成电路等,或其适当组合。本实施方式所述的存储器可以是用于保存信息的记忆设备。在数字系统中,能保存二进制数据的设备可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也可以为存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也可以叫存储器等。实现的时候,该存储器也可以采用云存储器的方式实现,具体实现方式,本说明书不做限定。

需要说明的是,本说明书中的域名带宽调整装置,具体的实现方式可以参照方法实施方式的描述,在此不作一一赘述。

由此可见,本申请提供的技术方案,CDN系统可以根据边缘节点服务器或者中转节点服务器的负载情况,自动判断是否触发带宽限速策略,并在触发带宽限速策略时,自动在边缘节点服务器或者中转节点服务器服务的域名中确定需要进行限速的目标域名,然后根据设定的初始参考带宽对目标域名的边缘带宽或者回源带宽进行限速。如果目标域名的实际带宽小于或者等于初始参考带宽的持续时间达到预设参考时长,CDN系统将会对目标域名的初始参考带宽进行阶梯调整,并根据调整后的参考带宽,逐步增加目标域名在整个CDN系统中的可用带宽,以提高用户对目标域名的访问体验。当目标域名的实际带宽小于或者等于初始参考带宽的持续时间达到指定观察时长时,CDN系统会解除带宽限速策略,彻底放开对目标域名的带宽限制。由此可见,本申请提供的技术方案,通过对目标域名进行带宽阶梯调整和限速观察,可以逐步恢复CDN系统对目标域名的加速效果,既提高了用户访问目标域名的体验,又可以避免直接放开带宽限制,导致目标域名的边缘带宽或者回源带宽再次走高。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1