用于首选数据包的选择性多数据包传输的装置和方法制造方法及图纸

技术编号:33540431 阅读:25 留言:0更新日期:2022-05-21 09:46
公开了一种用于首选数据包的选择性多数据包传输的设备和方法。在本公开中,该设备用于从待发送的多个连续数据包中识别数据包;以及,与多个连续数据包中的其他数据包一起,通过网络多次重复发送该识别出的数据包。该识别出的数据包(也称为“首选数据包”)对于发送该数据包的应用,是包含关键数据的数据包。举例来说,识别出的数据包可以对应于每个远程直接内存访问(remote direct memory access,RDMA)事务的第一个数据包,或者在基于远程直接内存访问(RDMA)的无限带宽(InfiniBand)中对应于包括扩展传输头(extended transport header,ETH)的数据包。通过提前对该识别出的数据包进行多次重复发送,可以在对该识别出的数据包的较大接收概率下实现较低的递送时间。数据包的较大接收概率下实现较低的递送时间。数据包的较大接收概率下实现较低的递送时间。

【技术实现步骤摘要】
【国外来华专利技术】用于首选数据包的选择性多数据包传输的装置和方法


[0001]本公开涉及通信系统,并且更具体地但非排他地,涉及一种用于首选数据包的选择性多数据包传输的装置和方法。

技术介绍

[0002]诸如传输控制协议(transport control protocol,TCP)的可靠传输协议已经部署了许多年。通过使用从接收方到发送方(transmitter/sender)的肯定应答(acknowledgment,ACK)消息保证这些协议的可靠性,该ACK消息用于已经被接收器成功接收的数据包。对未被肯定应答的数据包进行重传。
[0003]现有常见的重传方法有回退n帧(Go

back

N)和选择性重传(selective repeat)。在Go

Back

N方法中,发射器保留未被肯定应答的(最多N个)数据包的集合,其中N是预定义的数据包数量。在特定数据包发生超时且未接收到ACK时,或者是在接收到对特定数据包的否定应答(negative ACK,NACK)时,将重传全部的(最多)N个未被肯定应答的数据包。
[0004]图1A示意性地示出了Go

back

N重传方法的示例,其中以N=3为例。发射器110向接收器111发送多个数据包101、102、103、和104。数据包101在接收器111处被成功接收,并且对于数据包101的ACK被发送到发射器110。数据包102没有被接收器111接收到,并且由于数据包102丢失,数据包103和104被接收器111接收到但是未被肯定应答。因此,发射器重传未被肯定应答的最后三个数据包,即数据包102、103、和104。在重传后,全部的三个数据包102、103、和104都在接收器111处被成功接收并被肯定应答。
[0005]在选择性重传方法中,接收器使用NACK消息或选择性肯定应答(selective ACK,SACK)消息指示丢失的数据包,该NACK消息或SACK消息告知接收到哪些数据包以及丢失了哪些数据包。作为回应,发射器选择性地仅重传接收到对于该数据包的NACK消息的数据包。在Go

Back

N方法和选择性重传方法中,重传都是由超时(在没有接收到ACK时),或接收到NACK消息或SACK消息所触发的。然而,在选择性重传方法中,只对未被肯定应答的特定数据包执行重传,而非对N个数据包的整个集合执行重传。
[0006]图1B示意性地示出了选择性重传方法的示例。发射器160向接收器161发送多个数据包151、152、153、154、155、和156。数据包151在接收器161处被成功接收,并且对于数据包151的ACK被发送到发射器160。数据包152没有被接收器161接收到。数据包153、154、和155在接收器161处被接收到,并且数据包153、154、和155分别通过每个数据包对应的ACK被肯定应答,其中该ACK包括对于数据包152的NACK。该包括NACK的ACK消息是SACK消息。因此,发射器160在接收到第一个NACK后(即在发送数据包155后)仅重传数据包152。

技术实现思路

[0007]本公开的目的是提供一种数据包发送设备、一种数据包接收设备、一种数据包发送方法、一种数据包接收方法、以及一种包括程序代码的计算机程序产品,当该程序代码在处理器中实现时,用于执行上述数据包发送方法和/或数据包接收方法。
[0008]通过独立权利要求的特征实现上述目的和其他目的。在从属权利要求、说明书、以及附图中,进一步的实施方式是显而易见的。
[0009]根据本公开的第一方面,公开了一种数据包发送设备。该设备用于从待发送的多个连续数据包中识别数据包;以及,与多个连续数据包中的其他数据包一起,通过网络多次重复发送该识别出的数据包。该识别出的数据包(也称为“首选数据包”)对于发送该数据包的应用,是包含关键数据的数据包。当该识别出的数据包丢失时,应用的性能损失很大。通过提前将识别出的数据包进行多次重复发送,可以以对该识别出的数据包的较大接收概率实现较低的递送时间。在实施方式中,该设备可以是网络接口卡(network interface card,NIC),或部署有NIC的网络设备。
[0010]在第一方面的进一步实施方式中,该设备还用于动态监测网络的至少一个网络参数,其中,对识别出的数据包的重复发送是响应于该至少一个网络参数不符合预定义的服务质量(quality of service,QoS)值而执行的。因此,不同的重复发送适用于由不符合预定义的QoS值的至少一个网络参数指示出的不同问题。预定义的QoS值可以是例如待发送的应用数据的特定优先级。
[0011]在第一方面的进一步实施方式中,该设备用于与多个连续数据包中的其他数据包一起,通过网络连续多次重复发送该识别出的数据包。这种实施方式克服了例如网络的丢包率问题,该丢包率将导致随机的数据包丢失。例如,任何网络都有百分之一到百分之五的丢包率,因此连续重复发送识别出的数据包可以保证在接收器处接收到重复的数据包。
[0012]在第一方面的进一步实施方式中,该设备用于计算多个发送间隔,该多个发送间隔是重复发送选自多个连续数据包中的识别出的数据包的发送间隔;以及,与多个连续数据包中的其他数据包一起,通过网络以该多个发送间隔重复发送识别出的数据包。以此方式,计算结果可以为重复发送提供合适的发送间隔,从而提高重复重传的适用性。
[0013]在第一方面的进一步实施方式中,该设备用于根据以下准则中的至少一项计算重复发送选自多个连续数据包中的识别出的数据包的多个发送间隔:网络的往返时延(round

trip

time,RTT)、突发大小、和丢包率。以此方式,可以根据网络的固有参数确定计算的发送间隔,从而可以更容易地实现实施方式。
[0014]在第一方面的进一步实施方式中,发送间隔是连续数据包之间的位置间隔和/或时间间隔。网络中的问题有时候是与时间有关的问题,则每个计算出的重复发送的时间间隔允许更高的接收概率。网络中的问题有时候与连续数据包之间的位置有关,则每个计算出的重复发送的位置间隔允许更高的接收概率。例如,在每10个数据包中就有一个数据包丢失的情况下,计算出的位置间隔可以是5,从而每5个数据包就发送一次识别出的数据包,以确保该识别出的数据包被接收到。在另一种情况下,每10毫秒就有一个数据包丢失,计算出的时间间隔可以是5毫秒,从而每5毫秒就发送一次识别出的数据包,以确保该识别出的数据包被接收到。
[0015]在第一方面的进一步实施方式中,重复次数为正整数x,该正整数x是预定义的或动态变化的。以此方式,重复次数动态地适应变化的网络条件,以允许对该识别出的数据包的更高的接收概率。
[0016]在第一方面的进一步实施方式中,该设备还用于响应于以下至少之一,停止该识别出的数据包的重复发送:在完成对识别出的数据包的所有本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种数据包发送设备(210),用于:从待发送的多个连续数据包中识别数据包;以及与所述多个连续数据包中的其他数据包一起,通过网络多次重复发送识别出的所述数据包。2.根据权利要求1所述的设备(210),还用于:动态监测所述网络的至少一个网络参数,其中,对识别出的数据包的所述重复发送是响应于所述至少一个网络参数不符合预定义的服务质量QoS值而执行的。3.根据权利要求1或2所述的设备(210),用于:与所述多个连续数据包中的其他数据包一起,通过所述网络连续多次重复发送识别出的所述数据包。4.根据权利要求1或2所述的设备(210),用于:计算重复发送选自所述多个连续数据包的识别出的所述数据包的多个发送间隔;以及与所述多个连续数据包中的其他数据包一起,通过所述网络以所述多个发送间隔重复发送识别出的所述数据包。5.根据权利要求4所述的设备(210),用于:根据以下准则中的至少一项计算重复发送选自所述多个连续数据包的识别出的所述数据包的所述多个发送间隔:所述网络的往返时延RTT、突发大小、和丢包率。6.根据权利要求4或5所述的设备(210),其中,所述发送间隔是所述连续数据包之间的位置间隔和/或时间间隔。7.根据前述任意一项权利要求所述的设备(210),其中,所述重复的次数是正整数x,所述正整数x是预定义的或动态变化的。8.根据前述任意一项权利要求所述的设备(210),还用于:响应于以下至少之一,停止识别出的所述数据包的所述重复发送:在完成对识别出的所述数据包的所有重复发送之前,接收到对于识别出的所述数据包的至少一个所述重复发送的成功发送的肯定应答ACK;接收到对于在识别出的所述数据包之后发送的任何数据包序列的成功发送的肯定应答ACK;以及没有选择性ACK机制的指示通知未接收到识别出的所述数据包。9.根据前述任意一项权利要求所述的设备(210),还用于:响应于以下至少之一,重传识别出的所述数据包的重复发送:接收到对于识别出...

【专利技术属性】
技术研发人员:本沙哈尔
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1