一种内容分发网络创建方法与流程

文档序号:12183034阅读:320来源:国知局

本发明涉及网络技术领域,特别涉及一种内容分发网络创建方法。



背景技术:

当前,互联网技术的快速发展,为人们的日常生活和工作带来了越来越多的便捷。与此同时,互联网技术人员也面临着数据传输量不断增大、数据传输延迟越来越严重等问题。为了解决这个问题,内容分发网络技术应运而生,以求满足社会对高效内容分发网络的强烈需求。

思科的年度白皮书指出,到2018年,内容分发网络将要占据整个全球IP网络流量的55%。它同样预测指出,内容分发网络中的流量以每年34%的增长速率,在持续增长。这导致了人们对于高效率的内容分发网络的需求也在增长。目前,如何在用户区域内对备份服务器进行合理的部署,以形成更高效的内容分发网络是有待进一步解决的问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种内容分发网络创建方法,实现了在用户区域内对备份服务器进行合理部署的目的,形成了更高效的内容分发网络。其具体方案如下:

一种内容分发网络创建方法,包括:

步骤S11:预先确定需要进行安置的备份服务器集群以及需要安置服务器的用户区域集群,并预先将源服务器安置在所述用户区域集群中的一个用户区域;

步骤S12:每次从当前还未安置服务器的所有用户区域中不重复地筛选出一个用户区域作为本次的待分析区域,并利用预设目标函数,分别计算每个待分析区域对应的目标函数值,得到当前的目标函数值集合;其中,所述预设目标函数为:

式中,F表示目标函数值;N表示所述用户区域集群;S表示用于当前已经安置有服务器的所有用户区域的集合;s′表示筛选出的待分析区域;di,k表示从所述用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的路径距离;

步骤S13:从当前的目标函数值集合中筛选出数值最小的目标函数值,并将所述备份服务器集群中还未经过安置的任一台备份服务器安置在与该目标函数值所对应的用户区域;

步骤S14:重新进入步骤S12,直到所述备份服务器集群中的所有备份服务器均被安置完毕,以形成内容分发网络。

优选的,从所述用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的确定过程,包括:

利用迪杰斯特拉算法,寻找出从所述用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径。

优选的,所述内容分发网络创建方法,还包括:

若需要利用所述内容分发网络对第一用户区域上的用户请求进行响应,则从所述内容分发网络上的所有服务器中筛选出与所述第一用户区域距离最近的服务器作为第一优先服务器;其中,所述第一用户区域为所述用户区域集群中的任一用户区域;

利用所述第一优先服务器对所述第一用户区域上的用户请求进行响应。

优选的,所述内容分发网络创建方法,还包括:

在所述第一优先服务器对所述第一用户区域上的用户请求进行响应的过程中,若相应的内容分发带宽容量大于预设的最大内容分发带宽容量,则从所述内容分发网络上的所有剩余服务器中筛选出与所述第一用户区域距离最近的服务器作为第二优先服务器;其中,所述所有剩余服务器为所述内容分发网络中除去所述第一优先服务器后剩余的所有服务器;

利用所述第二优先服务器对所述第一用户区域上的其他剩余的用户请求进行响应。

优选的,所述最大内容分发带宽容量为所述内容分发网络中每台服务器所允许的最大的内容分发带宽容量,具体为:

式中,tu表示第u个用户区域上的所有用户的带宽需求;A表示位于所述内容分发网络上的所有服务器的总数量。

优选的,所述预先将源服务器安置在所述用户区域集群中的一个用户区域的过程,包括:

将所述源服务器安置在所述用户区域集群的中心区域上。

优选的,所述内容分发网络创建方法,还包括:

若目标服务器需要对第二用户区域上的用户请求进行响应,则从目标传输链路集合中筛选出链路长度最短的传输链路作为第一优先链路;其中,所述目标服务器为所述内容分发网络上的所有服务器中的任一服务器,所述第二用户区域为所述用户区域集群中的任一用户区域;所述目标传输链路集合为位于所述目标服务器和所述第二用户区域之间的所有传输链路;

控制所述目标服务器通过所述第一优先链路向所述第二用户区域提供内容分发服务,以响应所述第二用户区域上的用户请求。

优选的,所述内容分发网络创建方法,还包括:

在所述目标服务器通过所述第一优先链路向所述第二用户区域提供内容分发服务的过程中,若当前所述第一优先链路上正在传输的带宽容量超过预设的最大传输容量,则从所述目标传输链路集合上的所有剩余传输链路中筛选出链路长度最短的传输链路作为第二优先链路;其中,所述所有剩余传输链路为所述目标传输链路集合中除去所述第一优先链路后剩余的所有传输链路;

控制所述目标服务器通过所述第二优先链路向所述第二用户区域提供其他剩余的内容分发服务,以响应所述第二用户区域上的其他剩余的用户请求。

本发明中,内容分发网络创建方法包括:步骤S11:预先确定需要进行安置的备份服务器集群以及需要安置服务器的用户区域集群,并预先将源服务器安置在用户区域集群中的一个用户区域;步骤S12:每次从当前还未安置服务器的所有用户区域中不重复地筛选出一个用户区域作为本次的待分析区域,并利用预设目标函数,分别计算每个待分析区域对应的目标函数值,得到当前的目标函数值集合;步骤S13:从当前的目标函数值集合中筛选出数值最小的目标函数值,并将备份服务器集群中还未经过安置的任一台备份服务器安置在与该目标函数值所对应的用户区域;步骤S14:重新进入步骤S12,直到备份服务器集群中的所有备份服务器均被安置完毕,以形成内容分发网络。其中,上述预设目标函数为:

式中,F表示目标函数值;N表示用户区域集群;S表示用于当前已经安置有服务器的所有用户区域的集合;s′表示筛选出的待分析区域;di,k表示从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的路径距离。

由上可见,本发明在对备份服务器进行安置时,分别经过多轮安置,每轮安置过程中只对其中的一台备份服务器进行安置,而且,在任一轮安置过程中,均是利用上述基于最短路径原则所确定的预设目标函数,来从所有还未安置服务器的用户区域中筛选出一个具有最小目标函数值的用户区域作为本轮备份服务器的安置位置区域,由此可以使得后续的任一服务器均能以较短的传输链路来为内容分发网络中的用户区域提供内容分发服务,从而实现了在用户区域内对备份服务器进行合理部署的目的,形成了更高效的内容分发网络。

附图说明

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

图1为本发明实施例公开的一种内容分发网络创建方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种内容分发网络创建方法,参见图1所示,该方法包括:

步骤S11:预先确定需要进行安置的备份服务器集群以及需要安置服务器的用户区域集群,并预先将源服务器安置在用户区域集群中的一个用户区域。

可以理解的是,本实施例中的用户区域集群包括多个用户区域,每个用户区域表示用户所在的地理区域,例如可以是乡镇、城市或省份。另外,本实施例中的源服务器所安放的区域是预先已经确定下来的,可以为上述用户区域集群中的任一用户区域。在此基础上,从上述用户区域集群中寻找出适合对备份服务器进行安置的用户区域。本实施例中,所谓的备份服务器是指对源服务器中的全部数据进行了备份的服务器。

步骤S12:每次从当前还未安置服务器的所有用户区域中不重复地筛选出一个用户区域作为本次的待分析区域,并利用预设目标函数,分别计算每个待分析区域对应的目标函数值,得到当前的目标函数值集合;其中,预设目标函数为:

式中,F表示目标函数值;N表示用户区域集群;S表示用于当前已经安置有服务器的所有用户区域的集合;s′表示筛选出的待分析区域;di,k表示从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的路径距离。

可见,本实施例在每进行一次上述步骤S12时,均通过一次或多次的筛选,将当前用户区域集群的还未安置服务器的所有用户区域不重复地全部筛选出来,每次筛选中只能筛选出一个用户区域作为待分析区域,也即,在步骤S12中,筛选的次数与当前还未安置服务器的所有用户区域的区域数量是相同的,这意味着,上述目标函数值集合中所包含的函数值的数量与当前还未安置服务器的所有用户区域的区域数量也是相同的。

在上述预设目标函数中,di,k表示从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的路径距离,而mink∈S∪{s′}di,k则表示先分别确定出集合S∪{s′}中的每一个区域与第i个用户区域之间的最短路径距离,然后从最短路径距离集合中筛选出具有最小数值的最短路径距离。可以理解的是,上述集合S∪{s′}中的区域包括当前已经安置有服务器的所有用户区域,也包括本次筛选出的待分析区域。

步骤S13:从当前的目标函数值集合中筛选出数值最小的目标函数值,并将备份服务器集群中还未经过安置的任一台备份服务器安置在与该目标函数值所对应的用户区域。

也即,本实施例步骤S13中,是将上述步骤S12所得到的目标函数值集合中具有最小数值的目标函数值所对应的待分析区域作为本轮的备份服务器安置区域。

可以理解的是,在步骤S13中,当某个用户区域被安置上了备份服务器后,该区域将会被记录到上述集合S中,以对该集合S进行实时的更新。

步骤S14:重新进入步骤S12,直到备份服务器集群中的所有备份服务器均被安置完毕,以形成内容分发网络。

由上可见,本发明实施例在对备份服务器进行安置时,分别经过多轮安置,每轮安置过程中只对其中的一台备份服务器进行安置,而且,在任一轮安置过程中,均是利用上述基于最短路径原则所确定的预设目标函数,来从所有还未安置服务器的用户区域中筛选出一个具有最小目标函数值的用户区域作为本轮备份服务器的安置位置区域,由此可以使得后续的任一服务器均能以较短的传输链路来为内容分发网络中的用户区域提供内容分发服务,实现了在用户区域内对备份服务器进行合理部署的目的,形成了更高效的内容分发网络。

本发明实施例公开了一种具体的内容分发网络创建方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

从上一实施例步骤S12中的预设目标函数中可知,该预设目标函数中包括变量di,k,该变量表示从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的路径距离。而本实施例中,从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径的确定过程,也即di,k的确定过程,具体可以包括:

利用迪杰斯特拉算法,寻找出从用户区域集群中的第i个用户区域到集合S∪{s′}中的第k个区域之间的最短路径。

进一步的,本实施例中的内容分发网络创建方法,还可以包括下面步骤S21至S22;其中,

步骤S21:若需要利用内容分发网络对第一用户区域上的用户请求进行响应,则从内容分发网络上的所有服务器中筛选出与第一用户区域距离最近的服务器作为第一优先服务器;其中,第一用户区域为用户区域集群中的任一用户区域;

步骤S22:利用第一优先服务器对第一用户区域上的用户请求进行响应。

也即,本发明实施例优先采用距离某个用户区域最近的服务器来为该用户区域上的用户提供内容分发服务。可以理解的是,本实施例中,距离上述第一用户区域最近的服务器既可能是源服务器,也可能是备份服务器。

另外,本实施例中的内容分发网络创建方法,还可以包括下面步骤S23至S24;其中,

步骤S23:在上述第一优先服务器对上述第一用户区域上的用户请求进行响应的过程中,若相应的内容分发带宽容量大于预设的最大内容分发带宽容量,则从内容分发网络上的所有剩余服务器中筛选出与第一用户区域距离最近的服务器作为第二优先服务器;其中,所有剩余服务器为内容分发网络中除去第一优先服务器后剩余的所有服务器;

步骤S24:利用第二优先服务器对第一用户区域上的其他剩余的用户请求进行响应。

也即,在与上述第一用户区域相距最近的服务器无法满足该区域的用户请求时,则可以从整个内容分发网络中筛选出与该区域次接近的服务器来为该区域上的其他用户提供内容分发服务。

需要说明的是,上述最大内容分发带宽容量为内容分发网络中每台服务器所允许的最大的内容分发带宽容量,具体为:

式中,tu表示第u个用户区域上的所有用户的带宽需求;A表示位于内容分发网络上的所有服务器的总数量。也即,本实施例中,源服务器和任一台备份服务器的最大内容分发带宽容量均为:

上一实施例步骤S11中,需要预先将源服务器安置在用户区域集群中的一个用户区域。本实施例中,可以优先将源服务器安置在用户区域集群的中心区域上。所谓的用户区域集群的中心区域是指在地理位置上位于或最接近整个内容分发网络中心的区域。

进一步的,本实施例中的内容分发网络创建方法,还可以包括下面步骤S31至S32:

步骤S31:若目标服务器需要对第二用户区域上的用户请求进行响应,则从目标传输链路集合中筛选出链路长度最短的传输链路作为第一优先链路;其中,目标服务器为内容分发网络上的所有服务器中的任一服务器,第二用户区域为用户区域集群中的任一用户区域;目标传输链路集合为位于目标服务器和第二用户区域之间的所有传输链路;

步骤S32:控制目标服务器通过第一优先链路向第二用户区域提供内容分发服务,以响应第二用户区域上的用户请求。

另外,本实施例中的内容分发网络创建方法,还可以进一步包括下面步骤S33和S34;其中,

步骤S33:在目标服务器通过第一优先链路向第二用户区域提供内容分发服务的过程中,若当前第一优先链路上正在传输的带宽容量超过预设的最大传输容量,则从目标传输链路集合上的所有剩余传输链路中筛选出链路长度最短的传输链路作为第二优先链路;其中,所有剩余传输链路为目标传输链路集合中除去第一优先链路后剩余的所有传输链路;

步骤S34:控制目标服务器通过第二优先链路向第二用户区域提供其他剩余的内容分发服务,以响应第二用户区域上的其他剩余的用户请求。

需要进一步指出的是,前述实施例中所公开的技术方案,涉及的计算复杂度较低,能够广泛地应用于构建内容分发网络。当然,除了上述公开的技术方案,本发明实施例可以采用计算复杂度较高、但部署更加合理的网络搭建方法来进行内容分发网络的搭建,这种方法具体包括:预先确定需要进行安置的备份服务器集群以及需要安置备份服务器的用户区域集群,然后将备份服务器集群中的所有备份服务器随机分配给用户区域集群中的任意用户区域,得到相应的服务器分配策略集合,接着利用一个预先确定的目标函数,计算服务器分配策略集合中每一服务器分配策略所对应的目标函数值,以及从服务器分配策略集合中筛选出具有最小目标函数值的服务器分配策略,并将该服务器分配策略确定为最优分配策略,最后根据最优分配策略中备份服务器与用户区域之间的对应关系,将备份服务器集群中的所有备份服务器分别安置在用户区域集群中相应的用户区域,以形成内容分发网络;其中,上述预先确定的目标函数具体为:

式中,F表示目标函数值,C表示内容分发网络中每台服务器所允许的最大内容分发带宽容量,N表示用户区域集群,Ni表示用户区域集群中第i个用户区域的邻居区域集合,表示当备份服务器集群中被分配至第v个用户区域的备份服务器向第u个用户区域分发内容的过程中通过链路(i,j)传输的带宽总量,Lij表示链路(i,j)的物理距离,cfiber表示光纤中的光速,α表示权重因子。

另外,上述预先确定的目标函数的约束条件包括第一约束条件、第二约束条件、第三约束条件、第四约束条件、第五约束条件、第六约束条件、第七约束条件、第八约束条件、第九约束条件和第十约束条件;其中,

第一约束条件为:

其中,并且v≠u;

第二约束条件为:

其中,并且u=v;

第三约束条件为:

λvu≤Rv·Δ,其中,v∈N,并且v≠O;

第四约束条件为:

v∈Nλvu≥tu,其中,

第五约束条件为:

u∈Nλvu≤C,其中,

第六约束条件为:

其中,

第七约束条件为:

其中,并且,u≠v;

第八约束条件为:

其中,并且,u≠v,j∈Ni

第九约束条件为:

其中,并且,u≠v,j∈Ni

第十约束条件为:

v∈N,并且v≠ORv≤A-1;

式中,表示当备份服务器集群中被分配至第v个用户区域的备份服务器向第u个用户区域分发内容的过程中通过链路(j,i)传输的带宽总量;λvu表示备份服务器集群中被分配至第v个用户区域的备份服务器向第u个用户区域分发内容时所对应的全部带宽总量;Rv用于表示第v个用户区域上的服务器分配状态的二进制变量,当第v个用户区域上被分配有备份服务器,则Rv为1,否则为0;Δ表示正无穷大的数;O表示源服务器所处的用户区域;tu表示第u个用户区域上的所有用户的带宽需求;M表示每条链路上所允许的最大传输容量;D表示服务器向用户区域分发内容时所允许的最大时延;用于表示在被分配至第v个用户区域的备份服务器向第u个用户区域分发内容的过程中链路(i,j)被占用状态的二进制变量,当被分配至第v个用户区域的备份服务器向第u个用户区域分发内容的过程中存在任何内容经过链路(i,j),则为1,否则为0;A表示备份服务器集群中的备份服务器的总数量。

可以理解的是,在上述十个约束条件的约束下,基于上述预先确定的目标函数可以得到最优分配策略。只是鉴于这种方法的计算复杂度较高,难以实际应用,所以本发明更倾向于利用前述实施例中公开的技术方案来进行内容分发网络的搭建。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种内容分发网络创建方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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