技术摘要:
本发明实施例提供了一种资源分发方法、装置、系统及电子设备,实时收集各IDC的出口带宽,并且针对各IDC中的每个IDC,基于该IDC的历史出口带宽,预测该IDC在下个取样时长内的预测出口带宽,以及针对各IDC中的每个IDC,通过对比该IDC的出口带宽与第一预设带宽的大小,实 全部
背景技术:
随着互联网技术的发展,通过互联网获取资源服务的用户越来越多,为了更好地 为用户提供资源服务,资源服务商往往通过自建IDC(Internet Data Center,互联网数据 中心)和租用IDC的方式搭建CDN(Content Delivery Network,资源分发网络)。 运营商主要通过95带宽峰值计费方式收取IDC的流量费用,简单来说,针对一个 IDC,监控该IDC的实时带宽,在一个计费周期内的,每隔一个取样时长,采集该IDC在该取样 时长内的带宽峰值,作为该IDC在该取样时长内的带宽采样数值,一个计费周期结束后,在 采集的各带宽采样数值中,去除带宽数值最大的前5%个带宽采样数值,在剩下的95%个带 宽采样数值中,选取带宽数值最大的带宽采样数值,作为该计费周期的计费带宽值,最后按 照该计费周期的计费带宽值计算该计费周期内的流量费用。 由此可以看出,采用95带宽峰值计费方式的流量费用取决于带宽值较高的部分, 当在一个计费周期内,出现带宽异常增高时,会导致该计费周期内流量费用的增加,而在一 个CDN运行期间,资源分发是导致带宽异常增高的一个重要原因,其中,资源分发指的是在 资源服务商在获取到新资源后,为了使得新资源能够被所需用户正常获取,往往需要尽快 将新资源分发到CDN的各个IDC中,因此,如果对资源分发过程不进行带宽控制,会导致在进 行资源分发的过程中,各IDC节点的带宽异常增高,导致流量费用增加。 为了解决资源分发导致的带宽异常的问题,现有技术中,采用设置阈值限定资源 分发量的方式,避免出口带宽的异常增高。 发明人在实现本发明的过程中发现,现有技术至少存在如下问题: 在用户的资源需求较小的时间段,依然采用设置阈值限定分发量的方式,导致新 资源不能及时的分发到各IDC中,资源分发的效率较低。
技术实现要素:
本发明实施例的目的在于提供资源分发方法、装置、系统及电子设备,以实现减少 资源服务商的流量成本。具体技术方案如下: 在本发明实施的第一方面,首先提供了一种资源分发方法,包括: 实时收集各IDC的出口带宽; 针对所述各IDC中的每个IDC,基于该IDC的历史出口带宽,预测该IDC在下个取样 时长内的预测出口带宽; 针对所述各IDC中的每个IDC,通过对比该IDC的出口带宽与第一预设带宽的大小, 实时更新该IDC在当前计费周期内的最高带宽可用时长,一个IDC的最高带宽可用时长为指 定时长与该IDC的高峰带宽已用时长的时长差,一个IDC的高峰带宽已用时长为在所述当前 5 CN 111585824 A 说 明 书 2/14 页 计费周期内该IDC的出口带宽大于所述第一预设带宽的时长,所述指定时长为所述当前计 费周期的时长与指定占比的乘积,所述指定占比为不大于带宽成本结算时所去除的占比; 在所述各IDC中,选取预测出口带宽大于第一预设带宽,且最高带宽可用时长大于 预设时长的IDC,作为最高带宽可用IDC; 在所述下个取样时长内,调用所述最高带宽可用IDC按照出口带宽上限进行资源 的分发。 进一步的,在所述调用所述最高带宽可用IDC按照出口带宽上限进行资源的分发 之前,所述方法还包括: 计算所述最高带宽可用IDC的出口带宽上限与所述最高带宽可用IDC的预测出口 带宽的差值,作为第一带宽差; 将所述第一带宽差与所述下个取样时长的乘积,作为第一分发流量; 所述在所述下个取样时长内,调用所述最高带宽可用IDC按照出口带宽上限进行 资源的分发,包括: 在所述下个取样时长内,调用所述最高带宽可用IDC处理资源的数据大小与所述 第一分发流量大小相同的资源分发任务。 进一步的,所述方法还包括: 在所述各IDC中,选取预测出口带宽不大于第一预设带宽,或最高带宽可用时不长 大于预设时长的IDC,作为带宽限制IDC; 在所述下个取样时长内,调用所述带宽限制IDC按照所述第一预设带宽进行资源 的分发。 进一步的,在所述调用所述带宽限制IDC按照所述第一预设带宽进行资源的分发 之前,所述方法还包括: 计算所述第一预设带宽与所述带宽限制IDC的预测出口带宽的差值,作为第二带 宽差; 将所述第二带宽差与所述下个取样时长的乘积,作为第二分发流量; 所述在所述下个取样时长内,调用所述带宽限制IDC按照所述第一预设带宽进行 资源的分发,还包括: 在所述下个取样时长内,调用所述带宽限制IDC处理资源的数据大小与所第二分 发流量大小相同的资源分发任务。 进一步的,所述实时收集各IDC的出口带宽,包括: 收集每个所述IDC的出口流量,并基于每个所述IDC的出口流量确定每个所述IDC 的出口带宽;和/或, 通过每个所述IDC的API,获取每个所述的出口带宽。 在本发明实施的第二方面,还提供了一种资源分发装置,包括: 带宽收集模块,用于实时收集各IDC的出口带宽; 带宽预测模块,用于针对所述各IDC中的每个IDC,基于该IDC的历史出口带宽,预 测该IDC在下个取样时长内的预测出口带宽; 可用时长更新模块,用于针对所述各IDC中的每个IDC,通过对比该IDC的出口带宽 与第一预设带宽的大小,实时更新该IDC在当前计费周期内的最高带宽可用时长,一个IDC 6 CN 111585824 A 说 明 书 3/14 页 的最高带宽可用时长为指定时长与该IDC的高峰带宽已用时长的时长差,一个IDC的高峰带 宽已用时长为在所述当前计费周期内该IDC的出口带宽大于所述第一预设带宽的时长,所 述指定时长为所述当前计费周期的时长与指定占比的乘积,所述指定占比为不大于带宽成 本结算时所去除的占比; 选取模块,用于在所述各IDC中,选取预测出口带宽大于第一预设带宽,且最高带 宽可用时长大于预设时长的IDC,作为最高带宽可用IDC; IDC调用模块,用于在所述下个取样时长内,调用所述最高带宽可用IDC按照出口 带宽上限进行资源的分发。 进一步的,所述装置还包括: 第一分发流量确定模块,用于在所述IDC调用模块执行所述调用所述最高带宽可 用IDC按照出口带宽上限进行资源的分发之前,计算所述最高带宽可用IDC的出口带宽上限 与所述最高带宽可用IDC的预测出口带宽的差值,作为第一带宽差,并且将所述第一带宽差 与所述下个取样时长的乘积,作为第一分发流量; 所述IDC调用模块,具体用于在所述下个取样时长内,调用所述最高带宽可用IDC 处理资源的数据大小与所述第一分发流量大小相同的资源分发任务。 进一步的,所述选取模块,还用于在所述各IDC中,选取预测出口带宽不大于第一 预设带宽,或最高带宽可用时不长大于预设时长的IDC,作为带宽限制IDC; 所述IDC调用模块,还用于在所述下个取样时长内,调用所述带宽限制IDC按照所 述第一预设带宽进行资源的分发。 进一步的,还包括: 第二分发流量确定模块,用于在所述IDC调用模块执行所述调用所述带宽限制IDC 按照所述第一预设带宽进行资源的分发之前,计算所述第一预设带宽与所述带宽限制IDC 的预测出口带宽的差值,作为第二带宽差,并且将所述第二带宽差与所述下个取样时长的 乘积,作为第二分发流量; 所述IDC调用模块,具体还用于在所述下个取样时长内,调用所述带宽限制IDC处 理资源的数据大小与所第二分发流量大小相同的资源分发任务。 进一步的,所述带宽收集模块,具体用于收集每个所述IDC的出口流量,并基于每 个所述IDC的出口流量确定每个所述IDC的出口带宽;和/或,通过每个所述IDC的API,获取 每个所述的出口带宽。 在本发明实施的第三方面,还提供了一种资源分发系统,所述系统包括:数据服务 器、计费服务器、流量控制服务器和分发服务器,其中: 所述数据服务器,用于实时收集各IDC的出口带宽,并且针对所述各IDC中的每个 IDC,基于该IDC的历史出口带宽,预测该IDC在下个取样时长内的预测出口带宽,以及并将 收集到的实时带宽发送至所述计费服务器,以及将所述预测出口带宽发送至所述流量控制 服务器; 所述计费服务器,用于针对所述各IDC中的每个IDC,通过对比该IDC的出口带宽与 第一预设带宽的大小,实时更新该IDC在当前计费周期内的最高带宽可用时长,并且将每个 IDC的最高带宽可用时长发送至所述流量控制服务器,其中一个IDC的最高带宽可用时长为 指定时长与该IDC的高峰带宽已用时长的时长差,一个IDC的高峰带宽已用时长为在所述当 7 CN 111585824 A 说 明 书 4/14 页 前计费周期内该IDC的出口带宽大于所述第一预设带宽的时长,所述指定时长为所述当前 计费周期的时长与指定占比的乘积,所述指定占比为不大于带宽成本结算时所去除的占 比; 所述流量控制服务器,用于在所述各IDC中,选取预测出口带宽大于第一预设带 宽,且最高带宽可用时长大于预设时长的IDC,作为最高带宽可用IDC,并且将所述最高带宽 可用IDC的信息至所述分发服务器; 所述分发服务器,用于根据所述最高带宽可用IDC的信息,调用所述最高带宽可用 IDC按照出口带宽上限进行资源的分发。 进一步的,所述分发服务器,具体用于根据所述最高带宽可用IDC的信息,计算所 述最高带宽可用IDC的出口带宽上限与所述最高带宽可用IDC的预测出口带宽的差值,作为 第一带宽差,并且将所述第一带宽差与所述下个取样时长的乘积,作为第一分发流量,以及 在所述下个取样时长内,调用所述最高带宽可用IDC处理资源的数据大小与所述第一分发 流量大小相同的资源分发任务。 进一步的,所述流量控制服务器,还用于在所述各IDC中,选取预测出口带宽不大 于第一预设带宽,或最高带宽可用时不长大于预设时长的IDC,作为带宽限制IDC,并且将所 述带宽限制IDC的信息至所述分发服务器; 所述分发服务器,还用于在所述下个取样时长内,调用所述带宽限制IDC按照所述 第一预设带宽进行资源的分发。 进一步的,所述分发服务器,具体用于计算所述第一预设带宽与所述带宽限制IDC 的预测出口带宽的差值,作为第二带宽差,并且将所述第二带宽差与所述下个取样时长的 乘积,作为第二分发流量,并且在所述下个取样时长内,调用所述带宽限制IDC处理资源的 数据大小与所第二分发流量大小相同的资源分发任务。 进一步的,所述数据服务器,具体用于收集每个所述IDC的出口流量,并基于每个 所述IDC的出口流量确定每个所述IDC的出口带宽;和/或,通过每个所述IDC的API,获取每 个所述的出口带宽。 在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读 存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的资源分 发方法。 在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计 算机上运行时,使得计算机执行上述任一所述的资源分发方法。 本发明实施例提供的资源分发方法、装置、系统及电子设备,由于指定时长为当前 计费周期的时长与指定占比的乘积,指定占比为不大于带宽成本结算时所去除的占比,因 此,一个IDC的指定时长表示该IDC在计费周期内可使用的不计入流量费用,且大于计费带 宽的出口带宽的使用时长,进一步,一个IDC的高峰带宽已用时长表示当前计费周期内该 IDC的出口带宽大于第一预设带宽的时长,因此,一个IDC的高峰带宽已用时长表示在当前 时刻之前,当前计费周期内出口带宽大于计费带宽的累计使用时长,进而通过指定时长与 高峰带宽已用时长计算出的最高带宽可用时长表述在当前时刻之后,当前计费周期内可使 用的不计入流量费用,且大于计费带宽的出口带宽的可用时长,因此,基于最高带宽可用时 长确定的最高带宽可用IDC为可以使用高于计费带宽的出口带宽而不计入流量费用的IDC, 8 CN 111585824 A 说 明 书 5/14 页 因此,当在下个取样时长内按照该IDC的出口带宽上限进行资源的分发时,在不增加流量费 用的同时,提高了资源分发的效率。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍。 图1为本发明一个实施例提供的资源分发系统的结构示意图; 图2为本发明一个实施例提供的交互图; 图3为本发明一个实施例提供的资源分发方法的流程图; 图4为本发明另一个实施例提供的资源分发方法的流程图; 图5为本发明又一个实施例提供的资源分发方法的流程图; 图6为本发明一个实施例提供的资源分发装置的结构示意图; 图7为本发明另一个实施例提供的资源分发系统的结构示意图; 图8为本发明实施例提供的电子设备的结构示意图。