CN114827234B - 一种数据传输方法、系统、装置及存储介质 - Google Patents
一种数据传输方法、系统、装置及存储介质 Download PDFInfo
- Publication number
- CN114827234B CN114827234B CN202210466741.3A CN202210466741A CN114827234B CN 114827234 B CN114827234 B CN 114827234B CN 202210466741 A CN202210466741 A CN 202210466741A CN 114827234 B CN114827234 B CN 114827234B
- Authority
- CN
- China
- Prior art keywords
- data
- data packet
- request
- response
- read
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 117
- 238000000034 method Methods 0.000 title claims abstract description 67
- 230000004044 response Effects 0.000 claims abstract description 181
- 238000012545 processing Methods 0.000 claims description 13
- 238000012423 maintenance Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 18
- 238000004891 communication Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 101100433987 Latilactobacillus sakei subsp. sakei (strain 23K) ackA1 gene Proteins 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种数据传输方法、系统、装置及存储介质,应用于通信技术领域,该数据传输方法应用于请求端中时,包括:请求端QP装置向应答端应答器发送命令数据包;请求端应答器接收应答端QP装置发送的针对命令数据包的读请求数据包;请求端应答器解析读请求数据包,确定出待传输数据,并将确定出的待传输数据发送至应答端QP装置;请求端QP装置接收应答端应答器发送的,表示命令数据包执行完毕的命令响应数据包。应用本申请的方案,不需要建立连接过程便可以进行数据传输,因此可以大幅降低数据传输的总体延迟时间,也减少了对网卡硬件资源的需求。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种数据传输方法、系统、装置及存储介质。
背景技术
目前,低延迟的RDMA(Remote Direct Memory Access,远程直接数据存取)技术逐渐替代TCP(Transmission Control Protocol,传输控制协议),成为数据中心网络的主流数据传输技术。
RDMA需要在数据传输之前建立连接,即请求端和应答端需要先通过通信,获得对方传输数据所使用的QP(Queue Pair,队列对)号,并在RDMA数据包头部携带。这个建立连接的过程需要在请求端和应答端之间进行几次数据交互,且由软件实现,所需时间最少也为毫秒级。因此,在传输数据量较小的情况下,动态建立连接所用的时间占总传输时间比例很大,使得总体传输延迟较大。而如果网络节点间采用固定连接,当网络规模较大时,每个节点需要大量QP硬件资源,从而保持与其他网络节点间的连接。而实际应用中,一段时间内一个网络节点通常只与其他一少部分节点有数据交互,因此大量的QP硬件资源空闲。即当网络规模非常大时,网卡硬件资源难以满足对所有网络节点建立连接的要求。
综上所述,如何在数据传输时,有效地降低数据传输的总体延迟时间,也不会出现占用大量网卡硬件资源的情况,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种数据传输方法、系统、装置及存储介质,以在数据传输时,有效地降低数据传输的总体延迟时间,也不会出现占用大量网卡硬件资源的情况。
为解决上述技术问题,本发明提供如下技术方案:
一种数据传输方法,应用于请求端中,所述请求端包括请求端QP装置和请求端应答器,所述数据传输方法包括:
所述请求端QP装置向应答端应答器发送命令数据包;
所述请求端应答器接收应答端QP装置发送的针对所述命令数据包的读请求数据包;
所述请求端应答器解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置;
所述请求端QP装置接收所述应答端应答器发送的,表示所述命令数据包执行完毕的命令响应数据包。
优选的,所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,所述请求端应答器接收应答端QP装置发送的针对所述命令数据包的读请求数据包,包括:
在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置,包括:
所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
优选的,所述命令数据包中包括:
用于表示数据包类型为命令数据包的操作码,请求端QP号,用于区分不同命令数据包的序列号,N组地址信息;
任意1个所述读请求数据包中包括:
用于表示数据包类型为读请求数据包的操作码,应答端QP号,用于区分不同读请求数据包的序列号,该读请求数据包对应的1组地址信息;
任意1个所述读数据数据包中包括:
用于表示数据包类型为读数据数据包的操作码,应答端QP号,用于区分不同读数据数据包的序列号,该读数据数据包对应的待传输数据的数据内容;
所述命令响应数据包中包括:
用于表示数据包类型为命令响应数据包的操作码,请求端QP号,用于区分不同命令响应数据包的序列号;
其中,在数据传输正常时,任意1个命令数据包中的序列号,与对应于该命令数据包的命令响应数据包中的序列号相同;
在数据传输正常时,针对任意1个读请求数据包,该读请求数据包中的序列号,与所述请求端QP装置发送的响应于该读请求数据包的首个读数据数据包中的序列号相同;
在数据传输正常时,在所述应答端QP装置发送N个读请求数据包之后,所述应答端QP装置按顺序接收到各个读数据数据包,且各个读数据数据包的序列号互不相同且有序排布。
优选的,所述命令数据包,所述读请求数据包,所述读数据数据包以及所述命令响应数据包均为基于UDP协议进行传输的数据包。
优选的,还包括:
在应答端应答器通过解析接收到的各个所述读数据数据包,并确定出发送的N个读请求数据包中的M个读请求数据包丢失之后,所述请求端应答器接收应答端QP装置重新发送的M个读请求数据包,并将M个读请求数据包所对应的待传输数据发送至所述应答端QP装置;
其中,所述应答端QP装置重新发送的M个读请求数据包,为所述应答端QP装置确定出的发送的N个读请求数据包中丢失的M个读请求数据包;M为正整数。
优选的,还包括:
在应答端应答器通过解析接收到的各个所述读数据数据包,并确定出X个读数据数据包丢失之后,所述请求端应答器接收应答端QP装置重新发送的读请求数据包,并将对应的待传输数据发送至所述应答端QP装置,以实现X个读数据数据包的重传;X为正整数。
优选的,还包括:
在所述请求端QP装置向应答端应答器发送命令数据包之后,当在第一时长内未接收到所述应答端应答器发送的任意命令响应数据包时,或者在所述第一时长内未接收到所述应答端应答器发送的任意针对所述命令数据包的读请求数据包时,所述请求端QP装置重新发送所述命令数据包。
优选的,还包括:
在所述请求端QP装置向应答端应答器发送至少2个命令数据包之后,当未接收到所述应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包时,所述请求端QP装置重新发送最后1个命令数据包,当接收到所述应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包,确定各个命令数据包均执行完毕。
优选的,还包括:
当所述请求端QP装置在预设的静默时长内,未向应答端应答器发送任意命令数据包时,所述请求端QP装置进行QP资源释放。
一种数据传输方法,应用于应答端中,所述应答端包括应答端QP装置和应答端应答器,所述数据传输方法包括:
所述应答端应答器接收请求端QP装置发送的命令数据包;
所述应答端QP装置将针对所述命令数据包的读请求数据包发送至请求端应答器;
在所述请求端应答器解析所述读请求数据包,确定出待传输数据之后,所述应答端QP装置接收所述请求端应答器发送的所述待传输数据;
所述应答端应答器向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的数据传输方法的步骤。
一种数据传输装置,设置于请求端中,包括:
请求端QP装置,用于向应答端应答器发送命令数据包;接收所述应答端应答器发送的,表示所述命令数据包执行完毕的命令响应数据包;
请求端应答器,用于接收应答端QP装置发送的针对所述命令数据包的读请求数据包;解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置。
一种数据传输装置,设置于应答端中,包括:
应答端应答器,用于接收请求端QP装置发送的命令数据包;向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包;
应答端QP装置,用于将针对所述命令数据包的读请求数据包发送至请求端应答器;在所述请求端应答器解析所述读请求数据包,确定出待传输数据之后,接收所述请求端应答器发送的所述待传输数据
一种数据传输系统,包括请求端和应答端,所述请求端包括:
请求端QP装置,用于向应答端应答器发送命令数据包;
请求端应答器,用于接收应答端QP装置发送的针对所述命令数据包的读请求数据包,解析所述读请求数据包,确定出待传输数据;
所述应答端包括:
所述应答端QP装置,用于接收所述请求端应答器发送的所述待传输数据;
所述应答端应答器,用于向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包。
应用本发明实施例所提供的技术方案,无需如传统方案中建立连接过程,即本申请提供了一种非连接的数据传输技术。具体的,本申请的方案中,当请求端需要向应答端发送数据时,请求端QP装置可以直接向应答端应答器发送命令数据包,应答端QP装置则会向请求端应答器发送针对所述命令数据包的读请求数据包,请求端应答器解析所述读请求数据包,确定出待传输数据,将确定出的所述待传输数据发送至所述应答端QP装置。可以看出,应答端读取数据的过程,并不需要请求端QP装置的参与,直接由硬件上的请求端应答器进行读请求数据包的解析即可。最后,应答端应答器会向请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包。
由于本申请的方案中,请求端与应答端之间不需要通过连接过程获知对方的QP号,即本申请的方案不需要建立连接过程便可以进行数据传输,因此可以大幅降低数据传输的总体延迟时间,也减少了对网卡硬件资源的需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种数据传输方法应用于请求端的实施流程图;
图2为本发明一种具体实施方式中数据传输正常的流程示意图;
图3a为本发明一种具体实施方式中命令数据包丢失以及全部读请求数据包丢失的重传流程示意图;
图3b为本发明一种具体实施方式中部分命令响应数据包丢失的重传流程示意图;
图3c为本发明一种具体实施方式中部分读请求数据包丢失的重传流程示意图;
图3d为本发明一种具体实施方式中部分读数据数据包丢失的重传流程示意图;
图4为本发明中一种数据传输方法应用于应答端的实施流程图;
图5为本发明中一种数据传输系统的结构示意图。
具体实施方式
本发明的核心是提供一种数据传输方法,可以大幅降低数据传输的总体延迟时间,也减少了对网卡硬件资源的需求。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种数据传输方法的实施流程图,该数据传输方法可以应用于请求端中,所述请求端包括请求端QP装置和请求端应答器,该数据传输方法可以包括以下步骤:
步骤S101:请求端QP装置向应答端应答器发送命令数据包。
请求端QP装置即为请求端的序列对维护处理装置,可以为请求端分配以及释放QP资源,相应的应答端QP装置即为应答端的序列对维护处理装置,可以为应答端分配以及释放QP资源。
由于请求端需要向应答端发送数据,因此请求端QP装置会分配1个空闲的QP资源,例如为请求端分配的QP资源具体为QP1,后文中也均以此为例进行说明。
命令数据包的具体内容以及结构可根据需要进行设定和调整,通常需要携带有待传输数据的地址信息,请求端信息等。例如后文的一种实施方式中,各个数据包均为基于UDP(User Data Protocol,用户数据报协议)协议进行传输的数据包,因此一种具体场合中,数据包在结构上可以表示为MAC+IPV4+UDP+BTH+payload。
步骤S102:请求端应答器接收应答端QP装置发送的针对命令数据包的读请求数据包。
请求端应答器即为请求端的reactor,为硬件设备,即通过硬件电路便可以执行其功能。请求端应答器可以接收应答端QP装置发送的针对命令数据包的读请求数据包。
步骤S103:请求端应答器解析读请求数据包,确定出待传输数据,并将确定出的待传输数据发送至应答端QP装置。
请求端应答器接收应答端QP装置发送的针对命令数据包的读请求数据包之后,便可以解析读请求数据包,从而在请求端的存储中确定出待传输数据,然后将确定出的待传输数据发送至应答端QP装置。
步骤S104:请求端QP装置接收应答端应答器发送的,表示命令数据包执行完毕的命令响应数据包。
当应答端QP装置将全部的待传输数据接收完毕之后,可以通知应答端应答器,使得应答端应答器将表示命令数据包执行完毕的命令响应数据包发送给请求端QP装置。应答端应答器即为应答端的reactor,为硬件设备,即通过硬件电路便可以执行其功能。
在本发明的一种具体实施方式中,命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,步骤S102可以具体包括:
在应答端应答器解析读请求数据包之后,请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,步骤S103可以具体包括:
请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
该种实施方式考虑到,请求端可能需要将1段地址连续的数据发送至应答端,也可能是需要将多段地址连续的数据发送至应答端,每1段地址连续的数据可以表示为起始物理地址和数据长度。因此,命令数据包中可以携带有N组地址信息,每组地址信息包括起始物理地址和数据长度。也就是说,命令数据包中携带的可以是1个列表,该列表中有N个起始物理地址相应的N个数据长度。
应答端应答器可以解析出N组地址信息,从而向应答端QP装置发送相应的N个读指令,使得应答端QP装置生成N个读请求数据包并发送给请求端应答器,每一个读请求数据包均携带有1组地址信息,以表示需要请求端传输1段地址连续的数据。
对于任意1个读请求数据包所请求传输的1段地址连续的待传输数据,该种实施方式还考虑到,在进行该段地址连续的待传输数据的传输时,由于数据传输需要考虑网络的PMTU(Payload Maximum Transmission Unit载荷最大传输单元),即考虑载荷最大传输的数量限制,因此,实际应用中,对于任意1个读请求数据包所对应的1段地址连续的待传输数据,可能需要通过1个或多个读数据数据包,完成对于该段地址连续的待传输数据的传输。并且可以理解的是,将1段地址连续的待传输数据的数据长度除以PMTU的字节数,便是发送该段地址连续的待传输数据所需要的读数据数据包的数量,本申请描述的1段地址连续的待传输数据的数据长度,指的是1段连续数据的数据字节长度。
在上文的实施方式中,本申请的方案实现了非连接的数据传输,而在本发明一种具体实施方式中,进一步地考虑到,为了实现可靠的数据传输,可以在各个数据包中设置有数据包类型信息,相应的QP号,序列号等信息,保障数据的可靠传输。具体的,在本发明的一种具体实施方式中,命令数据包中包括:
用于表示数据包类型为命令数据包的操作码,请求端QP号,用于区分不同命令数据包的序列号,N组地址信息;
任意1个读请求数据包中包括:
用于表示数据包类型为读请求数据包的操作码,应答端QP号,用于区分不同读请求数据包的序列号,该读请求数据包对应的1组地址信息;
任意1个读数据数据包中包括:
用于表示数据包类型为读数据数据包的操作码,应答端QP号,用于区分不同读数据数据包的序列号,该读数据数据包对应的待传输数据的数据内容;
命令响应数据包中包括:
用于表示数据包类型为命令响应数据包的操作码,请求端QP号,用于区分不同命令响应数据包的序列号;
其中,在数据传输正常时,任意1个命令数据包中的序列号,与对应于该命令数据包的命令响应数据包中的序列号相同;
在数据传输正常时,针对任意1个读请求数据包,该读请求数据包中的序列号,与请求端QP装置发送的响应于该读请求数据包的首个读数据数据包中的序列号相同;
在数据传输正常时,在应答端QP装置发送N个读请求数据包之后,应答端QP装置按顺序接收到各个读数据数据包,且各个读数据数据包的序列号互不相同且有序排布。
在该种实施方式中,各类数据包均包括操作码,相应的QP号以及序列号,读数据数据包中还携带有数据内容,读请求数据包中携带有地址信息,命令数据包中也携带有地址信息。
例如一种具体场合中,命令数据包,读请求数据包,读数据数据包以及命令响应数据包均为基于UDP协议进行传输的数据包,即结构上可以表示为MAC+IPV4+UDP+BTH+payload。相较于传统的UDP协议,该种实施方式中,在数据包头部UDP层后增加了BTH(BaseTransport Header,基础传输层头部)层,用于保证数据的可靠传输。该种实施方式以UDP协议为例,是考虑到实际应用中UDP协议应用广泛,且传输速度很快。但可以理解的是,本申请的方案中的各类数据包,也可以是基于其他的通信协议进行传输的数据包,只要按照本申请上述实施例的要求,在各类数据包中设置有操作码,相应的QP号以及序列号等内容,便可以保证数据的可靠传输。
以在UDP协议中增加BTH层为例进行说明,本申请的该种实施方式中,不同类型的数据包的BTH层的内容不同,可参阅表一:
表一:一种具体场合中的各类数据包的BTH层的结构示意表
一种具体场合中,命令数据包的BTH层可以包括操作码,24bit的请求端QP号,24bit的用于区分不同命令数据包的序列号,载荷为数据地址列表,即包括N组地址信息。
读请求数据包的BTH层可以包括操作码,24bit的应答端QP号,24bit的用于区分不同读请求数据包的序列号,64bit的起始物理地址以及32bit的数据长度,没有载荷部分。
读数据数据包的BTH层可以包括操作码,24bit的应答端QP号,24bit的用于区分不同读数据数据包的序列号,载荷部分为具体的需要传输的数据内容。
命令响应数据包的BTH层可以包括操作码,24bit的请求端QP号,24bit的用于区分不同命令响应数据包的序列号,没有载荷部分。
下面以作为请求端的网络节点A,向作为应答端的网络节点B为例,对该种实施方式中的数据传输过程进行说明。
首先,请求端QP装置会分配1个空闲的QP资源,例如为请求端分配的QP资源具体为QP1,则命令数据包的BTH层中的请求端QP号便是请求端所使用的QP号,即QP1。命令数据包的BTH层中的序列号例如初始值是1,后续使用该QP资源每发送一个命令数据包,则命令数据包中的序列号加1。当然,其他具体场合中可以不是加1,而是例如加2等数值,能够实现不同命令数据包的区分即可,此外本申请的后文中,其他类型的数据包,也均是采用序列号加1的实施方式,这也是实际应用中较为常用的方案。命令数据包中的Gather_list为需要传输的数据在物理内存中的起始地址和数据字节长度的列表。例如图2的实施方式中,N=2,即Gather_list中包括2组地址信息,从而使得后续应答端会发送2个读请求数据包。
应答端应答器接收读请求数据包之后,会进行解析。并且需要说明的是,应答端也会分配1个空闲的QP资源,即后面一段时间内ip地址为请求端ip的命令数据包发送至应答端时,应答端会使用此QP资源进行回复。而当最后一个命令数据包到来后超过一段时间没有新的命令数据包到来,则应答端会释放此QP资源。该段时间称为静默时长,具体的时间长度可以根据网络情况进行设置。当然,如果应答端没有空闲的QP资源,则应答端不会发送任何数据,即不会对请求端发送的命令数据包进行回应。
同样的,请求端也可以设置静默时长,避免请求端QP资源的浪费。即在本发明的一种具体实施方式中,还可以包括:当请求端QP装置在预设的静默时长内,未向应答端应答器发送任意命令数据包时,请求端QP装置进行QP资源释放。在实际应用中,请求端的静默时长与应答端的静默时长在数值上通常设置成一致的。
此外可以理解的是,当静默时长之后,需要传输数据时,请求端和应答端各自重新创建QP资源,则各自使用的QP号均是新分配的QP号,相应的,各类数据包中使用的序列号也会重置。
在图2的实施方式中,应答端应答器接收读请求数据包之后,进行Gather_list的解析,由于N=2,因此可以向应答端QP装置发送2个读命令,每个读命令中携带有1组地址信息,具体为该组起始物理地址和数据长度,应答端QP装置便会根据接收的2个读命令,发送对应于这2个读命令的2个读请求数据包,即图2中的Read request1和Read request2。
Read request1和Read request2的QP号均为应答端QP号,例如应答端QP号为QP0。而图2的实施方式中,对于Read request1所请求的数据,后续需要通过3个读数据数据包来完成数据传输,1+3=4,因此,Read request1的序列号可以为1,Read request2的序列号则为4。即Read request之间的序列号间隔,可以按照需要返回的读数据数据包的个数来确定,来达到“各个读数据数据包的序列号互不相同且有序排布,任意1个读请求数据包的序列号与响应于该读请求数据包的首个读数据数据包中的序列号相同”的目的,以保障数据的可靠传输,能够通过相应的序列号确定出数据传输过程中的乱码、丢失的情况。
请求端应答器接收应答端QP装置发送的Read request1和Read request2之后,根据Read request1中的起始物理地址和数据长度,可以找到1段连续数据,按照网络PMTU的要求,拆分成相应数量的Read data,便可以发送至应答端QP装置。图2的场合中,对于Readrequest1,需要利用3个读数据数据包完成1段连续数据的传输,即图2中的Read data1(Req1),Read data2(Req1)以及Read data3(Req1),这3个读数据数据包的QP号均是应答端QP号,即QP0。Read data1(Req1)的序列号与Read request1相同,即均为1,而Read data2(Req1)的序列号则是在此基础上加1,即Read data2(Req1)的序列号为2,相应的,Readdata3(Req1)的序列号为3。
同样的,根据Read request2中的起始物理地址和数据长度,可以找到1段连续数据,按照网络PMTU的要求,拆分成相应数量的Read data,便可以发送至应答端QP装置。图2的场合中,对于Read request2,也是需要利用3个读数据数据包完成1段连续数据的传输,即图2中的Read data1(Req2),Read data2(Req2)以及Read data3(Req2),这3个读数据数据包的QP号均是应答端QP号,即QP0,Read data1(Req2)的序列号与Read request2相同,即均为4,而Read data2(Req2)的序列号则是在此基础上加1,即Read data2(Req2)的序列号为5,相应的,Read data3(Req2)的序列号为6。
可以看出,图2的例子中,各个读数据数据包的序列号互不相同且有序排布,任意1个读请求数据包的序列号与响应于该读请求数据包的首个读数据数据包中的序列号相同。
对于应答端QP装置而言,当接收到读数据数据包时,会按照读数据数据包中的QP号,令该读数据数据包由应答端QP装置中相应的QP硬件资源处理,该QP硬件资源能够根据各个读数据数据包的序列号判断是否有丢失、乱序的情况。当将全部的待传输数据接收完毕之后,应答端QP装置可以通知应答端应答器,使得应答端应答器将表示命令数据包执行完毕的命令响应数据包发送给请求端QP装置,即图2中将Send ack发送给请求端QP装置。Send ack的QP号为此前应答端应答器接收到命令数据包时其中携带的请求端QP号,即Sendack的QP号为QP1,而由于该命令数据包中的序列号是1,因此响应与该命令数据包的Sendack中的序列号也是1。
在本发明的一种具体实施方式中,还可以包括:
在请求端QP装置向应答端应答器发送命令数据包之后,当在第一时长内未接收到应答端应答器发送的表示命令数据包执行完毕的命令响应数据包时,或者在第一时长内未接收到应答端应答器发送的任意针对命令数据包的读请求数据包时,请求端QP装置重新发送命令数据包。
可参阅图3a,该种实施方式中,对于命令数据包丢失,可以进行丢包重传。即请求端QP装置向应答端应答器发送命令数据包之后,可以进行计时,如果第一时长内未接收到应答端应答器发送的Send ack时,则可能是命令数据包丢失,因此可以进行命令数据包的重传。并且需要说明的是,进行命令数据包的重传时,重传的命令数据包中的QP号,序列号等内容,与原先发送的命令数据包是一致的。
而如果应答端接收了命令数据包,但反馈的各个Read request均丢失了,则在第一时长内请求端不会接收到应答端应答器发送的任意针对该命令数据包的读请求数据包,因此也可以重新发送命令数据包,即对于请求端而言,此时的处理方式与未收到Send ack是一致的。
而对于应答端而言,在发送Read request之后便会等待请求端返回读数据数据包,如果一段时间内没有任何返回数据则此次Read request超时结束。当然,如果重新接收到相同的命令数据包,则可以再次发送相应的Read request。
在本发明的一种具体实施方式中,还可以包括:
在请求端QP装置向应答端应答器发送至少2个命令数据包之后,当未接收到应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包时,请求端QP装置重新发送最后1个命令数据包,当接收到应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包,确定各个命令数据包均执行完毕。
需要说明的是,该种实施方式中,请求端QP装置向应答端应答器发送2个或者更多数量的命令数据包时,相邻2次的发送间隔不能超过静默时长。可参阅图3b,以请求端QP装置向应答端应答器发送2个命令数据包为例。
图3b中,应答端发送的Send ack1丢失,但是请求端接收到了Send ack2,此时请求端QP装置可以确定命令数据包1和命令数据包2均执行完毕,即确定图2中的Send1和Send2均执行完毕了,应答端接收到了完整的数据,Send ack1的丢失无需处理。而如果是Sendack2丢失,由于Send 2是最后一个命令数据包,因此,请求端的处理方式与图3a的实施例中描述的Send丢失时的处理方式一样,需要重新进行Send2的发送。
在本发明的一种具体实施方式中,还可以包括:
在应答端应答器通过解析接收到的各个读数据数据包,并确定出发送的N个读请求数据包中的M个读请求数据包丢失之后,请求端应答器接收应答端QP装置重新发送的M个读请求数据包,并将M个读请求数据包所对应的待传输数据发送至应答端QP装置;
其中,应答端QP装置重新发送的M个读请求数据包,为应答端QP装置确定出的发送的N个读请求数据包中丢失的M个读请求数据包;M为正整数。
可参阅图3c,针对的是部分Read request丢失的情况,即N个读请求数据包中有M个读请求数据包丢失。具体的在图3c的例子中,应答端应答器通过解析接收到的各个读数据数据包,确定出没有接收到对应于Read request2的任意1个读数据数据包,说明Readrequest2丢失了,因此收应答端QP装置重新发送Read request2,使得请求端将Readrequest2所对应的待传输数据发送至应答端QP装置。图3c中,Read request2所对应的1段地址连续的待传输数据,请求端需要通过Read data1(Req2),Read data2(Req2)以及Readdata3(Req2)进行发送。重传的Read request2中的QP号,序列号等内容,与原先发送的Readrequest2是一致的。
在本发明的一种具体实施方式中,还可以包括:
在应答端应答器通过解析接收到的各个读数据数据包,并确定出X个读数据数据包丢失之后,请求端应答器接收应答端QP装置重新发送的读请求数据包,并将对应的待传输数据发送至应答端QP装置,以实现X个读数据数据包的重传;X为正整数。
可参阅图3d,针对的是部分Read data丢失的情况,此时,请求端应答器接收应答端QP装置会重新发送读请求数据包,以使得请求端进行X个读数据数据包的重传。
例如,应答端发送Read request1之后,接收到了Read data1(Req1)和Read data3(Req1),因此说明Read data2(Req1)丢失了,此时,应答端可以重新发送Read request1,使得请求端再次发送一遍Read data1(Req1),Read data2(Req1)以及Read data3(Req1)。当然,应答端也可以调整所发送的读请求数据包,例如将读请求数据包中的序列号设置为2,将起始物理地址和数据长度也按照Read data2(Req1)所对应的数据内容进行调整,从而使得请求端只需要再次发送一遍Read data2(Req1)即可,降低了所需要重传的数据量,图3d中便是采用的改种实施方式,将调整之后的读请求数据包标记为Read request-retry2。
应用本发明实施例所提供的技术方案,无需如传统方案中建立连接过程,即本申请提供了一种非连接的数据传输技术。具体的,本申请的方案中,当请求端需要向应答端发送数据时,请求端QP装置可以直接向应答端应答器发送命令数据包,应答端QP装置则会向请求端应答器发送针对命令数据包的读请求数据包,请求端应答器解析读请求数据包,确定出待传输数据,将确定出的待传输数据发送至应答端QP装置。可以看出,应答端读取数据的过程,并不需要请求端QP装置的参与,直接由硬件上的请求端应答器进行读请求数据包的解析即可。最后,应答端应答器会向请求端QP装置发送表示命令数据包执行完毕的命令响应数据包。
由于本申请的方案中,请求端与应答端之间不需要通过连接过程获知对方的QP号,即本申请的方案不需要建立连接过程便可以进行数据传输,因此可以大幅降低数据传输的总体延迟时间,也减少了对网卡硬件资源的需求。
本申请还提供了一种数据传输方法,可以应用于应答端中,应答端包括应答端QP装置和应答端应答器,该数据传输方法可参阅图4,包括以下步骤:
步骤S401:应答端应答器接收请求端QP装置发送的命令数据包;
步骤S402:应答端QP装置将针对命令数据包的读请求数据包发送至请求端应答器;
步骤S403:在请求端应答器解析读请求数据包,确定出待传输数据之后,应答端QP装置接收请求端应答器发送的待传输数据;
步骤S404:应答端应答器向请求端QP装置发送表示命令数据包执行完毕的命令响应数据包。
相应与上述的数据传输方法,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一实施例中的数据传输方法的步骤。
相应与上述的数据传输方法,本申请还提供了一种数据传输装置,设置于请求端中,包括:
请求端QP装置,用于向应答端应答器发送命令数据包;接收应答端应答器发送的,表示命令数据包执行完毕的命令响应数据包;
请求端应答器,用于接收应答端QP装置发送的针对命令数据包的读请求数据包;解析读请求数据包,确定出待传输数据,并将确定出的待传输数据发送至应答端QP装置。
在实际应用中,数据传输装置例如可以具体为设置于请求端中的FPGA。
相应与上述的数据传输方法,本申请还提供了一种数据传输装置,设置于应答端中,包括:
应答端应答器,用于接收请求端QP装置发送的命令数据包;向请求端QP装置发送表示命令数据包执行完毕的命令响应数据包;
应答端QP装置,用于将针对命令数据包的读请求数据包发送至请求端应答器;在请求端应答器解析读请求数据包,确定出待传输数据之后,接收请求端应答器发送的待传输数据。
相应与上述的数据传输方法和装置,本申请还提供了一种数据传输系统,可以包括请求端10和应答端20,请求端10包括:
请求端QP装置,用于向应答端应答器发送命令数据包;
请求端应答器,用于接收应答端QP装置发送的针对命令数据包的读请求数据包,解析读请求数据包,确定出待传输数据;
应答端20包括:
应答端QP装置,用于接收请求端应答器发送的待传输数据;
应答端应答器,用于向请求端QP装置发送表示命令数据包执行完毕的命令响应数据包
可参阅图5,在图5的实施方式中,请求端10和应答端20均带有FPGA加速卡的,每个FPGA例如都连接有1个或多个10G以太网光口,且连接有1个多个SDRAM(SynchronousDynamic Random Access Memory,同步动态随机存储器)作为请求端10/应答端20的存储器,FPGA还可以通过PCI-E连接请求端10/应答端20的CPU等设备。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。
Claims (13)
1.一种数据传输方法,其特征在于,应用于请求端中,所述请求端包括请求端QP装置和请求端应答器,所述数据传输方法应用于RDMA数据传输,所述数据传输方法包括:
所述请求端QP装置向应答端应答器发送命令数据包;
所述请求端应答器接收应答端QP装置发送的针对所述命令数据包的读请求数据包;
所述请求端应答器解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置;
所述请求端QP装置接收所述应答端应答器发送的,表示所述命令数据包执行完毕的命令响应数据包;
其中,所述请求端QP装置为请求端的序列对维护处理装置,用于为请求端分配以及释放QP资源,所述应答端QP装置为应答端的序列对维护处理装置,用于为应答端分配以及释放QP资源;QP为序列对;
所述请求端应答器为硬件设备以通过硬件电路执行所述请求端应答器的功能,所述应答端应答器为硬件设备以通过硬件电路执行所述应答端应答器的功能;
所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,所述请求端应答器接收应答端QP装置发送的针对所述命令数据包的读请求数据包,包括:
在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置,包括:
所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
2.根据权利要求1所述的数据传输方法,其特征在于,所述命令数据包中包括:
用于表示数据包类型为命令数据包的操作码,请求端QP号,用于区分不同命令数据包的序列号,N组地址信息;
任意1个所述读请求数据包中包括:
用于表示数据包类型为读请求数据包的操作码,应答端QP号,用于区分不同读请求数据包的序列号,该读请求数据包对应的1组地址信息;
任意1个所述读数据数据包中包括:
用于表示数据包类型为读数据数据包的操作码,应答端QP号,用于区分不同读数据数据包的序列号,该读数据数据包对应的待传输数据的数据内容;
所述命令响应数据包中包括:
用于表示数据包类型为命令响应数据包的操作码,请求端QP号,用于区分不同命令响应数据包的序列号;
其中,在数据传输正常时,任意1个命令数据包中的序列号,与对应于该命令数据包的命令响应数据包中的序列号相同;
在数据传输正常时,针对任意1个读请求数据包,该读请求数据包中的序列号,与所述请求端QP装置发送的响应于该读请求数据包的首个读数据数据包中的序列号相同;
在数据传输正常时,在所述应答端QP装置发送N个读请求数据包之后,所述应答端QP装置按顺序接收到各个读数据数据包,且各个读数据数据包的序列号互不相同且有序排布。
3.根据权利要求2所述的数据传输方法,其特征在于,所述命令数据包,所述读请求数据包,所述读数据数据包以及所述命令响应数据包均为基于UDP协议进行传输的数据包。
4.根据权利要求2所述的数据传输方法,其特征在于,还包括:
在应答端应答器通过解析接收到的各个所述读数据数据包,并确定出发送的N个读请求数据包中的M个读请求数据包丢失之后,所述请求端应答器接收应答端QP装置重新发送的M个读请求数据包,并将M个读请求数据包所对应的待传输数据发送至所述应答端QP装置;
其中,所述应答端QP装置重新发送的M个读请求数据包,为所述应答端QP装置确定出的发送的N个读请求数据包中丢失的M个读请求数据包;M为正整数。
5.根据权利要求2所述的数据传输方法,其特征在于,还包括:
在应答端应答器通过解析接收到的各个所述读数据数据包,并确定出X个读数据数据包丢失之后,所述请求端应答器接收应答端QP装置重新发送的读请求数据包,并将对应的待传输数据发送至所述应答端QP装置,以实现X个读数据数据包的重传;X为正整数。
6.根据权利要求1所述的数据传输方法,其特征在于,还包括:
在所述请求端QP装置向应答端应答器发送命令数据包之后,当在第一时长内未接收到所述应答端应答器发送的任意命令响应数据包时,或者在所述第一时长内未接收到所述应答端应答器发送的任意针对所述命令数据包的读请求数据包时,所述请求端QP装置重新发送所述命令数据包。
7.根据权利要求6所述的数据传输方法,其特征在于,还包括:
在所述请求端QP装置向应答端应答器发送至少2个命令数据包之后,当未接收到所述应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包时,所述请求端QP装置重新发送最后1个命令数据包,当接收到所述应答端应答器发送的表示最后1个命令数据包执行完毕的命令响应数据包,确定各个命令数据包均执行完毕。
8.根据权利要求1至7任一项所述的数据传输方法,其特征在于,还包括:
当所述请求端QP装置在预设的静默时长内,未向应答端应答器发送任意命令数据包时,所述请求端QP装置进行QP资源释放。
9.一种数据传输方法,其特征在于,应用于应答端中,所述应答端包括应答端QP装置和应答端应答器,所述数据传输方法应用于RDMA数据传输,所述数据传输方法包括:
所述应答端应答器接收请求端QP装置发送的命令数据包;
所述应答端QP装置将针对所述命令数据包的读请求数据包发送至请求端应答器;
在所述请求端应答器解析所述读请求数据包,确定出待传输数据之后,所述应答端QP装置接收所述请求端应答器发送的所述待传输数据;
所述应答端应答器向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包;
其中,所述请求端QP装置为请求端的序列对维护处理装置,用于为请求端分配以及释放QP资源,所述应答端QP装置为应答端的序列对维护处理装置,用于为应答端分配以及释放QP资源;QP为序列对;
所述请求端应答器为硬件设备以通过硬件电路执行所述请求端应答器的功能,所述应答端应答器为硬件设备以通过硬件电路执行所述应答端应答器的功能;
所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述的数据传输方法的步骤。
11.一种数据传输装置,其特征在于,所述数据传输装置应用于RDMA数据传输,设置于请求端中,包括:
请求端QP装置,用于向应答端应答器发送命令数据包;接收所述应答端应答器发送的,表示所述命令数据包执行完毕的命令响应数据包;
请求端应答器,用于接收应答端QP装置发送的针对所述命令数据包的读请求数据包;解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置;
其中,所述请求端QP装置为请求端的序列对维护处理装置,用于为请求端分配以及释放QP资源,所述应答端QP装置为应答端的序列对维护处理装置,用于为应答端分配以及释放QP资源;QP为序列对;
所述请求端应答器为硬件设备以通过硬件电路执行所述请求端应答器的功能,所述应答端应答器为硬件设备以通过硬件电路执行所述应答端应答器的功能;
所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,所述请求端应答器接收应答端QP装置发送的针对所述命令数据包的读请求数据包,包括:
在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器解析所述读请求数据包,确定出待传输数据,并将确定出的所述待传输数据发送至所述应答端QP装置,包括:
所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
12.一种数据传输装置,其特征在于,所述数据传输装置应用于RDMA数据传输,设置于应答端中,包括:
应答端应答器,用于接收请求端QP装置发送的命令数据包;向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包;
应答端QP装置,用于将针对所述命令数据包的读请求数据包发送至请求端应答器;在所述请求端应答器解析所述读请求数据包,确定出待传输数据之后,接收所述请求端应答器发送的所述待传输数据;
其中,所述请求端QP装置为请求端的序列对维护处理装置,用于为请求端分配以及释放QP资源,所述应答端QP装置为应答端的序列对维护处理装置,用于为应答端分配以及释放QP资源;QP为序列对;
所述请求端应答器为硬件设备以通过硬件电路执行所述请求端应答器的功能,所述应答端应答器为硬件设备以通过硬件电路执行所述应答端应答器的功能;
所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
13.一种数据传输系统,其特征在于,所述数据传输系统应用于RDMA数据传输,包括请求端和应答端,所述请求端包括:
请求端QP装置,用于向应答端应答器发送命令数据包;
请求端应答器,用于接收应答端QP装置发送的针对所述命令数据包的读请求数据包,解析所述读请求数据包,确定出待传输数据;
所述应答端包括:
所述应答端QP装置,用于接收所述请求端应答器发送的所述待传输数据;
所述应答端应答器,用于向所述请求端QP装置发送表示所述命令数据包执行完毕的命令响应数据包;
其中,所述请求端QP装置为请求端的序列对维护处理装置,用于为请求端分配以及释放QP资源,所述应答端QP装置为应答端的序列对维护处理装置,用于为应答端分配以及释放QP资源;QP为序列对;
所述请求端应答器为硬件设备以通过硬件电路执行所述请求端应答器的功能,所述应答端应答器为硬件设备以通过硬件电路执行所述应答端应答器的功能;
所述命令数据包中携带有N组地址信息,每组地址信息包括起始物理地址和数据长度,N为正整数;
相应的,在应答端应答器解析所述读请求数据包之后,所述请求端应答器接收应答端QP装置发送的针对N组地址信息的N个读请求数据包;
相应的,所述请求端应答器依次解析N个读请求数据包,并且针对任意1个读请求数据包,确定出对应的1段地址连续的待传输数据;
针对任意1段地址连续的待传输数据,基于载荷最大传输的数量限制,发送相应数量的读数据数据包至所述应答端QP装置,以完成对于该段地址连续的待传输数据的传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210466741.3A CN114827234B (zh) | 2022-04-29 | 2022-04-29 | 一种数据传输方法、系统、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210466741.3A CN114827234B (zh) | 2022-04-29 | 2022-04-29 | 一种数据传输方法、系统、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114827234A CN114827234A (zh) | 2022-07-29 |
CN114827234B true CN114827234B (zh) | 2024-09-06 |
Family
ID=82509613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210466741.3A Active CN114827234B (zh) | 2022-04-29 | 2022-04-29 | 一种数据传输方法、系统、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114827234B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116932273B (zh) * | 2023-09-18 | 2024-06-11 | 深圳云豹智能有限公司 | 一种用于rdma中的功能级复位处理方法、装置及存储介质 |
CN117061072B (zh) * | 2023-10-10 | 2024-02-06 | 苏州元脑智能科技有限公司 | 报文传输方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104133723A (zh) * | 2014-08-11 | 2014-11-05 | 浪潮电子信息产业股份有限公司 | 一种管理存储系统的方法 |
CN105518611A (zh) * | 2014-12-27 | 2016-04-20 | 华为技术有限公司 | 一种远程直接数据存取方法、设备和系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9813338B2 (en) * | 2015-12-10 | 2017-11-07 | Cisco Technology, Inc. | Co-existence of routable and non-routable RDMA solutions on the same network interface |
US10210125B2 (en) * | 2017-03-16 | 2019-02-19 | Mellanox Technologies, Ltd. | Receive queue with stride-based data scattering |
US10733137B2 (en) * | 2017-04-25 | 2020-08-04 | Samsung Electronics Co., Ltd. | Low latency direct access block storage in NVME-of ethernet SSD |
CN109981471B (zh) * | 2017-12-27 | 2023-04-18 | 华为技术有限公司 | 一种缓解拥塞的方法、设备和系统 |
CN110071900B (zh) * | 2018-01-23 | 2020-11-17 | 华为技术有限公司 | 数据发送的方法及设备 |
CN109491809A (zh) * | 2018-11-12 | 2019-03-19 | 西安微电子技术研究所 | 一种降低高速总线延迟的通信方法 |
US11025564B2 (en) * | 2019-02-22 | 2021-06-01 | Microsoft Technology Licensing, Llc | RDMA transport with hardware integration and out of order placement |
CN110519242A (zh) * | 2019-08-13 | 2019-11-29 | 新华三大数据技术有限公司 | 数据传输方法及装置 |
CN110677220B (zh) * | 2019-09-09 | 2022-06-14 | 无锡江南计算技术研究所 | 一种基于多轨冗余应答的rdma消息机制及其实现装置 |
CN114090274A (zh) * | 2020-07-31 | 2022-02-25 | 华为技术有限公司 | 网络接口卡、存储装置、报文接收方法和发送方法 |
WO2022037777A1 (en) * | 2020-08-19 | 2022-02-24 | Huawei Technologies Co., Ltd. | Interchangeable queue type for network connections |
CN112261142B (zh) * | 2020-10-23 | 2023-07-14 | 浪潮(北京)电子信息产业有限公司 | 一种rdma网络的数据重传方法、装置及fpga |
CN114296916B (zh) * | 2021-12-23 | 2024-01-12 | 苏州浪潮智能科技有限公司 | 一种提高释放rdma性能的方法、装置及介质 |
-
2022
- 2022-04-29 CN CN202210466741.3A patent/CN114827234B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104133723A (zh) * | 2014-08-11 | 2014-11-05 | 浪潮电子信息产业股份有限公司 | 一种管理存储系统的方法 |
CN105518611A (zh) * | 2014-12-27 | 2016-04-20 | 华为技术有限公司 | 一种远程直接数据存取方法、设备和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114827234A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110995697B (zh) | 一种大数据传输方法及系统 | |
CN114827234B (zh) | 一种数据传输方法、系统、装置及存储介质 | |
US11343022B2 (en) | Disabling hybrid automatic repeat request (HARQ) acknowledgments for packets for which acknowledgements are supported at network or higher layer | |
CN103312807B (zh) | 数据传输方法、装置及系统 | |
JP5290365B2 (ja) | ワイヤレスパケットネットワークのためのブロック肯定応答プロトコル | |
US20080146242A1 (en) | Method for requesting an uplink resource allocation during a downlink data transmission | |
KR101563683B1 (ko) | Tcp 연결들에 의한 자원 소비를 관리하는 방법 및시스템 | |
WO2022095863A1 (zh) | 一种用于输变电设备物联网的微功率无线接入方法与装置 | |
US10284340B2 (en) | Multicast sending apparatus, multicast receiving apparatus, and multicast transmission determining method | |
CN103957169A (zh) | 一种基于反向请求的可靠udp的实现方法 | |
WO2018076580A1 (zh) | 无线网络双边加速传输方法和系统 | |
CN101860423A (zh) | 一种协议分组传输的重传方法和装置 | |
US8184541B2 (en) | Method and system for link layer scheduling in a multiple access communication system | |
CN103684711A (zh) | 一种基于信道模型的工厂自动化无线网络arq重传方法 | |
KR20000046483A (ko) | 무선 통신 시스템에서 무선 자원 할당방법 | |
CN101662798B (zh) | 无线传感器网络低功耗邀请重传方法及其装置 | |
CN111836209A (zh) | 提升LoRa单通道数据传输效率的方法及系统 | |
US20020099838A1 (en) | Method for allocating receive buffers to accommodate retransmission scheme in wireless computer networks | |
EP3809748A1 (en) | Data transmitting method and device, and data receiving method and device | |
US6530056B1 (en) | Method for setting a timer based on previous channel request statistics | |
KR20030031898A (ko) | 기지국 프로세서에서의 무선 채널 할당 | |
US7154850B1 (en) | Wireless data transmission using time out control | |
WO2004071027A1 (en) | Methods and systems for non-disruptive physical address resolution | |
US20240154735A1 (en) | Method and apparatus for transmitting objects based on deadline-aware | |
CN107204824B (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 |