CN107104902B - 一种rdma数据传输的方法、相关装置与系统 - Google Patents
一种rdma数据传输的方法、相关装置与系统 Download PDFInfo
- Publication number
- CN107104902B CN107104902B CN201710217525.4A CN201710217525A CN107104902B CN 107104902 B CN107104902 B CN 107104902B CN 201710217525 A CN201710217525 A CN 201710217525A CN 107104902 B CN107104902 B CN 107104902B
- Authority
- CN
- China
- Prior art keywords
- rdma
- receiving
- sending
- sub
- message
- 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 56
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000004044 response Effects 0.000 claims description 42
- 230000001960 triggered effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006872 improvement Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- 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/1809—Selective-repeat protocols
-
- 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/1832—Details of sliding window management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
Abstract
本发明实施例公开了一种RDMA数据传输的方法、相关装置和系统,发送设备通过建立的连接可以向接收设备发送RDMA子报文,在RDMA子报文中携带有对应的序列号。接收设备通过滑动窗口接收到RDMA子报文后,可以依据RDMA子报文中携带的序列号,判断是否接收到RDMA报文对应的所有RDMA子报文。若存在未接收到的RDMA子报文,接收设备则向发送设备发送反馈信息,在该反馈信息中携带有未接收到的RDMA子报文的序列号。发送设备依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。通过该种方式,可以实现按需重传,并且接收设备利用滑动窗口接收子报文,可以有效降低网络拥塞掉包情况的发生,从而可以实现在面向不可靠网络时实现可靠的RDMA数据传输。
Description
技术领域
本发明涉及存储系统技术领域,特别是涉及一种RDMA数据传输的方法、相关装置和系统。
背景技术
随着高性能并行计算技术的不断发展,数据呈现指数级增长的趋势。并行计算的互连网络中,链路的速率已达到40Gbps,随着链路速率的提升,其产生的误码率必将大大增加,从而给可靠传输带来极大的风险。
针对这种情况,并行的计算机体系结构需要设计对应的容错设计,远程内存访问(Remote Direct Memory Access,RDMA)是并行的计算机系统中最基本的一种通信方式。RDMA通过网络把资料直接传入计算机的存储区,将数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,这样就不需要用到多少计算机的处理功能。它消除了外部存储器复制和文本交换操作,因而能解放内存带宽和CPU周期用于改进应用系统性能。
并行计算大规模的扩大使用,使得互连的网络变得越来越不可靠。因此在提高存储系统容量的同时,还需考虑如何提升存储系统的通信性能,特别是在面向不可靠网络时,如何实现可靠的RDMA数据传输,减少重传整个RDMA数据开销,在相同的错误概率下,实现传输效率的提升,提高存储系统通信性能,尤为重要。
可见,如何在面向不可靠网络时实现可靠的RDMA数据传输,是本领域技术人员亟待解决的问题。
发明内容
本发明实施例的目的是提供一种RDMA数据传输的方法、相关装置和系统,可以在面向不可靠网络时实现可靠的RDMA数据传输。
为解决上述技术问题,本发明实施例提供一种RDMA数据传输的方法,包括:
在接收到发送设备发送的连接建立请求后,向所述发送设备发送连接建立响应;
通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;
依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;
若存在未接收到的所述RDMA子报文,则向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;
接收所述发送设备发送的所述序列号对应的RDMA子报文。
可选的,还包括:
在接收到所述RDMA报文所对应的所有RDMA子报文后,向所述发送设备发送传输完成响应。
本发明实施例还提供一种RDMA数据传输的装置,包括接收单元、发送单元和判断单元:
所述接收单元,用于在接收到发送设备发送的连接建立请求后,则触发所述发送单元,所述发送单元,用于向所述发送设备发送连接建立响应;
所述接收单元还用于通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;
所述判断单元,用于依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;
若存在未接收到的所述RDMA子报文,则触发所述发送单元,所述发送单元还用于向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;
所述接收单元还用于接收所述发送设备发送的所述序列号对应的RDMA子报文。
可选的,所述接收单元还用于在接收到所述RDMA报文所对应的所有RDMA子报文后,则触发所述发送单元,所述发送单元还用于向所述发送设备发送传输完成响应。
本发明实施例还提供了一种RDMA数据传输的方法,包括:
向接收设备发送连接建立请求;
在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接,并向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;
在接收到所述接收设备发送的反馈信息后,依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。
可选的,还包括:
在接收到所述接收设备发送的传输完成响应后,撤销与所述接收设备建立的连接。
本发明实施例还提供了一种RDMA数据传输的装置,包括发送单元、接收单元和建立单元:
所述发送单元,用于向接收设备发送连接建立请求;
所述接收单元,用于在接收到所述接收设备发送的连接建立响应后,则触发所述建立单元,所述建立单元,用于建立与所述接收设备的连接;
所述发送单元还用于向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;
所述接收单元还用于在接收到所述接收设备发送的反馈信息后,则触发所述发送单元,所述发送单元还用于依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。
可选的,还包括撤销单元:
所述接收单元还用于在接收到所述接收设备发送的传输完成响应后,则触发所述撤销单元,所述撤销单元,用于撤销与所述接收设备建立的所述连接。
本发明实施例还提供了一种RDMA数据传输的系统,包括发送设备和接收设备;
所述发送设备,用于向所述接收设备发送连接建立请求;在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接,并向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;在接收到所述接收设备发送的反馈信息后,依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文;
所述接收设备,用于在接收到所述发送设备发送的连接建立请求后,向所述发送设备发送连接建立响应;通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;若存在未接收到的所述RDMA子报文,则向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;接收所述发送设备发送的所述序列号对应的RDMA子报文。
由上述技术方案可以看出,当需要传输报文时,发送设备通过向接收设备发送连接建立请求;在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接。发送设备通过该连接可以向接收设备发送RDMA子报文。并且发送的RDMA子报文中携带有对应的序列号。接收设备通过滑动窗口接收到RDMA子报文后,可以依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文。若存在未接收到的所述RDMA子报文,接收设备则向发送设备发送反馈信息,在该反馈信息中携带有未接收到的RDMA子报文的序列号。发送设备依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。通过该种方式,可以实现按需重传,避免了重传整个RDMA报文,实现传输效率的提升。并且接收设备利用滑动窗口接收发送设备发送的子报文,可以有效降低网络拥塞掉包情况的发生。通过该技术方案,可以实现在面向不可靠网络时实现可靠的RDMA数据传输。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种RDMA数据传输的方法的信令流程图;
图2为本发明实施例提供的一种RDMA数据传输的装置的结构示意图;
图3为本发明实施例提供的另一种RDMA数据传输的装置的结构示意图;
图4为本发明实施例提供的一种RDMA数据传输的系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
随着高性能并行计算技术的发展,数据传输速率得到了极大的提升,但是随着并行计算的大规模应用,使得网络环境变得不可靠。不可靠的网络环境下,数据传输的误码率将会增大。传统方式中,当传输的数据出现错误时,需要重传整个RDMA数据,严重影响数据传输的效率,导致存储系统通信性能的下降。
为此,本发明实施例提供了一种RDMA数据传输的方法、相关装置和系统,通过将报文切分成子报文,并且在每个子报文中携带有对应的序列号,进行报文的传输,接收设备依据序列号信息,便可获知哪个子报文没有获取成功,通过向发送设备反馈未获取成功的子报文的序列号的方式,使得发送设备可以将传输出现错误的子报文重新发送给接收设备。通过该种方式,可以实现按需重传,避免了重传整个RDMA报文,实现传输效率的提升。并且接收设备利用滑动窗口接收发送设备发送的子报文,可以有效降低网络拥塞掉包情况的发生。通过本发明实施例提供的技术方案,可以实现在面向不可靠网络时实现可靠的RDMA数据传输。
发送设备以报文的形式向接收设备传输数据,在进行报文的传输时,可以根据报文的大小,对报文进行切分,在本发明实施例中,可以将切分后的报文称作子报文,一个完整的报文可以切分成多个子报文。
接下来,详细介绍本发明实施例所提供的一种RDMA数据传输的方法。图1为本发明实施例提供的一种RDMA数据传输的方法的信令流程图,该方法包括:
S101:发送设备向接收设备发送连接建立请求。
S102:接收设备接收发送设备发送的连接建立请求。
S103:接收设备向所述发送设备发送连接建立响应。
接收设备依据连接建立请求,可以获知发送设备需要与其建立连接。接收设备在接收到该连接请求后,可以向发送设备反馈连接建立响应,该连接建立响应可以用于告知发送设备可以建立连接。
S104:发送设备在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接。
发送设备在接收到接收设备反馈的连接建立响应后,便可建立与接收设备之间的连接。
S105:发送设备向所述接收设备发送RDMA子报文。
在本发明实施例中,数据以子报文的形式进行传输,由于一个完整的报文可以被切分成多个子报文,为了便于识别子报文的顺序,可以为切分后的每个子报文设置对应的序列号。也即发送设备向接收发送的RDMA子报文中携带有对应的序列号。
例如,一个RDMA报文切分为4096个RDMA子报文时,RDMA子报文携带的序列号可以为0~4095。
S106:接收设备通过滑动窗口接收所述发送设备发送的RDMA子报文。
在本发明实施例中,接收设备可以利用滑动窗口实现子报文的接收。滑动窗口(Sliding window)是一种流量控制技术,早期的网络通信中,通信双方不会考虑网络的拥挤情况直接发送数据。由于不知道网络拥塞状况,同时发送数据,可能导致中间节点阻塞掉包。滑动窗口协议是用来改善吞吐量的一种技术,即容许发送设备在传输数据之前传送附加的包。接收设备告诉发送设备在某一时刻能送多少包。采用滑动窗口来进行数据传输控制,滑动窗口的大小意味着接收设备还有多大的缓冲区可以用于接收数据。发送设备可以通过滑动窗口的大小来确定应该发送多少字节的数据。
接收设备利用滑动窗口接收子报文,可以有效降低网络拥塞掉包情况的发生。
接收设备依据RDMA子报文中携带的序列号,可以计算出所述RDMA子报文的起始地址,便可以将所述RDMA子报文存储于所述起始地址指示的位置。
S107:接收设备依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文。
在本发明实施例中,发送设备可以将一个RDMA报文所切分的所有RDMA子报文的序列号发送给接收设备,以便于接收设备在接收到RDMA子报文后,可以根据接收的RDMA子报文携带的序列号,判断是否接收到所述RDMA报文对应的所有RDMA子报文。
S108:若存在未接收到的所述RDMA子报文,接收设备则向发送设备发送反馈信息。
考虑到网络时延,或者是RDMA子报文数量较多等因素的影响,导致接收设备接收完一个RDMA报文对应的所有RDMA子报文的需要花费一定的时间。故此,可以在接收设备中预先设置规定时间,从发送设备接收到RDMA子报文后开始计时,当到达规定时间,若未接收到一个RDMA报文对应的所有RDMA子报文,则向发送设备发送反馈信息。
在反馈信息中可以携带未接收到的RDMA子报文的序列号。
S109:发送设备接收所述接收设备发送的反馈信息。
S110:发送设备依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。
发送设备接收到该反馈信息后,便可依据反馈信息中携带的序列号,从切分的RDMA子报文中查找该序列号所对应的子报文,并将该子报文重新发送给接收设备。
S111:接收设备接收所述发送设备发送的所述序列号对应的RDMA子报文。
由上述技术方案可以看出,当需要传输报文时,发送设备通过向接收设备发送连接建立请求;在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接。发送设备通过该连接可以向接收设备发送RDMA子报文。并且发送的RDMA子报文中携带有对应的序列号。接收设备通过滑动窗口接收到RDMA子报文后,可以依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文。若存在未接收到的所述RDMA子报文,接收设备则向发送设备发送反馈信息,在该反馈信息中携带有未接收到的RDMA子报文的序列号。发送设备依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。通过该种方式,可以实现按需重传,避免了重传整个RDMA报文,实现传输效率的提升。并且接收设备利用滑动窗口接收发送设备发送的子报文,可以有效降低网络拥塞掉包情况的发生。通过该技术方案,可以实现在面向不可靠网络时实现可靠的RDMA数据传输。
在发送设备和接收设备之间建立的连接,会占用一定的内存空间,建立连接的目的是为了传输数据,当接收设备接收到RDMA报文所对应的所有RDMA子报文后,此时没有数据需要传输,该连接会处于空闲状态。由于该连接依然存在,其仍会占用内存空间,针对该种情况,可以由接收设备向发送设备发送传输完成的响应信息,发送设备在接收到该响应信息后,可以将该连接撤销即删除掉该连接,从而释放该连接所占用的内存空间。
具体的,当接收设备在接收到所述RDMA报文所对应的所有RDMA子报文后,向所述发送设备发送传输完成响应;发送设备在接收到所述传输完成响应后,撤销与所述接收设备建立的连接。
图2为本发明实施例提供的一种RDMA数据传输的装置的结构示意图,该装置应用于接收设备,包括接收单元21、发送单元22和判断单元23:
所述接收单元21,用于在接收到发送设备发送的连接建立请求后,则触发所述发送单元22,所述发送单元22,用于向所述发送设备发送连接建立响应。
所述接收单元21还用于通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成。
所述判断单元23,用于依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文。
若存在未接收到的所述RDMA子报文,则触发所述发送单元22,所述发送单元22还用于向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号。
所述接收单元21还用于接收所述发送设备发送的所述序列号对应的RDMA子报文。
可选的,所述接收单元还用于在接收到所述RDMA报文所对应的所有RDMA子报文后,则触发所述发送单元,所述发送单元还用于向所述发送设备发送传输完成响应。
图2所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述介绍可知,接收设备的接收单元,在接收到发送设备发送的连接建立请求后,可以通过发送单元向所述发送设备发送连接建立响应。接收单元可以通过滑动窗口接收所述发送设备发送的RDMA子报文。判断单元,依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文。若存在未接收到的所述RDMA子报文,则通过发送单元向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号。接收单元可以接收所述发送设备发送的所述序列号对应的RDMA子报文。接收单元利用滑动窗口接收发送设备发送的子报文,可以有效降低网络拥塞掉包情况的发生。
图3为本发明实施例提供的一种RDMA数据传输的装置的结构示意图,该装置应用于发送设备,包括发送单元31、接收单元32和建立单元33:
所述发送单元31,用于向接收设备发送连接建立请求。
所述接收单元32,用于在接收到所述接收设备发送的连接建立响应后,则触发所述建立单元33,所述建立单元33,用于建立与所述接收设备的连接。
所述发送单元31还用于向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号。
所述接收单元32还用于在接收到所述接收设备发送的反馈信息后,则触发所述发送单元,所述发送单元还用于依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。
可选的,还包括撤销单元:
所述接收单元还用于在接收到所述接收设备发送的传输完成响应后,则触发所述撤销单元,所述撤销单元,用于撤销与所述接收设备建立的所述连接。
图3所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述介绍可知,发送设备通过发送单元,可以向接收设备发送连接建立请求,接收单元在接收到接收设备发送的连接建立响应后,通过建立单元可以建立与所述接收设备的连接。发送单元依据建立的连接可以向所述接收设备发送RDMA子报文。接收单元在接收到所述接收设备发送的反馈信息后,则触发所述发送单元,所述发送单元还用于依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。可见,发送设备依据于接收设备发送的未接收到的RDMA子报文的序列号,可以实现按需重传,避免了重传整个RDMA报文,实现传输效率的提升。
图4为本发明实施例提供的一种RDMA数据传输的系统的结构示意图,包括发送设备41和接收设备42;
所述发送设备41,用于向所述接收设备发送连接建立请求;在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接,并向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;在接收到所述接收设备发送的反馈信息后,依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文。
所述接收设备42,用于在接收到所述发送设备发送的连接建立请求后,向所述发送设备发送连接建立响应;通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;若存在未接收到的所述RDMA子报文,则向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;接收所述发送设备发送的所述序列号对应的RDMA子报文。
图4所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
以上对本发明所提供的一种RDMA数据传输的方法、相关装置和系统进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
Claims (5)
1.一种RDMA数据传输的方法,其特征在于,包括:
在接收到发送设备发送的连接建立请求后,向所述发送设备发送连接建立响应;接收发送设备传输的一个RDMA报文所切分的所有RDMA子报文的序列号;
通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;
依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;
若存在未接收到的所述RDMA子报文,则向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;
接收所述发送设备发送的所述序列号对应的RDMA子报文;
在接收到所述RDMA报文所对应的所有RDMA子报文后,向所述发送设备发送传输完成响应;发送设备在接收到所述传输完成响应后,撤销与接收设备建立的连接。
2.一种RDMA数据传输的装置,其特征在于,包括接收单元、发送单元和判断单元:
所述接收单元,用于在接收到发送设备发送的连接建立请求后,则触发所述发送单元,所述发送单元,用于向所述发送设备发送连接建立响应;
所述接收单元还用于接收发送设备传输的一个RDMA报文所切分的所有RDMA子报文的序列号;通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;
所述判断单元,用于依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;
若存在未接收到的所述RDMA子报文,则触发所述发送单元,所述发送单元还用于向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;
所述接收单元还用于接收所述发送设备发送的所述序列号对应的RDMA子报文;
所述接收单元还用于在接收到所述RDMA报文所对应的所有RDMA子报文后,则触发所述发送单元,所述发送单元还用于向所述发送设备发送传输完成响应;发送设备在接收到所述传输完成响应后,撤销与接收设备建立的连接。
3.一种RDMA数据传输的方法,其特征在于,包括:
向接收设备发送连接建立请求;将一个RDMA报文所切分的所有RDMA子报文的序列号发送给接收设备;
在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接,并向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;
在接收到所述接收设备发送的反馈信息后,依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文;
在接收到所述接收设备发送的传输完成响应后,撤销与所述接收设备建立的连接。
4.一种RDMA数据传输的装置,其特征在于,包括发送单元、接收单元和建立单元:
所述发送单元,用于向接收设备发送连接建立请求;将一个RDMA报文所切分的所有RDMA子报文的序列号发送给接收设备;
所述接收单元,用于在接收到所述接收设备发送的连接建立响应后,则触发所述建立单元,所述建立单元,用于建立与所述接收设备的连接;
所述发送单元还用于向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;
所述接收单元还用于在接收到所述接收设备发送的反馈信息后,则触发所述发送单元,所述发送单元还用于依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文;
还包括撤销单元:
所述接收单元还用于在接收到所述接收设备发送的传输完成响应后,则触发所述撤销单元,所述撤销单元,用于撤销与所述接收设备建立的所述连接。
5.一种RDMA数据传输的系统,其特征在于,包括发送设备和接收设备;
所述发送设备,用于向所述接收设备发送连接建立请求;将一个RDMA报文所切分的所有RDMA子报文的序列号发送给接收设备;在接收到所述接收设备发送的连接建立响应后,建立与所述接收设备的连接,并向所述接收设备发送RDMA子报文;在所述RDMA子报文中携带有对应的序列号;在接收到所述接收设备发送的反馈信息后,依据所述反馈信息中携带的序列号,向所述接收设备发送所述序列号对应的RDMA子报文;发送设备在接收到传输完成响应后,撤销与所述接收设备建立的连接;
所述接收设备,用于在接收到所述发送设备发送的连接建立请求后,向所述发送设备发送连接建立响应;通过滑动窗口接收所述发送设备发送的RDMA子报文;一个RDMA报文由至少一个所述RDMA子报文构成;依据所述RDMA子报文中携带的序列号,判断是否接收到所述RDMA报文对应的所有所述RDMA子报文;若存在未接收到的所述RDMA子报文,则向发送设备发送反馈信息;所述反馈信息中携带未接收到的所述RDMA子报文的序列号;接收所述发送设备发送的所述序列号对应的RDMA子报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217525.4A CN107104902B (zh) | 2017-04-05 | 2017-04-05 | 一种rdma数据传输的方法、相关装置与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710217525.4A CN107104902B (zh) | 2017-04-05 | 2017-04-05 | 一种rdma数据传输的方法、相关装置与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107104902A CN107104902A (zh) | 2017-08-29 |
CN107104902B true CN107104902B (zh) | 2021-04-23 |
Family
ID=59675225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710217525.4A Active CN107104902B (zh) | 2017-04-05 | 2017-04-05 | 一种rdma数据传输的方法、相关装置与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107104902B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460533B (zh) * | 2019-07-12 | 2023-09-19 | 锐捷网络股份有限公司 | 基于rdma的数据传输方法及装置 |
CN110677220B (zh) * | 2019-09-09 | 2022-06-14 | 无锡江南计算技术研究所 | 一种基于多轨冗余应答的rdma消息机制及其实现装置 |
CN113076280B (zh) * | 2019-12-18 | 2024-03-01 | 华为技术有限公司 | 一种数据传输方法及相关设备 |
CN113608686B (zh) * | 2021-06-30 | 2023-05-26 | 苏州浪潮智能科技有限公司 | 一种远程内存直接访问方法及相关装置 |
CN115174484A (zh) * | 2022-06-16 | 2022-10-11 | 阿里巴巴(中国)有限公司 | 基于rdma的数据传输方法、装置、设备及存储介质 |
CN116566921B (zh) * | 2023-07-04 | 2024-03-22 | 珠海星云智联科技有限公司 | 远程直接内存访问读取的拥塞控制方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7817634B2 (en) * | 2006-06-30 | 2010-10-19 | Intel Corporation | Network with a constrained usage model supporting remote direct memory access |
US8244826B2 (en) * | 2007-10-23 | 2012-08-14 | International Business Machines Corporation | Providing a memory region or memory window access notification on a system area network |
CN104484295A (zh) * | 2014-12-16 | 2015-04-01 | 中国人民解放军国防科学技术大学 | 并行计算机系统中基于接收方滑动窗口的数据传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050223118A1 (en) * | 2004-04-05 | 2005-10-06 | Ammasso, Inc. | System and method for placement of sharing physical buffer lists in RDMA communication |
-
2017
- 2017-04-05 CN CN201710217525.4A patent/CN107104902B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7817634B2 (en) * | 2006-06-30 | 2010-10-19 | Intel Corporation | Network with a constrained usage model supporting remote direct memory access |
US8244826B2 (en) * | 2007-10-23 | 2012-08-14 | International Business Machines Corporation | Providing a memory region or memory window access notification on a system area network |
CN104484295A (zh) * | 2014-12-16 | 2015-04-01 | 中国人民解放军国防科学技术大学 | 并行计算机系统中基于接收方滑动窗口的数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107104902A (zh) | 2017-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107104902B (zh) | 一种rdma数据传输的方法、相关装置与系统 | |
JP4652467B2 (ja) | Mac層リセット後にノードbバッファデータを効率的に回復するためのシステム | |
WO2018205688A1 (zh) | 一种数据传输的方法、装置和系统 | |
TWI259674B (en) | Method and apparatus for reducing transmission errors in a third generation cellular system | |
CN106953797B (zh) | 一种基于动态连接的rdma数据传输的方法与装置 | |
KR102046792B1 (ko) | 송신 노드로부터 목적지 노드로의 데이터 전송 방법 | |
CA2467811C (en) | Enhanced data link layer selective reject mechanism in noisy wireless environment | |
EP3537761A1 (en) | Information processing method and device | |
WO2019052264A1 (zh) | 传输报文的方法、网络组件和计算机可读存储介质 | |
CN108886713B (zh) | 一种数据传输方法、数据接收设备及数据发送设备 | |
CN109314608A (zh) | 一种数据传输方法、网络设备及终端设备 | |
WO2018006871A1 (zh) | 一种进行数据重传的方法和设备 | |
KR20050078096A (ko) | 데이터 프레임 재전송 방법 및 상기 방법을 사용하는네트워크 장치 | |
WO2022083371A1 (zh) | 一种数据传输方法和装置 | |
JP2008289080A (ja) | 端末装置、ネットワーク装置およびデータ通信方法 | |
CN106603205B (zh) | 数据传输方法、装置和系统 | |
Maisuria et al. | Overview of techniques for improving QoS of TCP over wireless links | |
EP1505759B1 (en) | Method and device for transmitting/receiving data using acknowledged transport layer protocols | |
CN116963175A (zh) | 数据传输方法、装置及系统 | |
JP2013179486A (ja) | パケット監視装置、パケット監視方法およびパケット監視システム | |
Chandra et al. | TCP performance for future IP-based wireless networks | |
Kaur et al. | A Mathematical Approach to Avoid Congestion and to Analyse Snoop behaviour in Wired cum Wireless Network | |
JP2015201689A (ja) | 通信システム、送信装置、受信装置及び通信方法 | |
KR100548164B1 (ko) | Tcp 성능을 향상시킬 수 있는 무선통신시스템 및 그 방법 | |
Carle et al. | Assessment of edge devices with error control mechanisms for ATM networks with wireless local loop |
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 |