技术新讯 > 电子通信装置的制造及其应用技术 > 数据选择重传方法、相关装置和介质与流程  >  正文

数据选择重传方法、相关装置和介质与流程

  • 国知局
  • 2024-09-11 14:55:04

本公开涉及通信领域,尤其是一种数据选择重传方法、相关装置和介质。

背景技术:

1、远程直接内存访问技术(remote direct memory access,rdma)是一种高效的网络通信技术,它允许网络上的计算机直接在彼此的内存中进行数据交换,而不需要cpu的介入,这大大提高了数据传输的速度并减少了延迟。rdma技术是现代数据中心和高性能计算环境中的关键组件,尤其是在需要高吞吐量和低延迟网络的场景下。

2、相关技术中,rdma选择重传技术主要在接收端rnic网卡上实施,以改进回退n帧(go-back-n,gbn)算法的带宽浪费以及延迟增大问题。由于基于rnic网卡的选择重传技术中丢失的报文在选择重传时至少要经过1个rtt时间才能开始重传,传输延迟太大,尤其在长距离广域网上更加明显。如何减少rdma传输延迟,是当下亟待讨论的问题。

技术实现思路

1、本公开实施例提供一种数据选择重传方法、相关装置和介质,旨在能够减少rdma传输延迟。

2、第一方面,本公开实施例提供一种数据选择重传方法,所述方法包括:

3、接收数据源端发送的待检测数据包;

4、如果所述待检测数据包是拟丢弃数据包,对所述拟丢弃数据包进行类型判断;

5、当确定所述拟丢弃数据包的类型是远程直接数据存储数据包,将拟丢弃的远程直接数据存储数据包进行缓存和计数;

6、直至检测到新接收到的所述待检测数据包不是拟丢弃数据包,获取针对所述拟丢弃的远程直接数据存储数据包进行缓存和计数得到的拟丢弃信息,并根据所述拟丢弃信息构建所述待检测数据包的否定应答信息;

7、将所述否定应答信息发送至所述数据源端,所述否定应答信息用于通知所述数据源端重新发送所述拟丢弃的远程直接数据存储数据包。

8、第二方面,本公开实施例提供一种数据选择重传装置,包括:

9、数据包获取单元,用于接收数据源端发送的待检测数据包;

10、类型判断单元,用于如果所述待检测数据包是拟丢弃数据包,对所述拟丢弃数据包进行类型判断;

11、信息缓存单元,用于当确定所述拟丢弃数据包的类型是远程直接数据存储数据包,将拟丢弃的远程直接数据存储数据包进行缓存和计数;

12、信息构建单元,用于直至检测到新接收到的所述待检测数据包不是拟丢弃数据包,获取针对所述拟丢弃的远程直接数据存储数据包进行缓存和计数得到的拟丢弃信息,并根据所述拟丢弃信息构建所述待检测数据包的否定应答信息;

13、应答发送单元,用于将所述否定应答信息发送至所述数据源端,所述否定应答信息用于通知所述数据源端重新发送所述拟丢弃的远程直接数据存储数据包。

14、可选地,所述信息缓存单元具体用于:

15、每当识别到一个所述拟丢弃的远程直接数据存储数据包,提取所述拟丢弃的远程直接数据存储数据包的标识;

16、将所述标识放入缓存队列中,并将所述拟丢弃的远程直接数据存储数据包的计数数量加一。

17、可选地,所述信息构建单元具体用于:

18、从所述缓存队列中取出全部所述标识;

19、获取构建所述否定应答信息时的所述计数数量;

20、根据全部所述标识和所述计数数量,构建所述否定应答信息;

21、所述信息构建单元具体还用于:

22、将所述缓存队列清空;

23、将所述计数数量置0。

24、可选地,所述信息构建单元具体用于:

25、在所述计数数量大于预设阈值的情况下,接收所述数据源端发送的下一个数据包;

26、如果所述下一个数据包是拟丢弃数据包,对所述拟丢弃数据包进行类型判断;

27、当所述拟丢弃数据包是所述远程直接数据存储数据包,获取所述缓存队列中的全部所述标识,获取当前的所述计数数量并加一得到第一数量,根据全部所述标识和所述第一数量构建所述下一个数据包的所述否定应答信息;

28、如果所述下一个数据包不是拟丢弃数据包,获取所述缓存队列中的全部所述标识,获取当前的所述计数数量,根据全部所述标识和所述计数数量构建所述下一个数据包的所述否定应答信息。

29、可选地,所述信息构建单元具体用于:

30、当所述缓存队列满队,获取当前的所述拟丢弃的远程直接数据存储数据包;

31、根据所述缓存队列中的全部所述标识和所述计数数量,构建当前的所述拟丢弃的远程直接数据存储数据包的所述否定应答信息;

32、清空所述缓存队列,并将所述计数数量置0。

33、可选地,所述装置还包括丢弃标记单元,所述丢弃标记单元用于:

34、根据当前网络拥塞情况计算所述待检测数据包的拟丢弃概率;

35、当所述拟丢弃概率大于概率阈值,在所述待检测数据包的头部添加拟丢弃标志,所述拟丢弃标志用于指示所述交换机对应的所述待检测数据包将会被丢弃。

36、可选地,所述类型判断单元具体用于:

37、对所述拟丢弃数据包进行解析,获取所述拟丢弃数据包的以太类型;

38、如果所述以太类型与第一版基于以太网的远程直接内存访问协议的远程直接数据存储类型匹配,则确定所述拟丢弃数据包是所述远程直接数据存储数据包;

39、如果所述以太类型与第一版基于以太网的远程直接内存访问协议的远程直接数据存储类型不匹配,判断所述以太类型是否与ipv4或者ipv6类型匹配;

40、如果所述以太类型与网际互连协议第四版或者网际互连协议第六版类型匹配,获取所述拟丢弃数据包的网际互连协议头部后是否为用户数据报协议头部;

41、如果所述网际互连协议头部后是所述用户数据报协议头部,获取所述用户数据报协议头部中的目的端口地址;

42、如果所述目的端口地址与第二版基于以太网的远程直接内存访问协议的远程直接数据存储类型匹配,确定所述拟丢弃数据包是所述远程直接数据存储数据包。

43、第三方面,本公开实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面中的数据选择重传方法。

44、第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行所述计算机程序时实现如第一方面中的数据选择重传方法。

45、第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序或计算机指令,所述计算机程序或所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序或所述计算机指令,所述处理器执行所述计算机程序或所述计算机指令,使得所述计算机设备执行如第一方面中的数据选择重传方法。

46、本公开实施例中在交换机中对数据源端发送的数据包进行过滤筛选,将可能会被丢弃的远程直接数据存储数据包过滤出来,在交换机端就向发送的数据源端申请rdma数据重传。相比于现有技术中由数据接收端根据接收到的数据包情况逐个发送应答信息和否定应答信息来通知数据发送端哪些数据发生了丢失需要重传,本公开通过在交换机中就对数据接收端可能会丢失的远程直接数据存储数据包筛选出来以向数据源端申请重传,能够节省重传流程,缩短重传时间,不需要等数据到了数据接收端才确定是否需要重传,减少rdma传输延迟。本公开还通过对拟丢弃的远程直接数据存储数据包进行缓存和计数,再通过在正常数据包的接收应答中加入该正常数据包之前收到的拟丢弃的远程直接数据存储数据包对应的拟丢弃信息,生成否定应答信息。这样子通过一个应答信息携带之前的多个拟丢弃的远程直接数据存储数据包对应的拟丢弃信息以通知数据源端重传数据,相比于逐个构建拟丢弃的远程直接数据存储数据包的否定应答信息,减少了否定应答信息构建次数,节约系统资源,也减少了否定应答信息的数量,从而减少带宽浪费。

47、本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

本文地址:https://www.jishuxx.com/zhuanli/20240911/292560.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。