用于远程直接数据存取的设备和方法技术

技术编号:38135581 阅读:10 留言:0更新日期:2023-07-08 09:46
本公开涉及一种用于RDMA的设备和方法。具体地,本公开提出一种网络设备,用于向另一个网络设备传输输出数据包。特别地,输出数据包是基于QUIC的数据包,包括UDP标头,QUIC标头和QUIC有效载荷。特别地,输出数据包的UDP标头包括一种指示,指示输出数据包的QUIC有效载荷包括至少一个RDMA事务。此外,输出数据包的QUIC有效载荷包括至少一个RDMA事务。进而,提供了一种在QUIC传输协议上运行RDMA而不影响其他应用程序的解决方案。应用程序的解决方案。应用程序的解决方案。

【技术实现步骤摘要】
用于远程直接数据存取的设备和方法


[0001]本公开涉及高性能计算技术,特别地,涉及RDMA(远程直接数据存取)技术。本公开允许在基于数据包的网络上传输RDMA事务。为此,本公开提供了一种用于RDMA的设备,方法和数据包格式。

技术介绍

[0002]高性能计算(HPC)应用程序通常要求计算机能够存取位于远程计算机上的数据。RDMA技术允许计算机执行此类数据存取操作,而不涉及在计算机上运行的操作系统。
[0003]如今,有两种常见的RDMA技术:一种是在无限带宽(IB)规范中限定的,而另一种是由互联网工程任务组(IETF)限定的。IETF协议也指因特网广域RDMA协议(iWARP)。具体地,IB RDMA有两个变体,允许其在IP/以太网网络上运行。聚合以太网上的RDMA(RoCE)的这两个版本分别指RoCE(或RoCEv1)和RoCEv2。
[0004]RDMA技术的所需属性包括:基于数据包的(以太网/IP)网络上的RDMA传输;广域网(WAN)上的RDMA传输,快速连接设置,内置可靠性(无损或快速恢复),快速连接迁移,低延迟,总体带宽利用率和基础架构无变化(例如,与RoCE相反,RoCE依赖于诸如优先级流控制之类的基础架构特征)。
[0005]现有的RDMA解决方案的主要问题在于,现有的解决方案都没有提供RDMA技术的全部所需属性,而每个解决方案仅提供这些属性的一部分。

技术实现思路

[0006]鉴于上述挑战,本公开的实施例旨在介绍一种用于传输RDMA事务的设备和方法。特别地,目的是在基于数据包的网络上传输RDMA事务。一个目标是提供一种具有高可靠性的RDMA传输方法。此外,最好是启用上述所有RDMA技术的所需属性。
[0007]该目的通过所附的独立权利要求所述的本公开的实施例实现。在从属权利要求中进一步限定了本公开实施例的有利实现方式。
[0008]本公开的第一方面提供了一种用于RDMA的网络设备。所述网络设备用于向另一个网络设备传输输出数据包。传输的所述输出数据包是基于快速用户数据报协议网络连接(QUIC)的数据包。所述输出数据包包括用户数据报协议(UDP)标头,QUIC标头和QUIC有效载荷。所述输出数据包的所述UDP标头包括一种指示,指示所述输出数据包的所述QUIC有效载荷包括至少一个RDMA事务,以及所述输出数据包的所述QUIC有效载荷包括至少一个RDMA事务。
[0009]本公开的实施例提供了一种在基于QUIC的传输协议上运行RDMA的解决方案。该解决方案提供了RDMA技术的上述所需属性。值得注意的是,QUIC是一种在IETF中限定的传输层技术。它是一种可靠的传输协议,可以用于替代传输控制协议(TCP)。特别地,QUCI被限定为在不可靠的UDP上运行的可靠的层。
[0010]在第一方面的一种实施方式中,所述输出数据包的所述UDP标头还包括一种指示,
指示所述输出数据包携载所述QUIC标头和/或所述QUIC有效载荷。
[0011]例如,UDP标头中包括的指示可以指示UDP标头之后的下一个标头是QUIC标头。通过在UDP标头中设计一个指示,指示所述输出数据包携载所述QUIC标头和/或所述QUIC有效载荷,对于接收网络设备(另一个网络设备),更容易检测并确定所述输出数据包是基于QUIC的数据包,即,已经使用基于QUIC的传输协议处理了数据包。
[0012]在第一方面的一种实施方式中,所述网络设备还用于从另一个网络设备中接收输入数据包,以及,所述输入数据包是基于QUIC的数据包。所述输入数据包包括UDP标头,QUIC标头和QUIC有效载荷。所述网络设备还用于检测所述输入数据包的所述UDP标头是否包括一种指示,指示所述输入数据包的所述QUIC有效载荷包括至少一个RDMA事务。如果检测到所述输入数据包的所述UDP标头中包括所述指示,所述网络设备还用于从所述输入数据包的所述QUIC有效载荷中获得至少一个RDMA事务。
[0013]对于输入数据包,通过使用UDP标头,特别是UDP标头中包括的指示,可以检测到QUIC数据包上的RDMA。
[0014]在第一方面的一种实施方式中,所述设备还用于检测所述输入数据包的所述UDP标头是否包括一种指示,指示所述输入数据包携载所述QUIC标头和/或所述QUIC有效载荷。通过检测所述输入数据包的所述UDP标头中的所述指示,所述设备可以容易地确定所述输入数据包是基于QUIC的数据包。
[0015]在第一方面的一种实施方式中,所述输出和/或输入数据包的所述UDP标头中的所述指示包括以下至少之一:保留源UDP端口号,保留目的UDP端口号,UDP标头中不是端口号的保留位,源和目的地址的组合,和预配置的源和/或目的UDP端口号。
[0016]为了指示或检测QUIC有效载荷包括RDMA事务,可以使用特定的保留UDP服务器端口号或预配置的UDP服务器端口号。
[0017]可能地,还可以通过源端口,目的端口或两者的组合指示QUIC传输上的RDMA。
[0018]在第一方面的一种实施方式中,所述输出和/或输入数据包包括版本字段,所述版本字段指示基于QUIC的协议的版本。通过分配指示基于QUIC的协议的版本的版本字段,更容易确定用于处理输出和/或输入数据包的基于QUIC的协议的版本号。
[0019]可选地,使用用于QUIC传输上的RDMA的专用QUIC版本号,可以启用非标准QUIC特征,例如,禁用加密。
[0020]在第一方面的一种实施方式中,所述设备还用于在向所述另一网络设备传输输出数据包之前,加密所述输出数据包。
[0021]IETF将加密限定为QUIC协议的一部分。但是,本公开提出了一种将保留加密作为选项的新版本。即,QUIC加密可以在不需要机密性保护的网络中禁用(非标准模式)。
[0022]在第一方面的一种实施方式中,所述网络设备用于:接收RDMA应用程序请求或事件;将RDMA应用程序请求或事件映射到QUIC请求或事件;以及,根据QUIC请求或事件生成输出数据包。
[0023]可以提供用于将RDMA应用程序请求和事件映射到QUIC请求和事件的映射层。
[0024]在第一方面的一种实施方式中,所述网络设备包括RDMA应用程序接口(API),以及,所述网络设备用于从所述RDMA API中接收所述RDMA应用程序请求或事件。
[0025]使用提供的RDMA API,可以透明地使用QUIC传输而不影响应用程序。
[0026]在第一方面的一种实施方式中,所述网络设备还用于将从所述输入数据包的所述QUIC有效载荷中获得的所述至少一个RDMA事务传递给所述RDMA API。
[0027]例如,通过移除QUIC封装,映射层可以将QUIC上接收到的RDMA事务映射到RDMA事务,然后进一步将RDMA事务传递给RDMA API。
[0028]在第一方面的一种实施方式中,所述输出数据包的所述QUIC有效载荷和/或所述输入数据包的所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于远程直接数据存取RDMA的网络设备(100),其特征在于,所述网络设备(100)用于:向另一网络设备(110)传输输出数据包(101),其中,所述输出数据包(101)是基于快速用户数据报协议网络连接QUIC的数据包,包括用户数据报协议UDP标头(1011),QUIC标头(1012)和QUIC有效载荷(1013),其中,所述输出数据包(101)包括一种指示,指示所述输出数据包(101)的所述QUIC有效载荷(1013)包括至少一个RDMA事务。2.根据权利要求1所述的网络设备(100),其特征在于,所述输出数据包(101)的所述UDP标头(1011)还包括一种指示,指示所述输出数据包(101)携载所述QUIC标头和/或所述QUIC有效载荷(1013)。3.根据权利要求1或2所述的网络设备(100),其特征在于,所述网络设备(100)还用于:从另一网络设备(110)中接收输入数据包,其中,所述输入数据包是基于QUIC的数据包,包括UDP标头,QUIC标头和QUIC有效载荷;检测所述输入数据包的所述UDP标头是否包括一种指示,指示所述输入数据包的所述QUIC有效载荷包括至少一个RDMA事务;以及如果检测到所述输入数据包的所述UDP标头中包括所述指示,从所述输入数据包的所述QUIC有效载荷获得至少一个RDMA事务。4.根据权利要求3所述的网络设备(100),其特征在于,所述网络设备(100)还用于:检测所述输入数据包的所述UDP标头是否包括一种指示,指示所述输入数据包携载所述QUIC标头和/或所述QUIC有效载荷。5.根据权利要求1或2所述的网络设备(100),其特征在于:所述输出数据包的所述UDP标头中的所述指示包括UDP服务器端口号。6.根据权利要求1或2所述的网络设备(100),其特征在于:所述输出数据包的所述UDP标头中的所述指示包括以下至少之一:保留UDP端口号,保留位,源和目的地址的组合,和/或预配置的源和/或目的UDP端口号值。7.根据权利要求1或2所述的网络设备(100),其特征在于,所述网络设备(100)还用于:接收RDMA应用程序请求或事件;根据所述RDMA应用程序请求或事件生成所述输出数据包(101)。8.根据权利要求7所述的网络设备(100),其特征在于,所述网络设备(100)包括RDMA应用程序接口API,以及,所述网络设备(100)用于:从所述RDMA API中接收所述RDMA应用程序请求或事件,将所述RDMA应用程序请求或事件映射到QUIC请求或事件。9.根据权利要求8所述的网络设备(100),其特征在于,所述网络设备(100)还用于:将从所述输入数据包的所述QUIC有效载荷中获得的所述至少一个RDMA事务传递给所述RDMA API。10.根据权利要求1或2所述的...

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

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

1