CN113194042A - 一种流量传输速度的控制方法、装置以及存储介质 - Google Patents
一种流量传输速度的控制方法、装置以及存储介质 Download PDFInfo
- Publication number
- CN113194042A CN113194042A CN202110296748.0A CN202110296748A CN113194042A CN 113194042 A CN113194042 A CN 113194042A CN 202110296748 A CN202110296748 A CN 202110296748A CN 113194042 A CN113194042 A CN 113194042A
- Authority
- CN
- China
- Prior art keywords
- speed
- reference speed
- flow reference
- server
- traffic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本申请公开了一种流量传输速度的控制方法、装置以及存储介质,该控制方法包括:基于客户端与服务器历史设定时长执行任务的流量传输速度,以及客户端与服务器当前执行任务的流量传输速度确定当前的流量参考速度;将当前的流量参考速度与预设的多个速度区间进行匹配,确定当前的流量参考速度所属速度区间;根据所属速度区间对应的速度调整方式对服务器下一刻的流量传输速度进行调整。通过上述方式,本申请能够在保证用户上网体验的前提下,降低服务器的运营成本。
Description
技术领域
本申请涉及网络技术领域,特别是涉及一种流量传输速度的控制方法、装置以及存储介质。
背景技术
随着互联网行业的不断发展,用户对网络访问质量的不断提升以及带宽成本在整体运营成本中的比例不断增加。在一些终端产品中,由于网络质量不佳,严重影响用户体验。
现有技术中,为了达到最佳传输速率,服务器代理商通常通过部署加速服务器来提供增值服务,以供应高速稳定的数据源头;或是邀请用户参与共享计划,让用户节点提供P2P(Peer-to-Peer,点对点)加速。
然而,如果加速流量几乎全部来自于加速服务器,服务器代理商就会通过限制免费用户的传输速度来降低服务器成本,这种方式会压榨用户体验,打击用户使用加速服务器的积极性;如果邀请用户参与共享计划,在用户带宽较小,可加速的用户节点很多的情况下,由于服务器的性能较优,会优先选择服务器进行加速,导致大部分的用户节点无法参与,从而给服务器端造成较大的负担,运营成本偏高。
发明内容
本申请主要解决的技术问题是提供一种流量传输速度的控制方法、装置以及存储介质,通过获取客户端当前的流量参考速度,并基于当前的流量参考速度对服务器的流量传输速度进行控制,能够解决用户体验得不到保障以及服务器运营成本偏高的问题。
为解决上述技术问题,本申请采用的第一技术方案是提供一种流量传输速度的控制方法,包括:基于客户端与服务器历史设定时长执行任务的流量传输速度,以及客户端与服务器当前执行任务的流量传输速度确定当前的流量参考速度;将当前的流量参考速度与预设的多个速度区间进行匹配,确定当前的流量参考速度所属速度区间;根据所属速度区间对应的速度调整方式对服务器下一刻的流量传输速度进行调整。
其中,基于客户端与服务器历史设定时长执行任务的流量传输速度,以及客户端与服务器当前执行任务的流量传输速度确定当前的流量参考速度的步骤,包括:基于客户端与服务器历史设定时长执行任务的流量传输速度确定初始流量参考速度;将初始流量参考速度与初始流量参考速度之前的流量参考速度进行比较;利用比较结果,以及当前执行任务的流量传输速度对初始流量参考速度进行调整,并将调整后的速度确定为当前的流量参考速度。
其中,利用比较结果,以及当前执行任务的流量传输速度对初始流量参考速度进行调整,并将调整后的速度确定为当前的流量参考速度的步骤,包括:利用比较结果确定初始流量参考速度的状态;其中,状态包括稳定状态以及观察状态;基于初始流量参考速度的状态确定下一刻流量参考速度的调整方式;利用调整方式对初始流量参考速度进行调整,得到当前的流量参考速度。
其中,利用比较结果确定初始流量参考速度的状态的步骤,包括:判断初始流量参考速度之前的流量参考速度的数量是否达到预设数量;如果数量未达到预设数量,确定状态为观察状态;如果数量达到预设数量,响应于初始流量参考速度与其前一刻的流量参考速度的差值小于预设值,且初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值小于预设值,确定状态为稳定状态;如果数量达到预设数量,响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,或/和初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值不小于预设值,确定状态为观察状态。
其中,判断初始流量参考速度之前的流量参考速度的数量是否达到预设数量的步骤之前,包括:响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,舍弃掉初始流量参考速度之前的流量参考速度,将初始流量参考速度确定为首个流量参考速度。
其中,利用调整方式对初始流量参考速度进行调整,得到当前的流量参考速度的步骤,包括:获取当前执行任务的流量传输速度与初始流量参考速度的差值;如果状态为观察状态,响应于当前执行任务的流量传输速度大于初始流量参考速度,将初始流量参考速度提升差值的第一比例,并将提升后的流量参考速度确定为当前的流量参考速度;响应于当前执行任务的流量传输速度小于初始流量参考速度,将初始流量参考速度下降差值的第二比例,并将下降后的流量参考速度确定为当前的流量参考速度;其中,第一比例大于第二比例;如果状态为稳定状态,响应于当前执行任务的流量传输速度大于初始流量参考速度,将初始流量参考速度提升差值的第三比例,并将提升后的流量参考速度确定为当前的流量参考速度;响应于当前执行任务的流量传输速度小于初始流量参考速度,将初始流量参考速度下降差值的第三比例,并将下降后的流量参考速度确定为当前的流量参考速度;其中,第三比例小于或等于第二比例。
其中,将当前的流量参考速度与预设的多个速度区间进行匹配,确定当前的流量参考速度所属速度区间的步骤,包括:响应于当前的流量参考速度大于第一预设速度,将当前的流量参考速度划分至第一速度区间;响应于当前的流量参考速度小于第一预设速度但大于第二预设速度,将当前的流量参考速度划分至第二速度区间;响应于当前的流量参考速度小于第二预设速度但大于第三预设速度,将当前的流量参考速度划分至第三速度区间;响应于当前的流量参考速度小于第三预设速度,将当前的流量参考速度划分至第四速度区间。
其中,根据所属速度区间对应的速度调整方式对服务器下一刻的流量传输速度进行调整的步骤,包括:响应于所属速度区间为第一速度区间,以第一设定比例降低服务器的流量传输速度;响应于所属速度区间为第二速度区间,保持服务器的流量传输速度;响应于所属速度区间为第三速度区间,以第二设定比例提高服务器的流量传输速度;响应于所属速度区间为第四速度区间,取消对服务器的流量传输速度的限制。
其中,响应于所属速度区间为第一速度区间,以第一设定比例降低服务器的流量传输速度的步骤,包括:削减客户端到服务器的连接数量,以使服务器的流量传输速度按第一设定比例降低;响应于所属速度区间为第三速度区间,以第二设定比例提高服务器的流量传输速度的步骤,包括:增加客户端到服务器的连接数量,以使服务器的流量传输速度按第二设定比例提高;响应于所属速度区间为第四速度区间,取消对服务器的流量传输速度的限制的步骤,包括:增加客户端到服务器的连接数量至最大连接数。
为解决上述技术问题,本申请采用的第二技术方案是提供一种流量传输速度的控制装置,包括:存储器,用于存储程序数据,存储程序数据被执行时实现如上述任一项所述的流量传输速度的控制方法中的步骤;处理器,用于执行存储器存储的程序指令以实现如上述任一项所述的流量传输速度的控制方法中的步骤。
为解决上述技术问题,本申请采用的第三技术方案是提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项所述的流量传输速度的控制方法中的步骤。
本申请的有益效果是:区别于现有技术,本申请提供一种流量传输速度的控制方法,通过获取客户端当前的流量参考速度,并基于当前的流量参考速度对服务器的流量传输速度进行控制,能够在保证用户上网体验的前提下,降低服务器的运营成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请流量传输速度的控制方法一实施方式的流程示意图;
图2是图1中步骤S11一具体实施方式的流程示意图;
图3是图2中步骤S23一具体实施方式的流程示意图;
图4是图3中步骤S31一具体实施方式的流程示意图;
图5是图3中步骤S33一具体实施方式的流程示意图;
图6是本申请预设数量的流量参考速度变化趋势的一具体示意图;
图7是本申请预设数量的流量参考速度变化趋势的另一具体示意图;
图8是本申请划分多个速度区间的具体示意图;
图9是本申请流量传输速度的控制装置一实施方式的结构示意图;
图10是本申请计算机可读存储介质一实施方式的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应当理解,本文中使用的术语“包括”、“包含”或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
请参阅图1,图1是本申请流量传输速度的控制方法一实施方式的流程示意图。如图1所示,在本实施方式中,该方法包括:
S11:基于客户端与服务器历史设定时长执行任务的流量传输速度,以及客户端与服务器当前执行任务的流量传输速度确定当前的流量参考速度。
请参阅图2,图2是图1中步骤S11一具体实施方式的流程示意图。如图2所示,在本实施方式中,基于客户端与服务器历史设定时长执行任务的流量传输速度,以及客户端与服务器当前执行任务的流量传输速度确定当前的流量参考速度的步骤具体包括:
S21:基于客户端与服务器历史设定时长执行任务的流量传输速度确定初始流量参考速度。
本实施方式中,流量参考速度指的是由客户端带宽与加速服务器共同起作用可能达到的最大带宽,即评估的带宽上限。
本实施方式中,流量传输速度是由客户端与服务器共同提供的实际流量传输速度。
其中,历史设定时长执行任务的流量传输速度指的是与当前时刻距离最近的一时刻内(前一时刻)接收的流量传输速度的平均值,是最接近实际流量传输速度的值。
其中,一时刻可以是3s、5s或其他长度的时间,本申请对此不作限定。
本实施方式中,初始流量参考速度是根据前一时刻实时接收的流量传输速度进行计算得到的。
S22:将初始流量参考速度与初始流量参考速度之前的流量参考速度进行比较。
本实施方式中,由于流量参考速度是动态变化的,在对初始流量参考速度进行调整前,需要获取前几个时刻内流量参考速度的变化趋势,并通过变化趋势确定初始流量参考速度的状态,最后基于初始流量参考速度的状态对初始流量参考速度进行调整,获得当前的流量参考速度。
S23:利用比较结果,以及当前执行任务的流量传输速度对初始流量参考速度进行调整,并将调整后的速度确定为当前的流量参考速度。
请参阅图3,图3是图2中步骤S23一具体实施方式的流程示意图。如图3所示,在本实施方式中,利用比较结果,以及当前执行任务的流量传输速度对初始流量参考速度进行调整,并将调整后的速度确定为当前的流量参考速度的步骤具体包括:
S31:利用比较结果确定初始流量参考速度的状态;其中,状态包括稳定状态以及观察状态。
本实施方式中,稳定状态指的是一段时间内流量参考速度的变化非常轻微,或直接认为其不变化;观察状态指的是一段时间内流量参考速度的变化较大。
具体地,请参阅图4,图4是图3中步骤S31一具体实施方式的流程示意图。如图4所示,在本实施方式中,利用比较结果确定初始流量参考速度的状态的步骤具体包括:
S41:判断初始流量参考速度之前的流量参考速度的数量是否达到预设数量。
本实施方式中,判断初始流量参考速度之前的流量参考速度的数量是否达到预设数量的前提是,在预设数量的流量参考速度之间,连续两个流量参考速度之间的差值小于预设值,且响应于初始流量参考速度与其前一刻的流量参考速度的差值小于预设值。若响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,则舍弃掉初始流量参考速度之前的流量参考速度,将初始流量参考速度确定为首个流量参考速度。
具体地,由于处于稳定状态的流量参考速度的变化非常轻微,故稳定状态里前后时刻的流量参考速度之间的差值较小,通常会低于预设值,如果响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,表明此段时间内流量参考速度的变化较大,直接认定初始流量参考速度处于观察状态。
本实施方式中,预设值为5%。
在其他实施方式中,预设值可以为3%、4%或其他数值,本申请对此不作限定。
S42:如果数量未达到预设数量,确定状态为观察状态。
本实施方式中,确定初始流量参考速度的状态需要观察一段时间内流量参考速度的变化趋势,因而对流量参考速度的观察队列长度有一定要求。如果数量未达到预设数量,表明仍需进一步观察,此时直接判定初始流量参考速度处于观察状态。
本实施方式中,预设数量为5个。
在其他实施方式中,预设数量还可以为8个、10个或其他数量,本申请对此不做限定。
S43:如果数量达到预设数量,响应于初始流量参考速度与其前一刻的流量参考速度的差值小于预设值,且初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值小于预设值,确定状态为稳定状态。
本实施方式中,判断初始流量参考速度处于稳定状态需要满足两个条件,其一是初始流量参考速度之前的流量参考速度的数量是否达到预设数量;其二是初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值小于预设值,只有两个条件同时满足,才能判断初始流量参考速度处于稳定状态。
其中,第一个条件表明观察队列中连续两个流量参考速度之间的差值均小于预设值,表明流量参考速度的变化值不大;第二个条件体现的是预设数量中的多个流量参考速度的整体变化趋势平稳。
具体地,请参阅图6,图6是本申请预设数量的流量参考速度变化趋势的一具体示意图。如图6所示,在该观察队列中,流量参考速度处于有升有降的状态,变化趋势整体趋于平稳,故第5个流量参考速度(即初始流量参考速度)与第1个流量参考速度之间的差值小于5%。而在第5个流量参考速度与第1个流量参考速度之间的差值小于5%时,两者的平均值与第1个流量参考速度之间的差值也必然小于5%,满足条件,此时判断初始流量参考速度处于稳定状态。
S44:如果数量达到预设数量,响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,或/和初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值不小于预设值,确定状态为观察状态。
若响应于初始流量参考速度与其前一刻的流量参考速度的差值不小于预设值,则条件一不满足;若初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值不小于预设值,则条件二不满足,两个条件中但凡有一个不满足,判断初始流量参考速度处于观察状态。
由于差值为绝对值,不能代表变化的方向,故连续两个流量参考速度之间的差值均小于预设值,也不代表队列末的初始流量参考速度与预设数量中的第一个流量参考速度的平均值,与预设数量中的第一个流量参考速度的差值就小于预设值。如果队列中所有流量参考速度都是上升或都是下降,则条件二很可能无法满足。
具体地,请参阅图7,图7是本申请预设数量的流量参考速度变化趋势的另一具体示意图。如图7所示,在该观察队列中,流量参考速度处于持续降低的状态,虽然连续两个流量参考速度之间的差值均小于5%,但第5个流量参考速度(即初始流量参考速度)与第1个流量参考速度之间的差值大于5%,两者的平均值与第1个流量参考速度的差值是否小于5%取决于每次降低的幅度,如果每次降低的幅度足够小,例如,每次均降低1%,若第1个流量参考速度为a,则第5个流量参考速度为0.96a,两者的平均值为0.98a,与第1个流量参考速度的差值为2%,小于5%,仍然可以满足条件;如果每次降低的幅度稍大,例如,每次均降低4.5%,若第1个流量参考速度为a,则第5个流量参考速度为0.85a,两者的平均值为0.925a,与第1个流量参考速度的差值为7.5%,大于5%,则无法满足条件,此时判断初始流量参考速度处于观察状态。
S32:基于初始流量参考速度的状态确定下一刻流量参考速度的调整方式。
本实施方式中,确定初始流量参考速度的状态为稳定状态后,按照稳定状态的调节方式对初始流量参考速度进行调整;确定初始流量参考速度的状态为观察状态后,按照观察状态的调节方式对初始流量参考速度进行调整。
S33:利用调整方式对初始流量参考速度进行调整,得到当前的流量参考速度。
请参阅图5,图5是图3中步骤S33一具体实施方式的流程示意图。如图5所示,在本实施方式中,利用调整方式对初始流量参考速度进行调整,得到当前的流量参考速度的步骤具体包括:
S51:获取当前执行任务的流量传输速度与初始流量参考速度的差值。
S52:如果状态为观察状态,响应于当前执行任务的流量传输速度大于初始流量参考速度,将初始流量参考速度提升差值的第一比例,并将提升后的流量参考速度确定为当前的流量参考速度;响应于当前执行任务的流量传输速度小于初始流量参考速度,将初始流量参考速度下降差值的第二比例,并将下降后的流量参考速度确定为当前的流量参考速度;其中,第一比例大于第二比例。
本实施方式中,若响应于当前执行任务的流量传输速度大于初始流量参考速度,表明评估的带宽上限低于实际流量传输速度,为了尽快趋近实际流量传输速度,上升的速度需要快一些,需要以较大比例提升初始流量参考速度,从而使当前的流量参考速度尽量接近实际流量传输速度;若响应于当前执行任务的流量传输速度小于初始流量参考速度,表明评估的带宽上限高于实际流量传输速度,由于主要是要保证用户体验,故带宽上限高于实际流量传输速度时,可以只适当降低一些。
本实施方式中,第一比例为50%,第二比例为10%。
在其他实施方式中,第一比例与第二比例还可以为其他数值,只需满足第一比例大于第二比例即可,本申请对此不作限定。
S53:如果状态为稳定状态,响应于当前执行任务的流量传输速度大于初始流量参考速度,将初始流量参考速度提升差值的第三比例,并将提升后的流量参考速度确定为当前的流量参考速度;响应于当前执行任务的流量传输速度小于初始流量参考速度,将初始流量参考速度下降差值的第三比例,并将下降后的流量参考速度确定为当前的流量参考速度;其中,第三比例小于或等于第二比例。
本实施方式中,第三比例为10%或小于10%。
进一步地,进入稳定状态后,如果观察到短周期内的流量传输速度大于对应时刻的流量参考速度的120%,且长周期内的流量传输速度的平均值也大于流量参考速度的平均值的110%,则判断稳定状态由于实际流量传输速度提升过快而被打破,并重新进入观察状态。
其中,短周期指的是5s,长周期指的是30秒。
本实施方式中,只有流量传输速度在短周期与长周期内均以超出一定比例的数值大于流量参考速度,才会判定退出稳定状态。
进一步地,进入稳定状态后,如果观察到短周期内的流量传输速度小于对应时刻的流量参考速度的80%,且长周期内的流量传输速度的平均值也小于流量参考速度的平均值的90%,则判断稳定状态由于实际流量传输速度下降过快而被打破,并重新进入观察状态。
本实施方式中,当稳定状态被破坏后,直接取消对加速服务器的速度控制,待观察到流量参考速度进入稳定状态后,再采取控速措施对服务器的流量传输速度进行控制。
在其他实施方式中,若稳定状态是由速度上升所破坏,由于趋势是降低服务器速度,故认为上升主要来自于用户共享连接的潜力释放,可以采取慢速限制服务器的流量传输速度,待观察到实际流量传输速度仍提升后,再继续限制服务器的流量传输速度。
S12:将当前的流量参考速度与预设的多个速度区间进行匹配,确定当前的流量参考速度所属速度区间。
具体地,请参阅图8,图8是本申请划分多个速度区间的具体示意图。如图8所示,响应于当前的流量参考速度大于第一预设速度v1,将当前的流量参考速度划分至第一速度区间A;响应于当前的流量参考速度小于第一预设速度v1但大于第二预设速度v2,将当前的流量参考速度划分至第二速度区间B;响应于当前的流量参考速度小于第二预设速度v2但大于第三预设速度v3,将当前的流量参考速度划分至第三速度区间C;响应于当前的流量参考速度小于第三预设速度v3,将当前的流量参考速度划分至第四速度区间D。
其中,第一预设速度v1大于第二预设速度v2,第二预设速度v2大于第三预设速度v3。
本实施方式中,第一预设速度v1为实际传输流量速度的95%,第二预设速度v2为实际传输流量速度的88%,第三预设速度v3为实际传输流量速度的80%。
S13:根据所属速度区间对应的速度调整方式对服务器下一刻的流量传输速度进行调整。
响应于所属速度区间为第一速度区间A,以第一设定比例降低服务器的流量传输速度;响应于所属速度区间为第二速度区间B,保持服务器的流量传输速度;响应于所属速度区间为第三速度区间C,以第二设定比例提高服务器的流量传输速度;响应于所属速度区间为第四速度区间,取消对服务器的流量传输速度的限制。
其中,第一设定比例为1%,第二设定比例为1%。
在其他实施方式中,第一设定比例与第二设定比例还可以为其他数值,本申请对此不作限定。
本实施方式中,在流量参考速度偏高时,关闭一些客户端到服务器的连接,并锁定连接上限阻止新连接产生;在流量参考速度偏低时,放松客户端到服务器的连接,通过创建新连接提升服务器的流量传输速度。
本实施方式中,若所属速度区间为第一速度区间A,表明流量参考速度大于实际传输流量速度的95%,在此速度区间,客户端与服务器共同提供的带宽上限很大,能够保证用户的体验,在此基础上,由于客户端的提速潜力较大,以一定比例适当降低服务器的流量传输速度,不仅不会对实际流量传输速度造成影响,还能充分使用客户端资源,以降低服务器的服务成本。
本实施方式中,通过削减客户端到服务器的连接数量,以使服务器的流量传输速度按第一设定比例降低。
具体地,将客户端到服务器的全部连接按连接的当前时刻的流量传输速度进行排列,并按从低到高的排列顺序依次关闭连接,直至服务器的流量传输速度按第一设定比例降低。
例如,服务器的流量传输速度降低1%,如果服务器当前的流量传输速度为b,则下一刻服务器的流量传输速度为0.99b,差值额度为0.01b,则0.01b≤待关闭服务器连接1的流量传输速度+待关闭服务器连接2的流量传输速度+…+待关闭服务器连接n的流量传输速度;其中,待关闭服务器连接1的流量传输速度<待关闭服务器连接2的流量传输速度<…<待关闭服务器连接n的流量传输速度。
其中,如果当前受控的服务器连接数过多(>50),则额外再从低到高关闭一些特低速连接(速度<10KB/s),关闭的个数上限为受控服务器连接数的十二分之一。
本实施方式中,若所属速度区间为第二速度区间B,表明流量参考速度为实际传输流量速度的88%~95%,在此速度区间,客户端与服务器共同提供的带宽上限较大,能够保证用户的体验,在此基础上,只用观察流量参考速度的变化,不用调整服务器的流量传输速度。
本实施方式中,若所属速度区间为第三速度区间C,表明流量参考速度为实际传输流量速度的80%~88%,在此速度区间,客户端与服务器共同提供的带宽上限较小,无法保证用户的体验,在此基础上,需要以第二设定比例提高服务器的流量传输速度,才能使带宽满足用户的上网需求。
本实施方式中,通过增加客户端到服务器的连接数量,以使服务器的流量传输速度按第二设定比例提高。
具体地,获取目标速度与当前服务器的流量传输速度的差值,如果差值大于3倍服务器连接均速,则增加1个连接,剩余差值里每大于500k再增加1个连接限制,直至开满最大连接数。
其中,服务器连接均速指的是服务器提供的总流量传输速度与总连接数的比值。例如,如果客户端到服务器一共只有5条连接,且服务器的总流量传输速度为c,则服务器连接均速为c/5。
本实施方式中,若所属速度区间为第四速度区间,表明流量参考速度小于实际传输流量速度的80%,在此速度区间,客户端与服务器共同提供的带宽上限很小,完全无法保证用户的体验,在此基础上,必须取消对服务器的流量传输速度的限制,直接增加客户端到服务器的连接数量至最大连接数。
在其他实施方式中,可以基于tcp(Transmission Control Protocol,传输控制协议)接收控制的办法,将受控连接归集,整体控制客户端的接收行为,以使服务器的流量传输速度趋近目标值。其中,整体控制客户端的接收行为指的是服务器发送全部数据,但控制客户端只接收其中的一部分,剩余的数据存储在协议站。
在其他实施方式中,还可以自主设定配额,控制连接内数据请求的长度,来使服务器的流量传输速度趋近目标值。其中,控制连接内数据请求的长度指的是客户端基于配额向服务器请求一部分数据,服务器根据请求只发送对应的数据。
进一步地,如果客户端的实际传输流量速度主要靠服务器提供,例如,实际传输流量速度的80%都是靠服务器的流量传输速度提供的,可以判定除服务器连接之外的流量资源很少,客户端基本没有提速潜力,则本申请控制方法的逻辑不执行。
进一步地,本申请还设置了流量参考速度的保底速度,如果实际流量传输速度低于保底速度或低于设定比例的保底速度,判断客户端基本没有提速潜力,则本申请控制方法的逻辑不执行。
例如,本申请将流量参考速度的保底速度设置为800KB/s,如果实际流量传输速度低于800KB/s或低于720KB/s(低于90%的保底速度),本申请控制方法的逻辑不执行。
区别于现有技术,本实施方式通过观察初始流量参考速度的状态,并在此状态下,基于初始流量参考速度与客户端当前执行任务的流量传输速度的比较结果,对初始流量参考速度进行调整,获取到客户端当前的流量参考速度,并基于当前的流量参考速度对服务器的流量传输速度进行控制,在流量参考速度较大时,以一定比例适当降低服务器的流量传输速度,不仅能够充分释放客户端的提速潜力和使用客户端资源,还能降低服务器的运营成本。
对应地,本申请提供一种流量传输速度的控制装置。
请参阅图9,图9是本申请流量传输速度的控制装置一实施方式的结构示意图。如图9所示,本实施方式中,控制装置90包括存储器91以及处理器92。
本实施方式中,存储器91用于存储程序数据,程序数据被执行时可实现如上述任一方法实施例里控制装置90对应的流量传输速度的控制方法中的步骤;处理器92用于执行存储器91存储的程序指令以实现如上述任一方法实施例里控制装置90对应的流量传输速度的控制方法中的步骤。
具体而言,处理器92用于控制其自身以及存储器91以实现上述任一流量传输速度的控制方法实施例中的步骤。处理器92还可以称为CPU(Central Processing Unit,中央处理单元)。处理器92可能是一种集成电路芯片,具有信号的处理能力。处理器92还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器92可以由多个集成电路芯片共同实现。
区别于现有技术,本实施方式通过观察初始流量参考速度的状态,并在此状态下,基于初始流量参考速度与客户端当前执行任务的流量传输速度的比较结果,对初始流量参考速度进行调整,获取到客户端当前的流量参考速度,并基于当前的流量参考速度对服务器的流量传输速度进行控制,在流量参考速度较大时,以一定比例适当降低服务器的流量传输速度,不仅能够充分释放客户端的提速潜力和使用客户端资源,还能降低服务器的运营成本。
对应地,本申请提供一种计算机可读存储介质。
请参阅图10,图10是本申请计算机可读存储介质一实施方式的结构示意图。
计算机可读存储介质100包括计算机可读存储介质100上存储的计算机程序1001,计算机程序1001被上述处理器执行时实现上述任一方法实施例中的步骤或者上述方法实施例中相关装置对应执行的步骤。
具体地,集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质100中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质100中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的计算机可读存储介质100包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (11)
1.一种流量传输速度的控制方法,其特征在于,包括:
基于客户端与服务器历史设定时长执行任务的流量传输速度,以及所述客户端与所述服务器当前执行所述任务的流量传输速度确定当前的流量参考速度;
将所述当前的流量参考速度与预设的多个速度区间进行匹配,确定所述当前的流量参考速度所属速度区间;
根据所述所属速度区间对应的速度调整方式对所述服务器下一刻的流量传输速度进行调整。
2.根据权利要求1所述的控制方法,其特征在于,所述基于客户端与服务器历史设定时长执行任务的流量传输速度,以及所述客户端与所述服务器当前执行所述任务的流量传输速度确定当前的流量参考速度的步骤,包括:
基于所述客户端与服务器历史设定时长执行任务的流量传输速度确定初始流量参考速度;
将所述初始流量参考速度与所述初始流量参考速度之前的流量参考速度进行比较;
利用比较结果,以及所述当前执行所述任务的流量传输速度对所述初始流量参考速度进行调整,并将调整后的速度确定为所述当前的流量参考速度。
3.根据权利要求2所述的控制方法,其特征在于,所述利用比较结果,以及所述当前执行所述任务的流量传输速度对所述初始流量参考速度进行调整,并将调整后的速度确定为所述当前的流量参考速度的步骤,包括:
利用所述比较结果确定所述初始流量参考速度的状态;其中,所述状态包括稳定状态以及观察状态;
基于所述初始流量参考速度的状态确定所述下一刻流量参考速度的调整方式;
利用所述调整方式对所述初始流量参考速度进行调整,得到所述当前的流量参考速度。
4.根据权利要求3所述的控制方法,其特征在于,所述利用所述比较结果确定所述初始流量参考速度的状态的步骤,包括:
判断所述初始流量参考速度之前的流量参考速度的数量是否达到预设数量;
如果所述数量未达到所述预设数量,确定所述状态为所述观察状态;
如果所述数量达到所述预设数量,响应于所述初始流量参考速度与其前一刻的流量参考速度的差值小于预设值,且所述初始流量参考速度和预设数量中的第一个流量参考速度的平均值,与所述预设数量中的第一个流量参考速度的差值小于所述预设值,确定所述状态为所述稳定状态;
如果所述数量达到所述预设数量,响应于所述初始流量参考速度与其前一刻的所述流量参考速度的差值不小于预设值,或/和所述初始流量参考速度和所述预设数量中的第一个流量参考速度的平均值,与所述预设数量中的第一个流量参考速度的差值不小于所述预设值,确定所述状态为所述观察状态。
5.根据权利要求4所述的控制方法,其特征在于,所述判断所述初始流量参考速度之前的流量参考速度的数量是否达到预设数量的步骤之前,包括:
响应于所述初始流量参考速度与其前一刻的所述流量参考速度的差值不小于所述预设值,舍弃掉所述初始流量参考速度之前的流量参考速度,将所述初始流量参考速度确定为首个流量参考速度。
6.根据权利要求3所述的控制方法,其特征在于,所述利用所述调整方式对所述初始流量参考速度进行调整,得到所述当前的流量参考速度的步骤,包括:
获取所述当前执行所述任务的流量传输速度与所述初始流量参考速度的差值;
如果所述状态为所述观察状态,响应于所述当前执行所述任务的流量传输速度大于所述初始流量参考速度,将所述初始流量参考速度提升所述差值的第一比例,并将提升后的流量参考速度确定为所述当前的流量参考速度;响应于所述当前执行所述任务的流量传输速度小于所述初始流量参考速度,将所述初始流量参考速度下降所述差值的第二比例,并将下降后的流量参考速度确定为所述当前的流量参考速度;其中,所述第一比例大于所述第二比例;
如果所述状态为所述稳定状态,响应于所述当前执行所述任务的流量传输速度大于所述初始流量参考速度,将所述初始流量参考速度提升所述差值的第三比例,并将提升后的流量参考速度确定为所述当前的流量参考速度;响应于所述当前执行所述任务的流量传输速度小于所述初始流量参考速度,将所述初始流量参考速度下降所述差值的所述第三比例,并将下降后的流量参考速度确定为所述当前的流量参考速度;
其中,所述第三比例小于或等于所述第二比例。
7.根据权利要求1所述的控制方法,其特征在于,所述将所述当前的流量参考速度与预设的多个速度区间进行匹配,确定所述当前的流量参考速度所属速度区间的步骤,包括:
响应于所述当前的流量参考速度大于第一预设速度,将所述当前的流量参考速度划分至第一速度区间;
响应于所述当前的流量参考速度小于所述第一预设速度但大于第二预设速度,将所述当前的流量参考速度划分至第二速度区间;
响应于所述当前的流量参考速度小于所述第二预设速度但大于第三预设速度,将所述当前的流量参考速度划分至第三速度区间;
响应于所述当前的流量参考速度小于所述第三预设速度,将所述当前的流量参考速度划分至第四速度区间。
8.根据权利要求7所述的控制方法,其特征在于,所述根据所述所属速度区间对应的速度调整方式对所述服务器下一刻的流量传输速度进行调整的步骤,包括:
响应于所述所属速度区间为所述第一速度区间,以第一设定比例降低所述服务器的流量传输速度;
响应于所述所属速度区间为所述第二速度区间,保持所述服务器的流量传输速度;
响应于所述所属速度区间为所述第三速度区间,以第二设定比例提高所述服务器的流量传输速度;
响应于所述所属速度区间为所述第四速度区间,取消对所述服务器的流量传输速度的限制。
9.根据权利要求8所述的控制方法,其特征在于,所述响应于所述所属速度区间为所述第一速度区间,以第一设定比例降低所述服务器的流量传输速度的步骤,包括:
削减所述客户端到所述服务器的连接数量,以使所述服务器的流量传输速度按所述第一设定比例降低;
所述响应于所述所属速度区间为所述第三速度区间,以第二设定比例提高所述服务器的流量传输速度的步骤,包括:
增加所述客户端到所述服务器的连接数量,以使所述服务器的流量传输速度按所述第二设定比例提高;
所述响应于所述所属速度区间为所述第四速度区间,取消对所述服务器的流量传输速度的限制的步骤,包括:
增加所述客户端到所述服务器的连接数量至最大连接数。
10.一种流量传输速度的控制装置,其特征在于,包括:
存储器,用于存储程序数据,所述存储程序数据被执行时实现如权利要求1~9任一项所述的流量传输速度的控制方法中的步骤;
处理器,用于执行所述存储器存储的程序指令以实现如权利要求1~9任一项所述的流量传输速度的控制方法中的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1~9任一项所述的流量传输速度的控制方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110296748.0A CN113194042B (zh) | 2021-03-19 | 2021-03-19 | 一种流量传输速度的控制方法、装置以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110296748.0A CN113194042B (zh) | 2021-03-19 | 2021-03-19 | 一种流量传输速度的控制方法、装置以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113194042A true CN113194042A (zh) | 2021-07-30 |
CN113194042B CN113194042B (zh) | 2023-02-21 |
Family
ID=76973494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110296748.0A Active CN113194042B (zh) | 2021-03-19 | 2021-03-19 | 一种流量传输速度的控制方法、装置以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113194042B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050055456A1 (en) * | 2003-09-04 | 2005-03-10 | Intel Corporation | Method, system, and program for managing a speed at which data is transmitted between network adaptors |
US20190313136A1 (en) * | 2016-06-12 | 2019-10-10 | Hangzhou Hikvision Digital Technology Co., Ltd. | Video Playback Method and Apparatus |
CN110401511A (zh) * | 2019-07-25 | 2019-11-01 | 广州市百果园信息技术有限公司 | 一种传输速率的确定方法、装置、设备和存储介质 |
CN110708747A (zh) * | 2019-09-18 | 2020-01-17 | Tcl移动通信科技(宁波)有限公司 | 数据传输速率调整方法、***、存储介质及移动终端 |
CN111314237A (zh) * | 2020-01-17 | 2020-06-19 | 深信服科技股份有限公司 | 数据包传输速率的调整方法、装置、设备及可读存储介质 |
CN111432247A (zh) * | 2020-03-19 | 2020-07-17 | 平安科技(深圳)有限公司 | 流量调度方法、装置、服务器及存储介质 |
-
2021
- 2021-03-19 CN CN202110296748.0A patent/CN113194042B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050055456A1 (en) * | 2003-09-04 | 2005-03-10 | Intel Corporation | Method, system, and program for managing a speed at which data is transmitted between network adaptors |
US20190313136A1 (en) * | 2016-06-12 | 2019-10-10 | Hangzhou Hikvision Digital Technology Co., Ltd. | Video Playback Method and Apparatus |
CN110401511A (zh) * | 2019-07-25 | 2019-11-01 | 广州市百果园信息技术有限公司 | 一种传输速率的确定方法、装置、设备和存储介质 |
WO2021012869A1 (zh) * | 2019-07-25 | 2021-01-28 | 广州市百果园信息技术有限公司 | 传输速率的确定方法、装置、设备和存储介质 |
CN110708747A (zh) * | 2019-09-18 | 2020-01-17 | Tcl移动通信科技(宁波)有限公司 | 数据传输速率调整方法、***、存储介质及移动终端 |
CN111314237A (zh) * | 2020-01-17 | 2020-06-19 | 深信服科技股份有限公司 | 数据包传输速率的调整方法、装置、设备及可读存储介质 |
CN111432247A (zh) * | 2020-03-19 | 2020-07-17 | 平安科技(深圳)有限公司 | 流量调度方法、装置、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113194042B (zh) | 2023-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10666535B2 (en) | Systems and methods for dynamically setting a rate limit for a computing device | |
US8341283B2 (en) | Method and system for peer-to-peer content dissemination | |
US7280477B2 (en) | Token-based active queue management | |
EP3547625B1 (en) | Method and system for sending request for acquiring data resource | |
US20100271947A1 (en) | Adaptive rate control based on overload signals | |
CN110138756B (zh) | 一种限流方法及*** | |
CN109660467B (zh) | 用于控制流量的方法和装置 | |
WO2018112877A1 (zh) | 路径计算和访问请求分发方法、装置及*** | |
JP2015510740A (ja) | ネットワークトラフィックにおける到着間遅延の低減 | |
CN107682279B (zh) | 一种时延控制方法、装置及存储介质、程序产品 | |
EP4309409A1 (en) | Methods, systems, and computer readable media for hypertext transfer protocol (http) stream tuning for load and overload control | |
CN107920108A (zh) | 一种媒体资源的推送方法、客户端及服务器 | |
CN113194042B (zh) | 一种流量传输速度的控制方法、装置以及存储介质 | |
US20180167431A1 (en) | Client-side ack regulation based adaptive streaming method and apparatus | |
CN114024913B (zh) | 一种网络性能优化方法、装置、设备以及存储介质 | |
CN112350954B (zh) | 过载保护方法、***、计算机可读存储介质及电子设备 | |
CN112380011A (zh) | 一种服务容量的动态调整方法及装置 | |
JP2001202318A (ja) | データ配信システム | |
US10154414B2 (en) | Resource allocation | |
Dimitriou et al. | Promoting effective service differentiation with Size-oriented Queue Management | |
Gupta et al. | Trust estimation in peer-to-peer network using blue | |
CN114337916A (zh) | 一种网络传输速率调整方法、装置、设备及存储介质 | |
US20050223056A1 (en) | Method and system for controlling dataflow to a central system from distributed systems | |
Efraimidis et al. | Window-games between TCP flows | |
US20240064102A1 (en) | Packet processing device and packet processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |