CN116566921B - 远程直接内存访问读取的拥塞控制方法、系统及存储介质 - Google Patents
远程直接内存访问读取的拥塞控制方法、系统及存储介质 Download PDFInfo
- Publication number
- CN116566921B CN116566921B CN202310811513.XA CN202310811513A CN116566921B CN 116566921 B CN116566921 B CN 116566921B CN 202310811513 A CN202310811513 A CN 202310811513A CN 116566921 B CN116566921 B CN 116566921B
- Authority
- CN
- China
- Prior art keywords
- sub
- response
- read
- messages
- request
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000004044 response Effects 0.000 claims abstract description 226
- 230000004931 aggregating effect Effects 0.000 claims abstract description 8
- 238000004891 communication Methods 0.000 claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
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/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种远程直接内存访问读取的拥塞控制方法、系统及存储介质,方法包括:按初始窗口向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,按所述第二窗口值对READ WQE拆分成多个子报文,将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。本申请具有提高网络性能的优点。
Description
技术领域
本发明涉及数据中心领域,具体涉及一种远程直接内存访问读取的拥塞控制方法、系统及存储介质。
背景技术
数据中心网络中计算机可以通过远程直接内存访问 (Remote Direct MemoryAccess,简称:RDMA)进行数据交换,从而使计算机的网络接口卡(Network InterfaceCard,简称NIC)通过网络从另外一个计算机的内存读取或者向另外一个计算机的内存写入数据,而不需要计算机的操作系统介入。RDMA在以太网上运行称为RDMA穿越汇聚以太网(RDMA over Converged Ethernet,RoCE)技术。
RDMA的操作类型主要有RDMA SEND(告知)、WRITE(写入)和READ(读取)三种,在现有的RDMA READ操作拥塞控制时,通过接收READ RESP(响应)报文的速率来调整其自身发送READ REQ(request)的频率实现对响应端网卡回复READ RESP发送速率的控制,但是此方案仅调节READ REQ的频率,当READ WQE(Work Queue Element)稍大(例如1MB)时,请求端网卡每放出一个READ REQ请求意味着响应端网卡可短时间连续回复较大(1MB)的READ RESP响应,因此现有技术无法实现对RDMA READ操作的细粒度控制,进而产生incast现象。
发明内容
本发明实施例提供了一种远程直接内存访问读取的拥塞控制方法、系统及存储介质,可以实现RDMA READ操作的细粒度控制,避免出现incast现象,避免网络拥塞,提高网络流畅度。
第一方面,本发明实施例提供一种远程直接内存访问读取的拥塞控制方法,所述方法包括如下步骤:
按初始窗口向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;
依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;
按所述第二窗口值对READ WQE拆分成多个子报文,将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;
接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。
第二方面,提供一种远程直接内存访问读取的拥塞控制方法,所述方法包括如下步骤:
接收请求侧按初始窗口发送的RDMA READ请求,向接收侧发送READ RESP响应报文;
接收请求侧发送的多个子报文,逐一向请求侧回复所述多个子报文对应的多个响应子报文。
第三方面,提供一种请求侧设备,所述请求侧设备包括:
通信单元,用于向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;
处理单元,用于依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对READ WQE拆分成多个子报文,
通信单元,用于将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。
第四方面,提供一种远程直接内存访问读取的拥塞控制系统,所述系统包括请求侧设备和响应侧设备:
请求侧设备,用于按初始窗口向响应侧发送RDMA READ请求;
响应侧设备,用于接收请求侧按初始窗口发送的RDMA READ请求,向接收侧发送READ RESP响应报文;
请求侧设备,用于接收响应侧返回的READ RESP响应报文;依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对READ WQE拆分成多个子报文,将该多个子报文发送给响应侧;
响应侧设备,用于接收请求侧发送的多个子报文,逐一向请求侧回复所述多个子报文对应的多个响应子报文;
请求侧设备,用于接收响应侧逐一回复所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。
第五方面,提供一种计算机可读存储介质,其存储用于电子数据交换的程序,其中,所述程序使得终端执行第一方面或第二方面提供的方法。
实施本发明实施例,具有如下有益效果:
本申请在请求端网卡通过拆分RDMA READ WQE的方式,控制请求端发送READ请求大小(即期望响应端回复的READ RESP报文长度和个数)及READ请求频率的方式来细粒度调整响应端网卡回复READ RESP报文速率。此方案具有三个优点:1)实现在请求端控制READRESP响应报文速率,避免READ RESP的incast现象;2)对READ WQE大小进行拆分,实现READRESP响应报文速率的细粒度控制;3)利用业务报文自身完成CC,无需增加新种类的报文。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是一种DMA的请求示意图;
图2是一种远程直接内存访问读取的拥塞控制方法的流程示意图;
图3是本申请提供的硬件拆包实现的总体框图;
图4是一种请求侧设备的结构示意图;
图5是本申请提供的一种远程直接内存访问读取的拥塞控制系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面介绍下本申请涉及的概念。
DMA:Direct Memory Access直接存储器访问;
WQE:Work Queue Element;工作队列元素;
CQE:Completion Queue Entry;完成队列条目;
DMA Len:DMA Length;远程DMA操作的字节长度;
incast现象是指,多打一的通信模式中,例如请求侧网卡向多个响应侧网卡发送RDMA READ请求,多个响应侧网卡同时回复单张请求侧网卡的RDMA READ请求时会出现的现象称为incast现象。
参阅图1,图1为一种DMA的请求示意图,其中主机A的网卡A为请求侧,主机B的网卡B为响应侧,如图1所示,网卡A发送SEND/WRITE请求,网卡B发送ACK响应,网卡A发送READ请求,网卡B发送READ RESP响应。请求侧网卡A发送的SEND/WRITE请求报文,引发网卡A至网卡B路径的流量增加,可能造成网卡A至网卡B路径拥塞;请求侧网卡A发送的READ请求报文,引发网卡B至网卡A路径的流量增加,可能造成网卡B至网卡A路径拥塞。
参阅图2,图2提供了一种远程直接内存访问读取的拥塞控制方法的流程示意图,如图2所示,该方法在网卡A和网卡B之间完成,其中网卡A为请求侧,网卡B为响应侧,该方法如图2所示,包括如下步骤:
步骤S201、网卡A按初始窗口发送RDMA READ请求;
步骤S202、网卡B向网卡A回复 READ RESP响应报文;
步骤S203、网卡A根据接收READ RESP响应包时间或速率得到第一窗口值,即可接收的READ RESP响应报文窗口值(即第一窗口值);
步骤S204、网卡A将该READ RESP响应报文窗口值(第一窗口值)转换为可发送的READ请求报文指代的需回复的READ RESP响应包报文窗口值(即第二窗口值);
步骤S205、网卡A按该第二窗口值对READ WQE拆分成多个子报文,将该多个子报文发送给网卡B;
示例的,上述网卡A按该第二窗口值对READ WQE拆分成多个子报文的方式本申请可以不限定,只需要网卡A按该第二窗口值对READ WQE拆分多个子报文即可,例如可以平均拆分,比如第二窗口值为500KB,则可以平均拆分成5个100KB,即5个子报文,每个子报文对应100KB,当然也可以不均匀拆分,例如拆分成3个报文,前2个子报文每个200KB,最后一个100KB,本申请并不限制上述拆分的具体方式。
示例的,上述网卡A按该第二窗口值对READ WQE拆分成多个子报文还可以包括:
网卡A拥塞控制算法单元计算出当前期望响应侧回复的READ RESP报文长度,对READ请求WQE拆分成多个子报文,每个子报文的长度为该当前期望响应侧回复的READ RESP报文长度。
示例的,上述将该多个子报文发送给网卡B具体可以包括:
网卡A将该多个子报文逐一发送给网卡B,每发送一个子报文,记录一个子报文的请求包信息,该请求包信息用于验证响应侧返回的响应子报文是否正确。
示例的,上述将该多个子报文发送给网卡B具体可以包括:
网卡A将该多个子报文逐一发送给网卡B,在网卡A发送最后一个子报文时,将最后一个子报文设置特殊标记(例如标记置1),该特殊标记用于确定是否完成一个完整的READ请求WQE。
步骤S206、网卡B逐一回复该多个子报文对应的多个响应子报文READ RESP;
步骤S207、网卡A接收并聚合多个响应子报文READ RESP并确定接收到一个完整的READ请求WQE后,上报CQE。
本申请在请求端网卡通过拆分RDMA READ WQE的方式,控制请求端发送READ请求大小(即期望响应端回复的READ RESP报文长度和个数)及READ请求频率的方式来细粒度调整响应端网卡回复READ RESP报文速率。此方案具有三个优点:1)实现在请求端控制READRESP响应报文速率,即在请求侧网卡依据其接收的READ RESP,释放RDMA READ请求的窗口,进而避免READ RESP的incast现象;2)对READ WQE大小进行拆分,实现READ RESP响应报文速率的细粒度控制;3)利用业务报文自身完成CC,无需增加新种类的报文。
示例的,上述方法还可以包括:
网卡A通过请求包信息确定该请求包信息对应的第i子报文发送错误时,网卡A将该第i子报文以及第i子报文之后的子报文全部重传给网卡B。
此技术方案在单一子报文发生错误时,对后续的子报文均进行重传,这样能够提高报文的准确性。
参阅图3,图3给出了硬件拆包实现的总体框图(类似的,也可以采用软件拆包的方式),READ请求WQE的拆分和聚合在硬件完成。需注意,发送重传时,硬件不再继续对READ请求进行拆分。如图3所述,软件包括:work Queue,Completion Queue;硬件包括:COE上报单元、READ RESP聚合单元、RX接收单元、拥塞控制算法单元、TX发送单元、READ请求拆分单元和发送调度单元。
其中:
READ请求拆分单元按拥塞控制算法单元计算出的当前期望对端回复的READ RESP报文长度,对READ请求WQE进行拆分;即READ请求当前期望对端回复READ RESP报文窗口调节。
TX发送单元发送拆分后的READ请求包,并按拥塞控制算法单元计算出的SEND/WRITE发送窗口值发送SEND/WRITE 请求报文,即拥塞控制算法单元向TX发送单元发送SEND/WRITE/请求报文发送窗口调节,TX发送单元发送SEND/WRITE/READ请求报文;
RX接收单元接收业务ACK/READ RESP响应报文;
拥塞控制算法单元根据READ RESP响应包时间或速率,确定可接收的READ RESP响应包报文窗口值,并将其转换为当前期望对端回复的READ RESP报文长度窗口值,并调整可发送READ RESP报文长度窗口值;根据业务ACK响应包时间或速率,确定可发送的SEND/WRITE请求包窗口值;
READ RESP聚合单元聚合多个READ RESP,根据记录的请求包信息判断是否完成一个READ请求的WQE;
CQE上报单元上报SEND/WRITE/READ请求WQE完成的CQE。
参阅图4,图4提供了一种请求侧设备,请求侧设备包括:
通信单元401,用于向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;
处理单元402,用于依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对READ WQE拆分成多个子报文,
通信单元401,用于将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。
示例的,通信单元,具体用于将该多个子报文逐一发送给响应侧,每发送一个子报文,记录一个子报文的请求包信息,该请求包信息用于验证响应侧返回的响应子报文是否正确。
示例的,通信单元,具体用于将该多个子报文逐一发送给响应侧,在发送最后一个子报文时,将最后一个子报告设置特殊标记,该特殊标记用于确定是否完成一个完整的READ请求WQE,若接收到该特殊标记对应的响应子报文,确定接收到一个完整的READ请求WQE。
示例的,通信单元,具体用于通过请求包信息确定该请求包信息对应的第i子报文发送错误时,将该第i子报文以及第i子报文之后的子报文全部重传给响应侧。
本申请在请求侧设备通过拆分RDMA READ WQE的方式,控制请求端发送READ请求大小(即期望响应端回复的READ RESP报文长度和个数)及READ请求频率的方式来细粒度调整响应端网卡回复READ RESP报文速率。此方案具有三个优点:1)实现在请求端控制READRESP响应报文速率,避免READ RESP的incast现象;2)对READ WQE大小进行拆分,实现READRESP响应报文速率的细粒度控制;3)利用业务报文自身完成CC,无需增加新种类的报文。
参阅图5,图5提供一种远程直接内存访问读取的拥塞控制系统,所述系统包括请求侧设备501和响应侧设备502:
请求侧设备,用于按初始窗口向响应侧发送RDMA READ请求;
响应侧设备,用于接收请求侧按初始窗口发送的RDMA READ请求,向接收侧发送READ RESP响应报文;
请求侧设备,用于接收响应侧返回的READ RESP响应报文;依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对READ WQE拆分成多个子报文,将该多个子报文发送给响应侧;
响应侧设备,用于接收请求侧发送的多个子报文,逐一向请求侧回复所述多个子报文对应的多个响应子报文;
请求侧设备,用于接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ请求WQE后,上报CQE。
上述请求侧设备还可以用于执行请求侧的方法步骤,上述响应侧设备可以用于执行响应侧的方法步骤,具体的实现步骤可以参见如图2所示方法实施例中的描述,这里不再赘述。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种远程直接内存访问读取的拥塞控制方法的部分或全部步骤。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种远程直接内存访问读取的拥塞控制方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以接收其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory ,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种远程直接内存访问读取的拥塞控制方法,其特征在于,所述方法包括如下步骤:
请求侧按初始窗口向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;
请求侧依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;
请求侧按所述第二窗口值对一个READ WQE拆分成多个子报文,将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;
请求侧接收并聚合多个响应子报文并确定接收到一个完整的READ WQE后,上报完成队列条目CQE;
所述确定接收到一个完整的READ WQE具体包括:
请求侧将该多个子报文逐一发送给响应侧,在发送最后一个子报文时,将最后一个子报告设置特殊标记,该特殊标记用于确定是否完成一个完整的READ WQE,若接收到该特殊标记对应的响应子报文,确定接收到一个完整的READ WQE。
2.根据权利要求1所述的方法,其特征在于,所述将该多个子报文发送给响应侧具体包括:
将该多个子报文逐一发送给响应侧,每发送一个子报文,记录一个子报文的请求包信息,该请求包信息用于验证响应侧返回的响应子报文是否正确。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
通过请求包信息确定该请求包信息对应的第i子报文发送错误时,将该第i子报文以及第i子报文之后的子报文全部重传给响应侧。
4.一种请求侧设备,其特征在于,所述请求侧设备包括:
通信单元,用于向响应侧发送RDMA READ请求,接收响应侧返回的READ RESP响应报文;
处理单元,用于依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对一个READ WQE拆分成多个子报文,
通信单元,用于将该多个子报文发送给响应侧,接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ WQE后,上报CQE;
所述通信单元,具体用于将该多个子报文逐一发送给响应侧,每发送一个子报文,记录一个子报文的请求包信息,该请求包信息用于验证响应侧返回的响应子报文是否正确。
5.根据权利要求4所述的请求侧设备,其特征在于,还包括:
通信单元,具体用于通过请求包信息确定该请求包信息对应的第i子报文发送错误时,将该第i子报文以及第i子报文之后的子报文全部重传给响应侧。
6.一种远程直接内存访问读取的拥塞控制系统,其特征在于,所述系统包括请求侧设备和响应侧设备:
请求侧设备,用于按初始窗口向响应侧发送RDMA READ请求;
响应侧设备,用于接收请求侧按初始窗口发送的RDMA READ请求,向接收侧发送READRESP响应报文;
请求侧设备,用于接收响应侧返回的READ RESP响应报文;依据所述READ RESP响应报文的时间或速率得到第一窗口值,将所述第一窗口值转换为第二窗口值,所述第一窗口值为接收的READ RESP响应报文窗口值;所述第二窗口值为发送的READ请求报文指代的需回复的READ RESP响应报文窗口值;按所述第二窗口值对一个READ WQE拆分成多个子报文,将该多个子报文发送给响应侧;
响应侧设备,用于接收请求侧发送的多个子报文,逐一向请求侧回复所述多个子报文对应的多个响应子报文;
请求侧设备,用于接收响应侧逐一回复的所述多个子报文对应的多个响应子报文;接收并聚合多个响应子报文并确定接收到一个完整的READ WQE后,上报CQE;
所述确定接收到一个完整的READ WQE具体包括:
请求侧将该多个子报文逐一发送给响应侧,在发送最后一个子报文时,将最后一个子报告设置特殊标记,该特殊标记用于确定是否完成一个完整的READ WQE,若接收到该特殊标记对应的响应子报文,确定接收到一个完整的READ WQE。
7.一种计算机可读存储介质,其存储用于电子数据交换的程序,其中,所述程序使得终端执行如权利要求1-3任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310811513.XA CN116566921B (zh) | 2023-07-04 | 2023-07-04 | 远程直接内存访问读取的拥塞控制方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310811513.XA CN116566921B (zh) | 2023-07-04 | 2023-07-04 | 远程直接内存访问读取的拥塞控制方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116566921A CN116566921A (zh) | 2023-08-08 |
CN116566921B true CN116566921B (zh) | 2024-03-22 |
Family
ID=87496743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310811513.XA Active CN116566921B (zh) | 2023-07-04 | 2023-07-04 | 远程直接内存访问读取的拥塞控制方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116566921B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116760779A (zh) * | 2023-08-21 | 2023-09-15 | 珠海星云智联科技有限公司 | 网络拥塞控制方法、系统、存储介质和电子设备 |
CN116915721B (zh) * | 2023-09-12 | 2023-12-19 | 珠海星云智联科技有限公司 | 一种拥塞控制方法、装置、计算设备及可读存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484295A (zh) * | 2014-12-16 | 2015-04-01 | 中国人民解放军国防科学技术大学 | 并行计算机系统中基于接收方滑动窗口的数据传输方法 |
CN107104902A (zh) * | 2017-04-05 | 2017-08-29 | 广东浪潮大数据研究有限公司 | 一种rdma数据传输的方法、相关装置与系统 |
CN109412958A (zh) * | 2017-08-18 | 2019-03-01 | 华为技术有限公司 | 数据中心的拥塞控制方法和装置 |
CN111512603A (zh) * | 2017-12-27 | 2020-08-07 | 华为技术有限公司 | 一种数据传输方法及第一设备 |
US11240162B1 (en) * | 2020-08-23 | 2022-02-01 | Habana Labs Ltd. | Method for remote direct memory access (RDMA) congestion control over an ethernet network |
WO2022089258A1 (zh) * | 2020-10-28 | 2022-05-05 | 华为技术有限公司 | 网络接口卡、控制器、存储装置和报文发送方法 |
WO2022259452A1 (ja) * | 2021-06-10 | 2022-12-15 | 日本電信電話株式会社 | 中間装置、通信方法、およびプログラム |
WO2023040949A1 (zh) * | 2021-09-17 | 2023-03-23 | 华为技术有限公司 | 网络接口卡、消息发送方法和存储装置 |
CN116204487A (zh) * | 2021-11-30 | 2023-06-02 | 华为技术有限公司 | 远程数据访问方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100070730A1 (en) * | 2008-09-17 | 2010-03-18 | Sebastian Pop | Minimizing memory access conflicts of process communication channels |
-
2023
- 2023-07-04 CN CN202310811513.XA patent/CN116566921B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484295A (zh) * | 2014-12-16 | 2015-04-01 | 中国人民解放军国防科学技术大学 | 并行计算机系统中基于接收方滑动窗口的数据传输方法 |
CN107104902A (zh) * | 2017-04-05 | 2017-08-29 | 广东浪潮大数据研究有限公司 | 一种rdma数据传输的方法、相关装置与系统 |
CN109412958A (zh) * | 2017-08-18 | 2019-03-01 | 华为技术有限公司 | 数据中心的拥塞控制方法和装置 |
CN111512603A (zh) * | 2017-12-27 | 2020-08-07 | 华为技术有限公司 | 一种数据传输方法及第一设备 |
US11240162B1 (en) * | 2020-08-23 | 2022-02-01 | Habana Labs Ltd. | Method for remote direct memory access (RDMA) congestion control over an ethernet network |
WO2022089258A1 (zh) * | 2020-10-28 | 2022-05-05 | 华为技术有限公司 | 网络接口卡、控制器、存储装置和报文发送方法 |
WO2022259452A1 (ja) * | 2021-06-10 | 2022-12-15 | 日本電信電話株式会社 | 中間装置、通信方法、およびプログラム |
WO2023040949A1 (zh) * | 2021-09-17 | 2023-03-23 | 华为技术有限公司 | 网络接口卡、消息发送方法和存储装置 |
CN116204487A (zh) * | 2021-11-30 | 2023-06-02 | 华为技术有限公司 | 远程数据访问方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于区域过滤的测序序列比对算法研究;丁胜楠;吴鸣;徐云;;信息技术与网络安全(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116566921A (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116566921B (zh) | 远程直接内存访问读取的拥塞控制方法、系统及存储介质 | |
CN116582492B (zh) | 优化rdma读取的拥塞控制方法、系统及存储介质 | |
CN111786748B (zh) | 数据重传方法和系统、网卡、装置、服务器和存储介质 | |
US11558302B2 (en) | Data transmission method and apparatus | |
US7123616B2 (en) | Determining round-trip time delay | |
US7770088B2 (en) | Techniques to transmit network protocol units | |
CN111817977B (zh) | 一种网络拥塞控制方法和装置 | |
CN101917231B (zh) | 一种光纤通道交换机的数据缓存方法 | |
CN103684707A (zh) | 服务端、用户端消息传输处理方法、消息传输方法及系统 | |
CN110831010A (zh) | 一种多通道数据发送及接收方法及装置和数据传输系统 | |
CN102299777A (zh) | 数据重传方法及装置 | |
US20070130364A1 (en) | Techniques to determine an integrity validation value | |
CN1758801B (zh) | 移动通信终端中的消息发送设备和方法 | |
CN109039552A (zh) | 一种数据恢复方法及装置 | |
CN111404842B (zh) | 数据传输方法、装置及计算机存储介质 | |
EP3938881A2 (en) | Termination of non-volatile memory networking messages at the drive level | |
CN115344405A (zh) | 一种数据处理方法、网络接口卡、电子设备及存储介质 | |
US7558200B2 (en) | Router congestion management | |
US20240146806A1 (en) | Intermediate apparatus, communication method, and program | |
CN112468513B (zh) | 一种企业网的终端管理通信方法 | |
WO2021212438A1 (zh) | 数据传输方法、装置、系统、终端设备和存储介质 | |
CN113965433A (zh) | 一种多网络聚合的实现方法 | |
CN113300967A (zh) | Rdma网络传输方法、装置以及rdma网络通信系统 | |
CN107241404B (zh) | 一种消息收发的方法、装置及系统 | |
CN111274195A (zh) | Rdma网络流控方法、装置及计算机可读存储介质 |
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 |