带宽调整方法、装置、电子设备及计算机可读存储介质
技术领域
本发明涉及互联网技术领域,特别是涉及带宽调整方法、装置、电子设备及计算机可读存储介质。
背景技术
CDN(Content Delivery Network,内容分发网络)的基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置CDN节点(以下称之为节点)所构成的在现有的互联网基础之上的一层智能虚拟网络,使得CDN能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的节点上。这样做的目的是使用户可就近取得所需内容,解决Internet(互联网)拥挤的状况,提高用户访问的响应速度。
在将用户的请求重新导向离用户最近的节点的基础是:为每一个调度单元中每一节点分配承载带宽,这样节点才能处理用户的请求,需要说明的是,一个域名的一条链路称之为调度单元,即一个调度单元是由域名和链路确定的。为节点分配承载带宽的方式为:确定一个调度单元中节点承载带宽的比值,该比例是该节点的虚拟IP地址数量确定的;将该调度单元所承载带宽总量按照所确定的比值分配给节点。示例性,调度单元1包含节点A、B、C,预先分别为节点A、B、C分配5个虚拟IP地址,节点A、B、C承载带宽比例为1:1:1,调度单元1承载带宽总量为60G,则为节点A、B、C分配的承载带宽均为20G。
大量的用户请求导向同一个节点,会导致节点过载,此时需要调整过载节点的承载带宽,以防过载节点因为负载太重出现故障。调整节点的承载带宽的方式为:重新调整节点承载带宽的分配比例,将该调度单元所承载带宽总量按照调整后的比值分配给节点,具体的是将过载节点的比例降低,可以将过载节点的其中一个虚拟IP地址去掉,确定节点承载带宽的分配比例,然后,判断重新为当前该过载节点分配的承载带宽与当前之前为该过载节点分配的承载带宽之间的差值是否大于该过载节点的过载带宽量,如果是,则结束对该过载节点的调整,如果不是,则返回执行将过载节点的其中一个虚拟IP地址去掉的步骤。延续上述示例,假如节点A过载2G,但因为节点A、B、C之间的承载带宽是由为节点配置的虚拟IP地址的数量的比值决定的,不能将节点A在调度单元1中的承载带宽下调2G,将节点B、C在调度单元1的承载带宽总量上调2G,而是将节点A的一个虚拟IP地址删除,重新确定的节点A、B、C承载带宽的分配比值为4:5:5,则确定节点A的承载带宽为17.1G,节点B和节点C的承载带宽为21.4G,则节点A的承载带宽为2.9G。可见,基于由虚拟IP地址数量确定的比值调整带宽的方式,会使得各个节点的承载带宽之间相互约束,从而导致调整的粒度比较粗,进而造成带宽调整不够精准。
发明内容
本发明实施例的目的在于提供一种带宽调整方法、装置、电子设备及计算机可读存储介质,以实现能够精准地对带宽进行调整。具体技术方案如下:
第一方面,为了达到上述目的,本发明实施例公开了一种带宽调整方法,所述方法包括:
获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值的节点;
针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点;
如果小于或等于该过载节点的所有目标节点的所有当前可用带宽总量,基于该过载节点的过载带宽,确定该过载节点的待调整带宽量;
针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的目标承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该待调整节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的目标承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和;一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
可选的,针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的待用承载带宽总量上调对应的待调整带宽量的步骤,包括:
针对每一待调整节点,判断该待调整节点是否满足目标条件,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值;
如果满足所述目标条件,从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点的调度单元;
将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量;
将目标节点在第一调度单元中的承载带宽总量上调对应的待调整带宽量。
可选的,在该待调整节点不满足目标条件的情况下,针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的待用承载带宽总量上调对应的待调整带宽量的步骤,还包括:
判断该待调整节点的目标调度单元是否只有一个;
如果该待调整节点的目标调度单元只有一个,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽;
如果该待调整节点的目标调度单元有两个以上,计算所有目标调度单元之间可用带宽总量的第一比值;
按照计算得到的所述第一比值,根据该待调整节点的待调整带宽量,计算每一目标调度单元的上调量;
针对每一目标调度单元,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
可选的,针对每一目标调度单元,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量的步骤,包括:
针对每一目标调度单元,判断该目标调度单元中所包含的目标节点是否只有一个;
如果目标调度单元中所包含的目标节点只有一个,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量;
如果目标调度单元中所包含的目标节点有两个以上,计算该目标调度单元中目标节点可用带宽之间的第二比值;
按照计算得到的第二比值,根据针对该目标调度单元所计算的上调量,计算该目标调度单元中每一目标节点的调整值;
将该目标调度单元中每一目标节点的承载带宽上调对应的待调整带宽量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
可选的,针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的待用承载带宽总量上调对应的待调整带宽量的步骤,包括:
针对每一待调整节点,利用贪心算法,从包含有该调整节点的调度单元中,选择该调整节点的参考调度单元,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的参考调度单元的承载带宽总量上调对应的待调整带宽量。
可选的,针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的待用承载带宽总量上调对应的待调整带宽量的步骤,包括:
针对每一待调整节点,从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元;
判断第二调度单元中目标节点的可用带宽总量是否大于该待调整节点的剩余待调整带宽量,其中,一个待调整节点的剩余待调整带宽量为该待调整节点的待调整带宽量与已调整的带宽量之差;
如果所述第二调度单元中目标节点的可用带宽总量大于该待调整节点的剩余待调整带宽量,判断该待调整节点的剩余待调整带宽量是否大于该待调整节点在第二调度单元中承载带宽;
如果该待调整节点的剩余待调整带宽量小于或等于该待调整节点在所述第二调度单元中承载带宽,将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量,将该待调整节点在第二调度单元中的承载带宽下调该待调整节点的剩余待调整带宽量;
如果该待调整节点的剩余待调整带宽量大于该待调整节点在所述第二调度单元中承载带宽,将第二调度单元中目标节点的承载带宽总量上调目标值,将该待调整节点在第二调度单元中的承载带宽下调目标值;返回执行从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元的步骤,直至该待调整节点的剩余待调整带宽量为零,其中,目标值是基于该待调整节点在第二调度单元中承载带宽确定的,且小于或等于该待调整节点在第二调度单元中承载带宽;
如果所述第二调度单元中目标节点的可用带宽总量小于或等于该待调整节点的剩余待调整带宽量,将第二调度单元中目标节点的承载带宽总量上调第二调度单元中目标节点的可用带宽总量,将该待调整节点在第二调度单元中的承载带宽下调第二调度单元中目标节点的可用带宽总量;返回执行从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元的步骤,直至该待调整节点的剩余待调整带宽量为零。
可选的,针对每一待调整节点,从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元的步骤,包括:
针对每一待调整节点,从按照预设方式排序的目标调度单元中,选择一个当前未被选择、且排在最前的目标调度单元,作为第二调度单元,其中,预设方式为按照目标节点的可用带宽总量和该待调整节点在目标调度单元中的使用带宽,对调度单元降序排序。
可选的,在判断该过载节点的过载带宽大于该过载节点的参考可用带宽总量的情况下,方法还包括:
判断该过载节点的过载带宽是否在预先针对该过载节点设置的容忍区间内,其中,容忍区间为该过载节点对应的预设第二带宽阈值和该过载节点对应的预设第一带宽阈值确定的;
如果该过载节点的过载带宽不在预先针对该过载节点设置的容忍区间内,判断该过载节点的目标带宽是否大于该过载节点所有目标节点的可用带宽总量,其中,一个过载节点的目标带宽将该过载节点的使用带宽总量与针对该过载节点对应的预设第二带宽阈值之间的差值;
如果该过载节点的目标带宽大于该过载节点所有目标节点的可用带宽总量,将该过载节点的目标节点在第三调度单元中的承载带宽总量下调目标带宽,将参考节点在第三调度单元中的承载带宽总量上调目标带宽,将该过载节点在该过载节点的目标调度单元中的承载带宽总量下调目标带宽,将该过载节点的目标节点在目标调度单元中的承载带宽总量上调目标带宽,其中,第三调度单元为包含有过载节点的目标节点、且除包含该过载节点的目标调度单元之外的调度单元;参考节点为第三调度单元中除该过载节点的目标节点以及过载节点之外的节点。
第二方面,为了达到上述目的,本发明实施例还提供了一种带宽调整装置,装置包括:
获得模块,用于获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值的节点;
第一判断模块,用于针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点;
确定模块,用于在第一判断模块的判断结果为否的情况下,基于该过载节点的过载带宽,确定该过载节点的待调整带宽量;
第一调整模块,用于针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的目标承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该待调整节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的目标承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和;一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
可选的,第一调整模块,包括:
第一判断子模块,用于针对每一待调整节点,判断该待调整节点是否满足目标条件,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值;
第一选择子模块,用于在第一判断子模块的判断结果为是的情况下,从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点的调度单元;
第一调整子模块,用于将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量;
第二调整子模块,用于将目标节点在第一调度单元中的承载带宽总量上调对应的待调整带宽量。
可选的,第一调整模块,还包括:
第二判断子模块,用于在第一判断子模块的判断结果为否的情况下,判断该待调整节点的目标调度单元是否只有一个;
第三调整子模块,用于在第二判断子模块的判断结果为是的情况下,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽;
第一计算子模块,用于在第二判断子模块的判断结果为否的情况下,计算所有目标调度单元之间可用带宽总量的第一比值;
第二计算子模块,用于按照计算得到的第一比值,根据该待调整节点的待调整带宽量,计算每一目标调度单元的上调量;
第四调整子模块,用于针对每一目标调度单元,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
可选的,第四调整子模块,包括:
第一判断单元,用于针对每一目标调度单元,判断该目标调度单元中所包含的目标节点是否只有一个;
第一调整单元,在第一判断单元的判断结果为是的情况下,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量;
第一计算单元,在第一判断单元的判断结果为否的情况下,计算该目标调度单元中目标节点可用带宽之间的第二比值;
第二计算单元,用于按照计算得到的第二比值,根据针对该目标调度单元所计算的上调量,计算该目标调度单元中每一目标节点的调整值;
第二调整单元,用于将该目标调度单元中每一目标节点的承载带宽上调对应的待调整带宽量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
可选的,第一调整模块,具体用于针对每一待调整节点,利用贪心算法,从包含有该调整节点的调度单元中,选择该调整节点的参考调度单元,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的参考调度单元的承载带宽总量上调对应的待调整带宽量。
可选的,第一调整模块,包括:
第二选择子模块,用于针对每一待调整节点,从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元;
第三判断子模块,用于判断第二调度单元中目标节点的可用带宽总量是否大于该待调整节点的剩余待调整带宽量,其中,一个待调整节点的剩余待调整带宽量为该待调整节点的待调整带宽量与已调整的带宽量之差;
第四判断子模块,用于在第三判断子模块的判断结果为是的情况下,判断该待调整节点的剩余待调整带宽量是否大于该待调整节点在第二调度单元中承载带宽;
第五调整子模块,用于在第四判断子模块的判断结果为小于或等于的情况下,将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量,将该待调整节点在第二调度单元中的承载带宽下调该待调整节点的剩余待调整带宽量;
第六调整子模块,用于在第四判断子模块的判断结果为大于的情况下,将第二调度单元中目标节点的承载带宽总量上调目标值,将该待调整节点在第二调度单元中的承载带宽下调目标值;返回执行第二选择子模块,直至该待调整节点的剩余待调整带宽量为零,其中,目标值是基于该待调整节点在第二调度单元中承载带宽确定的,且小于或等于该待调整节点在第二调度单元中承载带宽;
第七调整子模块,用于在第三判断子模块的判断结果为否的情况下,将第二调度单元中目标节点的承载带宽总量上调第二调度单元中目标节点的可用带宽总量,将该待调整节点在第二调度单元中的承载带宽下调第二调度单元中目标节点的可用带宽总量;返回执行第二选择子模块,直至该待调整节点的剩余待调整带宽量为零。
可选的,第二选择子模块,具体用于针对每一待调整节点,从按照预设方式排序的目标调度单元中,选择一个当前未被选择、且排在最前的目标调度单元,作为第二调度单元,其中,预设方式为按照目标节点的可用带宽总量和该待调整节点在目标调度单元中的使用带宽,对调度单元降序排序。
可选的,装置还包括:
第二判断模块,用于在第一判断模块的判断结果为大于的情况下,判断该过载节点的过载带宽大于该过载节点的参考可用带宽总量的情况下判断该过载节点的过载带宽是否在预先针对该过载节点设置的容忍区间内,其中,容忍区间为该过载节点对应的预设第二带宽阈值和该过载节点对应的预设第一带宽阈值确定的;
第三判断模块,用于在第二判断模块的判断结果为不在的情况下,判断该过载节点的目标带宽是否大于该过载节点所有目标节点的可用带宽总量,其中,一个过载节点的目标带宽将该过载节点的使用带宽总量与针对该过载节点对应的预设第二带宽阈值之间的差值;
第二调整模块,用于在第三判断模块的判断结果为大于的情况下,将该过载节点的目标节点在第三调度单元中的承载带宽总量下调目标带宽,将参考节点在第三调度单元中的承载带宽总量上调目标带宽,将该过载节点在该过载节点的目标调度单元中的承载带宽总量下调目标带宽,将该过载节点的目标节点在目标调度单元中的承载带宽总量上调目标带宽,其中,第三调度单元为包含有过载节点的目标节点、且除包含该过载节点的目标调度单元之外的调度单元;参考节点为第三调度单元中除该过载节点的目标节点以及过载节点之外的节点。
第三方面,为了达到上述目的,本发明实施例还提供了一种电子设备,包括处理器和存储器,其中,
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述带宽调整方法任一的方法步骤。
第四方面,为了达到上述目的,本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述带宽调整方法任一的方法步骤。
第五方面,本发明实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述带宽调整方法任一的方法步骤。
第六方面,本发明实施例提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述带宽调整方法任一的方法步骤。。
本发明实施例提供的一种带宽调整方法、装置、电子设备及计算机可读存储介质,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。当然,实施本发明的任一产品或方法必不一定需要同时达到以上的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的带宽调整方法的第一种流程示意图;
图2为本发明实施例提供的带宽调整方法的第二种流程示意图;
图3为本发明实施例提供的带宽调整方法的第三种流程示意图;
图4为本发明实施例提供的带宽调整方法的第四种流程示意图;
图5为本发明实施例提供的带宽调整方法的第五种流程示意图;
图6为本发明实施例提供的带宽调整方法的第六种流程示意图;
图7为本发明实施例提供的带宽调整方法的第七种流程示意图;
图8为本发明实施例提供的带宽调整装置的结构示意图;
图9为本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术中的问题,本发明实施例提供了一种带宽调整方法、装置、电子设备及计算机可读存储介质,下面首先对本发明实施例提供的带宽调整方法进行详细说明。
图1为本发明实施例提供的带宽调整方法的第一种流程示意图,方法包括:
S101:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值的节点。
这里所说的节点可以是CDN(Content Delivery Network,内容分发网络)节点,节点的使用带宽总量是节点在包含有该节点的所有调度单元中的使用带宽的综合的总和。不同的节点对应的预设第一带宽阈值可以相同,也可以不同。节点对应的预设第一带宽阈值可以是由该节点的承载带宽和针对该节点预设的第一使用带宽比例阈值计算得到的,示例性,节点1的承载带宽为10G,节点1的第一使用带宽比例阈值为80%,则节点1对应的预设第一带宽阈值为8G,若节点1的使用带宽总量为9G,则节点1为过载节点,若节点1的使用带宽总量为7G,则节点1不过载。节点对应的预设第一带宽阈值也可以是预先设置的固定值。
在本发明实施例中,可以先获得每一节点的使用带宽总量和每一节点对应的预设第一带宽阈值,通过对比节点的使用带宽总量和对应的预设第一带宽阈值,获得过载节点;每一节点对应的预设第一带宽阈值可以是预先存储的,也可以采用其他方式获得的。当然,也可以从其他服务器中直接获得过载节点是哪些,示例性的,可以从其他服务器中获取过载节点是节点1、节点2、节点3等等。
在本发明实施例中,节点的使用带宽总量、节点的可用带宽总量、节点的承载带宽总量等数据是通过以下方式获取的:
间隔预设时长,启动数据刷新,获取数据,具体的,可以从中控、Zabbix及InfluxDB中获取数据,分别从中控、Zabbix及InfluxDB获取什么数据是预先确定的。示例性的,Zabbix存储有节点的使用带宽总量,则可以预先确定从Zabbix获得节点的使用带宽总量。Zabbix一个基于WEB(World Wide Web,万维网)界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。InfluxDB是一个开源分布式时序、事件和指标数据库。在获取数据过程中,需要判断数据的获取是否出现异常,如果出现异常,则说明待获取的数据没有获取到,此时可以尝试继续获取,如果获取失败,则判断待获取的数据是否为强依赖数据,即判断待获取的数据未获取到是否会导致后续的带宽调整不能实现,如果是,可以向工作人员发送警告,以便工作人员及时排除故障,并且终端本次数据获取,如果不是强依赖数据,则继续进行数据的获取。在获取数据的过程没有出现异常后,或者重试能够数据后,校验所获取的数据的可用性和准确度,校验数据的可用性可以根据数据之间的关系进行校验,校验数据的准确性可以根据经验值校验。在进行校验之后,将校验后的数据存储至Redis和RDS(关系型数据库服务,Relational Database Service)中;其中,Redis是一个开源、内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。在带宽调整的过程中需要使用数据时,可以从Redis或RDS中获取。
S102:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S103,如果是,结束。
如果判断该过载节点的过载带宽大于该过载节点的所有目标节点的当前可用带宽总量,则说明当前该过载节点的所有目标节点不能承载该过载节点的过载带宽,此时,可以不对该过载节点的承载带宽进行调整,因此,不再对该过载节点的承载带宽总量进行调整。如果判断出该过载节点的过载带宽小于或等于该过载节点的所有目标节点的当前可用带宽总量,则说明当前该过载节点的所有目标节点能承载该过载节点的过载带宽,此时,可以对该过载节点的承载带宽进行调整。
过载节点的过载带宽可以理解为节点的使用带宽总量超出对应的预设第一带宽阈值的部分,是过载节点的使用带宽总量与对应的预设第一带宽阈值的差值。示例性的,节点2的使用带宽总量为12G,节点2对应的预设第一带宽阈值为10G,则节点2的过载带宽为2G。
一个调度单元是由域名和链路确定的,域名是由一串用“点”分隔的字符组成的Internet上某一台计算机或计算机组的名称,域名的目的是便于记忆和沟通的一组服务器的地址。一个域名的一条链路称之为调度单元的。示例性的,节点1、2、3为北京移动链路中的节点,均为域名为移动的北京区域提供服务,可以说节点1、2、3是一个调度单元。由一个调度单元是一个域名和一条链路确定的,因此,一个调度单元可以包括一个或两个以上节点,不同调度单元可以包含相同的节点,但不同调度单元中所包含的节点不完全相同。
一个过载节点的目标节点是包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,可以理解为将包含有该过载节点的所有调度单元所包含的节点中,没有过载的节点作为该过载节点的目标节点。示例性的,过载节点为节点1,节点1所在的调度单元为调度单元A,调度单元包括节点1、节点2、节点3和节点4,其中,节点2也是过载节点,则节点1的目标节点为节点3和节点4。过载节点2所在的调度单元为调度单元A、调度单元B,调度单元B包括节点2、节点3和节点5,则节点2的目标节点为节点3、节点4和节点5。
需要说明的是,如果过载节点只在一个调度单元中,并且该调度单元中只有一个节点的情况下,则该过载节点不存在目标节点,如果包含有过载节点所有调度单元中的节点都是过载节点,则该过载节点不存在目标节点。如果一个过载节点不存在目标节点,则说明该过载节点的承载带宽不可以调整,则不执行后续的步骤。
目标节点的可用带宽可能会随着该目标节点对应的过载节点的承载带宽的调整而减少,一个过载节点的目标节点的可用带宽总量会随着目标节点所在的调度单元中的过载节点的承载带宽的调整而发生变化。
S103:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
当一个过载节点的过载带宽小于或等于该过载节点的所有目标节点的当前可用带宽总量,说明该过载节点的所有目标节点可以成承载过载节点的过载带宽。
在本发明实施例中,当过载节点的承载带宽大于或等于该过载节点的过载带宽时,可以将过载节点的过载带宽,确定为该过载节点的待调整带宽量;也可以在过载节点的承载带宽小于或等于过载节点的所有目标节点的当前可用带宽总量的情况下,从零到过载节点的承载带宽的范围内,选择一个数值,作为过载节点的待调整带宽,在过载节点的承载带宽大于过载节点的所有目标节点的当前可用带宽总量的情况下,从零到过载节点的所有目标节点的当前可用带宽总量的范围内,选择一个数值,作为过载节点的待调整带宽。当过载节点的承载带宽小于该过载节点的过载带宽时,可以将该过载节点的承载带宽,确定为该过载节点的待调整带宽量;也可以从零到过载节点的承载带宽的范围内,选择一个数值,作为过载节点的待调整带宽。示例性的,过载节点为节点1,节点1的承载带宽为10G,节点1的过载带宽为1G,节点1的所有目标节点的当前可用带宽总量为5G,则可以将节点1的过载带宽,确定为节点1的待调整带宽量;也可以将在0-5G的范围内,选择一个数值,作为节点1的待调整带宽量。
S104:针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的待用承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该过载节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的待用承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和,一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
如果一个过载节点的过载带宽小于或等于该过载节点的所有目标节点的当前可用带宽总量时,该过载节点也可以称之为待调整节点。将一个待调整节点的所有目标节点的当前承载带宽总和,作为一个待调整节点的目标承载带宽总量。示例性的,待调整节点为节点2,节点2的目标节点为节点3、节点4和节点6。节点3的当前承载带宽为10G,节点4当前的承载带宽为15G,节点6的当前承载带宽为12G,则节点2的目标承载带宽总量为37G;如果节点2的待调整带宽为2G,节点2的承载带宽为10G,则调整后,节点2的承载带宽为8G,节点2的目标承载带宽总量为39G。
一个目标节点在每一调度单元中均分配有承载带宽,目标节点在一个调度单元中的可用带宽为该目标节点在该调度单元中分配的承载带宽与在该调度单元的使用带宽之差,示例性的,节点3在调度单元A中分配的承载带宽为5G,节点3在调度单元A中的使用带宽为4G,则节点3在调度单元A中的可用带宽为1G。为了避免待调整带宽的调整带来目标节点的过载,则一个目标节点在一个调度单元中承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,延续上述示例,节点3在调度单元A中的承载带宽上调的量最多为1G。
基于承载带宽分配请求的原则为承载带宽越大,分配的请求越多。将过载节点的承载带宽下调,可以使得后续为该过载节点分配的请求相应的减少,为处理这些请求所使用的带宽也减少,因此,可以减少过载节点在后续工作中的负载,可以减少过载节点后续再次过载的可能性。
如果一个待调整节点的过载带宽太大,有可能会出现故障,导致无法响应用户的请求,因此,需要对待调整节点承载带宽进行调整,以避免待调整节点的过载带宽太大,出现故障。在待调整节点不止一个时,需要按照过载带宽的大小顺序,依次对待调整节点的的承载带宽进行调整。按照过载带宽的大小熟顺序,主要考虑到如果先调整过载带宽比较小的待调整节点,可能会导致后面过载带宽比较大的待调整节点因为目标节点的可用带宽总量小于过载带宽而使得过载节点的承载带宽无法调整,进而会导致过载节点因负载过重出现故障。
需要说明的是,本发明实施例提供的带宽调度方法应用于IP(InternetProtocol,网络之间互连的协议)调度中,IP调度也称302调度,是CDN中的一种流量调度方式,相较于DNS(Domain Name System,域名系统)调度,IP调度中的302调度服务将客户端的请求进行302重定向,将客户端的请求转发到重定向后的节点上进行处理。
IP调度可以得到客户端的IP地址,基于客户端的IP地址进行调度,调度会更精细,DNS调度中是基于Local(本地)DNS(提供缓存和递归的服务)的地址进行调度,调度的粒度比较粗。DNS调度相较于IP调度,还存在以下缺点:
1、客户端可能设置了错误的LocalDNS,可能会导致所确定的的处理客户端请求的服务器与客户端之间的距离较远。
2、运营商的LocalDNS按照标准的DNS协议进行递归,但是因为在网络上存在多出口且配置了目标路由NAT(Network Address Translation,网络地址转换),结果导致LocalDN最终进行递归解析的时候的出口IP地址有可能不是本网的IP地址。
3、运营商的LocalDNS还有可能存在解析转发的现象。解析转发是指运营商自身不进行域名递归解析,而是把域名解析请求转发到其它运营商的递归DNS上的行为。
基于DNS调度对带宽调整也不够精确,带宽调整不够精确一方面是由于DNS的特殊性,ISP(ISP(Internet Service Provider,互联网服务提供商)各个区域特殊化策略导致的流量牵引问题造成的,另一方面是DNS每个节点虚拟IP地址的数量限制和每一调度单元对应的虚拟IP地址的数量限制造成的。以上两个方面的因素,导致带宽的调整只能按照比例调整,使得调整的粒度比较粗。而本发明实施例所提供的带宽调整方法,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调,将目标节点的承载带宽总量上调,可以使得带宽的调整更加的精准,更加的实时。
在对所有节点的带宽调整完成,即可以理解为生成了流量调度策略,该流量调度策可以供IP调度服务使用。IP调度的服务获得客户个性化需求,客户的个性化需求可以是对请求的响应时间的要求,对响应结果的要求等等,然后根据客户的个性化需求进行特殊配置,结合流量调度策略,选择最优的节点为客户提供服务,满足客户的需求,提供更加优质的服务,相较于DNS调度服务,灵活度更高。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。
图2为本发明实施例提供的带宽调整方法的第二种流程示意图,方法包括:
S201:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S202:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S203,如果是,结束。
S203:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
需要说明的是,S210-S203分别与上述实施例中S101-S103分别相同,在此不进行赘述。
S204:针对每一待调整节点,判断该待调整节点是否满足目标条件,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值;如果是,执行S205,如果否,结束。
这里所说的第一预设阈值是预先根据经验确定的,第二预设阈值也是预根据经验确定的,并且,第二预设阈值大于第一预设阈值。
判断一个待调整节点是否满足目标条件是先判断该待调整节点的过载带宽是否小于第一预设阈值,如果是,再判断该待调整节点的所有目标节点的可用带宽总量是否大于第二预设阈值,如果大于第二预设阈值,则判定该待调整节点满足目标条件。不同节点对应的第一预设阈值可以相同,可以不同;同一个节点下一次过载的时候,再次判断该过载节点是否满足目标条件时,所使用的第一预设阈值与之前所使用的第一预设阈值可以相同,也可以不同。不同节点对应的第二预设阈值可以相同,可以不同;同一个节点下一次过载的时候,再次判断该过载节点是否满足目标条件时,所使用的第二预设阈值与之前所使用的第二预设阈值可以相同,也可以不同,具体的需要根据实际情况而定。如果一个待调整节点不满足目标条件,则说明不能针对该待调整节点执行S205,此时可以不调整该待调整节点的承载带宽总量,即结束对该调整节点的承载带宽总量的调整。
S205:从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点以及除该待调整节点之后的其他节点的调度单元。
当一个待调整节点满足目标条件,则可以理解为待调整节点的过载带宽比较小,而该待调整节点的所有目标节点的可用带宽总量比较大,此时,将待调整节点的承载带宽下调,将待调整节点的目标承载带宽总量上调,对待调整节点的所有目标节点的使用带宽总量影响不大。因此,可以在目标调度单元中直接选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,这样可以比较方便快捷地确定出待调整节点可以调整的待调整单元,不需要再次选择目标调度单元,提高带宽调整的效率。
如果调度单元只包含该待调整节点,则无法调整待调整节点在调度单元中的承载带宽,因此,该调度单元不能称之为目标调度单元。目标调度单元应该为包含有该待调整节点,并且还包含除该待调整节点之外的节点的调度单元示例性的,调度单元A、B、C均包含节点1,并且调度A、B、C除节点1之外还有其他的节点,因此,调度单元A、B、C可以称之为目标调度单元。
S206:将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量。
在本发明实施例中,所选择的第一调度单元对应的可用带宽总量大于待调整节点的过载带宽,说明第一调度单元中的目标节点的可用带宽总量能够承载待调整节点的待调整带宽量,因此,可以直接将该待调整单元在第一调度单元中的承载带宽下调对应的待调整带宽量。需要说明的是,该待调整节点在第一调度单元中的承载带宽大于或等于该待调整节点在的待调整带宽量。示例性的,待调整节点为节点2,包含有节点2的调度单元为调度单元B、C、D,调度单元B的可用带宽总量为10G,调度单元C的可用带宽总量为8G,调度单元D的可用带宽总量为6G,节点2的待调整带宽量为1G,选择调度单元B为节点2的第一调度单元,节点2在调度单元B中分配的承载带宽为5G,则将调度单元B中的节点2的承载带宽下调1G,调整后,节点2在调度单元B中的承载带宽为4G。
S207:将目标节点在第一调度单元中的承载带宽总量上调对应的待调整带宽量。
将第一调度单元中的目标节点的承载带宽总量上调对应的待调整带宽量,在第一调度单元中只有一个目标节点的情况下,可以将该目标节点的承载带宽上调对应的待调整带宽量,其中,对应的待调整带宽量是指该待调整节点对应的待调整带宽量。在第一调度单元中有两个以上目标节点的情况下,可以选择一个在第一调度单元中的可用带宽大于该待调整节点的待调整带宽量的目标节点,将所选择的目标节点的承载带宽上调对应的待调整带宽;也可以选择第一调度单元中的两个以上目标节点,并确定每一目标节点对应的上调量,所选择的目标节点的上调量总和为待调整带宽量,将每一所选择的目标节点的承载带宽上调对应的上调量。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量过载节点满足目标条件的情况下,直接选择一个调度单元,将过载节点的承载带宽下调对应的待调整带宽量,将所选择的调度单元的目标节点的承载带宽总量上调对应的待调整带宽量,这样不仅可以提使得带宽的调整更加的精准,还可以比较方便快捷地确定出待调整节点可以调整的待调整单元,可以提高带宽调整的效率。
图3为本发明实施例提供的带宽调整方法的第三种流程示意图,方法包括:
S301:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S302:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S303,如果是,结束。
S303:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
S304:针对每一待调整节点,判断该待调整节点是否满足目标条件,如果是执行S305,如果否,执行S308,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值。
S305:从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点的调度单元;
S306:将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量;
S307:将第一调度单元中目标节点的承载带宽总量上调对应的待调整带宽量。
需要说明的是,S310-S307分别与上述实施例中S201-S207分别相同,在此不进行赘述。
S308:判断该待调整节点的目标调度单元是否只有一个,如果是,执行S309,如果否,执行S310。
S309:将该待调整节点的承载带宽总量下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽;
确定了待调整节点的目标调度单元,也就确定了待调整节点的目标调度单元的个数,如果目标调度单元只有一个,只能将该待调整节点在目标调度单元中的承载带宽下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽。
S310:计算所有目标调度单元之间可用带宽总量的第一比值。
当该待调整节点的目标调度单元的个数不止一个时,可以计算目标调度单元相互之间的可用总量的第一比值。示例性的,调度单元A、B、C均为节点1的目标调度单元,调度单元A的可用带宽总量为4G,调度单元B的可用带宽总量为4G,调度单元C的可用带宽总量为2G,则确定的目标调度单元之间的可用带宽总量的第一比值为2:2:1。
S311:按照计算得到的第一比值,根据该待调整节点的待调整带宽量,计算每一目标调度单元的上调量。
示例性的,延续上述示例,节点1的待调整带宽量为1G(这里以1G=1000M为例进行说明),则调度单元A的上调量为400M,调度单元B的上调量为400M,调度单元C的上调量为200M。
S312:针对每一目标调度单元,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
延续上述示例,调度单元A中的目标节点的承载带宽总量上调400M,节点1在调度单元A中的承载带宽下调400M;调度单元B中的目标节点的承载带宽总量上调400M,节点1在调度单元B中的承载带宽下调400M;调度单元C中的目标节点的承载带宽总量上调200M,节点1在调度单元C中的承载带宽下调200M。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,目标节点的可用带宽总量的比值能够更精确的体现目标节点之间的配比关系,通过目标节点的可用带宽总量的比值,确定目标节点在目标调度单元中上调的量,这样可以缩小带宽调整的误差,可以实现更加精细化对带宽进行调整。
图4为本发明实施例提供的带宽调整方法的第四种流程示意图,方法包括:
S401:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S402:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S403,如果是,结束。
S403:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
S404:针对每一待调整节点,判断该待调整节点是否满足目标条件,如果是执行S405,如果否,执行S408,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值。
S405:从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点的调度单元;
S406:将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量;
S407:将第一调度单元中目标节点的承载带宽总量上调对应的待调整带宽量。
S408:判断该待调整节点的目标调度单元是否只有一个,如果是,执行S409,如果否,执行S410。
S409:将该待调整节点的承载带宽总量下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽;
S410:计算所有目标调度单元之间可用带宽总量的第一比值。
S411:按照计算得到的第一比值,根据该待调整节点的待调整带宽量,计算每一目标调度单元的上调量。
需要说明的是,S401-S411分别与S310-S311相同,在此不进行赘述。
S412:针对每一目标调度单元,判断该目标调度单元中所包含的目标节点是否只有一个,如果是,执行S413,如果否,执行S414。
S413:将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
当一个目标调度单元只包含一个目标节点,则无法将计算得到的该目标调度单元的上调量分配给不同的目标节点,只能将该目标节点的承载带宽上调对应的上调量。
S414:计算该目标调度单元中目标节点可用带宽之间的第二比值。
在一个目标调度单元中有两个以上目标节点的情况下,将该目标调度单元对应的上调量分配给这些目标节点,使得带宽的调整更加的均衡,减少了因承载带宽调整不均衡而造成的目标节点过载的可能性。
第二比值就是目标节点承载带宽之间的比值。示例性的,调度单元A为目标调度单元,调度单元A中所包括的目标节点为节点3和节点4,节点3的可用带宽为1G,节点4的可用带宽为3G,则计算得到的第二比值为1:3。
S415:按照计算得到的第二比值,根据针对该目标调度单元所计算的上调量,计算该目标调度单元中每一目标节点的调整值。
示例性的,延续上述示例,调度单元A的上调量为400M,则计算得到的节点3的调整值为100M,节点4的调整值为300M。
S416:将该目标调度单元中每一目标节点的承载带宽上调对应的待调整带宽量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
延续上述示例,节点3在调度单元A的承载带宽上调100M,节点4在调度单元A的承载带宽上调300M,节点1在调度单元A中的承载带宽下调400M。
在本发明实施例中,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,目标调度单元的个数不同,待调整节点的带宽的调整方式不同,目标节点的个数不同,待调整节点的带宽的调整方式也不同,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,灵活地根据情况确定待调整节点的调整方式和目标节点承载带宽上调值,因此,相较于现有技术,可以实现更加精细化对带宽进行调整。
图5为本发明实施例提供的带宽调整方法的第五种流程示意图,方法包括:
S501:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S502:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S503,如果是,结束。
S503:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
S504:针对每一待调整节点,利用贪心算法,从包含有该调整节点的调度单元中,选择该调整节点的参考调度单元,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的参考调度单元的承载带宽总量上调对应的待调整带宽量。
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,所做出的是在某种意义上的局部最优解。在本发明实施例中,贪心算法主要用于在获取了待调整节点的待调整带宽、目标节点在调度单元中的使用带宽、目标节点在目标调度单元中的可用带宽、目标节点在调度单元中承载带宽、待调整节点在调度单元中的承载带宽等信息后,为待调整节点选择参考调度单元。利用贪心算法所选择的参考调度单元是局部最优解,而不是从整体上考虑所所选择的,这样可以快速地确定需要调整的调度单元,提高带宽调整的效率。
针对一个待调整节点,在参考调度单元只有一个的情况下,将该待调整节点在参考调度单元的承载带宽下调对应的待调整带宽量,将参考调度单元中目标节点在该参考调度单元中的承载带宽总量上调对应的待调整带宽量,具体的是,在参考调度单元中只有一个目标节点的情况下,将该目标节点在参考调度单元中的承载带宽上调对应的待调整带宽量,在参考调度单元中有两个以上目标节点的情况下,确定每一目标节点的调整带宽量,将每一目标节点在参考调度单元的承载带宽调整对应的调整带宽量。每一目标节点的调整带宽量可以是利用贪心算法选择参考带宽时,利用贪心算法确定的;也可以是通过其他方式确定的。
针对一个待调整节点,在参考调度单元不止一个的情况下,确定每一参考调度单元的调整带宽量,将该待调整带宽量在每一参考调度单元中的承载带宽调整对饮的调整带宽量,将每一参考调度单元中目标节点在该参考调度单元中的承载带宽总量上调对应的调整带宽量。具体的,参考调度单元中目标节点的承载带宽的调整可以参考上述在参考调度单元只有一个的情况下,目标节点的承载带宽调整的方式。
在本发明实施例中,在过载节点的过载带宽大于该过载节点的目标节点的可用带宽总量的情况下,利用贪心算法,确定待调整节点的参考调度单元,并将待调整节点在参考调度单元中的承载带宽下调,将参考调度单元中目标节点的承载带宽总量上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将待调整节点在参考调度单元中的承载带宽下调,将参考调度单元中目标节点的承载带宽总量上调,因此,可以实现更加精细化对带宽进行调整。另外,利用贪心算法,选择参考调度单元,可以快速地确定需要调整的调度单元,提高带宽调整的效率。
图6为本发明实施例提供的带宽调整方法的第六种流程示意图,方法包括:
S601:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S602:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S603,如果是,结束。
S603:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
需要说明的是,S610-S603分别与S101-S103相同,在此不进行赘述。
S604:针对每一待调整节点,从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元。
一个待调整节点的目标调度单元是指包含有该待调整节点的调度单元,在待调整节点的所有目标调度单元中可以随机选择一个未被选择的目标调度单元,作为第二调度单元,也可以从待调整节点的未被选择的目标调度单元中选择一个可用带宽总量最大的目标调度单元,作为第二调度单元。当然,还可以采用以下方式选择第二调度单元:
针对每一待调整节点,从按照预设方式排序的目标调度单元中,选择一个当前未被选择、且排在最前的目标调度单元,作为第二调度单元,其中,预设方式为按照目标节点的可用带宽总量和该待调整节点在目标调度单元中的使用带宽,对目标调度单元降序排序。
在本发明实施例中,目标调度单元是预先排好序的,具体的是,按照该待调整节点的所有调度单元按照调度单元中的目标节点的可用带宽总量和该待调整节点在调度单元中的使用带宽,进行降序排序。这样排序可以综合考虑目标节点和待调整节点的实际情况,从而使得第二调度单元的选择更加地合理,可以使得带宽的调整更加的合理。
S605:判断第二调度单元中目标节点的可用带宽总量是否大于该待调整节点的剩余待调整带宽量,如果是,执行S606,如果否,执行S609,其中,一个待调整节点的剩余待调整带宽量为该待调整节点的待调整带宽量与已调整的带宽量之差。
待调整节点的待调整带宽量是待调整节点的待调整带宽量与已调整的带宽量的差值。这里所说的已调整带宽为利用本发明实施例提供的带宽调整方法利用某一个调度单元已经调整的承载带宽总量。示例性,待调整节点为节点1,节点1的待调整带宽量为1G,已调整的带宽量为600M,说明节点1的承载带宽总量相较于未进行带宽调整之前下调了600M,则节点1的剩余待调整带宽量为400M。
S606:判断该待调整节点的剩余待调整带宽量是否大于该待调整节点在第二调度单元中承载带宽,如果小于或等于,执行S607,如果大于,执行S608。
当第二调度单元中的目标节点的可用带宽总量大于该待调整带宽的剩余待调整带宽量时,执行S606。
S607:将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量,将该待调整节点在第二调度单元中的承载带宽下调该待调整节点的剩余待调整带宽量。
在待调整节点的剩余待调整带宽量小于或等于该待调整节点在第二调度单元中承载带宽的情况下,执行S607。
将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量的方式,参照上述将目标调度单元中的目标节点的承载带宽总量上调对应的上调值的方式,也可以随机确定第二调度单元中的目标节点的承载带宽上调量,将每一目标节点在第二调度单元中的承载带宽上调对应的承载带宽上调量;当然,还存在其他调整方式,在此不进行一一列举。
S608:将第二调度单元中目标节点的承载带宽总量上调目标值,将该待调整节点在第二调度单元中的承载带宽下调目标值;返回执行S604,直至该待调整节点的剩余待调整带宽量为零,其中,目标值是基于该待调整节点在第二调度单元中承载带宽确定的,且小于或等于该待调整节点在第二调度单元中承载带宽。
在本发明实施例中,目标值大于零,可以是待调整节点在第二调度单元中的承载带宽,可以小于待调整节点在第二调度节点中的承载带宽。目标值可以是在0到待调整节点在第二调度单元中的承载带宽范围内,随机或者通过预设的算法选择的一个数值。
将第二调度单元中目标节点的承载带宽总量上调目标值的方式可以参照将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量的方式。
S609:将第二调度单元中目标节点的承载带宽总量上调第二调度单元中目标节点的可用带宽总量,将该待调整节点在第二调度单元中的承载带宽下调第二调度单元中目标节点的可用带宽总量;返回执行S604,直至该待调整节点的剩余待调整带宽量为零。
如果第二调度单元中目标节点的可用带宽总量小于或等于该待调整节点的剩余待调整带宽量的情况下,执行S609。
在本发明实施例中,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,根据待调整节点的剩余待调整带宽量、待调整节点在所选择的调度单元中的承载带宽、所选择的调度单元目标节点的可用带宽总量三者之间的关系,所确定的所选择的调度单元中目标节点的承载带宽总量的上调值不同,可以灵活地对带宽进行调整,实现更加精细化对带宽进行调整。
图7为本发明实施例提供的带宽调整方法的第七种流程示意图,方法包括:
S701:获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值。
S702:针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点,如果否,执行S703,如果是,S705。
S703:基于该过载节点的过载带宽,确定该过载节点的待调整带宽量。
S704:针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的目标承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该待调整节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的目标承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和;一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
S705:判断该过载节点的过载带宽是否在预先针对该过载节点设置的容忍区间内,如果不在,则执行S706,如果在,结束;其中,容忍区间为该过载节点对应的预设第二带宽阈值和该过载节点对应的预设第一带宽阈值确定的。
在本发明实施例中,容忍区间可以为该过载节点对应的预设第二带宽阈值和对应的预设第一带宽阈值之差所确定的区间。示例性的,节点1对应的预设第一带宽阈值为10G,预设第二带宽阈值为12G,则容忍区间为[0,2G]。如果节点1的过载带宽为1G,则结束,说明节点1的过载带宽目前在容忍范围内,可以不对节点1的承载带宽进行调整。如果节点1的过载带宽为2.1G,则执行S706。
S706:判断该过载节点的目标带宽是否大于该过载节点所有目标节点的可用带宽总量,如果大于,执行S707,否则,结束;其中,一个过载节点的目标带宽将该过载节点的使用带宽总量与针对该过载节点对应的预设第二带宽阈值之间的差值。
示例性的,节点1的使用带宽总量为14G,节点1对应的预设第二带宽阈值为12G,则节点1的目标带宽为2G,节点1的所有目标节点的可用带宽总量为1G,则执行S707。
S707:将该过载节点的目标节点在第三调度单元中的承载带宽总量下调目标带宽,将参考节点在第三调度单元中的承载带宽总量上调目标带宽,将该过载节点在该过载节点的目标调度单元中的承载带宽总量下调目标带宽,将该过载节点的目标节点在目标调度单元中的承载带宽总量上调目标带宽,其中,第三调度单元为包含有过载节点的目标节点、且不包含该过载节点的调度单元;参考节点为第三调度单元中除该过载节点的目标节点以及过载节点之外的节点。
第三调度单元为包含有过载节点的目标节点、且除包含该过载节点的目标调度单元之外的调度单元。示例性的,过载节点为节点A,节点A的目标节点为B、C,调度单元1包括节点A、B、C,调度单元2包括节点B、C、D,调度单元3包括节点C、E、H,则第三调度单元为调度单元2和调度单元3,则参考节点为节点D、E、H。
将参考节点在第三调度单元中的承载带宽总量上调目标带宽的方式参照将目标节点在第一调度单元中的承载带宽总量上调对应的待调整带宽量的方式,或将该目标调度单元中目标节点的承载带宽总量上调对应的上调量的方式。
延续上述示例,目标带宽为1G,调度单元1为目标调度单元,具体调整的时候,将调度单元2和调度单元3中的节点D、E、H的承载带宽总量上调1G,然后将调度单元2和调度单元3中的节点B、C的承载带宽重量下调1G;再将调度单元1中的节点A的承载带宽下调1G,将调度单元1中的节点B、C的承载带宽总量上调1G。
在本发明实施例中,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,通过对第三调度单元的目标节点的承载带宽总量下调,对第三调度单元的参考节点的承载带宽总量上调,将目标调度单元中目标节点的承载带宽总量上调,将目标调度单元中过载节点的承载带宽总量下调,实现联动地对带宽进行调整,进行发散式带宽均衡,能够实时均衡相关节点的流量,调整的方式更加的灵活,带宽调整更加精确。
图8为本发明实施例提供的带宽调整装置的结构示意图,该装置包括:
获得模块801,用于获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值;
第一判断模块802,用于针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点;
确定模块803,用于在第一判断模块802的判断结果为否的情况下,基于该过载节点的过载带宽,确定该过载节点的待调整带宽量;
第一调整模块804,用于针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的目标承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该待调整节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的目标承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和;一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准
在本发明的一个实施方式中,第一调整模块804,可以包括:
第一判断子模块,用于针对每一待调整节点,判断该待调整节点是否满足目标条件,其中,目标条件为待调整节点的过载带宽小于对应的第一预设阈值,且该待调整节点的所有目标节点的可用带宽总量大于对应的第二预设阈值,其中,第二预设阈值大于第一预设阈值;
第一选择子模块,用于在第一判断子模块的判断结果为是的情况下,从所有目标调度单元中选择一个可用带宽总量大于该待调整节点的待调整带宽量的目标调度单元,作为第一调度单元,其中,目标调度单元为包含有该待调整节点的调度单元;
第一调整子模块,用于将该待调整节点在第一调度单元中的承载带宽下调对应的待调整带宽量;
第二调整子模块,用于将目标节点在第一调度单元中的承载带宽总量上调对应的待调整带宽量。
在本发明的一个实施方式中,第一调整模块804,还可以包括:
第二判断子模块,用于在第一判断子模块的判断结果为否的情况下,判断该待调整节点的目标调度单元是否只有一个;
第三调整子模块,用于在第二判断子模块的判断结果为是的情况下,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将目标调度单元中目标节点的承载带宽上调对应的待调整带宽;
第一计算子模块,用于在第二判断子模块的判断结果为否的情况下,计算所有目标调度单元之间可用带宽总量的第一比值;
第二计算子模块,用于按照计算得到的第一比值,根据该待调整节点的待调整带宽量,计算每一目标调度单元的上调量;
第四调整子模块,用于针对每一目标调度单元,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
在本发明的一个实施方式中,第四调整子模块,可以包括:
第一判断单元,用于针对每一目标调度单元,判断该目标调度单元中所包含的目标节点是否只有一个;
第一调整单元,在第一判断单元的判断结果为是的情况下,将该目标调度单元中目标节点的承载带宽总量上调对应的上调量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量;
第一计算单元,在第一判断单元的判断结果为否的情况下,计算该目标调度单元中目标节点可用带宽之间的第二比值;
第二计算单元,用于按照计算得到的第二比值,根据针对该目标调度单元所计算的上调量,计算该目标调度单元中每一目标节点的调整值;
第二调整单元,用于将该目标调度单元中每一目标节点的承载带宽上调对应的待调整带宽量,并将该目标调度单元中该待调整节点的承载带宽下调对应的上调量。
在本发明的一个实施方式中,第一调整模块804,具体用于针对每一待调整节点,利用贪心算法,从包含有该调整节点的调度单元中,选择该调整节点的参考调度单元,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的参考调度单元的承载带宽总量上调对应的待调整带宽量。
在本发明的一个实施方式中,第一调整模块804,可以包括:
第二选择子模块,用于针对每一待调整节点,从该待调整节点的所有目标调度单元中选择一个未被选择的目标调度单元,作为第二调度单元;
第三判断子模块,用于判断第二调度单元中目标节点的可用带宽总量是否大于该待调整节点的剩余待调整带宽量,其中,一个待调整节点的剩余待调整带宽量为该待调整节点的待调整带宽量与已调整的带宽量之差;
第四判断子模块,用于在第三判断子模块的判断结果为是的情况下,判断该待调整节点的剩余待调整带宽量是否大于该待调整节点在第二调度单元中承载带宽;
第五调整子模块,用于在第四判断子模块的判断结果为小于或等于的情况下,将第二调度单元中目标节点的承载带宽总量上调该待调整节点的剩余待调整带宽量,将该待调整节点在第二调度单元中的承载带宽下调该待调整节点的剩余待调整带宽量;
第六调整子模块,用于在第四判断子模块的判断结果为大于的情况下,将第二调度单元中目标节点的承载带宽总量上调目标值,将该待调整节点在第二调度单元中的承载带宽下调目标值;返回执行第二选择子模块,直至该待调整节点的剩余待调整带宽量为零,其中,目标值是基于该待调整节点在第二调度单元中承载带宽确定的,且小于或等于该待调整节点在第二调度单元中承载带宽;
第七调整子模块,用于在第三判断子模块的判断结果为否的情况下,将第二调度单元中目标节点的承载带宽总量上调第二调度单元中目标节点的可用带宽总量,将该待调整节点在第二调度单元中的承载带宽下调第二调度单元中目标节点的可用带宽总量;返回执行第二选择子模块,直至该待调整节点的剩余待调整带宽量为零。
在本发明的一个实施方式中,第二选择子模块,具体用于针对每一待调整节点,从按照预设方式排序的目标调度单元中,选择一个当前未被选择、且排在最前的目标调度单元,作为第二调度单元,其中,预设方式为按照目标节点的可用带宽总量和该待调整节点在目标调度单元中的使用带宽,对调度单元降序排序。
在本发明的一个实施方式中,该装置还可以包括:
第二判断模块,用于在第一判断模块的判断结果为大于的情况下,判断该过载节点的过载带宽大于该过载节点的参考可用带宽总量的情况下判断该过载节点的过载带宽是否在预先针对该过载节点设置的容忍区间内,其中,容忍区间为该过载节点对应的预设第二带宽阈值和该过载节点对应的预设第一带宽阈值确定的;
第三判断模块,用于在第二判断模块的判断结果为不在的情况下,判断该过载节点的目标带宽是否大于该过载节点所有目标节点的可用带宽总量,其中,一个过载节点的目标带宽将该过载节点的使用带宽总量与针对该过载节点对应的预设第二带宽阈值之间的差值;
第二调整模块,用于在第三判断模块的判断结果为大于的情况下,将该过载节点的目标节点在第三调度单元中的承载带宽总量下调目标带宽,将参考节点在第三调度单元中的承载带宽总量上调目标带宽,将该过载节点在该过载节点的目标调度单元中的承载带宽总量下调目标带宽,将该过载节点的目标节点在目标调度单元中的承载带宽总量上调目标带宽,其中,第三调度单元为包含有过载节点的目标节点、且除包含该过载节点的目标调度单元之外的调度单元;参考节点为第三调度单元中除该过载节点的目标节点以及过载节点之外的节点。
本发明实施例还提供了一种电子设备,如图9所示,包括处理器901和存储器902,其中,
存储器902,用于存放计算机程序;
处理器901,用于执行存储器902上所存放的程序时,实现如下步骤:
获得过载节点,其中,每一过载节点均为使用带宽总量大于对应的预设第一带宽阈值;
针对每一过载节点,判断该过载节点的过载带宽是否大于该过载节点的所有目标节点的当前可用带宽总量,其中,一个过载节点的过载带宽是该过载节点的使用带宽总量与对应的预设第一带宽阈值的差值,一个过载节点的目标节点为包含有该过载节点的所有调度单元中,使用带宽总量小于对应的预设第一带宽阈值的节点;
如果否,基于该过载节点的过载带宽,确定该过载节点的待调整带宽量;
针对每一待调整节点,将该待调整节点的承载带宽总量下调对应的待调整带宽量,将该待调整节点的目标承载带宽总量上调对应的待调整带宽量,其中,待调整节点为过载带宽小于或等于该待调整节点的所有目标节点的可用带宽总量的过载节点;一个待调整节点的目标承载带宽总量为该待调整节点的所有目标节点当前承载带宽的总和;一个目标节点在一个调度单元承载带宽上调的量小于或等于该目标节点在该调度单元中的可用带宽,且一个目标节点在一个调度单元承载带宽上调的量小于或等于该待调整节点的待调整带宽量。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。
在本发明的又一实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述实施例中任一的页面更新方法。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。
在本发明的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一的带宽调整方法。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。
在本发明的又一实施例中,还提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述实施例中任一的带宽调整方法。
在本发明实施例中,可以根据过载节点的过载带宽量确定过载节点的待调整带宽量,在过载节点的过载带宽小于等于该过载节点的目标节点的可用带宽总量的情况下,将该过载节点的承载带宽总量下调,将所有目标节点的承载带宽总和上调,相较于现有技术中过载节点和目标节点的承载带宽需要按比例调整的情况,本发明实施例中,过载节点和目标节点的承载带宽不需要按比例调整,而是将过载节点的承载带宽总量下调对应的待调整带宽量,将目标节点的承载带宽总量上调对应的待调整带宽量,因此,相较于现有技术,带宽调整更加的精准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子设备/计算机可读存储介质/计算机程序产品/计算机程序实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。