CN112637016A - 一种网络延时更新方法、系统、电子设备及存储介质 - Google Patents

一种网络延时更新方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN112637016A
CN112637016A CN202011549935.7A CN202011549935A CN112637016A CN 112637016 A CN112637016 A CN 112637016A CN 202011549935 A CN202011549935 A CN 202011549935A CN 112637016 A CN112637016 A CN 112637016A
Authority
CN
China
Prior art keywords
value
jitter
network jitter
network
real
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
Application number
CN202011549935.7A
Other languages
English (en)
Other versions
CN112637016B (zh
Inventor
邱丹青
成家雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Pte Ltd
Original Assignee
Bigo Technology Pte Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bigo Technology Pte Ltd filed Critical Bigo Technology Pte Ltd
Priority to CN202011549935.7A priority Critical patent/CN112637016B/zh
Publication of CN112637016A publication Critical patent/CN112637016A/zh
Application granted granted Critical
Publication of CN112637016B publication Critical patent/CN112637016B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例公开了一种网络延时更新方法、系统、电子设备及存储介质。本申请实施例提供的技术方案,通过接收当前数据包,计算对应当前数据包的实时网络抖动值和接收延迟,并将实时网络抖动值更新至网络抖动直方图,网络抖动直方图用于统计各个数据包的网络抖动值。基于网络抖动直方图确定网络抖动均值,并根据实时网络抖动值的有效性判断选择实时网络抖动值或者网络抖动均值作为网络抖动输出值,将网络抖动输出值和接收延迟更新至抖动缓冲区。采用上述技术手段,通过网络抖动的统计进行网络延时更新,网络抖动无需根据数据包序号测算,以此可以消除重传包和乱序包对网络延时检测的影响,优化数据包播放效果。

Description

一种网络延时更新方法、系统、电子设备及存储介质
技术领域
本申请实施例涉及信号处理技术领域,尤其涉及一种网络延时更新方法、系统、电子设备及存储介质。
背景技术
在音频VoIP通话(网络通话)场景中,由于数据包到达的快慢容易导致端到端传输间隔不一,出现网络抖动,进而导致音频播放的听感不顺畅,影响通话体验。为了保障通话顺畅,需要消除网络抖动的影响。抖动消除就是使不统一的延迟变为统一的延迟,所有数据包在网络传输的延迟之和与抖动缓冲区处理后的延迟之和相等。目前,消除抖动的主流方案有基于WebRTC的NETEQ算法。NETEQ算法通过一个高级自适应抖动缓冲器估算网络延时,在估算网络延时时,基于数据包的IAT值(绝对到达间隔)进行网络延时估算。进一步基于网络延时计算数据包的播放间隔,进而消除网络抖动的影响。但是,基于IAT值估算网络延时时,需要根据数据包序列号进行计算。而在高丢包的情况下,会产生重传包和乱序包,重传包和乱序包的引入会导致IAT值,影响网络延时的估算,进而影响抖动消除的调节。
发明内容
本申请实施例提供一种网络延时更新方法、系统、电子设备及存储介质,能够消除重传包和乱序包对网络延时检测的影响,获取高精度网络延时。
在第一方面,本申请实施例提供了一种网络延时更新方法,包括:
一种网络延时更新方法,其特征在于,包括:
接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值;
基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值;
将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
进一步的,基于所述网络抖动直方图确定网络抖动均值,包括:
基于所述网络抖动直方图计算第一抖动均值,并根据所述第一抖动均值确定对应的置信区间;
根据所述网络抖动直方图中各个所述数据包的网络抖动值落入所述置信区间的比例验证所述第一抖动均值的有效性,并基于对应的验证结果确定网络抖动均值。
进一步的,根据所述网络抖动直方图中各个所述数据包的网络抖动值落入所述置信区间的比例验证所述第一抖动均值的有效性,并基于对应的验证结果确定网络抖动均值,包括:
若各个所述数据包的网络抖动值落入所述置信区间的比例达到设定比例,验证所述第一抖动均值有效,使用所述第一抖动均值作为所述网络抖动均值;
若各个所述数据包的网络抖动值落入所述置信区间的比例低于,验证所述第一抖动均值无效,确定在所述实时网络抖动值更新之前对应所述网络抖动直方图的第二抖动均值,使用所述第二抖动均值作为所述网络抖动均值。
进一步的,根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值,包括:
判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,若否,选择所述网络抖动均值作为网络抖动输出值,若是,更新所述实时网络抖动值至所述抖动峰值数组中,并判断所述实时网络抖动值是否有效,若否,选择所述网络抖动均值作为网络抖动输出值,若是,选择所述实时网络抖动值作为网络抖动输出值。
进一步的,所述抖动峰值数组包括峰值幅度数组和峰值间隔数组;
对应的,判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,包括:
若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第一间隔阈值,将所述实时网络抖动值更新至预设的抖动峰值数组。
进一步的,判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,还包括:
若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的最大间隔阈值,清空预设的抖动峰值数组,并将所述实时网络抖动值存储至预设的抖动峰值数组。
进一步的,判断所述实时网络抖动值是否有效,包括:
若所述实时网络抖动值与所述抖动峰值数组中上一次峰值的峰值幅度变量达到设定的幅度阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第二间隔阈值,判定所述实时网络抖动值有效。
进一步的,计算对应当前所述数据包的实时网络抖动值,包括:
基于当前所述数据包的发送时间戳和接收时间戳,以及上一所述数据包的发送时间戳和接收时间戳计算对应当前所述数据包的实时网络抖动值。
在第二方面,本申请实施例提供了一种网络延时更新系统,包括:
计算模块,用于接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值;
选择模块,用于基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值;
更新模块,用于将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
在第三方面,本申请实施例提供了一种电子设备,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的网络延时更新方法。
在第四方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的网络延时更新方法。
本申请实施例通过接收当前数据包,计算对应当前数据包的实时网络抖动值和接收延迟,并将实时网络抖动值更新至网络抖动直方图,网络抖动直方图用于统计各个数据包的网络抖动值。基于网络抖动直方图确定网络抖动均值,并根据实时网络抖动值的有效性判断选择实时网络抖动值或者网络抖动均值作为网络抖动输出值,将网络抖动输出值和接收延迟更新至抖动缓冲区。采用上述技术手段,通过网络抖动的统计进行网络延时更新,网络抖动无需根据数据包序号测算,以此可以消除重传包和乱序包对网络延时检测的影响。并且,通过适应性选择网络抖动输出值,可以获取高精度的网络延时,避免高丢包场景对网络延时估算以及数据包播放延迟估算的影响,进而优化数据包播放效果。
附图说明
图1是本申请实施例一提供的一种网络延时更新方法的流程图;
图2是本申请实施例一中的抖动缓冲区消除抖动影响的示意图;
图3是本申请实施例一中的第一抖动均值的验证流程图;
图4是本申请实施例一中的网络抖动均值确定流程图;
图5是本申请实施例一中的网络抖动输出值的确定流程图;
图6是本申请实施例二提供的一种网络延时更新系统的结构示意图;
图7是本申请实施例三提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
本申请提供的网络延时更新方法,旨在通过网络抖动的统计更新以作为网络延时参考依据,实现网络延时的精准测算,并消除乱序包和重传包对网络延时测算的影响,以便于抖动缓冲区进行实时播放延迟估算及调节,优化数据包播放效果。而对于传统的基于NETEQ算法的网络延时估算方式,其需要通过测量数据包的IAT值(绝对到达间隔)进行网络延时估算。IAT值需要根据数据包序列号等参数进行计算,如若数据包在传输过程中按序列号顺序进行传输,则可以测量到相对准确的IAT值。而在高丢包的场景中。乱序包和重传包的引入势必会影响IAT值的计算,导致IAT值偏大,进而影响网络延时估算的精确度。基于此,提供本申请实施例的一种网络延时更新方法,以解决现有网络延时测算在高丢包场景下的测算误差问题。
实施例一:
图1给出了本申请实施例一提供的一种网络延时更新方法的流程图,本实施例中提供的网络延时更新方法可以由网络延时更新设备执行,该网络延时更新设备可以通过软件和/或硬件的方式实现,该网络延时更新设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。一般而言,该网络延时更新设备可以是数据包的接收端设备。
下述以网络延时更新设备为执行网络延时更新方法的主体为例,进行描述。参照图1,该网络延时更新方法具体包括:
S110、接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值。
具体的,本方案采用测算网络抖动的方式来替代传统采用测算IAT值的方式进行网络延时估算更新。其中,网络延时更新设备在接收到当前数据包后,首先确定对应当前数据包的实时网络抖动值和接收延迟。其中,基于当前所述数据包的发送时间戳和接收时间戳,以及上一所述数据包的发送时间戳和接收时间戳计算对应当前所述数据包的实时网络抖动值。具体的,实时网络抖动值的计算公式如下:
Jitter=(TRi-TSi)-(TRi-1-TSi-1)
其中,Jitter表示实时网络抖动值,TRi表示第i个数据包(即当前数据包)的接收时间戳,TSi表示第i个数据包的发送时间戳,TRi-1表示第i-1个数据包的接收时间戳,TSi-1表示第i-1个数据包的发送时间戳。
基于上述实时网络抖动值的计算公式以及前后两个数据包的发送时间戳和接收时间戳即可确定实时网络抖动值。其中,若实时网络抖动值大于0,则代表当前网络出现正抖动,当前数据包提前到达,数据包堆积,接收端溢出;若实时网络抖动值小于0,则代表当前网络出现负抖动,数据包延迟或者丢包。基于测算到的实时网络抖动值,即可作为网络延时的参考依据,由于实时网络抖动值直接根据接收到的前后两个数据包的接收延迟进行测算,无需考虑数据包序列号,因此不会受到乱序包或者重传包的影响,以此来实现高丢包场景下网络延时的精准测算。而对于当前数据包的接收延迟,直接根据当前数据包的发送时间戳和接收时间戳即可确定当前数据包接收延迟的值。
进一步的,基于测算到的实时网络抖动值,本申请实施例通过将其更新至网络抖动直方图,网络抖动直方图用于统计各个数据包的网络抖动值。本申请实施例的网络抖动直方图记录100个样本,每一样本的数据包发送间隔为20ms,则该网络抖动直方图可以统计2S内接收端接收到的数据包的网络抖动值。相对于采用IAT值作为参考依据测算网络延时的方式,本申请实施例网络抖动直方图可以记录更多样本的网络抖动值,基于更多变量进行网络延时测算及更新,可以得到更精密的测算结果,进一步提升网络延时的测算精度。
S120、基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值。
参照图2,提供本申请实施例抖动缓冲区消除抖动影响的示意图。由于网络延迟,各个数据包到达数据接收端的时间间隔不同。而为了保障数据包的流畅播放,需要保障前后数据包的播放时间间隔相同,则需要根据实时的网络抖动直方图确定合适的网络抖动均值。可以理解的是,网络抖动均值作为网络延时的测算依据,抖动缓冲区基于该网络抖动均值可以确定数据包之间合理的播放时间间隔,以此来优化数据包的播放效果。而在短时间内,如若网络延时的波动较大,即实时网络抖动值相对较大时,则不能够直接根据该网络抖动均值进行播放时间间隔的测算。需要考虑该实时网络抖动值对抖动缓冲区的播放延时测算起作用,进而对应进行播放延迟调整。基于此,本申请实施例对应更新后的网络抖动直方图,首先进行对应网络抖动均值的确定。需要说明的是,为了保障样本的置信度,则需要根据该网络抖动直方图确定一个合理的网络抖动均值。基于该网络抖动均值确定的置信区间,要求该网络抖动直方图至少样本的网络抖动值落入置信区间,该网络抖动均值才有效,能够满足大部分的抖动需求。否则,该网络抖动均值无效。
参照图3,提供本申请实施例第一抖动均值的验证流程图。本申请实施例基于该网络抖动直方图计算第一抖动均值的验证流程包括:
S1201、基于所述网络抖动直方图计算第一抖动均值,并根据所述第一抖动均值确定对应的置信区间;
S1202、根据所述网络抖动直方图中各个所述数据包的网络抖动值落入所述置信区间的比例验证所述第一抖动均值的有效性,并基于对应的验证结果确定网络抖动均值。
具体的,考虑到实时网络抖动值波动较大的情况下,基于更新后的网络抖动直方图计算网络抖动均值也同样会受到影响,进而使得计算到的网络抖动均值不符合大部分的抖动需求。因此,本申请实施例通过网络抖动直方图计算抖动均值后,还进一步验证该抖动均值的有效性。定义这一抖动均值为第一抖动均值,基于第一抖动均值,并根据更新后的网络抖动直方图,即可确定对应的置信区间。可选的,置信区间可设定为95%置信区间,95%置信区间的置信度相对较高,其对样本的覆盖效果相对较佳。
进一步的,置信区间计算公式为:
Figure BDA0002856773790000071
其中,u为第一抖动均值,σ为网络抖动直方图各个样本对应的标准差,n为网络抖动直方图中的样本数量,1.96为置信区间系数。
具体的,参照图4,基于上述置信区间计算公式即可确定对应的置信区间,进而根据置信区间验证网络抖动直方图中的各个样本。可以理解的是,如若网络抖动直方图有超过的样本落入该置信区间内,则表明该第一抖动均值有效,反之,则该第一抖动值无效。其中,若各个所述数据包的网络抖动值落入所述置信区间的比例达到设定比例,验证所述第一抖动均值有效,使用所述第一抖动均值作为所述网络抖动均值;若各个所述数据包的网络抖动值落入所述置信区间的比例低于,确定在所述实时网络抖动值更新之前对应所述网络抖动直方图的第二抖动均值,使用所述第二抖动均值作为所述网络抖动均值。可以理解的是,如若实施网络抖动值的波动相对较大,则直接基于更新后的网络抖动直方图计算网络抖动值的话,其值可能无法满足大部分的抖动需求。因此本申请实施例通过构建置信区间进行样本验证,以对第一抖动均值的有效性进行判断。并且,如若判断第一抖动均值无效,则通过提取实时网络抖动值更新之前对应该网络抖动直方图的第二抖动均值作为网络抖动均值,以此可确保网络抖动均值的确定更为合理,满足大部分抖动需求。
需要说明的是,在网络抖动值波动较小的情况下,以该网络抖动均值作为网络延时的参考依据,即可发送至抖动缓冲区进行播放延迟测算。而在网络抖动值波动较大的情况,当前数据包对应的实时网络抖动值为短期内的网络抖动峰值,则需要基于这一实时网络抖动值进行有效性判断,判断其对应的峰值是否会对播放延时的估算起作用。
具体的,参照图5,本申请实施例在进行实时网络抖动值的有效性判断时,首先判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,若否,选择所述网络抖动均值作为网络抖动输出值,若是,更新所述实时网络抖动值至所述抖动峰值数组中,并判断所述实时网络抖动值是否有效,若否,选择所述网络抖动均值作为网络抖动输出值,若是,选择所述实时网络抖动值作为网络抖动输出值。
具体的,对应这一实时网络抖动值,首先需要判断其是否需要更新至预设定的网络抖动峰值数组中。所述抖动峰值数组包括峰值幅度数组和峰值间隔数组,其中,峰值幅度数组和峰值间隔数组的长度均为10个变量,峰值幅度数组用于记录每一个网络抖动峰值的幅度,峰值间隔数组用于记录前一网络抖动峰值与后一网络抖动峰值的时间间隔。
对应的,在判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组时,若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第一间隔阈值,将所述实时网络抖动值更新至预设的抖动峰值数组。通过预设定该抖动阈值和第一间隔阈值,以此来判断当前实时网络抖动值是否为网络抖动峰值。示例性的,该抖动阈值取值为两倍网络抖动均值,该第一间隔阈值取值为10ms。即在实时网络抖动值大于两倍网络抖动均值,且实时网络抖动值与抖动峰值数组中上一次峰值的间隔达到10ms,则认为该实时网络抖动值为网络抖动峰值,需要更新至网络抖动峰值数组中。此时将该实时网络抖动值对应更新至抖动峰值数组的最新一位,并删除最旧一位的网络抖动峰值数据,以此完成抖动峰值数组的更新。而如若该实时网络抖动值判定不需要更新至抖动峰值数组,表明此时网络抖动值的波动相对合理,使用网络抖动均值即可满足大部分抖动需求。此时输出网络抖动均值作为网络抖动输出值至抖动缓冲区,作为网络延时的参考依据进行播放延迟的计算。
在一个实施例中。若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的最大间隔阈值,清空预设的抖动峰值数组,并将所述实时网络抖动值存储至预设的抖动峰值数组。示例性的,本申请实施例中,该最大间隔阈值取值40ms。如若实时网络抖动值与抖动峰值数组中上一次峰值的间隔达到40ms,则认为峰值数组中的各个网络抖动峰值对实施网络抖动值不起作用,其时间间隔相对较大,不会影响当前播放延迟的测算。因此,此时将抖动峰值数组中的所有数据清除,并将实时网络抖动值作为网络抖动峰值更新至抖动峰值数组的第一位,以此来保障抖动峰值数组的数据有效性。
进一步的,在将实时网络抖动值更新至抖动峰值数组之后,需要进一步判断更新后的网络抖动峰值的有效性,即该实时网络抖动值的有效性。其中,若所述实时网络抖动值与所述抖动峰值数组中上一次峰值的峰值幅度变量达到设定的幅度阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第二间隔阈值,判定所述实时网络抖动值有效。可以理解的是,当实时网络抖动值达到相应的阈值之后,则认为当前网络抖动的波动较大,数据包播放延迟测算需要考虑该实时网络抖动值的影响。则此时以实时网络抖动值作为网络抖动输出值,以作为网络延时的参考依据。反之,若实时网络抖动值未达到相应的阈值,则认为该实时网络抖动值产生的网络抖动的波动对网络延迟、数据包播放延迟的影响不大,直接选用该网络抖动均值作为网络抖动输出值。
需要说明的是,上述抖动阈值、第一间隔阈值、第二间隔阈值、最大间隔阈值和幅度阈值可根据实测并结合系统实际设置需求设置,本申请对具体的取值不做固定限制,在此不多赘述。
S130、将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
最终,基于步骤S120确定的网络抖动输出值,以此预先计算的当前数据包的接收延迟,即可将其更新至抖动缓冲,作为网络延时的参考依据,并进行数据包播放延迟的调节。基于网络抖动输出值和接收延迟调节数据包播放延迟的方式有很多,本申请实施例不做固定限制,在此不多赘述。
可以理解的是,本申请实施例通过测算网络抖动输出值作为网络延时的参考依据,以此可以排除高丢包场景下乱序包和重传包对网络延时测算的影响,进而提升在高丢包场景下网络延时测算的精度。对应的,对于抖动缓冲区而言,根据高精度的网络延时,可以精准的调节数据包的播放精度,以此来优化数据包的播放流畅度,避免数据包播放出现明显卡顿,影响播放相关的情形。
上述,通过接收当前数据包,计算对应当前数据包的实时网络抖动值和接收延迟,并将实时网络抖动值更新至网络抖动直方图,网络抖动直方图用于统计各个数据包的网络抖动值。基于网络抖动直方图确定网络抖动均值,并根据实时网络抖动值的有效性判断选择实时网络抖动值或者网络抖动均值作为网络抖动输出值,将网络抖动输出值和接收延迟更新至抖动缓冲区。采用上述技术手段,通过网络抖动的统计进行网络延时更新,网络抖动无需根据数据包序号测算,以此可以消除重传包和乱序包对网络延时检测的影响。并且,通过适应性选择网络抖动输出值,可以获取高精度的网络延时,避免高丢包场景对网络延时估算以及数据包播放延迟估算的影响,进而优化数据包播放效果。
实施例二:
在上述实施例的基础上,图6为本申请实施例二提供的一种网络延时更新系统的结构示意图。参考图6,本实施例提供的网络延时更新系统具体包括:计算模块21、选择模块22和更新模块23。
其中,计算模块21用于接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值;
选择模块22用于基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值;
更新模块23用于将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
上述,通过接收当前数据包,计算对应当前数据包的实时网络抖动值和接收延迟,并将实时网络抖动值更新至网络抖动直方图,网络抖动直方图用于统计各个数据包的网络抖动值。基于网络抖动直方图确定网络抖动均值,并根据实时网络抖动值的有效性判断选择实时网络抖动值或者网络抖动均值作为网络抖动输出值,将网络抖动输出值和接收延迟更新至抖动缓冲区。采用上述技术手段,通过网络抖动的统计进行网络延时更新,网络抖动无需根据数据包序号测算,以此可以消除重传包和乱序包对网络延时检测的影响。并且,通过适应性选择网络抖动输出值,可以获取高精度的网络延时,避免高丢包场景对网络延时估算以及数据包播放延迟估算的影响,进而优化数据包播放效果。
本申请实施例二提供的网络延时更新系统可以用于执行上述实施例一提供的网络延时更新方法,具备相应的功能和有益效果。
实施例三:
本申请实施例三提供了一种电子设备,参照图7,该电子设备包括:处理器31、存储器32、通信模块33、输入装置34及输出装置35。存储器32作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的网络延时更新方法对应的程序指令/模块(例如,网络延时更新系统的计算模块、选择模块和更新模块)。通信模块33用于进行数据传输。处理器31通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的网络延时更新方法。输入装置34可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置35可包括显示屏等显示设备。上述提供的电子设备可用于执行上述实施例一提供的网络延时更新方法,具备相应的功能和有益效果。
实施例四:
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行上述一种网络延时更新方法,存储介质可以是任何的各种类型的存储器设备或存储设备。当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的网络延时更新方法,还可以执行本申请任意实施例所提供的网络延时更新方法中的相关操作。
上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。

Claims (11)

1.一种网络延时更新方法,其特征在于,包括:
接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值;
基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值;
将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
2.根据权利要求1所述的网络延时更新方法,其特征在于,基于所述网络抖动直方图确定网络抖动均值,包括:
基于所述网络抖动直方图计算第一抖动均值,并根据所述第一抖动均值确定对应的置信区间;
根据所述网络抖动直方图中各个所述数据包的网络抖动值落入所述置信区间的比例验证所述第一抖动均值的有效性,并基于对应的验证结果确定网络抖动均值。
3.根据权利要求2所述的网络延时更新方法,其特征在于,根据所述网络抖动直方图中各个所述数据包的网络抖动值落入所述置信区间的比例验证所述第一抖动均值的有效性,并基于对应的验证结果确定网络抖动均值,包括:
若各个所述数据包的网络抖动值落入所述置信区间的比例达到设定比例,验证所述第一抖动均值有效,使用所述第一抖动均值作为所述网络抖动均值;
若各个所述数据包的网络抖动值落入所述置信区间的比例低于,验证所述第一抖动均值无效,确定在所述实时网络抖动值更新之前对应所述网络抖动直方图的第二抖动均值,使用所述第二抖动均值作为所述网络抖动均值。
4.根据权利要求1所述的网络延时更新方法,其特征在于,根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值,包括:
判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,若否,选择所述网络抖动均值作为网络抖动输出值,若是,更新所述实时网络抖动值至所述抖动峰值数组中,并判断所述实时网络抖动值是否有效,若否,选择所述网络抖动均值作为网络抖动输出值,若是,选择所述实时网络抖动值作为网络抖动输出值。
5.根据权利要求4所述的网络延时更新方法,其特征在于,所述抖动峰值数组包括峰值幅度数组和峰值间隔数组;
对应的,判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,包括:
若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第一间隔阈值,将所述实时网络抖动值更新至预设的抖动峰值数组。
6.根据权利要求5所述的网络延时更新方法,其特征在于,判断所述实时网络抖动值是否需要更新至预设的抖动峰值数组,还包括:
若所述实时网络抖动值达到设定的抖动阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的最大间隔阈值,清空预设的抖动峰值数组,并将所述实时网络抖动值存储至预设的抖动峰值数组。
7.根据权利要求5-6任一所述的网络延时更新方法,其特征在于,判断所述实时网络抖动值是否有效,包括:
若所述实时网络抖动值与所述抖动峰值数组中上一次峰值的峰值幅度变量达到设定的幅度阈值,且所述实时网络抖动值与所述抖动峰值数组中上一次峰值的间隔达到设定的第二间隔阈值,判定所述实时网络抖动值有效。
8.根据权利要求1所述的网络延时更新方法,其特征在于,计算对应当前所述数据包的实时网络抖动值,包括:
基于当前所述数据包的发送时间戳和接收时间戳,以及上一所述数据包的发送时间戳和接收时间戳计算对应当前所述数据包的实时网络抖动值。
9.一种网络延时更新系统,其特征在于,包括:
计算模块,用于接收当前数据包,计算对应当前所述数据包的实时网络抖动值和接收延迟,并将所述实时网络抖动值更新至网络抖动直方图,所述网络抖动直方图用于统计各个所述数据包的网络抖动值;
选择模块,用于基于所述网络抖动直方图确定网络抖动均值,并根据所述实时网络抖动值的有效性判断选择所述实时网络抖动值或者所述网络抖动均值作为网络抖动输出值;
更新模块,用于将所述网络抖动输出值和所述接收延迟更新至抖动缓冲区。
10.一种电子设备,其特征在于,包括:
存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8任一所述的网络延时更新方法。
11.在由计算机处理器执行时用于执行如权利要求1-8任一所述的网络延时更新方法。
CN202011549935.7A 2020-12-24 2020-12-24 一种网络延时更新方法、系统、电子设备及存储介质 Active CN112637016B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011549935.7A CN112637016B (zh) 2020-12-24 2020-12-24 一种网络延时更新方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011549935.7A CN112637016B (zh) 2020-12-24 2020-12-24 一种网络延时更新方法、系统、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112637016A true CN112637016A (zh) 2021-04-09
CN112637016B CN112637016B (zh) 2024-06-21

Family

ID=75324370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011549935.7A Active CN112637016B (zh) 2020-12-24 2020-12-24 一种网络延时更新方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112637016B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024130664A1 (zh) * 2022-12-22 2024-06-27 Oppo广东移动通信有限公司 通信方法及通信装置
CN118338065A (zh) * 2024-06-11 2024-07-12 海马云(天津)信息技术有限公司 云应用画面显示抖动优化方法与装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69316243D1 (de) * 1993-03-22 1998-02-12 Honeywell Inc Schwingbewegungsantrieb für laserkreisel
CN1677953A (zh) * 2004-04-02 2005-10-05 华为技术有限公司 适配网络尖峰的动态抖动缓存的实现方法
CN101123571A (zh) * 2006-08-07 2008-02-13 北京三星通信技术研究有限公司 基于自适应抖动缓冲的调度策略的调整方法
CN101282173A (zh) * 2008-05-21 2008-10-08 华为技术有限公司 一种数据包发送速率的调整方法、系统和装置
US20110013618A1 (en) * 2009-07-14 2011-01-20 Wai Keung Wu Method Of Processing Sequential Information In Packets Streamed Over A Network
US20120099689A1 (en) * 2009-06-26 2012-04-26 Telefonaktiebolaget L M Ericsson (Publ) Detection of Jitter in a Communication Network
CN105991477A (zh) * 2015-02-11 2016-10-05 腾讯科技(深圳)有限公司 一种语音抖动缓冲区的调整方法及装置
CN107770124A (zh) * 2016-08-15 2018-03-06 北京信威通信技术股份有限公司 一种ip语音缓冲区的动态控制方法及装置
CN110875860A (zh) * 2020-01-20 2020-03-10 翱捷科技(上海)有限公司 一种处理网络抖动的方法及装置
CN111901678A (zh) * 2020-07-31 2020-11-06 成都云格致力科技有限公司 一种面向tcp实时视频流的抗抖动平滑方法及其系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69316243D1 (de) * 1993-03-22 1998-02-12 Honeywell Inc Schwingbewegungsantrieb für laserkreisel
CN1677953A (zh) * 2004-04-02 2005-10-05 华为技术有限公司 适配网络尖峰的动态抖动缓存的实现方法
CN101123571A (zh) * 2006-08-07 2008-02-13 北京三星通信技术研究有限公司 基于自适应抖动缓冲的调度策略的调整方法
CN101282173A (zh) * 2008-05-21 2008-10-08 华为技术有限公司 一种数据包发送速率的调整方法、系统和装置
US20120099689A1 (en) * 2009-06-26 2012-04-26 Telefonaktiebolaget L M Ericsson (Publ) Detection of Jitter in a Communication Network
CN102484601A (zh) * 2009-06-26 2012-05-30 瑞典爱立信有限公司 通信网络中的抖动的检测
US20110013618A1 (en) * 2009-07-14 2011-01-20 Wai Keung Wu Method Of Processing Sequential Information In Packets Streamed Over A Network
CN105991477A (zh) * 2015-02-11 2016-10-05 腾讯科技(深圳)有限公司 一种语音抖动缓冲区的调整方法及装置
CN107770124A (zh) * 2016-08-15 2018-03-06 北京信威通信技术股份有限公司 一种ip语音缓冲区的动态控制方法及装置
CN110875860A (zh) * 2020-01-20 2020-03-10 翱捷科技(上海)有限公司 一种处理网络抖动的方法及装置
CN111901678A (zh) * 2020-07-31 2020-11-06 成都云格致力科技有限公司 一种面向tcp实时视频流的抗抖动平滑方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴江锐: "WebRTC语音引擎中NetEQ技术的研究", 《中国知网硕士电子期刊网》, no. 1, 15 January 2014 (2014-01-15), pages 2 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024130664A1 (zh) * 2022-12-22 2024-06-27 Oppo广东移动通信有限公司 通信方法及通信装置
CN118338065A (zh) * 2024-06-11 2024-07-12 海马云(天津)信息技术有限公司 云应用画面显示抖动优化方法与装置
CN118338065B (zh) * 2024-06-11 2024-08-09 海马云(天津)信息技术有限公司 云应用画面显示抖动优化方法与装置

Also Published As

Publication number Publication date
CN112637016B (zh) 2024-06-21

Similar Documents

Publication Publication Date Title
US6577648B1 (en) Method and apparatus for determining VoIP QoS characteristics of a network using multiple streams of packets and synchronizing measurements of the streams
CN112637016B (zh) 一种网络延时更新方法、系统、电子设备及存储介质
CN102625006B (zh) 一种回声消除数据同步对齐方法、系统及音频通信设备
EP2140590B1 (en) Method of transmitting data in a communication system
US20070053303A1 (en) Transmission Quality Monitoring For Multimedia Streams
US7957303B2 (en) Communication quality evaluation method, derivation device, communication quality evaluation system and computer program
WO2017000719A1 (zh) 一种基于队列时延的拥塞控制方法及装置
US20080025347A1 (en) Method and System for Dynamic Latency Management and Drift Correction
CN113079421B (zh) 信息处理方法、装置、设备及存储介质
US7408884B2 (en) Methods and devices for correlating audio sample comparisons and network performance statistics
CN110019386A (zh) 一种流数据处理方法及设备
JP4935635B2 (ja) ネットワーク帯域推定プログラム、ネットワーク帯域推定装置、ネットワーク帯域推定方法および計測装置
US7600032B2 (en) Temporal drift correction
US10503807B2 (en) Method and apparatus for measuring time stamp unit of remote device
CN103354588A (zh) 录放音采样率的确定方法、装置及系统
JP4536026B2 (ja) ネットワーク品質測定方法、測定装置及びプログラム
CN115801639B (zh) 一种带宽探测方法、装置、电子设备及存储介质
CN114629826B (zh) 一种网络最大带宽估计方法、装置、电子设备及存储介质
JP3579334B2 (ja) 主観品質推定方法、主観品質推定装置、揺らぎ吸収許容時間推定方法、および揺らぎ吸収許容時間推定装置
JP6511003B2 (ja) 音声品質推定装置、音声品質推定方法、及びプログラム
CN114124334A (zh) 一种空口数据包的处理方法、客户端、设备及介质
CN113242113A (zh) 数据传输控制方法、装置、电子设备及存储介质
CN114640754B (zh) 视频抖动检测方法、装置、计算机设备及存储介质
JP4331702B2 (ja) 片道転送遅延時間推定装置、方法、およびプログラム
CN116055417A (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