CN111669340A - 发送带宽控制方法、装置、网络设备及可读存储介质 - Google Patents
发送带宽控制方法、装置、网络设备及可读存储介质 Download PDFInfo
- Publication number
- CN111669340A CN111669340A CN202010636503.3A CN202010636503A CN111669340A CN 111669340 A CN111669340 A CN 111669340A CN 202010636503 A CN202010636503 A CN 202010636503A CN 111669340 A CN111669340 A CN 111669340A
- Authority
- CN
- China
- Prior art keywords
- packet loss
- maximum instantaneous
- loss rate
- loss rates
- rates
- 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/70—Admission control; Resource allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种发送带宽控制方法、装置、网络设备及可读存储介质,涉及通信领域。首先在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,第二数量小于第一数量。然后根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。最后根据参考丢包率控制发送带宽。由此,在保持可对网络恶化进行及时响应的基础上,对网络恢复进行慢响应,避免在网络忽好忽差的情况下频繁对发送带宽进行调整,进而导致出现发送流量波动大的情况。
Description
技术领域
本申请涉及通信技术领域,具体而言,涉及一种发送带宽控制方法、装置、网络设备及可读存储介质。
背景技术
网络丢包率是反应网络状态的主要指标之一。网络丢包率是数据包丢失部分与所传数据包总数的比值。丢包率越高,网络越差;丢包率越低,网络越好。
在网络忽好忽差的情况下,网络丢包率变化就会比较频繁,且变化幅度较大。现有控制方式是在每确定一个最新的网络丢包率后,就根据该最新的网络丢包率对发送策略频繁调整。在网络丢包率变化频繁且变化幅度较大的情况下,现有控制方式会导致发送流量波动比较大。
发明内容
有鉴于此,本申请的目的在于提供一种发送带宽控制方法、装置、网络设备及可读存储介质,其能够避免在网络忽好忽差的情况下频繁对发送带宽进行调整,进而导致出现发送流量波动较大的情况。
为了实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供一种发送带宽控制方法,所述方法包括:
在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,所述第二数量小于所述第一数量;
根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
根据所述参考丢包率控制发送带宽。
在可选的实施方式中,所述根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率,包括:
计算所述得到的第二数量个最大瞬时丢包率的平均值,将所述平均值作为所述参考丢包率;或者,
根据所述得到的第二数量个最大瞬时丢包率中每个最大瞬时丢包率以及每个最大瞬时丢包率对应的权重,计算得到所述参考丢包率,其中,所述每个最大瞬时丢包率对应的权重与该最大瞬时丢包率对应的时刻相关。
在可选的实施方式中,在所述根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率之前,所述方法还包括:
判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,则执行根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,则将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,并执行根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤,其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
在可选的实施方式中,所述将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,包括:
根据所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率,将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
在可选的实施方式中,所述方法还包括:
在获得新的瞬时丢包率时,以先进先出的方式,将新的瞬时丢包率更新至所述预设时长所对应的第一数量个瞬时丢包率中。
在可选的实施方式中,所述预设时长所对应的第一数量个瞬时丢包率初始时均为0。
第二方面,本申请实施例提供一种发送带宽控制装置,所述装置包括:
筛选模块,用于在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,所述第二数量小于所述第一数量;
处理模块,用于根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
控制模块,用于根据所述参考丢包率控制发送带宽。
在可选的实施方式中,所述处理模块,还用于判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,所述处理模块则根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,所述处理模块则将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,并根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤,其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
第三方面,本申请实施例提供一种网络设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式中任意一项所述的发送带宽控制方法。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任意一项所述的发送带宽控制方法。
本申请实施例提供的发送带宽控制方法、装置、网络设备及可读存储介质,首先在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,第二数量小于第一数量。然后根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。最后根据参考丢包率控制发送带宽。由此,在保持可对网络恶化进行及时响应的基础上,对网络恢复进行慢响应,避免在网络忽好忽差的情况下由于频繁根据一个最新的瞬时丢包率对发送带宽进行调整而导致的发送流量波动大的情况。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例提供的网络设备的方框示意图;
图2是本申请实施例提供的发送带宽控制方法的流程示意图之一;
图3是本申请实施例提供的发送带宽控制方法的流程示意图之二;
图4是本申请实施例提供的发送带宽控制装置的方框示意图。
图标:100-网络设备;110-存储器;120-处理器;130-通信单元;200-发送带宽控制装置;210-筛选模块;220-处理模块;230-控制模块。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
在互联网时代,在各种应用场景(比如,远程会议、远程教育、远程监控及远程指挥等)中,网络设备都会通过发送数据以与其他设备进行通信。但是,在广域网络中,网络的不稳定性时有发生。当网络出现异常时,需要采用一定手段保证网络数据的正常收发。其中,常用的方法就是根据获得的瞬时网络丢包率调整数据发送端的发送带宽。
丢包率是反应网络状态的主要指标之一。丢包率是数据包丢失部分与所传数据包总数的比值。丢包率是网络瞬时状态指标之一,丢包率越高,网络越差;丢包率越低,网络越好。但是,对于现有的流控系统来说,丢包率是流控系统的主要输入指标之一,流控系统的发送端需要根据丢包率控制发送端发送的冗余数据量大小,以便让接收端收到足够的数据包。当丢包率升高时,发送端需要发送更多的冗余包对抗网络的丢包;当网络丢包率降低时,发送端需要减少冗余包的发送。
当丢包率变化比较频繁,在直接根据一个最新的原始丢包率进行发送带宽的控制时,由于丢包率瞬时变化的频率过快,会导致发送端的控制系统频繁运作,频繁调整发送带宽,而调整前后的发送带宽变化大,由此使得发送流量波动比较大。在发送流量波动大时,发送端发送的数据易被防火墙等设备认为是非正常数据,从而易造成发送端发送的数据被防火墙等设备丢弃,进而导致丢包率进一步升高,影响用户体验。
为了解决上述技术问题,本申请提供以下解决方案:
在预设时长所对应的多个瞬时丢包率中选出若干个最大瞬时丢包率,然后通过对得到的若干个最大瞬时丢包率的处理得到一个参考丢包率,最后根据该参考丢包率对发送带宽进行控制。由此,避免根据一个最新的瞬时丢包率对发送带宽进行调整,而是根据对若干个最大瞬时丢包率处理后的参考丢包率对发送带宽进行调整,从而在保持可对网络恶化进行及时响应的基础上,对网络恢复进行慢响应,避免在网络忽好忽差的情况下频繁对发送带宽进行大幅度调整,导致出现发送流量波动大的情况,进而避免基于调整后的发送带宽发送的数据由于被防火墙等设备认为是非正常数据而丢弃。
请参照图1,图1是本申请实施例提供的网络设备100的方框示意图。所述网络设备100可以是,但不限于,服务器。所述网络设备100可以包括存储器110、处理器120及通信单元130。所述存储器110、处理器120以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。比如,存储器110中存储有发送带宽控制装置200,所述发送带宽控制装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块。所述处理器120通过运行存储在存储器110内的软件程序以及模块,如本申请实施例中的发送带宽控制装置200,从而执行各种功能应用以及数据处理,即实现本申请实施例中的发送带宽控制方法。
通信单元130用于通过网络建立所述网络设备100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
应当理解的是,图1所示的结构仅为网络设备100的结构示意图,所述网络设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
请参照图2,图2是本申请实施例提供的发送带宽控制方法的流程示意图之一。所述方法应用于网络设备100。下面对发送带宽控制方法的具体流程进行详细阐述。
步骤S110,在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率。
步骤S120,根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。
步骤S130,根据所述参考丢包率控制发送带宽。
在本实施例中,所述网络设备100中可存储有预设时长所对应的第一数量个瞬时丢包率。可将第一数量个瞬时丢包率两两进行比较,从而选出第二数量个最大瞬时丢包率。其中,所述第二数量小于所述第一数量。所述第一数量及第二数量的具体值可以根据实际需求设置。
比如,假设第一数量为18,第二数量为5,通过上述步骤S110则是从18个瞬时丢包率中选出5个最大瞬时丢包率。选出的5个最大瞬时丢包率,为将该18个瞬时丢包率按照从大到小的顺序进行排序得到的排序结果中的前5个。
然后基于得到的第二数量个最大瞬时丢包率,计算得到一个参考丢包率。也就是说,该参考丢包率是对所述第一数量个瞬时丢包率进行处理后得到的。最后则根据该参考丢包率对发送带宽进行控制。
本申请实施例从第一数量个瞬时丢包率中选出第二数量个最大瞬时丢包率,然后通过对得到的第二数量个瞬时丢包率进行处理,得到参考丢包率。该参考丢包率可以反映网络恶化的状态。当根据参考丢包率确定网络差或网络恢复时,可对发送带宽进行对应的调整,以保证与网络设备通信的另一端能够接收到足够的数据包。由此可知,本申请是根据第一数量个瞬时丢包率中的第二数量个最大瞬时丢包率对发送带宽进行控制,而不是只根据一个最新的瞬时丢包率对发送带宽进行控制,该方式可以避免在网络忽好忽差的情况下由于频繁调整发送带宽且调整前后的发送带宽变化大,而出现发送流量波动大的情况。
可选地,在本实施例中,所述预设时长与对网络恢复响应的时长相关。所述预设时长越长,对网络恢复响应的时间就越长;所述预设时长越短,对网络恢复响应的时间就越短。所述预设时长可以根据实际需求进行设置。
所述第一数量与该预设时长相关。比如,若瞬时丢包率的更新频率是1s/个,所述预设时长为16s,则预设时长所对应的第一数量个瞬时丢包率,即为16个瞬时丢包率。可选地,在一种实施方式中,所述第一数量的具体值所在范围为8~64。
可选地,所述预设时长所对应的第一数量个瞬时丢包率,为距离当前预设时长内的第一数量个瞬时丢包率。比如,若第一数量为16,则预设时长所对应的第一数量个瞬时丢包率即为当前之前的16个瞬时丢包率。作为一种实施方式,可以设置一平滑窗口,该平滑窗口用于存储所述预设时长所对应的第一数量个瞬时丢包率,后续可基于该平滑窗口对发送带宽进行控制。
所述第二数量与对网络恶化响应的时长相关。所述第二数量越大,对网络恶化响应的时间就越长;所述第二数量越小,对网络恶化响应的时间就越短。该第二数量的具体值可以根据实际需求进行设置,比如,设置为2。
在筛选瞬时丢包率时,可以以任意方式从第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率。本实施例对具体选择方式不进行限定,只要能实现上述目的即可。
可选地,作为一种实施方式,可以通过一次循环遍历算法对所述第一数量个瞬时丢包率进行遍历,从而选出第二数量个最大瞬时丢包率。
下面以2作为第二数量为例,对上述筛选过程进行举例说明。
LostMax1和LostMax2是第一数量个瞬时丢包率中两个最大的丢包率数据。通过一次循环遍历算法遍历第一数量个瞬时丢包率。对于第一数量个瞬时丢包率中的每个瞬时丢包率,大于LostMax1和LostMax2的丢包率数据更新到LostMax1,小于LostMax1且大于LostMax2的丢包率数据更新到LostMax2中。遍历完成后,即可确定LostMax1和LostMax2的具体值。
在得到第二数量个最大瞬时丢包率后,可对得到的第二数量个最大瞬时丢包率进行合理有效的处理,以得到一个参考丢包率。
可选地,在本实施的一种实施方式中,可以计算所述得到的第二数量个最大瞬时丢包率的平均值,并将该平均值作为所述参考丢包率。
可选地,在本实施例中的另一种实施方式中,可以根据所述得到的第二数量个最大瞬时丢包率中每个最大瞬时丢包率以及每个最大瞬时丢包率对应的权重,通过加权求和,计算得到所述参考丢包率。
其中,所述每个最大瞬时丢包率对应的权重与该最大瞬时丢包率对应的时刻相关。可选地,瞬时丢包率对应的时刻距离当前时刻越近,该瞬时丢包率对应的权重越大。
上述方式计算得到的参考丢包率,可以反应预设时长内恶劣的网络情况,同时由于进行了算数平均或加权处理,削弱了瞬时丢包率对系统整体的影响。由此,在后续基于该参考丢包率对发送带宽进行控制时,可以保证对网络恶化的及时响应,同时对网络恢复进行慢响应,从而避免出现发送流量波动大的情况。
可选地,当将第二数量设置为2,在保证对网络恢复进行慢响应,从而避免出现发送流量波动大的基础上,可进一步提高对网络恶化的响应速度。
比如,第一数量为16,第二数量为2,瞬时丢包率的更新频率是1s/个。那么,对网络变差的响应时间就是1秒钟。如果一段时间后,网络开始恢复,那么将延迟16s对网络恢复的状态进行响应,从而避免网络状态反复导致发送的数据量不平滑。
可选地,所述得到的第二数量个最大瞬时丢包率即为选出的第二数量个最大瞬时丢包率。
可选地,所述得到的第二数量个最大瞬时丢包率是根据选出的第二数量个最大瞬时丢包率确定得到的。请参照图3,图3是本申请实施例提供的发送带宽控制方法的流程示意图之二。在步骤S120之前,所述方法还可以包括步骤S140及步骤S150。
步骤S140,判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0。
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,则直接执行步骤S120。
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,则执行步骤S150。
步骤S150,将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
在步骤S150之后,执行步骤S120:根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
在本实施例中,在从第一数量个瞬时丢包率中选出第二数量个最大瞬时丢包率后,可首先判断选出的第二数量个最大瞬时丢包率中的所有最大瞬时丢包率是否均为0或者均为非0。比如,假设选出了5个最大瞬时丢包率,判断这5个最大瞬时丢包率是否均为0或者非0。
若均为0,表示所述预设时长内网络状态都比较好。在此情况下,可不对选出的第二数量个最大瞬时丢包率作任何处理,直接将选出的第二数量个最大瞬时丢包率作为所述得到的第二数量个最大瞬时丢包率,然后基于所述得到的第二数量个最大瞬时丢包率计算得到参考丢包率。
若均为非0,表示所述预设时长内网络状态不佳。在此情况下,也可不对选出的第二数量个最大瞬时丢包率作任何处理,直接将选出的第二数量个最大瞬时丢包率作为所述得到的第二数量个最大瞬时丢包率,然后基于所述得到的第二数量个最大瞬时丢包率计算得到参考丢包率。
若不是均为0或非0,即,选出的第二数量个最大瞬时丢包率中包括为0的最大瞬时丢包率以及非0的最大瞬时丢包率,表示所述预设时长内的网络状态不能完全确定,即网络状态是混淆的,不确定网络状态是好还是不好。在此情况下,若直接根据选出的第二数量个最大瞬时丢包率计算参考丢包率,进而根据计算出的参考丢包率对发送带宽进行控制,则可能会导致与该网络设备100对应的接收端不能接收到足够的数据包。因此,在计算参考丢包率之前,将选出的第二数量个最大瞬时丢包率中为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,在此之后,再根据得到的第二数量个最大瞬时丢包率计算参考丢包率,由此,可以保证所述得到的第二数量个最大瞬时丢包率要么全为0,要么全为非0,进而可以保证在基于计算得到的参考丢包率控制发送带宽时,接收端能接收到足够的数据包。其中,所述得到的第二数量个最大瞬时丢包率包括选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率以及对所述选出的第二数量个最大瞬时丢包率中为0的最大瞬时丢包率处理后得到的非0的最大瞬时丢包率。
可选地,在将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率时,可通过如下方式实现:根据所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率,将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
可选地,可以将所述非0的最大瞬时丢包率,处理为所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率之中的最大值。比如,选出了两个最大瞬时丢包率:a、b,其中,a不为0,b等于0,则令b=a,由此使得用于计算参考丢包率的所述得到的第二个数量个最大瞬时丢包率,为两个a。
或者,将所述非0的最大瞬时丢包率,处理为所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率之中的最小值。或者,将所述非0的最大瞬时丢包率,处理为所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率中某几个最大瞬时丢包率的平均值。当然可以理解的是,上述方式仅为举例说明,也可以采用其他方式将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
可选地,在本实施例中,在获得新的瞬时丢包率时,可以以先进先出的方式,将新的瞬时丢包率更新至所述预设时长所对应的第一数量个瞬时丢包率中。
比如,假设预设时长所对应的第一数量个瞬时丢包率,是16个瞬时丢包率;并且在获得一个新的瞬时丢包率之前,该16个瞬时丢包率为:{Lost1,Lost2,Lost3,Lost4,……,Lost16}。在接收到一个新的瞬时丢包率Lost17后,则以先进先出的方式对所述预设时长所对应的第一数量个瞬时丢包率进行更新,从而得到更新后的第一数量个瞬时丢包率:{Lost2,Lost3,Lost4,……,Lost16,Lost17}。
可选地,在本实施例的一种实施方式中,所述网络设备100在通过计算或接收其他设备发送结果等方式下获得第一数量个瞬时丢包率后,根据该第一数量个瞬时丢包率确定出参考丢包率,进而根据参考丢包率控制发送带框。也就是说,在之前上述步骤S110之前,需要提前获得第一数量个真实的瞬时丢包率作为所述第一数量个瞬时丢包率。
可选地,在本实施例的另一种实施方式中,所述预设时长所对应的第一数量个瞬时丢包率初始时均为0。在此情况下,可直接开始执行上述步骤S110。在通过计算或接收其他设备发送结果等方式获得新的瞬时丢包率后,以先进先出的方式,将该瞬时丢包率更新至所述第一数量个瞬时丢包率中。比如,初始时,所述第一数量个瞬时丢包率为:{0,0,0,0,……,0,0},基于此第一数量个瞬时丢包率进行发送带宽的控制;在接收到新的瞬时丢包率Lost1时,则通过更新得到的第一数量个瞬时丢包率为:{0,0,0,0,……,0,Lost1},再基于此第一数量个瞬时丢包率进行发送带宽的控制。
可选地,在本实施例的另一种实施方式中,可在通过计算或接收其他设备发送结果等方式下获得第二数量个瞬时丢包率后,开始执行上述步骤S110。即,不需要等待所述预设时长以获得第一数量个真实的瞬时丢包率,而是仅等待第二数量个瞬时丢包率对应的时长后,即开始执行步骤S110,此时,所述第一数量个瞬时丢包率可以包括经计算或接收其他设备发送结果等方式下获得的第二数量个瞬时丢包率以及若干个设置为0的瞬时丢包率。其中,若干个设置为0的瞬时丢包率的数量与第二数量之和为所述第一数量。由此,可避免由于等待预设时长以获得第一数量个真实的瞬时丢包率,而造成预设时长的延迟,该延迟会导致对网络质量变差的响应速度大大降低,对保证网络设备100的发送质量非常不利,容易造成接收端长时间丢包。
本申请实施例从第一数量个瞬时丢包率中选出第二数量个最大瞬时丢包率,然后根据得到的第二数量个瞬时丢包率计算出参考丢包率,最后根据参考丢包率控制发送带宽。由此,避免直接采用实时的瞬时丢包率进行发送带宽的控制,从而造成发送流量忽大忽小的情况。通过以上控制方式,可以保证既能快速响应网络恶化的事件,又可以慢响应网络恢复的过程,不论网络处于何种状态,均可保证网络设备100的发送质量处于较高的水平,即保证网络设备100的发送质量平稳可靠,从而保证接收端能够连续不断的收到可用数据,提高用户体验。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种发送带宽控制装置200的实现方式,可选地,该发送带宽控制装置200可以采用上述图1所示的网络设备100的器件结构。进一步地,请参阅图4,图4是本申请实施例提供的发送带宽控制装置200的方框示意图。需要说明的是,本实施例所提供的发送带宽控制装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该发送带宽控制装置200可以包括:筛选模块210、处理模块220及控制模块230。
所述筛选模块210,用于在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率。其中,所述第二数量小于所述第一数量。
所述处理模块220,用于根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。
所述控制模块230,用于根据所述参考丢包率控制发送带宽。
可选地,在本实施例中,所述处理模块220具体用于:计算所述得到的第二数量个最大瞬时丢包率的平均值,将所述平均值作为所述参考丢包率;或者,根据所述得到的第二数量个最大瞬时丢包率中每个最大瞬时丢包率以及每个最大瞬时丢包率对应的权重,计算得到所述参考丢包率,其中,所述每个最大瞬时丢包率对应的权重与该最大瞬时丢包率对应的时刻相关。
可选地,在本实施例中,所述处理模块220,还用于判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0;若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,所述处理模块220则根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,所述处理模块220则将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,并根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤,其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
可选地,在本实施例中,所述处理模块220将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率的方式包括:根据所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率,将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
可选地,上述模块可以软件或固件(Firmware)的形式存储于图1所示的存储器110中或固化于该网络设备100的操作系统(Operating System,OS)中,并可由图1中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
本申请实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的发送带宽控制方法。
综上所述,本申请实施例提供一种发送带宽控制方法、装置、网络设备及可读存储介质。首先在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,第二数量小于第一数量。然后根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率。最后根据参考丢包率控制发送带宽。由此,在保持可对网络恶化进行及时响应的基础上,对网络恢复进行慢响应,避免在网络忽好忽差的情况下由于频繁根据一个最新的瞬时丢包率对发送带宽进行调整而导致的发送流量波动大的情况。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种发送带宽控制方法,其特征在于,所述方法包括:
在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,所述第二数量小于所述第一数量;
根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
根据所述参考丢包率控制发送带宽。
2.根据权利要求1所述的方法,其特征在于,所述根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率,包括:
计算所述得到的第二数量个最大瞬时丢包率的平均值,将所述平均值作为所述参考丢包率;或者,
根据所述得到的第二数量个最大瞬时丢包率中每个最大瞬时丢包率以及每个最大瞬时丢包率对应的权重,计算得到所述参考丢包率,其中,所述每个最大瞬时丢包率对应的权重与该最大瞬时丢包率对应的时刻相关。
3.根据权利要求1所述的方法,其特征在于,在所述根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率之前,所述方法还包括:
判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,则执行根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,则将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,并执行根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤,其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
4.根据权利要求3所述的方法,其特征在于,所述将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,包括:
根据所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率,将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率。
5.根据权利要求1-4中任意一项所述的方法,其特征在于,所述方法还包括:
在获得新的瞬时丢包率时,以先进先出的方式,将新的瞬时丢包率更新至所述预设时长所对应的第一数量个瞬时丢包率中。
6.根据权利要求5所述的方法,其特征在于,所述预设时长所对应的第一数量个瞬时丢包率初始时均为0。
7.一种发送带宽控制装置,其特征在于,所述装置包括:
筛选模块,用于在预设时长所对应的第一数量个瞬时丢包率中,选出第二数量个最大瞬时丢包率,其中,所述第二数量小于所述第一数量;
处理模块,用于根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
控制模块,用于根据所述参考丢包率控制发送带宽。
8.根据权利要求7所述的装置,其特征在于,
所述处理模块,还用于判断选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是否均为0或均为非0;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率是均为0或均为非0,所述处理模块则根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率;
若所述选出的第二数量个最大瞬时丢包率中的最大瞬时丢包率不是均为0或均为非0,所述处理模块则将为0的最大瞬时丢包率处理为非0的最大瞬时丢包率,并根据得到的第二数量个最大瞬时丢包率,计算得到参考丢包率的步骤,其中,所述得到的第二数量个最大瞬时丢包率中包括经处理得到的非0的最大瞬时丢包率以及所述选出的第二数量个最大瞬时丢包率中非0的最大瞬时丢包率。
9.一种网络设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-6中任意一项所述的发送带宽控制方法。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任意一项所述的发送带宽控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010636503.3A CN111669340B (zh) | 2020-07-03 | 2020-07-03 | 发送带宽控制方法、装置、网络设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010636503.3A CN111669340B (zh) | 2020-07-03 | 2020-07-03 | 发送带宽控制方法、装置、网络设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111669340A true CN111669340A (zh) | 2020-09-15 |
CN111669340B CN111669340B (zh) | 2021-06-22 |
Family
ID=72391258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010636503.3A Active CN111669340B (zh) | 2020-07-03 | 2020-07-03 | 发送带宽控制方法、装置、网络设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111669340B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491658A (zh) * | 2020-12-02 | 2021-03-12 | 广州虎牙科技有限公司 | 带宽估计方法、装置、电子设备及计算机可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101359979A (zh) * | 2008-08-01 | 2009-02-04 | 中国联合通信有限公司 | 一种基于终端的链路丢包率控制方法及系统 |
CN101964732A (zh) * | 2010-09-02 | 2011-02-02 | 海信集团有限公司 | 计算丢包率的方法及装置、控制网络传输的方法及装置 |
CN102204182A (zh) * | 2010-12-29 | 2011-09-28 | 华为技术有限公司 | 一种数据传输的拥塞控制方法及装置 |
CN102387582A (zh) * | 2010-08-31 | 2012-03-21 | 联芯科技有限公司 | 一种lte系统辅同步序列小区组编号检测方法和装置 |
CN104158761A (zh) * | 2014-08-05 | 2014-11-19 | 华为技术有限公司 | 一种分流流量的方法和装置 |
CN109561356A (zh) * | 2018-11-08 | 2019-04-02 | 北京达佳互联信息技术有限公司 | 数据发送方法、数据发送装置、电子设备和计算机可读存储介质 |
CN109587073A (zh) * | 2019-01-07 | 2019-04-05 | 北京三体云联科技有限公司 | 网络拥塞控制方法、装置及终端设备 |
CN109698794A (zh) * | 2019-01-21 | 2019-04-30 | 北京达佳互联信息技术有限公司 | 一种拥塞控制方法、装置、电子设备及存储介质 |
CN109981214A (zh) * | 2017-12-28 | 2019-07-05 | 华为技术有限公司 | 一种传输控制方法和装置 |
CN111064613A (zh) * | 2019-12-13 | 2020-04-24 | 新华三大数据技术有限公司 | 一种网络故障检测方法及装置 |
-
2020
- 2020-07-03 CN CN202010636503.3A patent/CN111669340B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101359979A (zh) * | 2008-08-01 | 2009-02-04 | 中国联合通信有限公司 | 一种基于终端的链路丢包率控制方法及系统 |
CN102387582A (zh) * | 2010-08-31 | 2012-03-21 | 联芯科技有限公司 | 一种lte系统辅同步序列小区组编号检测方法和装置 |
CN101964732A (zh) * | 2010-09-02 | 2011-02-02 | 海信集团有限公司 | 计算丢包率的方法及装置、控制网络传输的方法及装置 |
CN102204182A (zh) * | 2010-12-29 | 2011-09-28 | 华为技术有限公司 | 一种数据传输的拥塞控制方法及装置 |
CN104158761A (zh) * | 2014-08-05 | 2014-11-19 | 华为技术有限公司 | 一种分流流量的方法和装置 |
CN109981214A (zh) * | 2017-12-28 | 2019-07-05 | 华为技术有限公司 | 一种传输控制方法和装置 |
CN109561356A (zh) * | 2018-11-08 | 2019-04-02 | 北京达佳互联信息技术有限公司 | 数据发送方法、数据发送装置、电子设备和计算机可读存储介质 |
CN109587073A (zh) * | 2019-01-07 | 2019-04-05 | 北京三体云联科技有限公司 | 网络拥塞控制方法、装置及终端设备 |
CN109698794A (zh) * | 2019-01-21 | 2019-04-30 | 北京达佳互联信息技术有限公司 | 一种拥塞控制方法、装置、电子设备及存储介质 |
CN111064613A (zh) * | 2019-12-13 | 2020-04-24 | 新华三大数据技术有限公司 | 一种网络故障检测方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491658A (zh) * | 2020-12-02 | 2021-03-12 | 广州虎牙科技有限公司 | 带宽估计方法、装置、电子设备及计算机可读存储介质 |
CN112491658B (zh) * | 2020-12-02 | 2023-01-03 | 广州虎牙科技有限公司 | 带宽估计方法、装置、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111669340B (zh) | 2021-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10897424B1 (en) | Quality of experience based network analysis | |
US7792038B2 (en) | Method for applying stochastic control optimization for messaging systems | |
CN106789718B (zh) | 数据传输的拥塞控制方法、设备、服务器及可编程设备 | |
EP1505768B1 (en) | Method for efficient reactive monitoring | |
JP4703063B2 (ja) | ネットワーク輻輳を緩和する方法およびシステム | |
EP1946497B1 (en) | Adaptive bandwidth control | |
EP2725740A1 (en) | Adaptive method and device for heartbeat period | |
CN111628847A (zh) | 数据传输方法及装置 | |
US20100274893A1 (en) | Methods and apparatus for detecting and limiting focused server overload in a network | |
US6917585B1 (en) | Method and apparatus for queue management | |
US20220286402A1 (en) | Method and apparatus for controlling data packet sending, model training method and apparatus, and system | |
CN109450691B (zh) | 服务网关监控方法、设备及计算机可读存储介质 | |
CN111669340B (zh) | 发送带宽控制方法、装置、网络设备及可读存储介质 | |
CN115277581B (zh) | 网络传输的控制方法、装置、计算机设备、存储介质 | |
CN112527544B (zh) | 一种服务器、触发熔断的方法及装置 | |
CN112737897B (zh) | 一种链路监测调度方法、装置、设备及存储介质 | |
CN111786901B (zh) | 一种传输参数自适应调整方法及加速服务系统 | |
US7149664B1 (en) | Method and apparatus for queue modeling | |
US20220053373A1 (en) | Communication apparatus, communication method, and program | |
US20220232584A1 (en) | Method and apparatus for bandwidth allocation | |
KR100553553B1 (ko) | 순차적인 서비스 품질(QoS) 정보를 관리 및 제공하는시스템 및 방법 | |
EP1526679A1 (en) | Methods relating to the monitoring of computer systems | |
CN115514709A (zh) | 拥塞控制事件队列调度方法、装置、设备和存储介质 | |
Arce et al. | RED gateway congestion control using median queue size estimates | |
CN112788265B (zh) | 录像数据保存方法、装置、图像采集设备及可读存储介质 |
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 | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 100010 room 203-35, 2 / F, building 2, No.1 and 3, Qinglong Hutong, Dongcheng District, Beijing Patentee after: G-NET CLOUD SERVICE Co.,Ltd. Address before: Room 1102, Ninth Floor, Pengyuan International Building, Building 4, No. 1 Courtyard, Shangdi East Road, Haidian District, Beijing Patentee before: G-NET CLOUD SERVICE Co.,Ltd. |