一种视频传输中基于网络丢包率分布的在线连续检验方法转让专利

申请号 : CN202010288206.4

文献号 : CN111629281B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高一凡曹瑞娟刘正曾雷王乐曹志辉

申请人 : 北京创享苑科技文化有限公司

摘要 :

一种视频传输中基于网络丢包率分布的在线连续检验方法,为判断网络波动是偶然因素引起还是丢包引起,还是因为链路质量下降提供可靠统计判断依据,通过基于发送端的实时连续统计判断网络状况的变化情况,消除了基于接收端反馈统计时反馈信息受网络波动的影响,避免了对接收端的依赖,并且可以实时估计网络状况的变化情况。

权利要求 :

1.一种视频传输中基于网络丢包率分布的在线连续检验方法,其特征在于,包括:步骤1,生成视频序列,所述视频序列中包括多个的数据帧;

步骤2,发送端传输视频序列;

步骤3,发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验;

步骤4,根据网络传输状态的统计,评估所述网络传输性能;

步骤5,根据性能评估,实时动态地调节纠删码冗余度;

步骤6,接收端接收发送端传输的视频序列;

步骤7,按照固定的帧率进行视频的播放;

所述步骤3,发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验,具体包括:步骤2-1,设定H0表示当前网络出现间歇性丢包状态,H1表示当前网络状况为偶发丢包状态;

步骤2-1,统计一段时间内N次数据包传输丢包率,得到初始化的该段时间内数据包丢包率的平均值μPLR和标准差σPLR;

步骤2-2,对该段时间内连续的数据包丢包率进行统计确定丢包率阈值λ′PLR=μPLR+2σPLR;

步骤2-3,对发送端进行单次丢包统计得到丢包率λPLR;

步骤2-4,将单次丢包率λPLR与N次丢包率进行统计得到的丢包率阈值λ′PLR进行比较;

若出现λPLR≥λ′PLR,说明发生了小概率的事件H0,认为当前网络出现间歇性丢包,即短暂的连续丢包;此时将待发送的数据包重复发送一次,直到丢包率计算结果恢复到丢包率阈值范围之内,或该H0事件连续出现一定次数,如果发生H0连续出现一定次数后,发送端向服务器反馈网络状况,同时进行网络调整;

若λPLR<λ′PLR,则表示当前网络状况为偶发丢包状态H1,采用滑动窗口的方式,将当前单次丢包率加入到对N次数据包传输丢包率的平均值μPLR和标准差σPLR的统计窗口中,并去掉其中最早的记录;

步骤2-5,发送端持续不断地记录丢包率,得到统计周期内的网络丢包率;

计算纠删码编码冗余度调整的参考比率:

rate=μPLR+3σPLR

根据纠删码编码冗余度调整的参考比率rate,调整发送端纠删码编码冗余度,更新数据包个数与冗余包个数。

2.根据权利要求1所述的方法,其中,N=10。

3.根据权利要求1所述的方法,其中,丢包率统计周期为300ms。

4.根据权利要求1所述的方法,其中,步骤2-1,统计一段时间内N次数据包传输丢包率,如果丢包率统计结果超出调节过程中可容忍的最大丢包率,直接认定网络异常,即发生小概率事件H0。

5.根据权利要求1所述的方法,其中,所述步骤2,采用发送端采用定常速率输出传输所述视频序列。

说明书 :

一种视频传输中基于网络丢包率分布的在线连续检验方法

技术领域

[0001] 本发明属于视频传输技术领域,具体涉及一种视频传输中基于网络丢包率分布的在线连续检验方法。

背景技术

[0002] 在基于数据包的通信网络中,尤其是不具有受保证的服务质量的互联网协议(Internet Protocol,IP)网络中,数据传输时经常会遭受不定数量的数据包丢失,数据包丢失的原因很多,例如可能是路由器或数据段过载、数据包中比特误差造成;在流媒体传输,特别是压缩的视频数据的传输中,受数据包丢失的影响很大。
[0003] 在实施数据包恢复的技术方案中,可以利用重传、前向纠错(ForwardError Correction,以下简称FEC)或者重传与前向纠错结合的方法来恢复数据包,但对于流媒体业务而言,其对实时性的要求很高,尤其是在直播、组播、快进快退模式和视频通话的情况下,采用重传的方式来解决丢包问题存在很大的局限性。在现有技术中,FEC是通过发送冗余信息来恢复被损坏、被丢弃或丢失的数据包中所包含的数据,该冗余信息可以被接收器用来重构丢失的数据,因此,FEC可以提供比重传更快的数据恢复,并且不需要接收信道,FEC尤其适合于流媒体传输。
[0004] 传统的用于判断数据包是否丢失的方法是通过接收端对数据包的到达情况进行分析,假如一段时间内数据包仍未到达接收端,则认为数据包在网络传输过程中被意外丢弃。最后将统计周期内的丢包率统计结果反馈到发送端,效率低下且精度不高。并且,现有技术在统计过程中需要在统计周期后额外增加反馈统计结果所需的延迟,同时接收端在统计丢包率的结果不够准确。

发明内容

[0005] 针对上述提到的现有技术中的问题,提出一种视频传输中基于网络丢包率分布的在线连续检验方法,包括:
[0006] 步骤1,生成视频序列,所述视频序列中包括多个的数据帧;
[0007] 步骤2,发送端传输视频序列;
[0008] 步骤3,发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验;
[0009] 步骤4,根据网络传输状态的统计,评估所述网络传输性能;
[0010] 步骤5,根据性能评估,实时动态地调节纠删码冗余度;
[0011] 步骤6,接收端接收发送端传输的视频序列;
[0012] 步骤7,按照固定的帧率进行视频的播放。
[0013] 本发明实现了对统计周期内网络丢包率变化趋势的准确、实时的统计。网络丢包率是某一时间段内到达接收端的数据包与发送端发出的总数据包个数的比。因为网络传输状况不断发生变化,单次统计的丢包率不能很好地体现某一时间段内的网络丢包情况。另一方面,接收端反馈过程需要一定的延迟,这段时间内,网络丢包状况可能会发生改变,可能使得该丢包率结果具有更大的误差。因此,运用统计学相关的知识,在发送端对网络丢包率结果进行在线统计检验,使检验结果更加具有统计学意义。
[0014] 本发明实现了基于发送端依靠对丢包情况进行统计学运算进而对网络状况进行实时估计,与现有技术通过接收端反馈网络波动的方式不同,本发明在发送端对网络丢包状况进行统计,减少了因为接收端反馈过程带来的统计过程延迟。通过发送端统计丢包率可以在一个往返时延内得到数据包的传输结果,在丢包率统计周期结束时即得到丢包统计结果,而接收端需要额外的反馈与处理过程。另外,在线统计检验过程中通过滑动窗口的方式更新用于检验的均值与标准差,使统计过程更加及时。并且,相比于以视频帧为单位和编码后每组数据包总数不同的传输方式,通过定常速率的传输方式,可以实现数据包稳定高效的传输,一方面可以保证单位时间内进入网络的数据量保持恒定,另一方面降低因数据包发送间隔的不同而产生的延迟。
[0015] 基于此,本发明为判断网络波动是偶然因素引起还是丢包引起,还是因为链路质量下降提供可靠统计判断依据,通过基于发送端的实时连续统计判断网络状况的变化情况,消除了基于接收端反馈统计时反馈信息受网络波动的影响,避免了对接收端的依赖,并且可以实时估计网络状况的变化情况。

附图说明

[0016] 图1本发明方法流程图;
[0017] 图2发送端与接收端统计网络丢包状况的对比图。

具体实施方式

[0018] 为了更好地理解本发明,下面结合附图参考实施例的描述,对本发明的系统进行进一步的说明。
[0019] 为了全面理解本发明,在以下详细描述中提到了众多具体细节。但是本领域技术人员应该理解,本发明可以无需这些具体细节而实现。在实施例中,不详细描述公知的方法、过程、组件,以免不必要地使实施例繁琐。
[0020] 参见图1-2所示,本发明提供了一种视频传输中基于网络丢包率分布的在线连续检验方法,包括:
[0021] 步骤1,生成视频序列,所述视频序列中包括多个的数据帧;
[0022] 步骤2,发送端传输视频序列;
[0023] 步骤3,发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验;
[0024] 步骤4,根据网络传输状态的统计,评估所述网络传输性能;
[0025] 步骤5,根据性能评估,实时动态地调节纠删码冗余度;
[0026] 步骤6,接收端接收发送端传输的视频序列;
[0027] 步骤7,按照固定的帧率进行视频的播放。
[0028] 优选地,其中,所述步骤3,发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验,具体包括:
[0029] 步骤2-1,设定H0表示当前网络出现间歇性丢包状态,H1表示当前网络状况为偶发丢包状态;
[0030] 步骤2-1,统计一段时间内N次数据包传输丢包率,得到初始化的该段时间内数据包丢包率的平均值μPLR和标准差σPLR;
[0031] 步骤2-2,对该段时间内连续的数据包丢包率进行统计确定丢包率阈值λ′PLR=μPLR+2σPLR;
[0032] 步骤2-3,对发送端进行单次丢包统计得到丢包率λPLR;
[0033] 步骤2-4,将单次丢包率λPLR与N次丢包率进行统计得到的丢包率阈值λ′PLR进行比较;
[0034] 若出现λPLR≥λ′PLR,说明发生了小概率的事件H0,认为当前网络出现间歇性丢包,即短暂的连续丢包;此时将待发送的数据包重复发送一次,直到丢包率计算结果恢复到丢包率阈值范围之内,或该H0事件连续出现一定次数,如果发生H0连续出现一定次数后,发送端向服务器反馈网络状况,同时进行网络调整;
[0035] 若λPLR<λ′PLR,则表示当前网络状况为偶发丢包状态H1,采用滑动窗口的方式,将当前单次丢包率加入到对N次数据包传输丢包率的平均值μPLR和标准差σPLR的统计窗口中,并去掉其中最早的记录;
[0036] 步骤2-5,发送端持续不断地记录丢包率,得到统计周期内的网络丢包率。
[0037] 优选地,其中,N=10。
[0038] 优选地,其中,丢包率统计周期为300ms。
[0039] 优选地,其中,步骤2-1,统计一段时间内N次数据包传输丢包率,如果丢包率统计结果超出调节过程中可容忍的最大丢包率,直接认定网络异常,即发生小概率事件H0。
[0040] 优选地,其中,所述步骤2,采用发送端采用定常速率输出传输所述视频序列。
[0041] 优选地,其中,所述发送端对网络传输状态进行连续实时统计,所述连续实时统计包括对网络丢包率分布的在线连续检验,根据网络传输状态的统计,评估所述网络传输性能,根据性能评估,实时动态地调节纠删码冗余度,具体包括:
[0042] 统计一段时间内N次连续的数据包网络往返时延,得到初始化的该段时间内数据包往返时延的平均值μRTT和标准差σRTT;
[0043] 对该段时间内连续的数据包往返时延进行统计确定时延阈值λ′RTT=μRTT+2σRTT;
[0044] 获取发送端传输当前的单个数据包往返时延λRTT;
[0045] 将当前的数据包往返时延λRTT与通过对该包之前连续数据包的传输时延进行统计得到的时延阈值λ′RTT进行比较;
[0046] 若出现λRTT≥λ′RTT,则表示数据包往返时延过长,判定为该当前数据包在网络传输过程中丢失,记录一次丢包;
[0047] 若λRTT<λ′RTT,则表示数据包往返时延正常,使用滑动窗口的方式,设置窗口大小为M,每当得到新的数据包确认信息后,去掉窗口中最早的往返时延,将新的结果加入该窗口中,实现对数据包往返时延及数据包丢失情况的实时监测;
[0048] 发送端根据公式(1),得到丢包率结果,其中Nsend和Nloss分别表示一个统计周期内发送的数据包总数和丢失的数据包个数,r表示丢包率;
[0049] r=(Nsend-Nloss)/Nsend     (1)
[0050] 根据N次数据包传输丢包率的统计,得到该段时间内数据包丢包率的平均值μPLR和标准差σPLR;
[0051] 计算纠删码编码冗余度调整的参考比率:
[0052] rate=μPLR+3σPLR           (2)
[0053] 根据纠删码编码冗余度调整的参考比率rate,调整发送端纠删码编码冗余度,更新数据包个数与冗余包个数;
[0054] 使用滑动窗口的方式,设置窗口大小为M,每当得到新的丢包率后,去掉窗口中最早的丢包率数据,将新的结果加入该窗口中,实现对网络状况的实时监测。
[0055] 本发明实现了对统计周期内网络丢包率变化趋势的准确、实时的统计。网络丢包率是某一时间段内到达接收端的数据包与发送端发出的总数据包个数的比。因为网络传输状况不断发生变化,单次统计的丢包率不能很好地体现某一时间段内的网络丢包情况。另一方面,接收端反馈过程需要一定的延迟,这段时间内,网络丢包状况可能会发生改变,可能使得该丢包率结果具有更大的误差。因此,运用统计学相关的知识,在发送端对网络丢包率结果进行在线统计检验,使检验结果更加具有统计学意义。
[0056] 本发明实现了基于发送端依靠对丢包情况进行统计学运算进而对网络状况进行实时估计,与现有技术通过接收端反馈网络波动的方式不同,本发明在发送端对网络丢包状况进行统计,减少了因为接收端反馈过程带来的统计过程延迟。通过发送端统计丢包率可以在一个往返时延内得到数据包的传输结果,在丢包率统计周期结束时即得到丢包统计结果,而接收端需要额外的反馈与处理过程。另外,在线统计检验过程中通过滑动窗口的方式更新用于检验的均值与标准差,使统计过程更加及时。并且,相比于以视频帧为单位和编码后每组数据包总数不同的传输方式,通过定常速率的传输方式,可以实现数据包稳定高效的传输,一方面可以保证单位时间内进入网络的数据量保持恒定,另一方面降低因数据包发送间隔的不同而产生的延迟。
[0057] 基于此,本发明为判断网络波动是偶然因素引起还是丢包引起,还是因为链路质量下降提供可靠统计判断依据,通过基于发送端的实时连续统计判断网络状况的变化情况,消除了基于接收端反馈统计时反馈信息受网络波动的影响,避免了对接收端的依赖,并且可以实时估计网络状况的变化情况。
[0058] 这里只说明了本发明的优选实施例,但其意并非限制本发明的范围、适用性和配置。相反,对实施例的详细说明可使本领域技术人员得以实施。应能理解,在不偏离所附权利要求书确定的本发明精神和范围情况下,可对一些细节做适当变更和修改。