[go: up one dir, main page]

CN102790666B - 差错控制的方法、接收端、发送端和系统 - Google Patents

差错控制的方法、接收端、发送端和系统 Download PDF

Info

Publication number
CN102790666B
CN102790666B CN201110127328.6A CN201110127328A CN102790666B CN 102790666 B CN102790666 B CN 102790666B CN 201110127328 A CN201110127328 A CN 201110127328A CN 102790666 B CN102790666 B CN 102790666B
Authority
CN
China
Prior art keywords
packet loss
communication network
soon
error correction
module
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.)
Expired - Fee Related
Application number
CN201110127328.6A
Other languages
English (en)
Other versions
CN102790666A (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.)
Global Innovation Polymerization LLC
Tanous Co
Original Assignee
Huawei Device Co 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 Huawei Device Co Ltd filed Critical Huawei Device Co Ltd
Priority to CN201110127328.6A priority Critical patent/CN102790666B/zh
Priority to PCT/CN2012/075446 priority patent/WO2012155821A1/zh
Publication of CN102790666A publication Critical patent/CN102790666A/zh
Application granted granted Critical
Publication of CN102790666B publication Critical patent/CN102790666B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1825Adaptation of specific ARQ protocol parameters according to transmission conditions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种差错控制的方法、接收端、发送端和系统,属于通信领域。所述方法包括:获取通信网络的初始丢包率和通信网络的网络延时;判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;若通信网络的初始丢包率小于第一丢包率,并且网络延时小于预设的延时阈值,则采用快启重传请求的方式进行差错控制。所述接收端包括获取模块、第一判断模块和控制模块。所述系统包括接收端和发送端。本发明通过网络状况的变化情况使用不同的差错控制方法,并综合使用多种差错控制方法,提高对通信网络的有效利用,达到了在较高通信网络利用率下有更好的抗丢包效果。

Description

差错控制的方法、接收端、发送端和系统
技术领域
本发明涉及通信领域,特别涉及差错控制的方法、接收端、发送端和系统。
背景技术
对于实时的视频、音频通信,通常由编码端(即发送端)的编码器对采集的视频、音频信息进行编码,产生一系列的数据包,并根据RTP(Real-timeTransport Protocol,实时传输)协议通过传输信道将编码端产生的数据包,传送到解码端;解码端(即接收端)的解码器对收到的数据包进行解码,恢复出原始的视频、音频。但是,在传输信道上传输实时码流时,由于信道本身存在的丢包或者误码,特别在没有QoS(Quality of Service,服务质量)保证的网络上,数据包可能会在传输过程中产生丢包,一旦解码端接收到有丢包的数据包,解码器是无法正确恢复出原始的视频、音频,因而差错控制措施的采取是非常重要的。
为了减少网络丢包对视频、音频实时通信的影响,现有技术通常采用各种差错控制方法,如前向纠错(Forward Error Correction,FEC)、快启重传请求(Automatic Repeat Request,ARQ)和丢包隐藏(Packet Loss Concealment,PLC)等,丢包隐藏也称为后向纠错。
其中,现有技术一采用前向纠错FEC方法,在发送端增加冗余数据包,接收端接收到有丢包的数据包时,可以通过一些运算将丢包的数据恢复出来。以图1所示为例进行说明,发送端的数据包序号为:1、2、3、4,并通过对数据包的运算在发送端增加冗余数据包,如对1和2进行运算获得5,对3和4进行运算获得6;由于网络上出现丢包,造成了接收端收到的序列号是不连续的,即2和4被丢掉了;接收端通过对收到的1、3、5、6进行运算,得到2和4,因此,序号为1、2、3、4的数据包都得到了恢复。现有技术一通过增加冗余数据包来进行差错控制,降低了通信网络的有效利用率,上述示例中,有效的数据包是1、2、3、4,冗余的数据包5、6,因而该通信网络的有效利用率为4/6=2/3。因此,在总带宽一定的情况下,通信网络的有效利用率越高,更多的带宽能用于视音频数据包的传输,这样就可以获得更好的视音频质量,其实质是以牺牲视音频的质量,换取抗丢包的能力。
现有技术二采用快启重传请求ARQ方法,接收端通过检测接收的数据包中的RTP(Real-time Transport Protocol,实时传送协议)序列号,在发现丢包后快速请求发送端把丢的包再重新传一次,该种差错控制方法在小延时、小丢包率情况下解决网络丢包效果较好。以图2所示为例进行说明,发送端发送了10个包,其序列号是连续递增的;由于网络出现丢包,造成了接收端收到的序列号是不连续的,即10个包中丢了4个包;接收端通过ARQ,请求发送端重传了丢失的4个包,其中序号7、8的包在有效时间内重传回来了;序号2、4可能在重传过程中丢了,也可能重传回来已经超时无效。但是,由于重传的数据包也是要占用网络带宽,若大量丢包,就会产生大量的重传数据,而网络产生大量丢包时,很可能是传输的数据量已经超过了通信网络带宽、或者说网络已经有拥塞的情况,这种情况下应用快启重传请求方法解决丢包问题只会恶化网络状况。
现有技术三采用后向纠错PLC方法,在接收端有丢包时,通过前后数据之前的关联性,利用错误掩盖算法,比较平滑的处理丢包后的传输。根据媒体类型的不同、及实际场景的不同,某些情况下能够产生较好的掩盖效果,人可能会察觉不出来,而某些情况下就无法做到使人察觉不到。
在实现本发明实施例的过程中,发明人发现现有技术至少存在以下问题:
FEC通过编码端增加冗余数据包进行差错控制,会降低对带宽的有效利用率,适用于对音频质量要求不高的情况;ARQ通过重传数据包进行差错控制,由于重传的数据包也是要占用网络带宽,若大量丢包,就会产生大量的重传数据,ARQ适用于小丢包、小延时的情况;PLC是在解码端的一种错误掩盖的方法,对于不同的媒体类型及实际场景,PLC的效果不同。
可见,现有的差错控制方法,由于原理不同能够适用的情况也不同,只能采用ARQ、PLC或FEC中的一种方式进行差错控制,对网络的差错控制的形式比较单一,差错控制的抗丢包能力较低。
发明内容
为了提高差错控制的抗丢包能力,本发明实施例提供了一种差错控制的方法、接收端、发送端和系统,通过综合使用多种差错控制方法,一方面提高了对网络带宽的利用率,另一方面在多种差错控制方法的配合下,达到视音频效果总体最优。所述技术方案如下:
一种差错控制的方法,所述方法包括:
获取通信网络的初始丢包率和通信网络的网络延时;
判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;
若所述通信网络的初始丢包率小于预设的启用快启重传请求的第一丢包率,并且网络延时小于预设的延时阈值,则采用快启重传请求的方式进行差错控制;
统计采用快启重传请求后的第二丢包率,将所述第二丢包率反馈给发送端,以使发送端根据所述通信网络的初始丢包率和所述第二丢包率调整快启重传请求的参数。
本发明实施例提供了另一种差错控制方法,所述方法包括:
向接收端发送数据包;
获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;
判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
本发明实施例还提供了一种接收端,所述接收端包括获取模块、第一判断模块、控制模块和反馈模块;
所述获取模块用于获取通信网络的初始丢包率和通信网络的网络延时;
所述第一判断模块用于判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;
所述控制模块用于当所述第一判断模块的判断结果为是时,采用快启重传请求的方式进行差错控制;
所述反馈模块用于统计采用快启重传请求后的第二丢包率,将所述第二丢包率反馈给发送端,以使发送端根据所述通信网络的初始丢包率和所述第二丢包率调整快启重传请求的参数。
本发明实施例还提供了一种发送端,所述发送端包括发送模块、第一获取模块和第一判断模块;
所述发送模块用于向接收端发送数据包;
所述第一获取模块用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;
所述第一判断模块用于判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
本发明实施例还提供了一种差错控制的系统,所述系统包括接收端和发送端;
所述接收端包括获取模块、第一判断模块和控制模块;所述获取模块用于获取通信网络的初始丢包率和通信网络的网络延时;所述第一判断模块用于判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;所述控制模块用于当所述第一判断模块的判断结果为是时,采用快启重传请求的方式进行差错控制;
所述发送端包括发送模块、第一获取模块和第一判断模块;所述发送模块用于向接收端发送数据包;所述第一获取模块用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;所述第一判断模块用于判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
本发明实施例提供的技术方案带来的有益效果是:通过网络状况的变化情况使用不同的差错控制方法,并综合使用多种差错控制方法,提高对通信网络的有效利用,达到了在较高通信网络利用率下有更好的抗丢包效果。
附图说明
图1是现有技术中采用前向纠错FEC方法的示意图;
图2是现有技术中采用快启重传请求ARQ方法的示意图;
图3是本发明实施例1中提供的差错控制的方法流程图;
图4是本发明实施例2中提供的差错控制的方法流程图;
图5是本发明实施例2中提供的发送端和接收端的关系图;
图6是本发明实施例2中提供的扩展RTCP RR报文的示意图;
图7是本发明实施例3中提供的接收端的结构示意图;
图8是本发明实施例4中提供的发送端的结构示意图;
图9是本发明实施例5中提供的差错控制系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
就某一种差错控制方法而言,由于具体采用原理及实现上的不同,抗丢包的效果也会不同,比如FEC_A方法可能比FEC_B方法的抗丢包效果更好。本发明实施例关注的不是由于差错控制方法的不同引起的差异,而是在综合使用多种差错控制方法时,根据网络状况的变化情况使用不同的差错控制方法,从而获得较高的通信网络利用率和较好的视音频效果。
实施例1
参见图3,本实施例提供了一种差错控制的方法,该方法具体包括:
101:获取通信网络的初始丢包率和通信网络的网络延时;
102:判断通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且通信网络的网络延时是否小于预设的延时阈值;
103:若通信网络的初始丢包率小于预设的启用快启重传请求的第一丢包率,且网络延时小于预设的延时阈值,则采用快启重传请求的方式进行差错控制。
本实施例提出的方法,通过网络状况的变化情况使用不同的差错控制方法,并综合使用多种差错控制方法,提高对通信网络的有效利用,达到了在较高通信网络利用率下有更好的抗丢包效果。
实施例2
参见图4,本发明实施例提出了一种差错控制的方法,具体包括:
201:发送端对采集的视频、音频信息进行编码生成数据包,通过RTP协议将该数据包发送给接收端,该数据包中至少包括RTP序列号;
具体地,数据包在传输信道上以实时码流的形式进行传输,由于信道本身存在丢码或误码,接收端可能会接收到有丢包的数据包,一般通过差错控制方法使接收端正确恢复出原始的视频、音频信息。
202:接收端启用网络延时检测,检测出通信网络的网络延时,并根据RTP序列号获取通信网络的初始丢包率,向发送端反馈通信网络的初始丢包率;
对于该步骤,接收端根据RTP序列获取通信网络的初始丢包率并向发送端反馈的步骤是现有技术,本实施例不对此做详细说明。其中,接收端通过RTCPRR报文反馈通信网络的初始丢包率。
203:接收端根据通信网络的初始丢包率、通信网络的网络延时判断是否满足启用ARQ的条件,若满足,则启用ARQ进行差错控制,执行步骤204;否则,执行步骤208;
对于该步骤,接收端预设启用ARQ的丢包率和延时阈值,启用ARQ的条件具体为:通信网络的网络延时小于预设的延时阈值,且通信网络的初始丢包率小于预设的启用ARQ进行差错控制的丢包率,若接收端判断通信网络的初始丢包率和通信网络的网络延时满足该条件,则启用ARQ进行差错控制;若不满足,则不启用ARQ,需要用其他差错控制的方法解决。
204:接收端向发送端反馈启用ARQ后的第二丢包率,判断通信网络的初始丢包率是否大于启用ARQ后的第二丢包率,若初始丢包率大于第二丢包率,则根据调整后的快启重传请求的参数进行差错控制,若初始丢包率小于第二丢包率,则停止ARQ,执行步骤208;
实际应用中,启用ARQ后,接收端将启用ARQ后的第二丢包率实时反馈给发送端,具体地,接收端扩展RTCP XR报文反馈启用ARQ后的第二丢包率。本发明实施例不对扩展RTCP XR报文的方式进行限定,只要满足扩展后的RTCPXR报文能够携带启用ARQ后的第二丢包率即可。
若通信网络的初始丢包率大于启用ARQ后的第二丢包率,则说明在当前的网络状况下,采用ARQ进行差错控制的方式至少可以部分解决网络丢包的问题。由于通过ARQ解决网络丢包,对于视音频质量是无损的,所以这种情况下,会尽量继续通过ARQ解决网络丢包。而对于通过ARQ无法解决网络的丢包,就需要其他差错控制的方法解决,如步骤206。
若通信网络的初始丢包率不大于启用ARQ后的第二丢包率,则说明在当前的网络状况下,重传的数据包可能由于丢包或者超时无效,接收端仍然有部分无法重传回来,快启重传请求及重传的数据包可能会引起网络状况的进一步恶化,而不会对当前的网络状况有所改善,此时不适宜继续采用AQR解决网络丢包,从而采用其他的差错控制方法解决网络丢包。如若在带宽受限的通信网络上,由于与其他业务共用同一通信网络,可能其他业务当前的网络流量较大,使得总带宽超过了通信网络带宽引起了丢包,这种情况采用快启重传会加重网络的拥塞。因此,本实施例在这种情况下,停止ARQ,并采用其他的差错控制方法进行解决,如步骤206。
205:发送端获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据通信网络的初始丢包率和第二丢包率获得第三丢包率;
具体地,通过接收RTCP RR报文和扩展的RTCP XR报文,获取到接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率。其中,RTCPRR报文中携带通信网络的初始丢包率,扩展的RTCP XR报文中携带启用ARQ后的第二丢包率。本发明实施例中将当前ARQ能处理的第三丢包率简称为第三丢包率。具体地,第三丢包率=通信网络的初始丢包率-启用ARQ后的第二丢包率;本实施例中快启重传请求的参数至少包括重传的次数,连续丢包个数等,调整快启重传请求的参数具体包括提高快启重传请求的参数和降低快启重传请求的参数;
206:发送端判断所述第三丢包率是否小于预设的第四丢包率,若小于且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
本发明实施例中预设ARQ能处理的丢包率,将该ARQ能处理的第四丢包率简称为第四丢包率。
具体地,若第三丢包率<第四丢包率,且第三丢包率不为0,则可以判断采用快启重传请求的方式可以解决当前网络中的丢包问题,并且尝试提高ARQ参数,即提高重传的次数,并提高连续丢包个数;优选地,预置的ARQ能处理的丢包率可以与预设的启用ARQ的丢包率相同,也可以小于预设的启用ARQ的丢包率。
若第三丢包率为0,则可以判断ARQ无法解决当前网络中的丢包问题,并且尝试降低ARQ参数,即降低ARQ重传的次数,并降低连续丢包个数。
下面,本实施例通过一个具体例子进行说明动态调整ARQ参数的方法:
假设初始预置的ARQ能够处理的第四丢包率=5%,ARQ重传的次数2,连续丢包个数2。
若当前ARQ能处理的第三丢包率=3%,通信网络的初始丢包率=7%,则满足当前ARQ能处理的第三丢包率3%<预置的ARQ能处理的第四丢包率5%,且当前ARQ能处理的第三丢包率不为0,可以判断ARQ可以部分解决当前网络中的丢包问题,并且尝试提高重传次数,提高连续丢包个数,如可以将重传次数提高为3,连续丢包个数提高为3,这样更有利于解决网络中的突发丢包问题。
若当前ARQ能处理的第三丢包率=0%,通信网络的初始丢包率是7%,则可以判断ARQ无法解决当前网络中的丢包问题,并且尝试降低重传次数,降低连续丢包个数,如可以将重传次数降低为1,连续丢包个数降低为1,甚至更低,这样避免了ARQ对网络的无效冲击。
207:发送端将调整后的快启重传请求的参数反馈给接收端,以使接收端根据调整后的快启重传请求的参数进行差错控制;
208:接收端判断是否启用后向纠错PLC或前向纠错FEC进行差错控制;
具体地,接收端根据PLC对数据包的媒体类型是否有效,来判断是否启用PLC;实际应用中,接收端接收的数据包中可能包括多种媒体类型(如视频、音频等),如可以预设PLC对视频类型有效,对音频类型有效,则可以应用PLC解决视频类型的丢包的问题。
209:若PLC对数据包的媒体类型有效,则启用PLC进行差错控制,并将启用PLC后的第五丢包率反馈给发送端,以使发送端根据启用PLC后的第五丢包率判断是否启用FEC进行差错控制,执行步骤210;否则,执行步骤211。
具体地,接收端扩展RTCP XR报文使其携带启用PLC后的丢包,通过扩展RTCP XR报文将启用PLC后的丢包率反馈给发送端。本实施例对于可以通过PLC解决丢包问题的媒体类型,启用PLC,并将启用PLC后的第五丢包率通过扩展的RTCP XR报文反馈给发送端,从而发送端可以获取到启用PLC后的第五丢包率。
对于无法通过PLC解决丢包问题的媒体类型,则不启用PLC,只是将启用ARQ后的第二丢包率反馈给发送端,使发送端根据启用ARQ后的第二丢包率判断是否启用FEC。
其中,参见图5,本实施例中,发送端向接收端发送RCP报文,接收端向发送端反馈RTCP RR报文(步骤202)和扩展后的RTCP XR报文(步骤204和207),RCP报文用来传输RCP序列号,RTCP RR报文用于反馈通信网络的丢包率,本实施例在RFC 3611的基础上扩展RTCP XR报文,用于反馈启用ARQ后的丢包率和启用PLC后的丢包率,本发明实施例不对扩展RTCP RR报文的方式进行限定,只要满足扩展后的RTCP XR报文能够携带启用ARQ后的第二丢包率和启用PLC后的第五丢包率即可,本发明实施例给出一种扩展方式,如图6所示,block type(BT)为8bits,表示扩展的RTCP XR报文中携带的丢包率类型定位为8;reserved为8bits,表示保留字段;block length为16bits,表示域的长度;SSRC of source为32bits,表示源标识;ARQ loss rate为8bits,表示应用ARQ后的丢包率;PLC loss rate为8bits,表示应用PLC后的丢包率。
210:发送端获取接收端反馈的采用PLC后的第五丢包率,并根据启用PLC后的第五丢包率判断是否启用FEC进行差错控制;
其中,发送端根据启用PLC后的第五丢包率判断是否启用FEC进行差错控制,具体包括,发送端判断启用PLC后的第五丢包率是否为0,若不为0,则执行步骤212。若发送端判断启用PLC后的丢包率不为0,则表明当前还存在丢包率,发送端将启用FEC进行差错控制。
211:发送端根据启用ARQ后的第二丢包率判断是否启用FEC进行差错控制;
具体地,接收端仅启用ARQ进行差错控制,即当后向纠错的方式对数据包的媒体类型无效之后,发送端判断接收端反馈的启用ARQ后的第二丢包率是否为0,若不为0,则执行步骤212。
212:发送端启用FEC进行差错控制。
具体地,发送端预置通信网络的丢包率和FEC冗余度参数的对应关系,发送端根据当前的通信网络的丢包率及该对应关系,获取该当前的通信网络丢包率对应的FEC冗余度参数,并根据该FEC冗余度参数进行差错控制。
实际应用中,若接收端采用ARQ和PLC进行差错控制时,此时的当前的通信网络丢包率具体为通信网络的初始丢包率-第二丢包率-第五丢包率;若接收端仅采用ARQ进行差错控制时,此时的当前的通信网络丢包率具体为通信网络的初始丢包率减去第二丢包率。
进一步地,发送端也可以预置通信网络丢包率、FEC冗余度参数和通信网络利用率的对应关系,发送端启用FEC后,根据当前的通信网络丢包率及该对应关系,获取该当前的通信网络丢包率对应的FEC冗余度参数,从而根据对应的FEC冗余度参数进行差错控制,能够获知当前的通信网络利用率。其中,通信网络利用率是指(数据包-冗余数据包)/数据包,本实施例根据冗余度参数对应的通信网络利用率,能够获知当前的通信网络利用率。
参见表1,本实施例预置通信网络的丢包率的三个区间,每个区间对应一个FEC冗余度参数及通信网络利用率,若当前的通信网络丢包率落在某一阈值区间,就采用对应的冗余度参数,进行差错控制。
表1
通信网络丢包率 FEC冗余度参数 通信网络利用率
[丢包率1,丢包率2] FEC_redundance_1 通信网络利用率1
(丢包率2,丢包率3] FEC_redundance_2 通信网络利用率2
(丢包率3,丢包率4] FEC_redundance_3 通信网络利用率3
本实施例提供的方法,通过检测通信网络的网络延时及通信网络的丢包率,并实时根据网络情况综合利用多种差错控制方法;另外接收端通过扩展RTCPXR报文向发送端反馈差错控制后的丢包率,因而发送端和接收端能够同时判断每种差错控制方法对抗丢包的效果,并动态调整各种差错控制方法的参数,以适应网络丢包状况的变化;本实施例通过自动调整各种差错控制方法的参数,可以达到在较高通信网络利用率下,达到更好的抗丢包效果。
实施例3
参见图7,本实施例提供了一种接收端,该接收端包括获取模块301、第一判断模块302和控制模块303;
获取模块301用于获取通信网络的初始丢包率和通信网络的网络延时;
第一判断模块302用于判断通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且通信网络的网络延时是否小于预设的延时阈值;
控制模块303用于当第一判断模块301的判断结果为是时,采用快启重传请求的方式进行差错控制。
其中,该接收端还包括反馈模块,用于统计采用快启重传请求后的第二丢包率,将第二丢包率反馈给发送端,以使发送端根据通信网络的初始丢包率和第二丢包率调整快启重传请求的参数。
其中,该接收端还包括接收模块和第二判断模块,该接收模块用于接收发送端发送的快启重传请求的参数,该快启重传请求的参数为发送端根据通信网络的初始丢包率和第二丢包率调整的快启重传请求的参数;该第二判断模块用于当反馈模块将第二丢包率反馈给发送端之后,判断通信网络的初始丢包率是否大于采用快启重传请求后的第二丢包率;
相应地,控制模块303还用于当第二判断模块的判断结果为是时,根据调整后的快启重传请求的参数进行差错控制;当第二判断模块的判断结果为否时,判断是否采用后向纠错的方式或前向纠错的方式进行差错控制。
进一步的,该控制模块303还包括第一判断单元和第一控制单元;第一判断单元用于判断后向纠错的方式对数据包的媒体类型是否有效;第一控制单元用于当第一判断单元的判断结果为有效时,采用后向纠错进行差错控制,并将采用后向纠错后的第五丢包率反馈给发送端,以使发送端根据采用后向纠错后的第五丢包率,判断是否采用前向纠错的方式进行差错控制;当第一判断单元的判断结果为无效时,根据采用快启重传请求后的第二丢包率判断是否采用前向纠错的方式进行差错控制。
本实施例提供的接收端,通过网络状况的变化情况综合使用多种差错控制方法,并根据动态调整后的各种差错控制方法的参数进行差错控制,适应网络丢包状况的变化;本实施例通过自动调整各种差错控制方法的参数,可以达到在较高通信网络利用率下,达到更好的抗丢包效果。
实施例4
参见图8,本发明实施例提供了一种发送端,该发送端包括发送模块401、第一获取模块402和第一判断模块403;
发送模块401用于向接收端发送数据包;
第一获取模块402用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据通信网络的初始丢包率与第二丢包率的差值获得第三丢包率;
第一判断模块403用于判断第三丢包率是否小于预设的第四丢包率,若小于且第三丢包率不为0,则提高快启重传请求的参数;若第三丢包率为0,则降低快启重传请求的参数。
进一步地,该发送端还包括反馈模块,用于将调整后的快启重传请求的参数反馈给接收端。
其中,当后向纠错的方式对数据包的媒体类型有效,采用后向纠错进行差错控制之后,该发送端还包括第二获取模块、第二判断模块和控制模块;
第二获取模块用于获取接收端反馈的采用后向纠错后的第五丢包率;
第二判断模块还用于判断采用后向纠错后的第五丢包率是否为0;
控制模块用于当判断模块的判断结果为否时,采用前向纠错的方式进行差错控制。
其中,当后向纠错的方式对数据包的媒体类型无效之后,该发送端还包括第三判断模块,该第三判断模块用于判断接收端反馈的采用快启重传请求后的第二丢包率是否为0;相应地,控制模块还用于当第三判断模块的判断结果为否时,采用前向纠错的方式进行差错控制。
具体地,该控制模块还包括控制单元,用于预置通信网络的丢包率和前向纠错的冗余度参数的对应关系;根据当前的通信网络的丢包率及对应关系获取相应的前向纠错的冗余度参数,并根据相应的前向纠错的冗余度参数进行差错控制。
本实施例提供的发送端,通过网络状况的变化情况综合使用多种差错控制方法,并根据通信网络的初始丢包率和进行差错控制后的丢包率的变化情况,动态调整各种差错控制方法的参数,以适应网络丢包状况的变化;本实施例通过自动调整各种差错控制方法的参数,可以达到在较高通信网络利用率下,达到更好的抗丢包效果。
实施例5
参见图9,本发明实施例还提供了一种差错控制的系统,该系统包括接收端501和发送端502;
其中,接收端501包括获取模块、第一判断模块和控制模块;该获取模块用于获取通信网络的初始丢包率和通信网络的网络延时;该第一判断模块用于判断通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且通信网络的网络延时是否小于预设的延时阈值;该控制模块用于当第一判断模块的判断结果为是时,采用快启重传请求的方式进行差错控制;
发送端502包括发送模块、第一获取模块和第一判断模块;该发送模块用于向接收端发送数据包;该第一获取模块用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据通信网络的初始丢包率与第二丢包率的差值获得第三丢包率;该第一判断模块用于判断第三丢包率是否小于预设的第四丢包率,若小于且第三丢包率不为0,则提高快启重传请求的参数;若第三丢包率为0,则降低快启重传请求的参数。
本实施例提供的系统,通过网络状况的变化情况综合使用多种差错控制方法,并根据通信网络的初始丢包率和进行差错控制后的丢包率的变化情况,动态调整各种差错控制方法的参数,以适应网络丢包状况的变化;本实施例通过自动调整各种差错控制方法的参数,可以达到在较高通信网络利用率下,达到更好的抗丢包效果。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (17)

1.一种差错控制的方法,其特征在于,所述方法包括:
获取通信网络的初始丢包率和通信网络的网络延时;
判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;
若所述通信网络的初始丢包率小于预设的启用快启重传请求的第一丢包率,并且网络延时小于预设的延时阈值,则采用快启重传请求的方式进行差错控制;
统计采用快启重传请求后的第二丢包率,将所述第二丢包率反馈给发送端,以使发送端根据所述通信网络的初始丢包率和所述第二丢包率调整快启重传请求的参数。
2.如权利要求1所述的方法,其特征在于,所述将所述第二丢包率反馈给发送端之后还包括:
接收所述发送端发送的快启重传请求的参数,所述参数为发送端根据所述通信网络的初始丢包率和所述第二丢包率调整的快启重传请求的参数;
判断所述通信网络的初始丢包率是否大于所述采用快启重传请求后的第二丢包率,若初始丢包率大于第二丢包率,则根据所述发送端发送的快启重传请求的参数进行差错控制,否则,判断是否采用后向纠错的方式或前向纠错的方式进行差错控制。
3.如权利要求2所述的方法,其特征在于,所述判断是否采用后向纠错的方式或前向纠错的方式具体包括:
判断后向纠错的方式对数据包的媒体类型是否有效,若有效,则采用后向纠错进行差错控制,并将采用后向纠错后的第五丢包率反馈给发送端,以使发送端根据所述采用后向纠错后的第五丢包率,判断是否采用前向纠错的方式进行差错控制;否则,使发送端根据所述采用快启重传请求后的第二丢包率判断是否采用前向纠错的方式进行差错控制。
4.一种差错控制的方法,其特征在于,所述方法包括:
向接收端发送数据包;
获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;
判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:将调整后的快启重传请求的参数反馈给接收端。
6.如权利要求4所述的方法,其特征在于,当后向纠错的方式对数据包的媒体类型有效,采用后向纠错进行差错控制之后,所述方法还包括:
获取接收端反馈的采用后向纠错后的第五丢包率;
判断所述采用后向纠错后的第五丢包率是否为0,若不为0,则采用前向纠错的方式进行差错控制。
7.如权利要求4所述的方法,其特征在于,当后向纠错的方式对数据包的媒体类型无效之后,所述方法还包括:
判断接收端反馈的采用快启重传请求后的第二丢包率是否为0,若不为0,则采用前向纠错的方式进行差错控制。
8.如权利要求6或7所述的方法,其特征在于,所述采用前向纠错的方式进行差错控制,具体包括:
预置通信网络的丢包率和前向纠错的冗余度参数的对应关系;
根据当前的通信网络的丢包率及所述对应关系获取相应的前向纠错的冗余度参数,并根据所述相应的前向纠错的冗余度参数进行差错控制。
9.一种接收端,其特征在于,所述接收端包括获取模块、第二判断模块、控制模块和反馈模块;
所述获取模块用于获取通信网络的初始丢包率和通信网络的网络延时;
所述第二判断模块用于判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;
所述控制模块用于当所述第二判断模块的判断结果为是时,采用快启重传请求的方式进行差错控制;
所述反馈模块用于统计采用快启重传请求后的第二丢包率,将所述第二丢包率反馈给发送端,以使发送端根据所述通信网络的初始丢包率和所述第二丢包率调整快启重传请求的参数。
10.如权利要求9所述的接收端,其特征在于,所述接收端还包括接收模块和第三判断模块;
所述接收模块用于接收所述发送端发送的快启重传请求的参数,所述参数为发送端根据所述通信网络的初始丢包率和所述第二丢包率调整的快启重传请求的参数;
所述第三判断模块用于当所述反馈模块将所述第二丢包率反馈给发送端之后,判断所述通信网络的初始丢包率是否大于所述采用快启重传请求后的第二丢包率;
相应地,所述控制模块还用于当所述第三判断模块的判断结果为是时,根据接收模块接收的快启重传请求的参数进行差错控制;当所述第三判断模块的判断结果为否时,判断是否采用后向纠错的方式或前向纠错的方式进行差错控制。
11.如权利要求10所述的接收端,其特征在于,所述控制模块还包括第二判断单元和第二控制单元;
所述第二判断单元用于判断后向纠错的方式对数据包的媒体类型是否有效;
所述第二控制单元用于当所述第二判断单元的判断结果为有效时,采用后向纠错进行差错控制,并将采用后向纠错后的第五丢包率反馈给发送端,以使发送端根据所述采用后向纠错后的第五丢包率,判断是否采用前向纠错的方式进行差错控制;当所述第二判断单元的判断结果为无效时,根据所述采用快启重传请求后的第二丢包率判断是否采用前向纠错的方式进行差错控制。
12.一种发送端,其特征在于,所述发送端包括发送模块、第一获取模块和第一判断模块;
所述发送模块用于向接收端发送数据包;
所述第一获取模块用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;
所述第一判断模块用于判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
13.如权利要求12所述的发送端,其特征在于,所述发送端还包括反馈模块,所述反馈模块用于将调整后的快启重传请求的参数反馈给接收端。
14.如权利要求12所述的发送端,其特征在于,当后向纠错的方式对数据包的媒体类型有效,采用后向纠错进行差错控制之后,所述发送端还包括第二获取模块、第二判断模块和控制模块;
所述第二获取模块用于获取接收端反馈的采用后向纠错后的第五丢包率;
所述第二判断模块还用于判断所述采用后向纠错后的第五丢包率是否为0;
所述控制模块用于当所述判断模块的判断结果为否时,采用前向纠错的方式进行差错控制。
15.如权利要求12所述的发送端,其特征在于,当后向纠错的方式对数据包的媒体类型无效之后,所述发送端还包括第三判断模块;
所述第三判断模块用于判断接收端反馈的采用快启重传请求后的第二丢包率是否为0;
相应地,控制模块还用于当所述第三判断模块的判断结果为否时,采用前向纠错的方式进行差错控制。
16.如权利要求14或15所述的发送端,其特征在于,所述控制模块还包括控制单元,用于预置通信网络的丢包率和前向纠错的冗余度参数的对应关系;根据当前的通信网络的丢包率及所述对应关系获取相应的前向纠错的冗余度参数,并根据所述相应的前向纠错的冗余度参数进行差错控制。
17.一种差错控制的系统,其特征在于,所述系统包括接收端和发送端;
所述接收端包括获取模块、第一判断模块和控制模块;所述获取模块用于获取通信网络的初始丢包率和通信网络的网络延时;所述第一判断模块用于判断所述通信网络的初始丢包率是否小于预设的启用快启重传请求的第一丢包率,且所述通信网络的网络延时是否小于预设的延时阈值;所述控制模块用于当所述第一判断模块的判断结果为是时,采用快启重传请求的方式进行差错控制;
所述发送端包括发送模块、第一获取模块和第一判断模块;所述发送模块用于向接收端发送数据包;所述第一获取模块用于获取接收端反馈的通信网络的初始丢包率和采用快启重传请求后的第二丢包率,并根据所述通信网络的初始丢包率与所述第二丢包率的差值获得第三丢包率;所述第一判断模块用于判断所述第三丢包率是否小于预设的第四丢包率,若第三丢包率小于预设的第四丢包率且所述第三丢包率不为0,则提高快启重传请求的参数;若所述第三丢包率为0,则降低快启重传请求的参数。
CN201110127328.6A 2011-05-17 2011-05-17 差错控制的方法、接收端、发送端和系统 Expired - Fee Related CN102790666B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110127328.6A CN102790666B (zh) 2011-05-17 2011-05-17 差错控制的方法、接收端、发送端和系统
PCT/CN2012/075446 WO2012155821A1 (zh) 2011-05-17 2012-05-14 差错控制的方法、接收端、发送端和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110127328.6A CN102790666B (zh) 2011-05-17 2011-05-17 差错控制的方法、接收端、发送端和系统

Publications (2)

Publication Number Publication Date
CN102790666A CN102790666A (zh) 2012-11-21
CN102790666B true CN102790666B (zh) 2015-04-08

Family

ID=47155974

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110127328.6A Expired - Fee Related CN102790666B (zh) 2011-05-17 2011-05-17 差错控制的方法、接收端、发送端和系统

Country Status (2)

Country Link
CN (1) CN102790666B (zh)
WO (1) WO2012155821A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916208B (zh) * 2012-12-31 2017-12-29 华为技术有限公司 去抖动、抗丢包处理方法及装置
CN103354615B (zh) * 2013-06-24 2015-04-15 西安交通大学 基于信号强度的直播视频数据传输差错控制方法
CN103957222A (zh) * 2014-05-20 2014-07-30 艾诺通信系统(苏州)有限责任公司 一种基于fec算法的视频传输自适应方法
CN107864084B (zh) * 2016-09-22 2019-06-21 腾讯科技(深圳)有限公司 数据包的传输方法和装置
EP3490199B1 (en) 2016-09-22 2021-07-21 Tencent Technology (Shenzhen) Company Limited Calling method and terminal
CN106411481B (zh) * 2016-11-17 2019-03-08 河海大学常州校区 海洋声通信中的联合差错控制与时钟同步方法及系统
CN108965775A (zh) * 2017-05-25 2018-12-07 中兴通讯股份有限公司 数据丢包处理策略的调整方法、装置及存储介质
CN109788509B (zh) * 2017-11-15 2023-03-10 华为技术有限公司 连续数据包传输失败的规避方法及装置
CN107979507A (zh) * 2017-11-21 2018-05-01 广州视源电子科技股份有限公司 一种数据传输方法、装置、设备及存储介质
EP3876484B1 (en) 2018-11-15 2024-11-06 Shenzhen Heytap Technology Corp., Ltd. Data transmission method and relevant product
CN111800218B (zh) * 2019-04-08 2022-04-22 华为技术有限公司 一种数据流的传输方法和设备
CN110336645A (zh) * 2019-07-17 2019-10-15 广州市百果园信息技术有限公司 数据传输方法、装置、系统、设备和存储介质
CN112532341A (zh) * 2019-09-17 2021-03-19 青岛海信宽带多媒体技术有限公司 一种媒体数据播放方法及装置
CN114374470B (zh) * 2020-10-15 2024-10-18 华为技术有限公司 数据传输方法、系统和计算机可读存储介质
CN114499747B (zh) * 2020-11-09 2023-06-20 成都鼎桥通信技术有限公司 音视频数据的处理方法、装置、电子设备及存储介质
CN112543296B (zh) * 2020-11-26 2023-04-07 中移(杭州)信息技术有限公司 延时控制方法、装置和网络设备
CN114051173B (zh) * 2021-10-09 2023-08-08 广州广哈通信股份有限公司 一种基于rtp扩展头部的视频帧可靠传输方法、装置及设备
CN113992304A (zh) * 2021-10-26 2022-01-28 新华三信息安全技术有限公司 一种抗丢包率更新方法、装置、电子设备及存储介质
CN114025389B (zh) * 2021-11-01 2024-04-30 网易(杭州)网络有限公司 数据传输方法、装置、计算机设备及存储介质
CN114337928A (zh) * 2021-12-30 2022-04-12 福州大学 一种基于arq与fec自适应选择的实时视频传输方法
CN115189809B (zh) * 2022-07-07 2024-03-19 福州大学 基于qoe的异构网络实时视频传输arq与fec模式选择方法
CN116321286B (zh) * 2023-03-13 2023-09-22 湖北华中电力科技开发有限责任公司 应用智能算法的数据偏差鉴定系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101552661A (zh) * 2009-03-26 2009-10-07 吕晓雯 一种差错控制方法
CN101588597A (zh) * 2009-07-01 2009-11-25 南京工业大学 一种基于Kalman滤波的无线流媒体自适应混合FEC/ARQ控制方法
EP2131518A2 (en) * 2008-06-06 2009-12-09 Fujitsu Limited Retransmission method and transmitter and receiver thereof
CN101826937A (zh) * 2010-03-18 2010-09-08 常熟理工学院 适用于下一代移动互联网的链路层差错控制系统及其方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2131518A2 (en) * 2008-06-06 2009-12-09 Fujitsu Limited Retransmission method and transmitter and receiver thereof
CN101552661A (zh) * 2009-03-26 2009-10-07 吕晓雯 一种差错控制方法
CN101588597A (zh) * 2009-07-01 2009-11-25 南京工业大学 一种基于Kalman滤波的无线流媒体自适应混合FEC/ARQ控制方法
CN101826937A (zh) * 2010-03-18 2010-09-08 常熟理工学院 适用于下一代移动互联网的链路层差错控制系统及其方法

Also Published As

Publication number Publication date
WO2012155821A1 (zh) 2012-11-22
CN102790666A (zh) 2012-11-21

Similar Documents

Publication Publication Date Title
CN102790666B (zh) 差错控制的方法、接收端、发送端和系统
CN108183774B (zh) 一种流媒体传输的前向纠错方法和系统
CN100592670C (zh) 一种在iptv网络中动态自适应前向差错控制的系统及方法
EP2638650B1 (en) Packet-level erasure protection coding in aggregated packet transmissions
US8897193B2 (en) Multicast packet transmitting method over wireless communication network and wireless communication network system using the method
CN101505202B (zh) 一种流媒体传输自适应纠错方法
TWI454090B (zh) 在通訊系統中處理多媒體資訊的方法和系統
CN101589616B (zh) 用以区分反向链路与前向链路视频数据错误的错误过滤器
CN106209915A (zh) 一种实时流媒体无线传输方法及其系统
CN101179362A (zh) 适宜移动流媒体应用的自动重传请求机制
CN101222296A (zh) 上行蜂窝视频通信中自适应的传输方法及系统
CN107395522B (zh) 基于tcp协议的丢包处理方法和计算机可读存储介质
EP2332045A1 (en) Method&amp;apparatus for minimizing packet transmission loss in a wireless network
CN102137436A (zh) 无线电通信装置、无线电通信方法、通信控制装置和程序
CN115051775B (zh) 宽带自组网中的高效自动重传方法
US20080273600A1 (en) Method and apparatus of wireless communication of uncompressed video having channel time blocks
CN103354615B (zh) 基于信号强度的直播视频数据传输差错控制方法
CN102752184A (zh) 用于实时多播业务的数据通信系统及其方法
Sachs et al. Hybrid ARQ for robust video streaming over wireless LANs
CN101001132A (zh) 数据无线传输系统
EP1754342B1 (en) System and method for increasing the range or bandwidth of a wireless digital communication network
EP2526659A1 (en) Selective caching in a packet network and packet loss repair using selective caching
CN106100804A (zh) 一种基于选择重传arq的数字喷泉码传输方法
CN104115497A (zh) 图像传输设备、图像传输方法和程序
US20050094632A1 (en) DOCSIS MAC layer-based ARQ for fixed wireless

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171101

Address after: Metro Songshan Lake high tech Industrial Development Zone, Guangdong Province, Dongguan City Road 523808 No. 2 South Factory (1) project B2 -5 production workshop

Patentee after: Huawei terminal (Dongguan) Co.,Ltd.

Address before: 518129 Longgang District, Guangdong, Bantian HUAWEI base B District, building 2, building No.

Patentee before: HUAWEI DEVICE Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20171208

Address after: 518129 Longgang District, Guangdong, Bantian HUAWEI base B District, building 2, building No.

Patentee after: HUAWEI DEVICE Co.,Ltd.

Address before: Metro Songshan Lake high tech Industrial Development Zone, Guangdong Province, Dongguan City Road 523808 No. 2 South Factory (1) project B2 -5 production workshop

Patentee before: Huawei terminal (Dongguan) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180228

Address after: California, USA

Patentee after: Global innovation polymerization LLC

Address before: California, USA

Patentee before: Tanous Co.

Effective date of registration: 20180228

Address after: California, USA

Patentee after: Tanous Co.

Address before: 518129 Longgang District, Guangdong, Bantian HUAWEI base B District, building 2, building No.

Patentee before: HUAWEI DEVICE Co.,Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150408

CF01 Termination of patent right due to non-payment of annual fee