发明内容
本发明实施例所要解决的技术问题在于,提供一种内容分发网络流量控制方法、装置以及终端,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
为了解决上述技术问题,本发明实施例第一方面提供了一种内容分发网络流量控制方法,包括:
获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量;
当所述当前CDN流量和所述上一次CDN流量相比较,其差别超出预设范围时,调整所述下载通道的通道概率,所述通道概率用于指示单位时间内允许通过所述下载通道下载目标文件的用户比例;
根据调整后的通道概率,控制单位时间内允许通过所述下载通道下载目标文件的用户比例。
在第一种可能的实现方式中,若所述当前CDN流量大于预设CDN流量阈值,则生成报警信息。
结合第一方面可能的实现方式,在第二种可能的实现方式中,所述当前CDN流量和所述上一次CDN流量相比较之前,获取所述下载通道对应的设置信息,所述设置信息包括用于指示是否动态调整所述通道概率的信息;
根据所述设置信息判断是否动态调整所述通道概率;
若动态调整所述通道概率,则触发所述当前CDN流量和所述上一次CDN流量相比较。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,根据所述设置信息判断是否动态调整所述通道概率之后,若禁止动态调整所述通道概率,则根据预设经验阈值调整所述通道概率。
结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述设置信息还包括用于指示是否动态调整针对预设时间段的通道概率的信息;
所述若动态调整所述通道概率,则触发所述当前CDN流量和所述上一次CDN流量相比较,包括:
若动态调整所述通道概率,且当前时间位于所述预设时间段内,则根据所述设置信息判断是否动态调整针对所述预设时间段的通道概率;
若动态调整针对所述预设时间段的通道概率,则触发所述当前CDN流量和所述上一次CDN流量相比较。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,根据所述设置信息判断是否动态调整针对所述预设时间段的通道概率之后,若禁止动态调整针对所述预设时间段的通道概率,则所述通道概率保持不变。
结合第一方面可能的实现方式,在第六种可能的实现方式中,所述当前CDN流量和所述上一次CDN流量相比较,其差别超出预设范围,包括:
所述当前CDN流量和所述上一次CDN流量的差值超出预设差值范围;或者
所述当前CDN流量和所述上一次CDN流量的比例超出预设比例范围。
结合第一方面可能的实现方式,在第七种可能的实现方式中,所述调整所述下载通道的通道概率,包括:
在多个预设时间区间中确定当前时间所在的预设时间区间;
根据所述确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
结合第一方面的第七种可能的实现方式,在第八种可能的实现方式中,所述根据所述确定的当前时间所在的预设时间区间对应的通道概率算法,调整所述通道概率包括:
当确定的当前时间所在的预设时间区间为第一时间区间时,将所述通道概率调整为预设通道概率;
当确定的当前时间所在的预设时间区间为第二时间区间时,根据预设的文件大小与初始通道概率的对应关系,确定目标文件的文件大小对应的初始通道概率;
将所述通道概率调整为所述目标文件的文件大小对应的初始通道概率;
当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量小于所述上一次CDN流量时,根据预设的文件大小与递增通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递增通道概率变化量;
使用所述通道概率加上所述目标文件的文件大小对应的递增通道概率变化量,以得到调整后的通道概率;
当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量大于所述上一次CDN流量时,根据预设的文件大小与递减通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递减通道概率变化量;
使用所述通道概率减去所述目标文件的文件大小对应的递减通道概率变化量,以得到调整后的通道概率。
结合第一方面的第七种可能的实现方式,在第九种可能的实现方式中,所述根据所述确定的当前时间所在的预设时间区间对应的通道概率算法,调整所述通道概率包括:
当确定的当前时间所在的预设时间区间为第四时间区间时,将所述通道概率调整为预设通道概率;
当确定的当前时间所在的预设时间区间为第五时间区间时,获取针对所述下载通道按照所述预设采集周期采集的至少一个CDN流量及其对应的调整后的通道概率;
根据所述至少一个CDN流量与调整后的通道概率的对应关系,获取所述当前CDN流量对应的初始通道概率;
将所述通道概率调整为所述当前CDN流量对应的初始通道概率。
相应地,本发明实施例第二方面还提供了一种内容分发网络流量控制装置,包括:
获取单元,用于获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量;
通道概率调整单元,用于当所述当前CDN流量和所述上一次CDN流量相比较,其差别超出预设范围时,调整所述下载通道的通道概率,所述通道概率用于指示单位时间内允许通过所述下载通道下载目标文件的用户比例;
流量控制单元,用于根据调整后的通道概率,控制单位时间内允许通过所述下载通道下载目标文件的用户比例。
在第一种可能的实现方式中,所述装置还包括:
报警信息生成单元,用于若所述当前CDN流量大于预设CDN流量阈值,则生成报警信息。
结合第二方面可能的实现方式,在第二种可能的实现方式中,所述获取单元,还用于获取所述下载通道对应的设置信息,所述设置信息包括用于指示是否动态调整所述通道概率的信息;
所述装置还包括:
判断单元,用于根据所述获取单元获取到的设置信息判断是否动态调整所述通道概率;
所述通道概率调整单元,还用于当所述判断单元判断动态调整所述通道概率时,将所述当前CDN流量和所述上一次CDN流量相比较。
结合第二方面第二种可能的实现方式,在第三种可能的实现方式中,所述通道概率调整单元,还用于当所述判断单元判断禁止动态调整所述通道概率时,根据预设经验阈值调整所述通道概率。
结合第二方面第二种可能的实现方式,在第四种可能的实现方式中,所述设置信息还包括用于指示是否动态调整针对预设时间段的通道概率的信息;
所述判断单元,还用于若判断动态调整所述通道概率,且当前时间位于所述预设时间段内,则根据所述设置信息判断是否动态调整针对所述预设时间段的通道概率;
所述通道概率调整单元,用于当所述判断单元判断动态调整针对所述预设时间段的通道概率时,所述当前CDN流量和所述上一次CDN流量相比较。
结合第二方面第四种可能的实现方式,在第五种可能的实现方式中,所述通道概率调整单元,还用于当所述判断单元判断禁止动态调整针对所述预设时间段的通道概率时,所述通道概率保持不变。
结合第二方面可能的实现方式,在第六种可能的实现方式中,所述通道概率调整单元,用于当所述当前CDN流量和所述上一次CDN流量的差值超出预设差值范围时,调整所述下载通道的通道概率;或者
所述通道概率调整单元,用于当所述当前CDN流量和所述上一次CDN流量的比例超出预设比例范围时,调整所述下载通道的通道概率。
结合第二方面可能的实现方式,在第七种可能的实现方式中,所述通道概率调整单元包括:
时间区间确定模块,用于在多个预设时间区间中确定当前时间所在的预设时间区间;
通道概率调整模块,用于根据所述确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
结合第二方面第七种可能的实现方式,在第八种可能的实现方式中,所述通道概率调整模块,用于当确定的当前时间所在的预设时间区间为第一时间区间时,将所述通道概率调整为预设通道概率;
所述通道概率调整模块,还用于当确定的当前时间所在的预设时间区间为第二时间区间时,根据预设的文件大小与初始通道概率的对应关系,确定目标文件的文件大小对应的初始通道概率,并将所述通道概率调整为所述目标文件的文件大小对应的初始通道概率;
所述通道概率调整模块,还用于当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量小于所述上一次CDN流量时,根据预设的文件大小与递增通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递增通道概率变化量,使用所述通道概率加上所述目标文件的文件大小对应的递增通道概率变化量,以得到调整后的通道概率;
所述通道概率调整模块,还用于当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量大于所述上一次CDN流量时,根据预设的文件大小与递减通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递减通道概率变化量,使用所述通道概率减去所述目标文件的文件大小对应的递减通道概率变化量,以得到调整后的通道概率。
结合第二方面第七种可能的实现方式,在第九种可能的实现方式中,所述通道概率调整模块,用于当确定的当前时间所在的预设时间区间为第四时间区间时,将所述通道概率调整为预设通道概率;
所述通道概率调整模块,还用于当确定的当前时间所在的预设时间区间为第五时间区间时,获取针对所述下载通道按照所述预设采集周期采集的至少一个CDN流量及其对应的调整后的通道概率,根据所述至少一个CDN流量与调整后的通道概率的对应关系,获取所述当前CDN流量对应的初始通道概率,并将所述通道概率调整为所述当前CDN流量对应的初始通道概率。
相应地,本发明实施例第三方面还提供了一种终端,包括第二方面所述的内容分发网络流量控制装置。
实施本发明实施例,具有如下有益效果:终端将最近一次采集的当前CDN流量和上一次采集的上一次CND流量相比较,其差别超出预设范围时,调整下载通道的通道概率,并根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种内容分发网络流量控制方法、装置以及终端,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
请参见图1,图1是本发明实施例中第一方面提供的一种内容分发网络流量控制方法的流程示意图,如图所示本实施例中的内容分发网络流量控制方法可以包括:
步骤S101,获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CDN流量。
终端可以获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CDN流量。
具体的,终端可以按照预设采集周期采集该下载通道的CDN流量,其中可以获取最近一次采集的当前CDN流量和上一次采集的上一次CDN流量,预设采集周期可以为1min,例如终端可以每间隔1min获取CDN服务系统发送的针对该下载通道的CDN流量,将最近一次采集到的CDN流量作为当前CDN流量,将1min前采集到的CDN流量作为上一次CDN流量,其中当前CDN流量可以是CDN服务系统经过预设时间间隔后统计的各个CDN节点的流量总和,例如CDN服务系统每间隔5min统计各个CDN节点的流量总和。需要注意的是,本发明实施例中的预设采集周期包含但不局限于1min,预设采集周期可以根据技术研发人员针对不同场景确定的不同间隔时间进行相应的修改。
步骤S102,当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,调整下载通道的通道概率。
终端获取到当前CDN流量和上一次CDN流量后,可以将当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,调整下载通道的通道概率,其中通道概率用于指示单位时间内允许通过该下载通道下载目标文件的用户比例,通道是指下载文件的渠道。
具体的,终端将当前CDN流量和上一次CDN流量相比较,若当前CDN流量和上一次CDN流量的差别超出预设范围,则调整该下载通道的通道概率;若当前CDN流量和上一次CDN流量的差别未超出预设范围,则该下载通道的通道概率保持不变。
步骤S103,根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例。
通道概率用于指示单位时间内允许通过该下载通道下载目标文件的用户比例,则终端可以根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,以控制CDN流量。
在图1所示的内容分发网络流量控制方法中,终端将最近一次采集的当前CDN流量和上一次采集的上一次CDN流量相比较,其差别超出预设范围时,调整下载通道的通道概率,并根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
请参见图2,图2是本发明实施例中第二方面提供的一种内容分发网络流量控制方法的流程示意图,如图所示本实施例中的内容分发网络流量控制方法可以包括:
步骤S201,获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量。
终端可以获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CDN流量。
具体的,终端可以按照预设采集周期采集该下载通道的CDN流量,其中可以获取最近一次采集的当前CDN流量和上一次采集的上一次CDN流量,预设采集周期可以为1min,例如终端可以每间隔1min获取CDN服务系统发送的针对该下载通道的CDN流量,将最近一次采集到的CDN流量作为当前CDN流量,将1min前采集到的CDN流量作为上一次CDN流量,其中当前CDN流量可以是CDN服务系统经过预设时间间隔后统计的各个CDN节点的流量总和,例如CDN服务系统每间隔5min统计各个CDN节点的流量总和。需要注意的是,本发明实施例中的预设采集周期包含但不局限于1min,预设采集周期可以根据技术研发人员针对不同场景确定的不同间隔时间进行相应的修改。
作为一种可选的实施方式,终端获取到当前CDN流量后,可以判断当前CDN流量是否大于预设CDN流量阈值,若当前CDN流量大于预设CDN流量阈值,则生成报警信息。其中预设CDN流量阈值可以小于可用CDN流量,例如预设CDN流量阈值可以是通过公式N-5获取到的,其中N为可用CDN流量,N的单位为GB吉兆,当前CDN流量大于预设CDN流量阈值时,终端生成报警信息,用于提示用户当前CDN流量较高。进一步可选的,预设CDN流量阈值可以为可用CDN流量,例如,当前CDN流量大于或等于可用CDN流量时,终端将生成报警信息,并将通道概率调整为0,该报警信息用于严重报警通知用户当前CDN流量大于或等于可用CDN流量。
步骤S202,获取下载通道对应的设置信息。
终端获取到当前CDN流量和上一次CDN流量后,可以获取下载通道对应的设置信息,其中设置信息可以包括用于指示是否动态调整该下载通道的通道概率。
步骤S203,根据设置信息判断是否动态调整通道概率。
终端获取到下载通道对应的设置信息后,可以根据该设置信息判断是否动态调整通道概率,若动态调整通道概率,则进一步执行步骤S204;若禁止动态调整通道概率,则进一步执行步骤S206。示例性的设置信息界面的界面示意图可以如图7所示,用户点击设置信息“程序是否开启”,则终端获取到该设置信息后,可以确定动态调整通道概率;用户未点击设置信息“程序是否开启”,则终端获取到该设置信息后,可以确定禁止动态调整通道概率。
在可选实施例中,设置信息还可以包括用于指示是否动态调整针对预设时间段的通道概率的信息,终端确定动态调整通道概率,并确定当前时间位于预设时间段后,可以根据设置信息判断是否动态调整针对预设时间段的通道概率,若动态调整针对预设时间段的通道概率,则进一步执行步骤S205;若禁止动态调整针对预设时间段的通道概率,则通道概率保持不变,即针对预设时间段的通道概率为最近一次调整的通道概率,其中预设时间段可以为休息日,例如每周的周六和周日,或者节假日等,本发明不做限定。在图7所示的设置信息界面的界面示意图中,针对休息日的用户访问量一般大于针对工作日的用户访问量,若终端在休息日通过下载通道发布的目标文件较大时,例如该目标文件的大小大于10MB时,可以将设置信息设置为“程序不开启”,又如终端通过下载通道发布的文件更新包大于15MB时,可以将设置信息设置为“程序不开启”,等等。
本实施例中,终端可以针对特定情况禁止动态设置通道概率,进一步根据预设经验阈值调整通道概率,可避免动态调整通道概率而占用内存和系统资源,同时可避免CDN流量暴增导致网络堵塞。
步骤S204,将当前CDN流量和上一次CDN流量相比较。
终端根据设置信息判断动态设置通道概率后,可以将当前CDN流量和上一次CDN流量相比较。具体的,终端可以判断当前CDN流量和上一次CDN流量的差别是否超出预设范围,若当前CDN流量和上一次CDN流量的差别超出预设范围,则进一步执行步骤S205;若当前CDN流量和上一次CDN流量的差别未超出预设范围,则终端可以不对通道概率进行调整,即该下载通道的通道概率保持不变。
在可选实施例中,终端判断动态设置通道概率,并确定当前时间位于预设时间段内时,终端可以根据设置信息判断是否动态调整针对预设时间段的通道概率,若动态调整针对预设时间段的通道概率,则终端将当前CDN流量和上一次CDN流量相比较。
步骤S205,当前CDN流量和上一次CDN流量的差别超出预设范围时,调整通道概率。
当前CDN流量和上一次CDN流量的差别超出预设范围时,终端可以调整通道概率,其中通道概率用于指示单位时间内允许通过该下载通道下载目标文件的用户比例,通道是指下载文件的渠道。
步骤S206,根据预设经验阈值调整通道概率。
若终端根据设置信息判断禁止动态设置通道概率,则终端可以根据预设经验阈值调整该通道概率,其中预设经验阈值小于或等于预设通道概率,预设通道概率可以为50%。例如,下载通道发布的目标文件大于15MB,则终端可以根据预设经验阈值将通道概率设置为1%。需要注意的是,本实施例的预设通道概率包含但不局限于50%,预设经验阈值包含但不局限于1%,终端可根据不同的情况预设不同的经验阈值,预设通道概率和预设经验阈值可根据技术研发人员针对不同场景进行相应的修改。
步骤S207,根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例。
通道概率用于指示单位时间内允许通过该下载通道下载目标文件的用户比例,则终端可以根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,以控制CDN流量。
在图2所示的内容分发网络流量控制方法中,终端根据设置信息判断动态调整通道概率时,将最近一次采集的当前CDN流量和上一次采集的上一次CDN流量相比较,其差别超出预设范围时,调整通道概率;若终端根据设置信息判断禁止动态调整通道概率,则根据预设经验阈值调整通道概率,进而根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,可针对不同情况调整通道概率以控制CDN流量,提升通道概率计算效率,避免CDN流量暴增导致网络堵塞。
请参见图3,图3是本发明实施例中第三方面提供的一种内容分发网络流量控制方法的流程示意图,如图所示本实施例中的内容分发网络流量控制方法可以包括:
步骤S301,获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量。具体可以参考前文实施例中的S201,本实施例中不再赘述。
步骤S302,当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,在多个预设时间区间中确定当前时间所在的预设时间区间。
终端可以将当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,在多个预设时间区间中确定当前时间所在的预设时间区间。其中预设时间区间可以为将一天的时间进行分段得到的时间区间,例如,预设时间区间可以包括三个时间区间,第一时间区间可以为23:50~7:00的时间段,第二时间区间可以为7:00~7:15的时间段,第三时间区间可以为7:15~23:50的时间段。需要指出的是,本实施例中的预设时间区间包含但不局限于三个,各个时间区间的划分包含但不局限于上述方式,例如预设时间区间也可以为将一周的时间进行分段得到的时间区间等,预设时间区间可以根据技术研发人员针对不同场景进行相应的修改,本发明不做限定。
在可选实施例中,终端可以比较当前CDN流量和上一次CDN流量的差值是否超出预设差值范围,若当前CDN流量和上一次CDN流量的差值超出预设差值范围,则在多个预设时间区间中确定当前时间所在的预设时间区间,例如终端可以比较当前CDN流量和上一次CDN流量的差值是否大于3GB,若当前CDN流量和上一次CDN流量的差值大于3GB,则在多个预设时间区间中确定当前时间所在的预设时间区间。可选的,终端也可以比较当前CDN流量和上一次CDN流量的比例是否超出预设比例范围,若当前CDN流量和上一次CDN流量的比例超出预设比例范围,则在多个预设时间区间中确定当前时间所在的预设时间区间,例如终端可以比较当前CDN流量和上一次CDN流量的比例是否大于1.1,若当前CDN流量和上一次CDN流量的比例大于1.1,则在多个预设时间区间中确定当前时间所在的预设时间区间。
步骤S303,根据确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
终端可以根据确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
在可选实施例中,终端确定当前时间所在的预设时间区间为第一时间区间时,将通道概率调整为预设通道概率。例如当前时间为5:00,终端可以确定当前时间所在的时间区间为第一时间区间,终端还可以将通道概率调整为预设通道概率,示例性的,该预设通道概率可以为50%。需要指出的是,本实施例中的预设通道概率包含但不局限于50%,可以根据技术研发人员针对不同场景进行相应的修改。
在可选实施例中,终端确定当前时间所在的预设时间区间为第二时间区间时,根据预设的文件大小与初始通道概率的对应关系,确定目标文件的文件大小对应的初始通道概率,并将通道概率调整为目标文件的文件大小对应的初始通道概率。例如当前时间为7:10,终端可以确定当前时间所在的时间区间为第二时间区间,终端可以获取目标文件的文件大小和下载通道对应的配置参数,配置参数可以包括第一预设阈值及其对应的初始通道概率,第二预设阈值及其对应的初始通道概率。示例性的,第一预设阈值可以为5M,其对应的初始通道概率可以为10%;第二预设阈值可以为10M,其对应的初始通道概率可以为2%,终端可以根据配置参数确定目标文件的文件大小对应的初始通道概率。需要指出的是,本实施例中的第一预设阈值包含但不局限于5M,其对应的初始通道概率包含但不局限于10%,第二预设阈值包含但不局限于10M,其对应的初始通道概率包含但不局限于2%,可以根据技术研发人员针对不同场景进行相应的修改。
示例性的初始通道概率算法可以如下所示:
若S<S1,则目标文件的文件大小对应的初始通道概率为
若S=S1,则将所述初始通道概率设置为P1;
若S1<S<S2,则将所述初始通道概率设置为
若S=S2,则将所述初始通道概率设置为P2;
若S>S2,则将所述初始通道概率设置为
其中S为目标文件的大小,S1为第一预设阈值,P1为第一预设阈值对应的初始通道概率,S2为第二预设阈值,P2为第二预设阈值对应的初始通道概率,S1<S2,P1>P2。
需要指出的是,上述初始通道概率算法仅为示例,在其他可选实施例中终端可以通过其他方式计算初始通道概率,例如当目标文件的文件大小、第一预设阈值对应的初始通道概率或第二预设阈值对应的初始通道概率不存在时,可以将初始通道概率设置为预设初始通道概率,例如2%,不应认为本发明的实施受限于上述初始通道概率算法。
在可选实施例中,当确定的当前时间所在的预设时间区间为第三时间区间,且当前CDN流量小于上一次CDN流量时,终端可以根据预设的文件大小与递增通道概率变化量的对应关系,获取目标文件的文件大小对应的递增通道概率变化量,并使用通道概率加上目标文件的文件大小对应的递增通道概率变化量,以得到调整后的通道概率。例如当前时间为8:00,终端可以确定当前时间所在的时间区间为第三时间区间,若当前CDN流量小于上一次CDN流量,则终端可以获取目标文件的文件大小和下载通道对应的配置参数,配置参数包括第一预设CDN流量阈值,第三预设阈值及其对应的递增通道概率变化量,第四预设阈值及其对应的递增通道概率变化量,其中第三预设阈值可以和第一预设阈值相同,也可以和第一预设阈值不相同,第四预设阈值可以和第二预设阈值相同,也可以和第二预设阈值不相同,本发明不做限定。示例性的,第三预设阈值可以为5M,对应的递增通道概率变化量可以为0.4%,第四预设阈值可以为10M,对应的递增通道概率变化量可以为0.1%,终端可以根据预设的文件大小与递增通道概率变化量的对应关系,获取目标文件的文件大小对应的递增通道概率变化量。需要指出的是,本实施例中的第三预设阈值包含但不局限于5M,其对应的递增通道概率变化量包含但不局限于0.4%,第四预设阈值包含但不局限于10M,对应的递增通道概率变化量包含但不局限于0.1%,可以根据技术研发人员针对不同场景进行相应的修改。
示例性的递增通道概率变化量算法可以如下所示:
若S<S3,则将目标文件的文件大小对应的递增通道概率变化量设置为
若S=S3,则将所述递增通道概率变化量设置为P3;
若S3<S<S4,则将所述递增通道概率变化量设置为
若S=S4,则将所述递增通道概率变化量设置为P4;
若S>S4,则将所述递增通道概率变化量设置为
其中S为当前CDN流量,S3为第三预设阈值,P3为第三预设阈值对应的递增通道概率变化量,S4为第四预设阈值,P4为第四预设阈值对应的递增通道概率变化量,S3<S4,P3>P4。
需要指出的是,上述递增通道概率变化量算法仅为示例,在其他可选实施例中终端可以通过其他方式计算递增通道概率变化量,例如当目标文件的文件大小、第三预设阈值对应的递增通道概率变化量或第四预设阈值对应的递增通道概率变化量不存在时,终端可以将目标文件的文件大小对应的递增通道概率变化量设置为预设递增通道概率变化量,例如预设递增通道概率变化量可以为0.5%,不应认为本发明的实施受限于上述递增通道概率变化量算法。
在可选实施例中,当确定的当前时间所在的预设时间区间为第三时间区间,且当前CDN流量大于上一次CDN流量时,终端可以根据预设的文件大小与递减通道概率变化量的对应关系,获取目标文件的文件大小对应的递减通道概率变化量,并使用通道概率减去目标文件的文件大小对应的递减通道概率变化量,以得到调整后的通道概率。例如当前时间为8:00,终端可以确定当前时间所在的时间区间为第三时间区间,若当前CDN流量大于上一次CDN流量,则终端可以获取目标文件的文件大小和下载通道对应的配置参数,配置参数包括第一预设CDN流量阈值,第三预设阈值及其对应的递减通道概率变化量,第四预设阈值及其对应的递减通道概率变化量。示例性的,第三预设阈值可以为5M,对应的递减通道概率变化量可以为0.6%,第四预设阈值可以为10M,对应的递减通道概率变化量可以为0.3%,终端可以根据预设的文件大小与递减通道概率变化量的对应关系,获取目标文件的文件大小对应的递减通道概率变化量。需要指出的是,本实施例中的第三预设阈值包含但不局限于5M,其对应的递减通道概率变化量包含但不局限于0.6%,第四预设阈值包含但不局限于10M,对应的递减通道概率变化量包含但不局限于0.3%,可以根据技术研发人员针对不同场景进行相应的修改。
示例性的递减通道概率变化量算法可以如下所示:
若S<S3,则将所述目标文件的文件大小对应的递减通道概率变化量设置为
若S=S3,则将所述递减通道概率变化量设置为P3′;
若S3<S<S4,则将所述递减通道概率变化量设置为
若S=S4,则将所述递减通道概率变化量设置为P4′;
若S>S4,则将所述递减通道概率变化量设置为
其中S为当前CDN流量,S3为第三预设阈值,P3′为第三预设阈值对应的递减通道概率变化量,S4为第四预设阈值,P4′为第四预设阈值对应的递减通道概率变化量,S3<S4,P3′>P4′。
需要指出的是,上述递减通道概率变化量算法仅为示例,在其他可选实施例中终端可以通过其他方式计算递减通道概率变化量,例如当目标文件的文件大小、第三预设阈值对应的递减通道概率变化量或第四预设阈值对应的递减通道概率变化量不存在时,终端可以将递减通道概率变化量设置为预设递减通道概率变化量,例如预设递减通道概率变化量可以为1%,不应认为本发明的实施受限于上述递减通道概率变化量算法。
步骤S304,根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例。
终端可以根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,以控制CDN流量。
在图3所示的内容分发网络流量控制方法中,当前CDN流量和上一次CDN流量的差别超出预设范围时,针对在多个预设时间区间中确定当前时间所在的预设时间区间,根据确定的当前时间所在的预设时间区间对应的通道概率算法调整通道概率,并根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
请参见图4,图4是本发明实施例中第四方面提供的一种内容分发网络流量控制方法的流程示意图,如图所示本实施例中的内容分发网络流量控制方法可以包括:
步骤S401,获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量。
步骤S402,当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,在多个预设时间区间中确定当前时间所在的预设时间区间。
终端可以将当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,在多个预设时间区间中确定当前时间所在的预设时间区间。其中预设时间区间可以为将一天的时间进行分段得到的时间区间,例如,预设时间区间可以包括二个时间区间,第四时间区间可以为23:50~7:00的时间段,第五时间区间可以为7:00~~23:50的时间段。需要指出的是,本实施例中的预设时间区间包含但不局限于二个,各个时间区间的划分包含但不局限于上述方式,例如预设时间区间也可以为将一周的时间进行分段得到的时间区间等,预设时间区间可以根据技术研发人员针对不同场景进行相应的修改,本发明不做限定。
步骤S403,根据确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
终端可以根据确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
在可选实施例中,终端确定当前时间所在的预设时间区间为第四时间区间时,将通道概率调整为预设通道概率。例如当前时间为5:00,终端可以确定当前时间所在的时间区间为第四时间区间,终端还可以将通道概率调整为预设通道概率,示例性的,该预设通道概率可以为50%。需要指出的是,本实施例中的预设通道概率包含但不局限于50%,可以根据技术研发人员针对不同场景进行相应的修改。
在可选实施例中,终端在多个预设时间区间中确定当前时间所在的预设时间区间为第五时间区间时,可以获取针对下载通道按照预设采集周期采集的至少一个CDN流量及其对应的调整后的通道概率,根据至少一个CDN流量与调整后的通道概率的对应关系,获取当前CDN流量对应的初始通道概率,将通道概率调整为当前CDN流量对应的初始通道概率。
在可选实施例中,第五时间区间可以包括第一子区间和第二子区间,例如第一子区间为7:00~7:15,第二子区间为7:15~23:50,若终端在预设时间区间中确定当前时间所在的预设时间区间为第五时间区间中的第一子区间,例如当前时间为5月23日7:14,则终端可以获取针对5月22日7:14~23:50的时间段采集到的CDN流量及其对应的调整后的通道概率,例如针对5月22日7:14~23:50的时间段,终端获取到的各个CDN流量分别为20GB/s,25GB/s,30GB/s,40GB/s,35GB/s,30GB/s,对应的调整后的通道概率分别为20%,25%,28%,35%,33%,30%,则各个CDN流量及其对应的调整后的通道概率的比例分别为100,100,107,114,106,100,进一步的,CDN流量及其对应的调整后的通道概率的比例均值为(100+100+107+114+106+100)/6=104.5,终端可以根据CDN流量及其对应的调整后的通道概率的对应关系,获取当前CDN流量对应的初始通道概率,例如CDN流量及其对应的通道概率的比例均值为104.5,当前CDN流量为20GB/s,则对应的初始通道概率为20/104.5×100%=19.1%,终端获取到当前CDN流量对应的初始通道概率后,可以将通道概率调整为当前CDN流量对应的初始通道概率。
进一步可选的,若终端在预设时间区间中确定当前时间所在的预设时间区间为第五时间区间中的第二子区间,例如当前时间为5月23日8:00,则终端可以获取最近获取到的至少一个CDN流量,例如终端获取到的CDN流量包括35GB/s,40GB/s,20GB/s,25GB/s和23GB/s,对应的调整后的通道概率分别为33%,35%,19.1%,22%和21%,则上述CDN流量及其对应的调整后的通道概率的比例为106,114,105,114和110,进一步的,CDN流量及其对应的通道概率的比例均值为(106+114+105+114+110)/5=109.8,终端可以根据CDN流量及其对应的调整后的通道概率的对应关系,获取当前CDN流量对应的初始通道概率,例如CDN流量及其对应的通道概率的比例均值为109.8,当前CDN流量为40GB/s,则对应的初始通道概率为40/109.8×100%=36.4%,终端获取到当前CDN流量对应的初始通道概率后,可以将通道概率调整为当前CDN流量对应的初始通道概率。
步骤S404,根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例。
终端可以根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,以控制CDN流量。
在图4所示的内容分发网络流量控制方法中,当前CDN流量和上一次CDN流量的差别超出预设范围时,针对在多个预设时间区间中确定当前时间所在的预设时间区间,根据确定的当前时间所在的预设时间区间对应的通道概率算法调整通道概率,并根据调整后的通道概率,控制单位时间内允许通过下载通道下载目标文件的用户比例,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
请参见图5,图5是本发明实施例中提供的一种内容分发网络流量控制装置500的结构示意图,如图所示本发明实施例中的内容分发网络流量控制装置500至少可以包括获取单元510、通道概率调整单元520以及流量控制单元530,其中:
获取单元510,用于获取针对下载通道按照预设采集周期最近一次采集的当前CDN流量和上一次采集的上一次CND流量。
通道概率调整单元520,用于当所述当前CDN流量和所述上一次CDN流量相比较,其差别超出预设范围时,调整所述下载通道的通道概率,所述通道概率用于指示单位时间内允许通过所述下载通道下载目标文件的用户比例。
流量控制单元530,用于根据调整后的通道概率,控制单位时间内允许通过所述下载通道下载目标文件的用户比例。
在可选实施例中,本发明实施例中的内容分发网络流量控制装置500还可以包括:
报警信息生成单元540,用于若当前CDN流量大于预设CDN流量阈值,则生成报警信息。
具体的,预设CDN流量阈值可以小于可用CDN流量,例如预设CDN流量阈值可以是通过公式N-5获取到的,其中N为可用CDN流量,N的单位为GB,当前CDN流量大于该预设CDN流量阈值时,报警信息生成单元540生成报警信息,用于提示用户当前CDN流量较高。进一步可选的,预设CDN流量阈值可以为可用CDN流量,例如,当前CDN流量大于或等于可用CDN流量时,终端将生成报警信息,并将通道概率调整为0,该报警信息用于严重报警通知用户当前CDN流量大于或等于可用CDN流量。
在可选实施例中,获取单元510,还用于获取所述下载通道对应的设置信息,所述设置信息可以包括用于指示是否动态调整所述通道概率的信息。
进一步的,本发明实施例中的内容分发网络流量控制装置500还可以包括:
判断单元550,用于根据获取单元510获取到的设置信息判断是否动态调整所述通道概率。
通道概率调整单元520,还用于当判断单元550判断动态调整所述通道概率时,将所述当前CDN流量和所述上一次CDN流量相比较。
在可选实施例中,通道概率调整单元520,还用于当判断单元550判断禁止动态调整所述通道概率时,根据预设经验阈值调整所述通道概率,其中预设经验阈值小于或等于预设通道概率,预设通道概率可以为50%。例如,下载通道发布的目标文件大于15MB,则通道概率调整单元520可以根据预设经验阈值将通道概率设置为1%。需要注意的是,本实施例的预设通道概率包含但不局限于50%,预设经验阈值包含但不局限于1%,内容分发网络流量控制装置500可根据不同的情况预设不同的经验阈值,预设通道概率和预设经验阈值可根据技术研发人员针对不同场景进行相应的修改。
在可选实施例中,设置信息还可以包括用于指示是否动态调整针对预设时间段的通道概率的信息,其中预设时间段可以为休息日,例如每周的周六和周日,或者节假日等,本发明不做限定。
判断单元550,还用于若判断动态调整所述通道概率,且当前时间位于所述预设时间段内,则根据所述设置信息判断是否动态调整针对所述预设时间段的通道概率。
通道概率调整单元520,还用于当判断单元550判断动态调整针对所述预设时间段的通道概率时,将所述当前CDN流量和所述上一次CDN流量相比较。
在可选实施例中,通道概率调整单元520,还用于当判断单元550判断禁止动态调整针对所述预设时间段的通道概率时,所述通道概率保持不变。
在可选实施例中,通道概率调整单元520,用于当所述当前CDN流量和所述上一次CDN流量的差值超出预设差值范围时,调整所述下载通道的通道概率;或者
所述通道概率调整单元,用于当所述当前CDN流量和所述上一次CDN流量的比例超出预设比例范围时,调整所述下载通道的通道概率。
在可选实施例中,通道概率调整单元520可以如图6所示,进一步包括:
时间区间确定模块610,用于在多个预设时间区间中确定当前时间所在的预设时间区间。
通道概率调整模块620,用于根据所述确定的当前时间所在的预设时间区间对应的通道概率算法,调整通道概率。
进一步可选的,通道概率调整模块620,用于当确定的当前时间所在的预设时间区间为第一时间区间时,将所述通道概率调整为预设通道概率。
述通道概率调整模块620,还用于当确定的当前时间所在的预设时间区间为第二时间区间时,根据预设的文件大小与初始通道概率的对应关系,确定目标文件的文件大小对应的初始通道概率,并将所述通道概率调整为所述目标文件的文件大小对应的初始通道概率。
通道概率调整模块620,还用于当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量小于所述上一次CDN流量时,根据预设的文件大小与递增通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递增通道概率变化量,使用所述通道概率加上所述目标文件的文件大小对应的递增通道概率变化量,以得到调整后的通道概率。
通道概率调整模块620,还用于当确定的当前时间所在的预设时间区间为第三时间区间,且所述当前CDN流量大于所述上一次CDN流量时,根据预设的文件大小与递减通道概率变化量的对应关系,获取所述目标文件的文件大小对应的递减通道概率变化量,使用所述通道概率减去所述目标文件的文件大小对应的递减通道概率变化量,以得到调整后的通道概率。
进一步可选的,通道概率调整模块620,用于当确定的当前时间所在的预设时间区间为第四时间区间时,将所述通道概率调整为预设通道概率。
通道概率调整模块620,还用于当确定的当前时间所在的预设时间区间为第五时间区间时,获取针对所述下载通道按照所述预设采集周期采集的至少一个CDN流量及其对应的调整后的通道概率,根据所述至少一个CDN流量与调整后的通道概率的对应关系,获取所述当前CDN流量对应的初始通道概率,并将所述通道概率调整为所述当前CDN流量对应的初始通道概率。
在图5和图6所示的内容分发网络流量控制装置500中,通道概率调整单元520将当前CDN流量和上一次CDN流量相比较,其差别超出预设范围时,调整下载通道的通道概率,流量控制单元630根据调整后的通道概率,控制单位时间内允许通过所述下载通道下载目标文件的用户比例,可调整通道概率以控制CDN流量,避免CDN流量暴增导致网络堵塞。
可以理解的是,本实施例提供的内容分发网络流量控制装置500的各功能单元和模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
本发明实施例还提供了一种终端,可以包括图5和图6所示的内容分发网络流量控制装置,内容分发网络流量控制装置可以设置于该终端中。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的程序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。