CN116094661A - 一种数据传输控制方法、装置、设备、存储介质及产品 - Google Patents

一种数据传输控制方法、装置、设备、存储介质及产品 Download PDF

Info

Publication number
CN116094661A
CN116094661A CN202310091730.6A CN202310091730A CN116094661A CN 116094661 A CN116094661 A CN 116094661A CN 202310091730 A CN202310091730 A CN 202310091730A CN 116094661 A CN116094661 A CN 116094661A
Authority
CN
China
Prior art keywords
automatic retransmission
error correction
forward error
retransmission request
data transmission
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.)
Pending
Application number
CN202310091730.6A
Other languages
English (en)
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 CN202310091730.6A priority Critical patent/CN116094661A/zh
Publication of CN116094661A publication Critical patent/CN116094661A/zh
Pending legal-status Critical Current

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • 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/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS

Landscapes

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

Abstract

本申请实施例提供了一种数据传输控制方法、装置、设备、存储介质及产品。本申请实施例提供的技术方案通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略,分别确定是否在数据传输过程中启用自动重传请求和前向纠错,从而对自动重传请求和前向纠错进行合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。

Description

一种数据传输控制方法、装置、设备、存储介质及产品
技术领域
本申请实施例涉及数据传输技术领域,尤其涉及一种数据传输控制方法、装置、设备、存储介质及产品。
背景技术
随着网络技术的发展,实时视频通话的应用越来越广泛。网络的复杂性、异构性、协议部分不规范性、网络异常、网络错误等弱网环境下容易影响实时视频通话的体验。弱网环境无法提供高质量的网络传输,接收端无法收到连续的视频包,造成视频马赛克、卡顿、花屏等现象,影响用户的视频观看体验。
为了保证用户的音视频观看体验,一般利用结合了自动重传请求(ARQ,AutomaticRepeat-Request)和前向纠错(FEC,Forward Error Correction)的混合自动重送请求(HARQ,Hybrid Automatic Repeat Request)作为视频包的抗丢包策略。但是混合自动重送请求会占用大量的带宽资源,容易导致视频包的发送堆积,降低数据传输质量。
发明内容
本申请实施例提供一种数据传输控制方法、装置、设备、存储介质及产品,以解决相关技术中混合自动重送请求占用大量的带宽资源,容易导致视频包的发送堆积,降低数据传输质量的技术问题,以减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。
在第一方面,本申请实施例提供了一种数据传输控制方法,包括:
获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率;
基于所述链路丢包率、所述往返时延以及所述自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略;
基于所述自动重传请求控制策略确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略确定是否启用前向纠错。
在第二方面,本申请实施例提供了一种数据传输控制装置,包括参数获取模块、策略确定模块和传输控制模块,其中:
所述参数获取模块,配置为获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率;
所述策略确定模块,配置为基于所述链路丢包率、所述往返时延以及所述自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略;
所述传输控制模块,配置为基于所述自动重传请求控制策略确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略确定是否启用前向纠错。
在第三方面,本申请实施例提供了一种数据传输控制设备,包括:存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的数据传输控制方法。
在第四方面,本申请实施例提供了一种存储计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的数据传输控制方法。
在第五方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,设备的至少一个处理器从计算机可读存储介质读取并执行计算机程序,使得设备执行如第一方面所述的数据传输控制方法。
本申请实施例通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略,分别确定是否在数据传输过程中启用自动重传请求和前向纠错,从而对自动重传请求和前向纠错进行合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。
附图说明
图1是本申请实施例提供的一种数据传输控制方法的流程图;
图2是本申请实施例提供的另一种数据传输控制方法的流程图;
图3是本申请实施例提供的一种自动重传恢复率确定流程示意图;
图4是本申请实施例提供的一种在不同丢包率和往返时延下的控制策略分布示意图;
图5是本申请实施例提供的一种数据传输系统的架构示意图;
图6是本申请实施例提供的一种数据传输控制装置的结构示意图;
图7是本申请实施例提供的一种数据传输控制设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时上述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。上述处理可以对应于方法、函数、规程、子例程、子程序等等。
本申请提供的数据传输控制方法可应用于音视频通话、视频直播等视频数据传输场景中,旨在通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略分别确定是否启用自动重传请求和前向纠错。对于传统的数据传输控制方案,一般是基于混合自动重送请求技术作为数据抗丢包策略,混合自动重送请求可将自动重传请求和前向纠错结合起来实现数据的传输,混合自动重送能够有效恢复丢失的数据包,但是在大部分传输场景下带宽是有限的,过多的自动重传请求包和前向纠错包会占用大量的带宽资源,容易导致视频包的发送堆积,降低数据传输质量,体现在流媒体实时场景中,容易出现丢帧、播空等情况,造成用户的播放卡顿,影响用户视频播放体验。基于此,提供本申请实施例的一种数据传输控制方法,以解决现有数据传输控制方案占用大量的带宽资源,容易导致视频包的发送堆积,降低数据传输质量的技术问题。
图1给出了本申请实施例提供的一种数据传输控制方法的流程图,本申请实施例提供的数据传输控制方法可以由数据传输控制装置来执行,该数据传输控制装置可以通过硬件和/或软件的方式实现,并集成在数据传输控制设备(例如直播场景中的主播端)中。
下述以数据传输控制装置执行数据传输控制方法为例进行描述。参考图1,该数据传输控制方法包括:
S110:获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率。
示例性的,数据传输控制设备在上传视频数据时,按照设定的时间间隔或实时获取当前上行传输链路中的链路丢包率、往返时延(RTT,Round trip time)以及自动重传恢复率。本方案提供的上行传输链路可理解为数据传输控制设备向其他用户端上传视频数据(包括源视频包、前向纠错包和重传视频包)的数据传输链路,并且其他用户端在接收到视频数据后,将在视频数据接收正常时向数据传输控制设备反馈确认字符(ACK,Acknowledgement)。链路丢包率可理解为在一段时间内,向用户端传输视频数据的过程中,丢失的视频数据在发送的视频数据中的占比。往返时延可理解为视频数据从发出开始,到接收到用户端返回的确认字符对应的时间间隔。自动重传恢复率可理解为在出现丢包的情况下向用户端发送重传视频包,用户端可基于重传数据包恢复丢失的视频数据的概率。
例如在直播场景中,主播端作为数据传输控制设备,在主播端对应直播间内的各个用户端作为接收视频数据的终端,在一个可能的实施例中,也可将服务器作为接收视频数据的终端。主播端通过上行传输链路向服务器上传视频数据,通过服务器向各个用户端发送视频数据。主播端在上传视频数据的过程中,获取上行传输链路中的链路丢包率、往返时延和自动重传恢复率。
S120:基于链路丢包率、往返时延以及自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略。
本方案提供的自动重传请求控制策略可用于指示是否启用自动重传请求(即是否启用自动重传请求模块),自动重传请求控制策略可指示启用自动重传请求或关闭自动重传请求。可选的,自动重传请求控制策略可通过自动重传请求启用标识进行表示,例如自动重传请求启用标识设置为第一标识(例如将自动重传请求启用标识设置为true或1)时,自动重传请求控制策略包括指示启用自动重传请求,而在自动重传请求启用标识设置为第二标识(例如将自动重传请求启用标识设置为false或0)时,自动重传请求控制策略包括指示关闭自动重传请求。本方案提供的前向纠错控制策略可用于指示是否启用前向纠错(即是否启用前向纠错模块),前向纠错控制策略可指示启用前向纠错或关闭前向纠错。可选的,前向纠错控制策略可通过前向纠错启用标识进行表示,例如前向纠错启用标识设置为第一标识(例如将前向纠错启用标识设置为true或1)时,前向纠错控制策略包括指示启用前向纠错,而在前向纠错启用标识设置为第二标识(例如将前向纠错启用标识设置为false或0)时,前向纠错控制策略包括指示关闭前向纠错。
示例性的,在获取链路丢包率、往返时延以及自动重传恢复率后,根据链路丢包率、往返时延和自动重传恢复率分别确定自动重传请求控制策略和前向纠错控制策略。
在一个实施例中,自动重传请求在低往返时延以及低链路丢包率的传输场景中抗丢包效果以及对带宽资源的利用率较为显著,前向纠错在高往返时延以及高链路丢包率的传输场景中抗丢包效果以及对带宽资源的利用率较为显著,可分别设置丢包率阈值和时延阈值,基于丢包率阈值和时延阈值,以及链路丢包率、往返时延和自动重传恢复率确定当前上行传输链路所对应的传输场景,从而确定自动重传请求控制策略和前向纠错控制策略。例如在低链路丢包率的传输场景中优先启用自动重传请求,而在高往返时延以及高链路丢包率的传输场景中优先启用前向纠错控制策略,在低往返时延以及高链路丢包率的传输场景中优先启用自动重传请求或自动重传请求和前向纠错结合。
S130:基于自动重传请求控制策略确定是否启用控制自动重传请求,以及基于前向纠错控制策略确定是否启用前向纠错。
示例性的,基于上述确定的自动重传请求控制策略和前向纠错控制策略,分别确定在数据传输过程中是否启用控制自动重传请求和启用前向纠错。例如在自动重传请求控制策略指示启用自动重传请求时,数据传输控制设备将基于设定的自动重传请求协议确定是否重新发送视频包,在前向纠错控制策略指示启用前向纠错时,可根据当前视频流分配的估算带宽以及设定的前向纠错协议指定其他的网络参数进行前向纠错编码工作,生成前向纠错包。
上述,通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略,分别确定是否在数据传输过程中启用自动重传请求和前向纠错,从而对自动重传请求和前向纠错进行合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。
在上述实施例的基础上,图2给出了本申请实施例提供的另一种数据传输控制方法的流程图,该数据传输控制方法是对上述数据传输控制方法的具体化。参考图2,该数据传输控制方法包括:
S210:通过拥塞控制模块获取上行传输链路的链路丢包率以及往返时延。
S220:通过自动重传请求模块获取自动重传恢复率。
示例性的,本方案提供的拥塞控制(CC,Congestion Control)模块用于基于设定的拥塞控制算法对发送窗口进行拥塞控制。其中拥塞控制模块在工作过程中会获取上行传输链路的链路丢包率以及往返时延。基于此,本方案提供的上行传输链路的链路丢包率以及往返时延可直接从拥塞控制模块中获取。
本方案提供的自动重传请求模块用于基于设定的自动重传请求协议控制对视频数据的重传。其中,自动重传请求模块可记录发出的源视频包、接收到的源视频包确认字符以及重传的重传视频包确认字符,并基于源视频包、源视频包确认字符和重传视频包确认字符计算自动重传恢复率。基于此,本方案提供的自动重传恢复率可从过自动重传请求模块中获取。本方案通过拥塞控制模块获取链路丢包率以及往返时延,以及通过自动重传请求模块获取自动重传恢复率,有效提高自动重传请求控制策略和前向纠错控制策略的确定效率。
在一个可能的实施例中,如图3提供的一种自动重传恢复率确定流程示意图所示,本方案提供的自动重传请求模块在获取自动重传恢复率时,包括步骤S221-S223:
S221:确定在第一时刻的第一窗口收发信息,第一窗口收发信息包括发出的第一源视频包数量、接收到的第一源视频包确认字符数量以及接收到的第一重传视频包确认字符数量。
S222:确定在第二时刻的第二窗口收发信息,第二窗口收发信息包括发出的第二源视频包数量、接收到的第二源视频包确认字符数量以及接收到的第二重传视频包确认字符数量。
S223:基于第一窗口收发信息和第二窗口收发信息确定自动重传恢复率。
本方案提供的自动重传请求模块实时记录发出的源视频包、接收到的源视频包确认字符以及接收到的重传视频包确认字符。源视频包确认字符可以是由接收源视频包的终端基于接收到的源视频包反馈的确认字符(ACK信息),重传视频包确认字符可以是由接收重传视频包的终端基于接收到的重传视频包反馈的确认字符。
示例性的,自动重传请求模块在第一时刻基于记录的源视频包、接收到的源视频包确认字符以及接收到的重传视频包确认字符,确定在第一时刻的第一窗口收发信息。其中,本方案提供的第一窗口收发信息包括数据传输控制设备在设定时间段内发出的第一源视频包数量、接收到的第一源视频包确认字符数量以及接收到的第一重传视频包确认字符数量。
进一步的,自动重传请求模块在第二时刻基于记录的源视频包、接收到的源视频包确认字符以及接收到的重传视频包确认字符,确定在第二时刻的第二窗口收发信息。其中,本方案提供的第二窗口收发信息包括数据传输控制设备在设定时间段内发出的第二源视频包数量、接收到的第二源视频包确认字符数量以及接收到的第二重传视频包确认字符数量。
进一步的,自动重传请求模块基于上述确定的第一窗口收发信息和第二窗口收发信息确定当前自动重传请求对应的自动重传恢复率。本方案通过在第一时刻收集第一窗口收发信息以及在第二时刻收集第二窗口收发信息,并根据第一窗口收发信息和第二窗口收发信息准确确定自动重传恢复率,准确确定自动重传请求控制策略和前向纠错控制策略,保证数据传输效果。
在一个可能的实施例中,本方案提供的自动重传请求模块在基于第一窗口收发信息和第二窗口收发信息确定自动重传恢复率时,包括步骤S2231-S2233:
S2231:基于第一源视频包数量、第一源视频包确认字符数量、第二源视频包数量以及第二源视频包确认字符数量,确定第一时刻和第二时刻的时间间隔内的丢包数量。
S2232:基于第一重传视频包确认字符数量以及第二重传视频包确认字符数量,确定第一时刻和第二时刻的时间间隔内的恢复视频包数量。
S2233:基于丢包数量以及恢复视频包数量确定自动重传恢复率。
示例性的,在确定第一窗口收发信息以及第二窗口收发信息后,根据第一窗口收发信息中的第一源视频包数量、第一源视频包确认字符数量,以及第二窗口收发信息中的第二源视频包数量以及第二源视频包确认字符数量,计算在第一时刻和第二时刻的时间间隔内的丢包数量。
例如,可根据第二源视频包数量和第一源视频包数量的数量差可确定在第一时刻和第二时刻的时间间隔内所发出的源视频包数量,以及根据第二源视频包确认字符数量和第一源视频包确认字符数量的数量差可确定在第一时刻和第二时刻的时间间隔内所接收到的源视频包确认字符数量。进一步的,可根据发出的源视频包数量和接收到的源视频包确认字符数量的数量差可确定在第一时刻和第二时刻的时间间隔内的丢包数量。
进一步的,根据第一窗口收发信息中的第一重传视频包确认字符数量,以及第二窗口收发信息中的第二重传视频包确认字符数量,计算在第一时刻和第二时刻的时间间隔内的恢复视频包数量。
例如,可根据第二重传视频包确认字符数量和第一重传视频包确认字符数量的数量差确定在第一时刻和第二时刻的时间间隔内,通过自动重传请求所恢复的视频包(源视频包)的恢复视频包数量。
进一步的,可根据上述确定的丢包数量和恢复视频包数量确定自动重传恢复率。例如,可根据上述确定的恢复视频包数量与丢包数量的比值确定在第一时刻和第二时刻的时间间隔内,自动重传请求对丢失的视频包的自动重传恢复率。本方案通过计算在第一时刻和第二时刻的时间间隔内的丢包数量和恢复视频包数量准确确定自动重传恢复率,保证确定更适应当前网络状况的自动重传请求控制策略和前向纠错控制策略,有效提高数据传输效果。
在一个可能的实施例中,本方案提供的自动重传请求模块可基于以下重传恢复率计算公式确定自动重传恢复率:
Figure BDA0004070590330000081
Figure BDA0004070590330000082
Figure BDA0004070590330000083
其中,
Figure BDA0004070590330000084
为自动重传恢复率,
Figure BDA0004070590330000085
为恢复视频包数量,
Figure BDA0004070590330000086
为丢包数量,
Figure BDA0004070590330000087
为第一源视频包数量,
Figure BDA0004070590330000088
为第一源视频包确认字符数量,
Figure BDA0004070590330000089
为第二源视频包数量,
Figure BDA00040705903300000810
为第二源视频包确认字符数量,
Figure BDA00040705903300000811
为第一重传视频包确认字符数量,
Figure BDA00040705903300000812
为第二重传视频包确认字符数量,Δt为第一时刻t1和第二时刻t2的时间间隔。
例如,在发送窗口中记录发出的源视频包数量、接收到的源视频包确认字符数量以及接收到的重传视频包确认字符数量,并传入自动重传请求模块,自动重传请求模块可基于重传恢复率计算公式实时计算对应的自动重传恢复率。本方案通过重传恢复率计算公式准确计算自动重传恢复率,保证确定更适应当前网络状况的自动重传请求控制策略和前向纠错控制策略,有效提高数据传输效果。
S230:基于链路丢包率、往返时延以及自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略。
在一个可能的实施例中,本方案在基于链路丢包率、往返时延以及自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略,包括步骤S231-S234:
S231:在链路丢包率低于设定的丢包率阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制。
S232:在链路丢包率高于设定的丢包率阈值,并且往返时延大于设定的第一时延阈值的情况下,确定自动重传请求控制策略为关闭自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。
S233:在链路丢包率高于设定的丢包率阈值,并且往返时延位于设定的第一时延阈值和第二时延阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制,第一时延阈值大于第二时延阈值。
S234:在链路丢包率高于设定的丢包率阈值,并且往返时延小于设定的第二时延阈值的情况下,基于自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略。
示例性的,在确定链路丢包率、往返时延以及自动重传恢复率后,分别对链路丢包率是否高于设定的丢包率阈值的大小,以及往返时延与第一时延阈值和第二时延阈值的大小进行比较,并根据比较结果确定自动重传请求控制策略以及前向纠错控制策略。
其中,在链路丢包率低于(或等于)设定的丢包率阈值时,可确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制。例如将自动重传请求控制策略对应的自动重传请求启用标识设置为第一标识(例如第一标识为true或1),并将前向纠错控制策略对应的前向纠错启用标识设置为第二标识(例如第二标识为false或0)。
在链路丢包率高于设定的丢包率阈值,并且往返时延大于设定的第一时延阈值时,可确定自动重传请求控制策略为关闭自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。例如将自动重传请求控制策略对应的自动重传请求启用标识设置为第二标识,将前向纠错控制策略对应的前向纠错启用标识设置为第一标识。
在链路丢包率高于设定的丢包率阈值,并且往返时延大于设定的第一时延阈值时,可确定自动重传请求控制策略为关闭自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。例如将自动重传请求控制策略对应的自动重传请求启用标识设置为第二标识,将前向纠错控制策略对应的前向纠错启用标识设置为第一标识。
而在链路丢包率高于设定的丢包率阈值,并且往返时延小于设定的第二时延阈值时,则基于上述确定的自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略,即基于自动重传恢复率确定只开启自动重传请求(将自动重传请求控制策略对应的自动重传请求启用标识设置为第二标识,将前向纠错控制策略对应的前向纠错启用标识设置为第一标识),还是同时开启自动重传请求和前向纠错(将自动重传请求控制策略对应的自动重传请求启用标识以及前向纠错控制策略对应的前向纠错启用标识均设置为第一标识)。例如在自动重传恢复率高于设定的自动重传恢复阈值时,可设定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制,而在自动重传恢复率低于(或等于)设定的自动重传恢复阈值时,可设定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。
本方案通过根据链路丢包率和丢包率阈值,以及往返时延与第一时延阈值和第二时延阈值的比较结果,确定适用于当前网络环境的自动重传请求控制策略以及前向纠错控制策略,在保证数据传输效果的同时,有效降低抗丢包冗余开销,提高对信道的利用率。
在一个可能的实施例中,本方案在基于自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略时,包括步骤S2341-S2342:
S2341:在自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制。
S2342:在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。
示例性的,在链路丢包率高于设定的丢包率阈值,并且往返时延小于设定的第二时延阈值时,将自动重传恢复率与设定的自动重传恢复阈值进行比较,并根据比较结果确定自动重传请求控制策略和前向纠错控制策略。
其中,在自动重传恢复率高于设定的自动重传恢复阈值时,确定当前时间距离上一次切换前向纠错策略的时间是否达到设定的前向纠错切换时长限制。在当前时间达到前向纠错切换时长限制时,则确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制,例如将自动重传请求控制策略对应的自动重传请求启用标识设置为第一标识,将前向纠错控制策略对应的前向纠错启用标识设置为第二标识。在当前时间未达到前向纠错切换时长限制时,则不需要更新自动重传请求控制策略和前向纠错控制策略。
在自动重传恢复率低于(或等于)设定的自动重传恢复阈值时,确定当前时间距离上一次切换前向纠错策略的时间是否达到设定的前向纠错切换时长限制。在当前时间达到前向纠错切换时长限制时,则确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制,例如将自动重传请求控制策略对应的自动重传请求启用标识设置为第一标识,将前向纠错控制策略对应的前向纠错启用标识设置为第一标识。在当前时间未达到前向纠错切换时长限制时,则不需要更新自动重传请求控制策略和前向纠错控制策略。
如图4提供的一种在不同丢包率和往返时延下的控制策略分布示意图所示,其中,在链路丢包率低于(或等于)丢包率阈值(minFecEnableThrethold)时,无论往返时延的值是多少,都只启用自动重传请求(ARQ)。在链路丢包率高于丢包率阈值时,判断往返时延与第一时延阈值和第二时延阈值的大小关系,在往返时延大于第一时延阈值时,确定只启用前向纠错(FEC),在往返时延位于第二时延阈值和第一时延阈值之间时,采用前向纠错和自动重传请求结合的控制策略(FEC+ARQ),在往返时延下雨第二时延阈值时,根据自动重传恢复率高于和自动重传恢复阈值的比较结果确定只启用自动重传请求,还是前向纠错和自动重传请求结合(ARQ/FEC+ARQ)。其中,在自动重传恢复率高于自动重传恢复阈值且当前时间达到前向纠错切换时长限制时,只启用自动重传请求;在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制时,确定前向纠错和自动重传请求结合的控制策略。
在一个实施例中,在确定往返时延后,可确定往返时延是否大于0,若往返时延大于0,则继续根据链路丢包率、往返时延和自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略,若往返时延为0,则退出当前的数据传输控制流程,直至往返时延大于0。可选的,在每次切换前向纠错控制策略时,根据当前时间更新前向纠错控制策略的前向纠错更新时间,并且在获取链路丢包率、往返时延和自动重传恢复率后,可记录当前时间戳,后续可计算当前时间戳和前向纠错更新时间的时间差,并根据时间差与前向纠错切换时长限制比较结果确定当前时间是否达到前向纠错切换时长限制。
本方案通过在链路丢包率高于设定的丢包率阈值并且往返时延小于设定的第二时延阈值时,根据自动重传恢复率与自动重传恢复阈值的比较结果确定自动重传请求控制策略和前向纠错控制策略,以确定在不同的自动重传恢复率下确定合适的控制策略,在保证数据传输效果的同时,有效降低抗丢包冗余开销,提高对信道的利用率。
在一个实施例中,可基于对直播产品的大盘网络数据进行分析确定大盘主播上行链路丢包率分布,根据链路丢包率分布可确定链路丢包率小于2%的弱网场景占所有丢包场景的50%左右,而线下测试验证2%丢包率下直播产品仅启用自动重传请求即可保证抗丢包传输效果,基于此,可将丢包率阈值设置为2%(即minFecEnableThrethold=2%)。
在一个实施例中,基于直播产品多人视频房大盘的主播上行往返时延指标进行分析,可确定大盘往返时延均值在120ms左右波动。通过线下测试验证可知,当往返时延低于100ms时,通过自动重传请求进行抗丢包恢复和通过前向纠错进行抗丢包恢复的传输效果区别不大,但是当往返时延大于200ms时,通过自动重传请求进行抗丢包恢复的延时高于通过前向纠错进行抗丢包恢复的延时。基于此,可将默认的第二时延阈值设置为100ms(即minRtt=100ms),将默认的第一时延阈值设置为200ms(即maxRtt=200ms)。并且,根据对大盘往返时延分布的分析结果,往返时延低于100ms的上报量占全部上报量超过50%,因此混合自动重送请求策略可以将第二时延阈值设置为100ms,以100ms作为第二时延阈值的默认值理论上有50%的场景不会产生前向纠错冗余,能够在保证传输成功率的前提下,协同了前向纠错模块和自动重传请求模块的工作,能在实际的实时流媒体传输场景中有效降低抗丢包冗余开销。
在一个可能的实施例中,本方案提供的第二时延阈值可设置为固定值,也可设置为动态值。在将第二时延阈值设置为动态值时,本方案提供的数据传输控制方法还包括:
S235:在自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,上调第二时延阈值。
S236:在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,下调第二时延阈值。
示例性的,在自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制时,对第二时延阈值进行上调处理,则在下一次的数据传输控制流程中,将基于上调处理后的第二时延阈值确定自动重传请求控制策略以及前向纠错控制策略。
而在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制时,对第二时延阈值进行下调处理,则在下一次的数据传输控制流程中,将基于下调处理后的第二时延阈值确定自动重传请求控制策略以及前向纠错控制策略。本方案使用动态的第二时延阈值代替固定阈值,制定合理的动态阈值调整规则,在保证传输效果不变的前提下,进一步降低抗丢包冗余开销,提高传输信道利用率。
本方案通过动态调整第二时延阈值,在自动重传请求的恢复率或当前抗丢包能力足够时,逐步下降第二时延阈值,减少抗丢包的数据冗余,降低抗丢包冗余开销,节省网络带宽资源,并在自动重传请求的恢复率或当前抗丢包能力不足时下调第二时延阈值,维持自动重传请求和前向纠错的正常工作,保证数据传输质量,降低弱网对抗带来的带宽开销,保证传输效果的前提下,进一步提高信道利用率,减少发送堆积和链路拥塞,提升观众观看直播体验。
在一个实施例中,本方案对第二时延阈值的下调幅度大于第二时延阈值的上调幅度,例如将下调幅度设置为20ms,并将上调幅度设置为5ms,即每次上调第二时延阈值时,在当前第二时延阈值的基础上增加5ms,每次下调第二时延阈值时,在当前第二时延阈值的基础上减少20ms。可选的,可将第二时延阈值的调整下限设置为默认或初始的第二时延阈值,将第二时延阈值的调整上限设置为第一时延阈值,例如初始配置的第二时延阈值为100模式,第一时延阈值为200ms,即调整后的第二时间阈值不小于100ms,并且不大于200ms。本方案通过设定对第二时延阈值的不同调整幅度,实现在自动重传请求的恢复率或当前抗丢包能力足够的情况下逐步上调第二时延阈值,从而降低抗丢包冗余开销,节省网络带宽资源,并在自动重传请求的恢复率或当前抗丢包能力不足的情况下迅速下调第二时延阈值,保证自动重传请求和前向纠错的正常工作,确保数据传输质量。
S240:通过混合自动重送请求模块,基于自动重传请求控制策略通知自动重传请求模块确定是否启用控制自动重传请求,以及基于前向纠错控制策略通知前向纠错模块确定是否启用前向纠错。
示例性的,本方案通过混合自动重送请求模块(HARQ模块),根据链路丢包率、往返时延和自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略。在确定自动重传请求控制策略以及前向纠错控制策略后,混合自动重送请求模块根据自动重传请求控制策略通知自动重传请求模块确定是否启用控制自动重传请求。本方案通过混合自动重送请求模块对自动重传请求模块和前向纠错模块的工作状态进行控制,实现对自动重传请求和前向纠错的合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用。
例如,在自动重传请求控制策略对应的自动重传请求启用标识为第一标识时,通知自动重传请求模块启用控制自动重传请求(自动重传请求模块设置为开启状态或“ON状态”),而在自动重传请求控制策略对应的自动重传请求启用标识为第二标识时,通知自动重传请求模块关闭控制自动重传请求(自动重传请求模块设置为关闭状态或“OFF状态”)。同时,混合自动重送请求模块根据前向纠错控制策略通知前向纠错模块确定是否启用控制前向纠错,例如在前向纠错控制策略对应的前向纠错启用标识为第一标识时,通知前向纠错模块启用控制前向纠错(前向纠错模块设置为开启状态或“ON状态”),而在前向纠错控制策略对应的前向纠错启用标识为第二标识时,通知前向纠错模块关闭控制前向纠错(前向纠错模块设置为关闭状态或“OFF状态”)。
如图5提供的一种数据传输系统的架构示意图所示,本方案提供的数据传输系统可配置在数据传输设备中,可执行本方案提供的数据传输控制方法,并实现响应的技术效果。其中,数据传输系统包括编码前的数据编码部分(Pre-Coding)和编码后的数据发送部分(After-Coding),数据编码部分包括码控模块和编码模块,数据发送部分包括发送窗口、拥塞控制模块(CC模块)、混合自动重送请求模块(HARQ模块)、前向纠错模块(FEC模块)和自动重传请求模块(ARQ模块)。拥塞控制模块可基于发送窗口的数据发送情况获取上行传输链路的链路丢包率(lossrate)、往返时延(rtt)以及估算带宽(bandwith),并将链路丢包率、往返时延和估算带宽发送至混合自动重送请求模块和前向纠错模块。同时,自动重传请求模块实时计算自动重传恢复率,并将自动重传恢复率发送至混合自动重送请求模块。混合自动重送请求模块可根据链路丢包率、往返时延以及自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略,并根据确定自动重传请求控制策略以及前向纠错控制策略分别控制前向纠错模块和自动重传请求模块的工作状态。其中,前向纠错模块在开启时,将基于链路丢包率、往返时延以及估算带宽对编码模块提供的视频帧进行拆帧以及前向纠错编码处理(FecEncode),并向发送窗口提供源视频包和纠错视频包,由发送窗口向外发送源视频包和纠错视频包。自动重传请求模块在开启时,将基于设定的确认机制和超时机制进行丢失视频包的重传。
上述,通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略,分别确定是否在数据传输过程中启用自动重传请求和前向纠错,从而对自动重传请求和前向纠错进行合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。同时,根据第一时刻的第一窗口收发信息以及在第二时刻的第二窗口收发信息准确确定自动重传恢复率,准确确定自动重传请求控制策略和前向纠错控制策略,保证数据传输效果。并且根据链路丢包率和丢包率阈值,以及往返时延与第一时延阈值和第二时延阈值的比较结果,确定适用于当前网络环境的自动重传请求控制策略以及前向纠错控制策略,在保证数据传输效果的同时,有效降低抗丢包冗余开销,提高对信道的利用率。还通过动态调整第二时延阈值,有效降低弱网对抗带来的带宽开销,保证传输效果的前提下,进一步提高信道利用率,减少发送堆积和链路拥塞,提升观众观看直播体验。
图6是本申请实施例提供的一种数据传输控制装置的结构示意图。参考图6,该数据传输控制装置包括参数获取模块61、策略确定模块62和传输控制模块63。
其中,参数获取模块61,配置为获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率;策略确定模块62,配置为基于链路丢包率、往返时延以及自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略;传输控制模块63,配置为基于自动重传请求控制策略确定是否启用控制自动重传请求,以及基于前向纠错控制策略确定是否启用前向纠错。
上述,通过根据上行传输链路的链路丢包率、往返时延以及自动重传恢复率确定数据传输过程中的自动重传请求控制策略以及前向纠错控制策略,并根据自动重传请求控制策略和前向纠错控制策略,分别确定是否在数据传输过程中启用自动重传请求和前向纠错,从而对自动重传请求和前向纠错进行合理场景调度,在保证数据传输效果的同时降低抗丢包冗余开销,提高信道利用率,减少对带宽资源的占用,减少视频包的发送堆积,提高数据传输质量。
在一个可能的实施例中,参数获取模块61在获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率时,配置为:
通过拥塞控制模块获取上行传输链路的链路丢包率以及往返时延;
通过自动重传请求模块获取自动重传恢复率。
在一个可能的实施例中,自动重传请求模块在获取自动重传恢复率时,配置为:
确定在第一时刻的第一窗口收发信息,第一窗口收发信息包括发出的第一源视频包数量、接收到的第一源视频包确认字符数量以及接收到的第一重传视频包确认字符数量;
确定在第二时刻的第二窗口收发信息,第二窗口收发信息包括发出的第二源视频包数量、接收到的第二源视频包确认字符数量以及接收到的第二重传视频包确认字符数量;
基于第一窗口收发信息和第二窗口收发信息确定自动重传恢复率。
在一个可能的实施例中,自动重传请求模块在基于第一窗口收发信息和第二窗口收发信息确定自动重传恢复率时,配置为:
基于第一源视频包数量、第一源视频包确认字符数量、第二源视频包数量以及第二源视频包确认字符数量,确定第一时刻和第二时刻的时间间隔内的丢包数量;
基于第一重传视频包确认字符数量以及第二重传视频包确认字符数量,确定第一时刻和第二时刻的时间间隔内的恢复视频包数量;
基于丢包数量以及恢复视频包数量确定自动重传恢复率。
在一个可能的实施例中,自动重传请求模块基于以下公式确定自动重传恢复率:
Figure BDA0004070590330000171
Figure BDA0004070590330000172
Figure BDA0004070590330000173
其中,
Figure BDA0004070590330000174
为自动重传恢复率,
Figure BDA0004070590330000175
为恢复视频包数量,
Figure BDA0004070590330000176
为丢包数量,
Figure BDA0004070590330000177
为第一源视频包数量,
Figure BDA0004070590330000178
为第一源视频包确认字符数量,
Figure BDA0004070590330000179
为第二源视频包数量,
Figure BDA00040705903300001710
为第二源视频包确认字符数量,
Figure BDA00040705903300001711
为第一重传视频包确认字符数量,
Figure BDA00040705903300001712
为第二重传视频包确认字符数量,Δt为第一时刻t1和第二时刻t2的时间间隔。
在一个可能的实施例中,策略确定模块62在基于链路丢包率、往返时延以及自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略时,配置为:
在链路丢包率低于设定的丢包率阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制;
在链路丢包率高于设定的丢包率阈值,并且往返时延大于设定的第一时延阈值的情况下,确定自动重传请求控制策略为关闭自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制;
在链路丢包率高于设定的丢包率阈值,并且往返时延位于设定的第一时延阈值和第二时延阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制,第一时延阈值大于第二时延阈值;
在链路丢包率高于设定的丢包率阈值,并且往返时延小于设定的第二时延阈值的情况下,基于自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略。
在一个可能的实施例中,策略确定模块62在基于自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略时,配置为:
在自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制;
在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。
在一个可能的实施例中,数据传输控制装置还包括阈值调整模块,阈值调整模块配置为:
在自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,上调第二时延阈值;
在自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,下调第二时延阈值。
在一个可能的实施例中,第二时延阈值的下调幅度大于第二时延阈值的上调幅度。
在一个可能的实施例中,传输控制模块63在基于自动重传请求控制策略确定是否启用控制自动重传请求,以及基于前向纠错控制策略确定是否启用前向纠错时,配置为:
通过混合自动重送请求模块,基于自动重传请求控制策略通知自动重传请求模块确定是否启用控制自动重传请求,以及基于前向纠错控制策略通知前向纠错模块确定是否启用前向纠错。
值得注意的是,上述数据传输控制装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
本申请实施例还提供了一种数据传输控制设备,该数据传输控制设备可集成本申请实施例提供的数据传输控制装置。图7是本申请实施例提供的一种数据传输控制设备的结构示意图。参考图7,该数据传输控制设备包括:输入装置73、输出装置74、存储器72以及一个或多个处理器71;存储器72,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器71执行,使得一个或多个处理器71实现如上述实施例提供的数据传输控制方法。上述提供的数据传输控制装置、设备和计算机可用于执行上述任意实施例提供的数据传输控制方法,具备相应的功能和有益效果。
本申请实施例还提供一种存储计算机可执行指令的非易失性存储介质,计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的数据传输控制方法。当然,本申请实施例所提供的一种存储计算机可执行指令的非易失性存储介质,其计算机可执行指令不限于如上提供的数据传输控制方法,还可以执行本申请任意实施例所提供的数据传输控制方法中的相关操作。上述实施例中提供的数据传输控制装置、设备及存储介质可执行本申请任意实施例所提供的数据传输控制方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的数据传输控制方法。
在上述实施例的基础上,本申请实施例还提供一种计算机程序产品,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机程序产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备、移动终端或其中的处理器执行本申请各个实施例所提供的数据传输控制方法的全部或部分步骤。

Claims (14)

1.一种数据传输控制方法,其特征在于,包括:
获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率;
基于所述链路丢包率、所述往返时延以及所述自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略;
基于所述自动重传请求控制策略确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略确定是否启用前向纠错。
2.根据权利要求1所述的数据传输控制方法,其特征在于,所述获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率,包括:
通过拥塞控制模块获取上行传输链路的链路丢包率以及往返时延;
通过自动重传请求模块获取自动重传恢复率。
3.根据权利要求2所述的数据传输控制方法,其特征在于,所述自动重传请求模块在获取自动重传恢复率时,包括:
确定在第一时刻的第一窗口收发信息,所述第一窗口收发信息包括发出的第一源视频包数量、接收到的第一源视频包确认字符数量以及接收到的第一重传视频包确认字符数量;
确定在第二时刻的第二窗口收发信息,所述第二窗口收发信息包括发出的第二源视频包数量、接收到的第二源视频包确认字符数量以及接收到的第二重传视频包确认字符数量;
基于所述第一窗口收发信息和所述第二窗口收发信息确定自动重传恢复率。
4.根据权利要求3所述的数据传输控制方法,其特征在于,所述自动重传请求模块在基于所述第一窗口收发信息和所述第二窗口收发信息确定自动重传恢复率时,包括:
基于所述第一源视频包数量、所述第一源视频包确认字符数量、所述第二源视频包数量以及所述第二源视频包确认字符数量,确定所述第一时刻和所述第二时刻的时间间隔内的丢包数量;
基于所述第一重传视频包确认字符数量以及所述第二重传视频包确认字符数量,确定所述第一时刻和所述第二时刻的时间间隔内的恢复视频包数量;
基于所述丢包数量以及所述恢复视频包数量确定自动重传恢复率。
5.根据权利要求3所述的数据传输控制方法,其特征在于,所述自动重传请求模块基于以下公式确定自动重传恢复率:
Figure FDA0004070590310000021
Figure FDA0004070590310000022
Figure FDA0004070590310000023
其中,
Figure FDA0004070590310000024
为自动重传恢复率,
Figure FDA0004070590310000025
为恢复视频包数量,
Figure FDA0004070590310000026
为丢包数量,
Figure FDA0004070590310000027
为第一源视频包数量,
Figure FDA0004070590310000028
为第一源视频包确认字符数量,
Figure FDA0004070590310000029
为第二源视频包数量,
Figure FDA00040705903100000210
为第二源视频包确认字符数量,
Figure FDA00040705903100000211
为第一重传视频包确认字符数量,
Figure FDA00040705903100000212
为第二重传视频包确认字符数量,Δt为第一时刻t1和第二时刻t2的时间间隔。
6.根据权利要求1所述的数据传输控制方法,其特征在于,所述基于所述链路丢包率、所述往返时延以及所述自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略,包括:
在所述链路丢包率低于设定的丢包率阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制;
在所述链路丢包率高于设定的丢包率阈值,并且所述往返时延大于设定的第一时延阈值的情况下,确定自动重传请求控制策略为关闭自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制;
在所述链路丢包率高于设定的丢包率阈值,并且所述往返时延位于设定的第一时延阈值和第二时延阈值的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制,所述第一时延阈值大于所述第二时延阈值;
在所述链路丢包率高于设定的丢包率阈值,并且所述往返时延小于设定的第二时延阈值的情况下,基于所述自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略。
7.根据权利要求6所述的数据传输控制方法,其特征在于,所述基于所述自动重传恢复率确定自动重传请求控制策略以及前向纠错控制策略,包括:
在所述自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为关闭前向纠错控制;
在所述自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,确定自动重传请求控制策略为启用自动重传请求控制,以及前向纠错控制策略为启用前向纠错控制。
8.根据权利要求6所述的数据传输控制方法,其特征在于,所述数据传输控制方法还包括:
在所述自动重传恢复率高于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,上调所述第二时延阈值;
在所述自动重传恢复率低于设定的自动重传恢复阈值,且当前时间达到前向纠错切换时长限制的情况下,下调所述第二时延阈值。
9.根据权利要求8所述的数据传输控制方法,其特征在于,所述第二时延阈值的下调幅度大于所述第二时延阈值的上调幅度。
10.根据权利要求1所述的数据传输控制方法,其特征在于,所述基于所述自动重传请求控制策略确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略确定是否启用前向纠错,包括:
通过混合自动重送请求模块,基于所述自动重传请求控制策略通知自动重传请求模块确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略通知前向纠错模块确定是否启用前向纠错。
11.一种数据传输控制装置,其特征在于,包括参数获取模块、策略确定模块和传输控制模块,其中:
所述参数获取模块,配置为获取上行传输链路的链路丢包率、往返时延以及自动重传恢复率;
所述策略确定模块,配置为基于所述链路丢包率、所述往返时延以及所述自动重传恢复率,确定自动重传请求控制策略以及前向纠错控制策略;
所述传输控制模块,配置为基于所述自动重传请求控制策略确定是否启用控制自动重传请求,以及基于所述前向纠错控制策略确定是否启用前向纠错。
12.一种数据传输控制设备,其特征在于,包括:存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10任一项所述的数据传输控制方法。
13.一种存储计算机可执行指令的非易失性存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-10任一项所述的数据传输控制方法。
14.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-10任一项所述的数据传输控制方法。
CN202310091730.6A 2023-02-01 2023-02-01 一种数据传输控制方法、装置、设备、存储介质及产品 Pending CN116094661A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310091730.6A CN116094661A (zh) 2023-02-01 2023-02-01 一种数据传输控制方法、装置、设备、存储介质及产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310091730.6A CN116094661A (zh) 2023-02-01 2023-02-01 一种数据传输控制方法、装置、设备、存储介质及产品

Publications (1)

Publication Number Publication Date
CN116094661A true CN116094661A (zh) 2023-05-09

Family

ID=86211809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310091730.6A Pending CN116094661A (zh) 2023-02-01 2023-02-01 一种数据传输控制方法、装置、设备、存储介质及产品

Country Status (1)

Country Link
CN (1) CN116094661A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116823237A (zh) * 2023-08-30 2023-09-29 天津博容包装制品有限公司 一种循环包装管理系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116823237A (zh) * 2023-08-30 2023-09-29 天津博容包装制品有限公司 一种循环包装管理系统
CN116823237B (zh) * 2023-08-30 2023-12-05 天津博容包装制品有限公司 一种循环包装管理系统

Similar Documents

Publication Publication Date Title
US10645448B2 (en) Buffer-aware transmission rate control for real-time video streaming system
EP3322145B1 (en) Method, server side and system for computing bandwidth of network transmission of streaming media
US9763131B2 (en) Method and system for transmitting data packet, sending end device and receiving end device
JP3598110B2 (ja) データ伝送方法および装置
EP2493105A1 (en) Method and system for recovering lost media data packets
CN112822521B (zh) 音视频传输的码率控制方法、装置、设备及存储介质
US10230651B2 (en) Effective intra-frame refresh in multimedia communications over packet networks
CN111327962B (zh) 播放控制方法、装置、设备及存储介质
Kuo et al. A QoE-based link adaptation scheme for H. 264/SVC video multicast over IEEE 802.11
JP2019505126A (ja) マルチキャストネットワークにおいてデータの再送を要求すること
CN116094661A (zh) 一种数据传输控制方法、装置、设备、存储介质及产品
CN110933740B (zh) 上行数据的传输方法、装置、终端设备及存储介质
CN111093083A (zh) 数据传输方法及装置
KR101177454B1 (ko) 영상 데이터의 전송에 따른 에러 복원 결정을 위한 서버 및클라이언트와, 영상 데이터의 전송에 따른 에러 복원결정방법
CN115037416A (zh) 数据前向纠错处理方法、装置、电子设备和存储介质
CN110602568B (zh) 一种基于rtp的视频流传输丢包重传方法、设备及存储设备
CN113079347B (zh) 一种远程驾驶的实现方法及实现装置
CN116318545A (zh) 视频数据传输方法、装置、设备及存储介质
CN111656719A (zh) 数据传输系统、方法、发送端和计算机可读介质
WO2021164405A1 (zh) 数据编解码方法、相关设备及系统
CN107566318B (zh) 流媒体数据的修复方法及装置
CN117614590A (zh) 一种基于混合重传的冗余码率确定方法、装置及设备
WO2023010356A1 (zh) 视频传输方法、装置、系统、终端设备、可移动平台和存储介质
CN117768686A (zh) 一种基于混合自动重传请求的数据传输方法及系统
CN115987462A (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