CN114531210B - 数据重传方法、装置、电子设备及存储介质 - Google Patents
数据重传方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114531210B CN114531210B CN202210115103.7A CN202210115103A CN114531210B CN 114531210 B CN114531210 B CN 114531210B CN 202210115103 A CN202210115103 A CN 202210115103A CN 114531210 B CN114531210 B CN 114531210B
- Authority
- CN
- China
- Prior art keywords
- packet
- target
- loss rate
- packet loss
- estimated
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000012545 processing Methods 0.000 claims abstract description 30
- 238000012790 confirmation Methods 0.000 claims abstract description 24
- 230000007246 mechanism Effects 0.000 claims description 21
- 238000004422 calculation algorithm Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 11
- 238000001914 filtration Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 7
- 238000005259 measurement Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 230000001550 time effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements 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/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1848—Time-out mechanisms
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)
Abstract
本申请实施例提供了一种数据重传方法、装置、电子设备及存储介质,该方法包括:获取目标数据包在当前时刻对应的额外等待时间;获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率;根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。该方法可以降低发送端进行数据重传处理时的无效重传率。
Description
技术领域
本公开实施例涉及数据传输技术领域,更具体地,涉及一种数据重传方法、装置、电子设备及计算机可读存储介质。
背景技术
通常,在不稳定的网络环境中,发送端往往需要基于接收端返回的确认字符(ACK,Acknowledge Character)数据包,即,确认包判断自身发送的数据包是否成功到达对端,若发送端认为数据包未被正常接收,则会进行重传操作。
例如,在直播场景上下行链路的重传机制中,一般是基于超时重传时间(RTO,Retransmission TimeOut)来进行数据重传处理,即,发送端在将数据包发送至接收端之后,会基于接收到该数据包的确认包的时间估计往返时间(RTT,Round-Trip Time)和RTT抖动,以估算RTO;若发送端在经过长度为RTO的时间还未收到对应数据包的确认包,则会认为该数据包已丢失,并对该数据包进行重传处理。该类方法在RTO估算过小的情况下,发送端可能会提前重传部分接收端已经成功收到的数据包,即,可能导致无效重传问题,为解决该问题,相关技术中一般会引入确认包冗余机制,即ACK冗余机制,以降低无效重传问题。
然而,现有在基于ACK冗余机制和RTO超时重传机制进行数据重传处理时,通常是在对RTT观测值进行线性滤波得到RTO参考值之后,基于该RTO参考值进行数据重传处理,这就使得在某些特定场景,例如,大丢包率小RTT的场景中,同样可能导致无效重传问题。
发明内容
本公开的一个目的是提供一种用于数据重传的新的技术方案,以降低发送端进行数据重传处理时的无效重传率。
本公开的第一方面,提供了一种数据重传方法,所述方法包括:
获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包;
获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;
根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率;
根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。
本公开的第二方面,提供了一种数据重传装置,所述装置包括:
额外等待时间获得模块,用于获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包;
预估丢包率获得模块,用于获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;
目标丢包率获得模块,用于根据所述额外等待时间和所述预估丢包率,获得所述目标确认包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率;
重传处理模块,用于根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。
本公开的第三方面,还提供了一种电子设备,包括:
存储器,用于存储可执行的指令;
处理器,用于根据所述指令的控制运行所述电子设备执行本公开的第一方面所述的数据重传方法。
本公开的第四方面,还提供了一种计算机可读存储介质的,所述计算机可读存储介质存储有可被计算机读取执行的计算机程序,所述计算机程序用于在被所述计算机读取运行时,执行根据本公开的第一方面所述的数据重传方法。
本公开实施例的一个有益效果在于,根据本公开的实施例,针对待确定是否需要进行重传处理的目标数据包,通过获取去除往返时间影响后的额外等待时间,并获取网络在当前时刻对应的预估丢包概率,以根据该额外等待时间和该预估丢包概率,预估目标数据包的目标丢包率,进而根据该目标丢包率,准确确定是否需要对目标数据包进行数据重传处理。区别于现有基于RTO进行数据重传时不能与确认包冗余机制进行有效协同而可能导致的无效重传问题,该方法基于网络当前的丢包率用于指导重传操作,能够在保证低时延的基础上有效降低无效重传率,从而可以进一步的节省发送端的功耗、带宽等资源,提升系统整体的传输性能。
通过以下参照附图对本说明书的示例性实施例的详细描述,本说明书的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本说明书的实施例,并且连同其说明一起用于解释本说明书的原理。
图1是本公开实施例提供的数据重传方法的流程示意图。
图2是本公开实施例提供的数据重传装置的原理框图。
图3是本公开实施例提供的电子设备的硬件结构示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<方法实施例>
现有在基于RTO进行数据重传处理时通常是基于LinuxTCPRFC6298协议的Jacobaon/Karels算法预估RTO参考值,其详细处理一般为:每次发送端接收到数据包对应的有效确认包,即ACK包之后,根据该数据包的发送时间与实际ACK包的接收时间,计算该时刻的RTT观测值RTTt,并进一步基于该值,计算得到滤波后的RTT值SRTTt以及RTO参考值RTOt,其中,时刻t表示该时刻收到了t个有效的ACK包,具体可以通过以下公式进行计算:
当t=1时:
SRTTt=RTTt
而当t>1时,
SRTTt=(1-α)×SRTTt-1+α×RTTt
其中,表示RTT测量抖动,G表示系统时钟的粒度,一般为us级别,K为常数,其数值一般为4,α=1/8,/>另外,在基于以上公式计算得到的RTOt小于预设阈值RTOmin的情况下,通常会直接将RTOt设置为RTOmin。
以上方法通过引入RTT测量平均偏差的估计以减小估计RTT时间的偏差,在某些场景下能够较好的工作。然而,在将该方法与ACK冗余机制进行协同时,其并不能有效的利用冗余的信息,这就使得如果确认包,即ACK包若一次携带信息较大并且包间隔设置较长,则发送端很可能在没有收到确认包甚至没有收到首个确认包时即触发进行无效重传;而如果在RTO参考值的基础上直接增加多个ACK包的延时作为超时重传的触发阈值,则虽然可以一定程度降低无效重传,但是过长的等待则会引入延时,从而可能导致发送端无法将数据实时传送至接收端。
为解决上述问题,本公开的实施例提供了一种数据重传方法,请参看图1,其是本公开实施例提供的数据重传方法的流程示意图。该方法可以由电子设备实施,该电子设备为数据发送端,用于向接收端传输数据包。例如,在直播场景下,主播端需要传输数据至服务器,则此时主播端使用的电子设备可以视为发送端,服务器可以被视为接收端。
如图1所述,本实施例的方法可以包括如下步骤S1100-S1400,以下予以详细说明。
步骤S1100,获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包。
目标数据包,为发送端已发送但未收到对应确认包,即ACK包的数据包。
在具体实施时,发送端可以使用任务队列管理当前所有未收到确认包的数据包,并在每次执行数据包发送处理之前,先判断该任务队列是否为空,若不为空,则从该任务队列中消费数据包作为目标数据包,以确定是否需要对该目标数据包执行数据重传处理。
在详细说明本公开实施例的方法之前,首先对接收端如何以预设冗余机制向发送端发送确认包,即发送ACK包进行说明。具体地,以tack表示接收端发送ACK包的间隔时间,即,接收端每间隔tack发送一次ACK包;以α表示ACK包的冗余度,即,每个ACK包除了携带tack时间内接收的数据包序号之外,还会额外携带前α×tack时间内收到包的序号,也就是对于某个接收端收到的包,会有连续α+1个ACK包携带该包的序号。
另外,用tdelay,c表示发送包的ACK的延迟,即接收端收到数据包到发送对应ACK包中间的间隔时间,如果收到了多个携带同一包序号的ACK包,则取最早到达的ACK包计算该序号包的ACK延迟。
在一个实施例中,所述获取目标数据包在当前时刻对应的额外等待时间,包括:获取目标数据包在当前时刻对应的实际等待时间;获取网络在当前时刻的往返时间参考值和测量抖动时间,其中,所述往返时间参考值为基于预设滤波算法对采样得到的实际往返时间进行滤波处理后得到的时间;计算该实际等待时间与该往返时间参考值和测量抖动时间之间的差值,并将该差值作为该额外等待时间。
即,目标数据包在当前时刻对应的实际等待时间可以通过计算当前时间与目标数据包的发送时间之间的差值获得,在本公开的实施例中,如无特殊说明,以表示目标数据包的实际等待时间。
该往返时间参考值、测量抖动时间可以为上述说明中基于现有滤波算法,例如Jacobaon/Karels等算法得到的SRTTt和
根据以上说明可知,目标数据包的额外等待时间可以通过获得。
步骤S1200,获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率。
在一个实施例中,所述获取网络在当前时刻对应的预估丢包率,包括:基于扩展卡尔曼滤波算法(EKF,ExtendedKalmanFilter),获取网络在当前时刻发送所述目标确认包的确认包延迟期望值;根据该确认包延迟期望值,获得该预估丢包率。
在该实施例中,在获得网络在当前时刻的确认包延迟期望值之后,可以根据以下任意一项确定当前的预估丢包率:根据该确认包延迟期望值和预设公式,计算获得该预估丢包率;以及,根据该确认包延迟期望值,在预设映射数据中查询,以获得该预估丢包率;其中,该预设映射数据为为根据预设公式预先建立的、用于反映确认包延迟与确认包预估丢包率之间对应关系的数据,该预设公式为:
其中,E(tdelay,c)表示确认包延迟期望值,β表示确认包预估丢包率,β∈[0,1]区间,tack表示所述接收端在以所述预设冗余机制发送确认包时的间隔时间,1-(β)α+1表示所述发送端收到确认包的概率,表示在确认收到确认包的条件下,前i个确认包丢失的概率,/>表示在前i个确认包丢失的情况下,所述确认包延迟期望值对应均匀分布的期望。
在该实施例中,所述基于扩展卡尔曼滤波算法,获取所述网络在当前时刻的确认包延迟期望值,包括:获取所述网络在上一时刻的第一确认包延迟期望值;将当前时刻之前采样得到的确认包延迟采样值与所述第一确认包延迟期望值的差值作为目标偏差值;根据所述第一确认包延迟期望值、所述目标偏差值和当前时刻的卡尔曼增益,获得所述确认包延迟期望值。
具体地,以表示t时刻基于EKF算法对tdelay,c进行滤波处理后得到的确认包延迟期望值,以/>表示该时刻基于返回的确认包得到的确认包延迟采样值,则第一确认包延迟期望值可以表示为/>
以Zt表示目标偏差值,以Kt表示卡尔曼增益,以及,以Pt表示预测方差估计,则在t=1时,并且Pt=10;而当t>1时,/> Pt=(1-Kt)×(Pt-1+Q),并且/>
在一个实施例中,所述卡尔曼增益可以通过以下步骤获得:获取网络在当前时刻的网络噪声估值、确认包延迟期望值对应的测量方差以及上一时刻的预测方差估值,其中,该网络噪声估值为计算确认包延迟采样值时的误差时间;根据该网络噪声估值、该测量方差和该预测方差估值,获得所述卡尔曼增益。
具体地,以Q表示网络噪声估值,即表示基于收发包的时间戳计算确认包延迟采样值时的偏差,以Rt表示tdelay,c的测量方差,则可以通过以下公式计算获得当前时刻的卡尔曼增益:
其中,Rt可以基于以下公式计算获得:
Rt=V(tdelay,c)=E((tdelay,c)2)-(E(tdelay,c))2
根据以上说明可知,当网络噪声估值较大时,则EKF算法倾向于对实测值更加敏感,虽然能够快速响应网络环境变化,但是输出稳定性相对较差;而当网络噪声估值较小时,则EKF算法倾向于收敛至历史预测值,输出较稳定,但是对于网络环境变化敏感性较差,因此,为了实现更加稳定可靠的预估确认包延迟期望值并且保证EKF算法对于网络环境变化的敏感性,本公开实施例还通过CUSUM误差累计机制对每一时刻的网络噪声估值进行自适应的调整,即,在一个实施例中,所述获取所述网络在当前时刻的网络噪声估值,包括:计算当前时刻所述目标偏差值的累计和;基于所述累积和以及预设噪声触发阈值,设置所述网络噪声估值。
即,可以在基于EKF算法迭代估算当前的确认包延迟期望值的过程中,对每次迭代过程中的目标偏差值Zt进行累积,并通过比较其与预设噪声触发阈值的大小调整网络噪声估值的大小,其详细处理过程可以使用以下公式表示:
其中,表示t时刻的误差的累积和,Lgate表示预设噪声触发阈值,q为误差的容忍值,即在[-q,q]范围内的误差被认为是合理的偏差,Q+和Q-分别对应较大较小的Qt取值。
在通过EKF算法滤波得到网络当前的确认包延迟期望值之后,即可基于上述预设公式或者基于该预设公式预先建立的预设映射数据,得到网络在当前时刻丢失确认包的预估概率βeval。
需要说明的是,在本公开的一个优选实施例中,为减少计算量,可以直接基于上述预设公式获取所述预设映射数据,这样,在每次需要获取该预估丢包率时,只需要根据得到的确认包延迟期望值在该预设映射数据中查询即可获得该预估丢包率;另外,在计算上述Rt时,也可以预先建立其对应的映射数据,其详细处理过程此处不再赘述。
步骤S1300,根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率。
在基于上述步骤分别获得目标数据包在当前时刻的额外等待时间以及,获取到网络当前丢失确认包的预估概率βeval之后,即可根据计算获取网络当前丢失该目标数据包的目标丢包率。
具体地,该目标丢包率可以通过以下步骤获得:
在的情况下,确定该目标数据包的第一个确认包还未到达发送端,此时发送端保持继续等待;在/>的情况下,确定接收端在以冗余机制发送目标确认包时,第一个目标确认包发生丢失或者目标数据包发生了丢失,则此时的目标丢包率ploss=1-βeval;在/> 认为前i个目标确认包都发生了丢失或目标数据包发生丢包,此时的目标丢包率为ploss=1-(βeval)i;以及,在/>的情况下,确定目标数据包已经丢失,目标丢包率ploss=1。
步骤S1400,根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。
在经过以上步骤S1300计算得到目标数据包的目标丢包率之后,即可基于该目标丢包率,确定是否对目标数据包进行数据重传处理。
具体地,在单独实施本实施例提供的方法的情况下,所述根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理,包括:在目标丢包率不小于第一预设阈值的情况下,对目标数据包进行数据重传处理。
另外,在将本实施例提供的方法与其他预设重传算法,例如,RTO超时重传进行协同时,所述根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理,还包括:获取第一参考结果,其中,该第一参考结果为基于预设数据重传算法得到的、表示是否对该目标数据包进行数据重传处理的结果;根据该目标丢包率和第二预设阈值,获得第二参考结果,其中,该第二预设阈值小于该第一预设阈值;通过比较第一参考结果和第二参考结果是否一致,以确定是否对所述目标数据包进行数据重传处理。
综上所述,本公开的实施例提供的数据重传方法,针对待确定是否需要进行重传处理的目标数据包,通过获取去除往返时间影像后的额外等待时间,并获取网络在当前时刻对应的预估丢包概率,以根据该额外等待时间和该预估丢包概率,预估目标数据包的目标丢包率,进而根据该目标丢包率,准确确定是否需要对目标数据包进行数据重传处理。区别于现有基于RTO进行数据重传时不能与确认包冗余机制进行有效协同而可能导致的无效重传问题,该方法基于网络当前的丢包率用于指导重传操作,能够在保证低时延的基础上有效降低无效重传率,从而可以进一步的节省发送端的功耗、带宽等资源,提升系统整体的传输性能。
<装置实施例>
与上述方法实施例相对应,在本实施例中,还提供一种数据重传装置,如图2所述,该装置200可以包括额外等待时间获得模块210、预估丢包率获得模块220、目标丢包率获得模块230和重传处理模块240。
该额外等待时间获得模块210,用于获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包;该预估丢包率获得模块220,用于获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;该目标丢包率获得模块230,用于根据所述额外等待时间和所述预估丢包率,获得所述目标确认包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率;该重传处理模块240,用于根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。
<设备实施例>
在本实施例中,还提供一种电子设备,如图3所述,该电子设备300可以包括处理器320和存储器310,该存储器310用于存储可执行的指令;该处理器320用于根据指令的控制运行电子设备以执行根据本公开任意实施例的数据重传方法。
<计算机可读存储介质实施例>
本实施例提供了一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行本说明书任意方法实施例中描述的数据重传方法。
附图中的流程图和框图显示了根据本说明书的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人物来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本说明书的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人物来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人物能理解本文披露的各实施例。本申请的范围由所附权利要求来限定。
Claims (12)
1.一种数据重传方法,其特征在于,包括:
获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包;
获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;
根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率;
根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理;
其中,所述根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,包括:
根据所述额外等待时间和接收端在以预设冗余机制发送确认包时的间隔时间,确定所述目标确认包丢失的个数;
根据所述目标确认包丢失的个数和所述预估丢包率,得到所述目标数据包在当前时刻的目标丢包率。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标丢包率,对所述目标数据包进行数据重传处理,包括:
在所述目标丢包率不小于第一预设阈值的情况下,对所述目标数据包进行数据重传处理。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标丢包率,对所述目标数据包进行数据重传处理,还包括:
获取第一参考结果,其中,所述第一参考结果为基于预设数据重传算法得到的、表示是否对所述目标数据包进行数据重传处理的结果;
根据所述目标丢包率和第二预设阈值,获得第二参考结果,其中,所述第二预设阈值小于所述第一预设阈值;
通过比较所述第一参考结果和所述第二参考结果是否一致,以确定是否对所述目标数据包进行数据重传处理。
4.根据权利要求1所述的方法,其特征在于,所述获取所述网络在当前时刻对应的预估丢包率,包括:
基于扩展卡尔曼滤波算法,获取所述网络在当前时刻发送所述目标确认包的确认包延迟期望值;
根据所述确认包延迟期望值,获得所述预估丢包率。
5.根据权利要求4所述的方法,其特征在于,所述根据所述确认包延迟期望值,获得所述预估丢包率,包括以下至少一项:
根据所述确认包延迟期望值和预设公式,计算获得所述预估丢包率;
根据所述确认包延迟期望值,在预设映射数据中查询,以获得所述预估丢包率;
其中,所述预设映射数据为根据所述预设公式预先建立的、用于反映确认包延迟与确认包预估丢包率之间对应关系的数据;所述预设公式为:
其中,E(tdelay,c)表示确认包延迟期望值,β表示确认包预估丢包率,
β∈[0,1]区间,tack表示所述接收端在以所述预设冗余机制发送确认包时的间隔时间,α表示确认包的冗余度。
6.根据权利要求4所述的方法,其特征在于,所述基于扩展卡尔曼滤波算法,获取所述网络在当前时刻的确认包延迟期望值,包括:
获取所述网络在上一时刻的第一确认包延迟期望值;
将当前时刻之前采样得到的确认包延迟采样值与所述第一确认包延迟期望值的差值作为目标偏差值;
根据所述第一确认包延迟期望值、所述目标偏差值和当前时刻的卡尔曼增益,获得所述确认包延迟期望值。
7.根据权利要求6所述的方法,其特征在于,所述卡尔曼增益通过以下步骤获得:
获取所述网络在当前时刻的网络噪声估值、所述确认包延迟期望值对应的测量方差以及上一时刻的预测方差估值,其中,所述网络噪声估值为计算所述确认包延迟采样值时的误差时间;
根据所述网络噪声估值、所述测量方差和所述预测方差估值,获得所述卡尔曼增益。
8.根据权利要求7所述的方法,其特征在于,所述获取所述网络在当前时刻的网络噪声估值,包括:
计算当前时刻所述目标偏差值的累积和;
基于所述累积和以及预设噪声触发阈值,设置所述网络噪声估值。
9.根据权利要求1所述的方法,其特征在于,所述获取目标数据包在当前时刻对应的额外等待时间,包括:
获取所述目标数据包在当前时刻对应的实际等待时间;
获取所述网络在当前时刻的往返时间参考值和测量抖动时间,其中,所述往返时间参考值为基于预设滤波算法对采样得到的实际往返时间进行滤波处理后得到的时间;
计算所述实际等待时间与所述往返时间参考值和测量抖动时间之间的差值,并将所述差值作为所述额外等待时间。
10.一种数据重传装置,其特征在于,包括:
额外等待时间获得模块,用于获取目标数据包在当前时刻对应的额外等待时间,其中,所述额外等待时间为去除网络传输数据的往返时间影响后、发送端额外等待目标确认包所消耗的时间,所述目标确认包为接收端在成功接收到所述目标数据包之后,以预设冗余机制发送给所述发送端以提示确认收到所述目标数据包的数据包;
预估丢包率获得模块,用于获取所述网络在当前时刻对应的预估丢包率,其中,所述预估丢包率表示所述网络当前丢失确认包的预估概率;
目标丢包率获得模块,用于根据所述额外等待时间和所述预估丢包率,获得所述目标确认包在当前时刻的目标丢包率,其中,所述目标丢包率表示所述网络丢失所述目标数据包的概率,其中,所述根据所述额外等待时间和所述预估丢包率,获得所述目标数据包在当前时刻的目标丢包率,包括:根据所述额外等待时间和接收端在以预设冗余机制发送确认包时的间隔时间,确定所述目标确认包丢失的个数;根据所述目标确认包丢失的个数和所述预估丢包率,得到所述目标数据包在当前时刻的目标丢包率;
重传处理模块,用于根据所述目标丢包率,确定是否对所述目标数据包进行数据重传处理。
11.一种电子设备,其特征在于,包括:
存储器,用于存储可执行的指令;
处理器,用于根据所述指令的控制运行所述电子设备执行如权利要求1-8任意一项所述的数据重传方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有可被计算机读取执行的计算机程序,所述计算机程序用于在被所述计算机读取运行时,执行根据权利要求1-8中任意一项所述的数据重传方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210115103.7A CN114531210B (zh) | 2022-02-03 | 2022-02-03 | 数据重传方法、装置、电子设备及存储介质 |
PCT/CN2023/074161 WO2023147772A1 (zh) | 2022-02-03 | 2023-02-01 | 数据重传方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210115103.7A CN114531210B (zh) | 2022-02-03 | 2022-02-03 | 数据重传方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114531210A CN114531210A (zh) | 2022-05-24 |
CN114531210B true CN114531210B (zh) | 2024-01-26 |
Family
ID=81622530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210115103.7A Active CN114531210B (zh) | 2022-02-03 | 2022-02-03 | 数据重传方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114531210B (zh) |
WO (1) | WO2023147772A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114531210B (zh) * | 2022-02-03 | 2024-01-26 | 百果园技术(新加坡)有限公司 | 数据重传方法、装置、电子设备及存储介质 |
CN117938980B (zh) * | 2024-03-21 | 2024-06-07 | 北京火山引擎科技有限公司 | 应用于内容分发网络的数据传输方法、装置、设备及介质 |
CN118282926A (zh) * | 2024-04-07 | 2024-07-02 | 中科诺信集团有限公司 | 一种自动与默认混合的进阶传输选径方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106301714A (zh) * | 2016-08-16 | 2017-01-04 | 浙江大华技术股份有限公司 | 一种数据传输方法及装置 |
WO2018014552A1 (zh) * | 2016-07-19 | 2018-01-25 | 华为技术有限公司 | 用于数据传输的方法和装置 |
CN108377427A (zh) * | 2018-01-29 | 2018-08-07 | 明博教育科技股份有限公司 | 一种实时视频传输方法和系统 |
CN108494782A (zh) * | 2018-03-28 | 2018-09-04 | 深圳市网心科技有限公司 | 一种基于udp的数据传输方法、终端设备及存储介质 |
WO2018205688A1 (zh) * | 2017-05-12 | 2018-11-15 | 华为技术有限公司 | 一种数据传输的方法、装置和系统 |
WO2020125647A1 (zh) * | 2018-12-17 | 2020-06-25 | 杭州海康威视数字技术股份有限公司 | 重传数据的方法、装置和系统 |
KR20200107717A (ko) * | 2019-03-07 | 2020-09-16 | 삼성전자주식회사 | 무선 통신 시스템에서 데이터를 송수신하기 위한 장치 및 방법 |
CN112713967A (zh) * | 2020-12-30 | 2021-04-27 | 北京猿力未来科技有限公司 | 数据传输方法及装置 |
CN112821992A (zh) * | 2021-01-08 | 2021-05-18 | 百果园技术(新加坡)有限公司 | 数据传输方法、装置、电子设备和存储介质 |
US11153779B2 (en) * | 2019-03-07 | 2021-10-19 | Samsung Electronics Co., Ltd. | Apparatus and method for transmitting and receiving data based on an identified event in wireless communication system |
CN113612589A (zh) * | 2021-08-18 | 2021-11-05 | 百果园技术(新加坡)有限公司 | 一种数据重传的方法、装置、设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101527674B (zh) * | 2008-03-04 | 2011-04-27 | 中国移动通信集团公司 | 一种数据处理的方法及装置 |
CN113595929B (zh) * | 2020-04-30 | 2022-07-26 | 荣耀终端有限公司 | 一种重排序定时器时长的调整方法及装置 |
CN114531210B (zh) * | 2022-02-03 | 2024-01-26 | 百果园技术(新加坡)有限公司 | 数据重传方法、装置、电子设备及存储介质 |
-
2022
- 2022-02-03 CN CN202210115103.7A patent/CN114531210B/zh active Active
-
2023
- 2023-02-01 WO PCT/CN2023/074161 patent/WO2023147772A1/zh unknown
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018014552A1 (zh) * | 2016-07-19 | 2018-01-25 | 华为技术有限公司 | 用于数据传输的方法和装置 |
CN106301714A (zh) * | 2016-08-16 | 2017-01-04 | 浙江大华技术股份有限公司 | 一种数据传输方法及装置 |
WO2018205688A1 (zh) * | 2017-05-12 | 2018-11-15 | 华为技术有限公司 | 一种数据传输的方法、装置和系统 |
CN108377427A (zh) * | 2018-01-29 | 2018-08-07 | 明博教育科技股份有限公司 | 一种实时视频传输方法和系统 |
CN108494782A (zh) * | 2018-03-28 | 2018-09-04 | 深圳市网心科技有限公司 | 一种基于udp的数据传输方法、终端设备及存储介质 |
WO2020125647A1 (zh) * | 2018-12-17 | 2020-06-25 | 杭州海康威视数字技术股份有限公司 | 重传数据的方法、装置和系统 |
KR20200107717A (ko) * | 2019-03-07 | 2020-09-16 | 삼성전자주식회사 | 무선 통신 시스템에서 데이터를 송수신하기 위한 장치 및 방법 |
US11153779B2 (en) * | 2019-03-07 | 2021-10-19 | Samsung Electronics Co., Ltd. | Apparatus and method for transmitting and receiving data based on an identified event in wireless communication system |
CN112713967A (zh) * | 2020-12-30 | 2021-04-27 | 北京猿力未来科技有限公司 | 数据传输方法及装置 |
CN112821992A (zh) * | 2021-01-08 | 2021-05-18 | 百果园技术(新加坡)有限公司 | 数据传输方法、装置、电子设备和存储介质 |
CN113612589A (zh) * | 2021-08-18 | 2021-11-05 | 百果园技术(新加坡)有限公司 | 一种数据重传的方法、装置、设备和存储介质 |
Non-Patent Citations (5)
Title |
---|
An Adaptive Media-Aware Retransmission Timeout Estimation Method for Low-Delay Packet Video;Ali C. Begen;IEEE Transactions on Multimedia ( Volume: 9, Issue: 2, February 2007);全文 * |
TCP-HY:优化TCP在混合IP网络环境中的效率;徐航宇;罗键;;计算机技术与发展(第11期);全文 * |
一类时延马氏跳跃线性系统在多业务网络中的控制问题研究;刘义;康宇;何恩宇;王俊;;中国科学技术大学学报(第02期);全文 * |
无线网络中改进TCP性能的两种方法;杨家珍;章韵;;软件导刊(第09期);全文 * |
面向服务质量的网络拥塞控制技术研究;李世畅;博士论文数据库;全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2023147772A1 (zh) | 2023-08-10 |
CN114531210A (zh) | 2022-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114531210B (zh) | 数据重传方法、装置、电子设备及存储介质 | |
EP3707882B1 (en) | Multi-path rdma transmission | |
US8493859B2 (en) | Method and apparatus for adaptive bandwidth control with a bandwidth guarantee | |
US6622172B1 (en) | Dynamically delayed acknowledgement transmission system | |
US7299280B2 (en) | Method and apparatus for TCP with faster recovery | |
US11418446B2 (en) | Technologies for congestion control for IP-routable RDMA over converged ethernet | |
US7474614B2 (en) | Method and apparatus for adaptive bandwidth control with user settings | |
WO2020125647A1 (zh) | 重传数据的方法、装置和系统 | |
US20140355432A1 (en) | Adaptive Bandwidth Control with Defined Priorities for Different Networks | |
US11671210B2 (en) | Retransmission control method, communications interface, and electronic device | |
US10128987B2 (en) | Scalable receive window auto-tuning | |
CN113014505A (zh) | 一种高动态拓扑卫星网络中时延区分的传输控制方法 | |
US20120158957A1 (en) | Relay apparatus and communication method | |
CN112230880B (zh) | 一种数据传输控制方法、装置、fpga及介质 | |
JP2004080070A (ja) | データ転送方法及びデータ転送システム並びにコンテンツ配信システム | |
US10063489B2 (en) | Buffer bloat control | |
CN117676695A (zh) | Tcp传输方法、装置和系统 | |
CN113612589B (zh) | 一种数据重传的方法、装置、设备和存储介质 | |
US9882751B2 (en) | Communication system, communication controller, communication control method, and medium | |
WO2023083143A1 (zh) | 入向码流码率获取方法、收流处理方法、电子设备、介质 | |
CN115396066A (zh) | 数据包重传方法、装置、设备及存储介质 | |
CN116962258A (zh) | 一种带宽探测方法、装置、系统、设备及存储介质 | |
CN117692392A (zh) | 重传超时时长确定方法、装置、电子设备及存储介质 | |
CN117692396A (zh) | 一种复杂网络环境下的tcp单边加速方法及装置 | |
CN112311688A (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 |