CN114221918A - 一种rdma网络rc通信模式的数据流长尾优化方法 - Google Patents

一种rdma网络rc通信模式的数据流长尾优化方法 Download PDF

Info

Publication number
CN114221918A
CN114221918A CN202210159172.8A CN202210159172A CN114221918A CN 114221918 A CN114221918 A CN 114221918A CN 202210159172 A CN202210159172 A CN 202210159172A CN 114221918 A CN114221918 A CN 114221918A
Authority
CN
China
Prior art keywords
packet
data packet
data
nak
sequence number
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.)
Granted
Application number
CN202210159172.8A
Other languages
English (en)
Other versions
CN114221918B (zh
Inventor
田臣
龚媛媛
高翼枭
陈贵海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202210159172.8A priority Critical patent/CN114221918B/zh
Publication of CN114221918A publication Critical patent/CN114221918A/zh
Application granted granted Critical
Publication of CN114221918B publication Critical patent/CN114221918B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/208Port mirroring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements 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/1607Details of the supervisory signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种RDMA网络RC通信模式的数据流长尾优化方法,包括:第二ToR交换机(靠近响应者的ToR交换机)接收响应者发送的数据包,对数据包包含的操作码进行判断,如果数据包中包含ACK扩展传输头时,第二ToR交换机对ACK扩展传输头进行解析,如果解析结果为该数据包代表包序列号混乱的NAK包,对NAK包进行复制并发送给请求者;第一ToR交换机(靠近请求者的ToR交换机)接收到NAK包并对其进行解析,记录其中携带的数据包序列号,当检测到请求者发出相同序列号的数据包时,复制一份发出,随后删除记录的数据包序列号。本发明能够极大地降低超时重传发生的概率,有效的提升系统性能,具有很大的实际应用价值。

Description

一种RDMA网络RC通信模式的数据流长尾优化方法
技术领域
本发明涉及数据中心网络通信技术领域,具体而言涉及一种RDMA网络RC通信模式的数据流长尾优化方法。
背景技术
远程内存直接访问(RDMA)已成为数据中心的最先进的高性能网络技术。它显著降低了网络传输中客户端与服务器端数据处理的延迟。它将数据直接从一台计算机的内存传输到另一台计算机,无需双方操作系统的介入,提供了极低的延迟(约3-5μs)和高吞吐量。
RDMA传输模式中的可靠的连接传输(Reliable Connection,RC)是基于无损网络(没有由缓冲区溢出引起的数据包丢失)设计的,对丢包具有较低的耐力。它采用了Go-back-to-N的重传机制,发送方需要重传最后一个正确接受的数据包之后的所有未被确认的数据包。因数据包丢失引发的Go-back-to-N重传会造成数据流出现长尾现象,性能极速下降。
基于以太网的RDMA网络(RDMA over Converged Ethernet,RoCE)采用基于优先级的流控制(Priority-based Flow Control,PFC)来减缓因缓冲区溢出造成的丢包。但除了缓冲区溢出造成丢包,还有其他原因造成丢包,如包损坏。包损坏的几个根本原因是:连接器被空气中尘土污染,损坏或弯曲的光纤导致光学信号从光纤中泄露,老旧的发射器降低了Tx-Power,坏的或未正确插入的收发器,共用组件受损。
在RDMA协议中,特定的数据包类型(如NAK)损坏,重传的NAK中携带的PSN的数据包的包损坏对应用程序更有危害,这是因为RDMA传输协议中失序重传与超时重传之间的性能差距。
失序重传的延迟较小的。当数据包损坏并被丢弃时,响应者检测到数据包序列错误并将NAK发送给请求者。请求者重传由NAK携带的PSN及往后的数据包。但是如果包损坏却无法触发失序重传,请求者则必须等待超时引发重传。由于超时值通常设置为网络最大的RTT(默认情况下为64ms),这个值比大多数小流量和平均网络RTT的延迟大得多,超时重传引发了极高的流时延。现今数据中心RPC的延迟为10μs,如果触发超时重传,则遭受超过1000倍的尾延迟。
接下来将分析两种数据包损坏导致的超时重传:
第一,NAK丢失。参见图1,RDMA协议是NAK-once机制,即响应者对每个ePSN只发送一次NAK。当响应者感知到数据包乱序发送的NAK因损坏而丢失时,接下来响应者收到的数据包都会因为顺序错误而被静默的丢弃,不会向请求方发送任何响应。因此,请求者无法感知到丢失,并继续传输,直到超时。
第二,数据包丢失两次。参见图2,这种情况也与RDMA中的NAK-once机制有关。如果具有相同PSN的数据包及其重传数据包都损坏,请求者也必须等待超时重传,因为响应者不会再为此ePSN生成NAK。
上述两种情况引发的超时重传问题严重影响了应用的性能,带来了超高的长尾时延。
发明内容
本发明针对现有技术中的不足,提供一种RDMA网络RC通信模式的数据流长尾优化方法,通过复制NAK包以及NAK上携带的PSN的数据包,极大地降低超时重传发生的概率,有效的提升系统性能,具有很大的实际应用价值。
为实现上述目的,本发明采用以下技术方案:
一种RDMA网络RC通信模式的数据流长尾优化方法,请求者和响应者分别通过第一ToR交换机和第二ToR交换机进行数据交互;所述优化方法包括以下步骤:
S1,第二ToR交换机接收响应者发送的数据包,对数据包包含的操作码进行判断,如果数据包中包含ACK扩展传输头时,转入步骤S2;
S2,第二ToR交换机对ACK扩展传输头进行解析,如果解析结果为该数据包代表包序列号混乱的NAK包,对NAK包进行复制并发送给请求者;
S3,第一ToR交换机接收NAK包并对其进行解析,记录其中携带的数据包序列号,记为ePSN,当检测到相同序列号的数据包时,复制一份发出,随后删除记录的数据包序列号ePSN。
为优化上述技术方案,采取的具体措施还包括:
进一步地,步骤S1中,对数据包包含的指令进行判断的过程包括以下子步骤:
第二ToR交换机对所有数据包的操作码的第4~第0位([4-0])进行解析,当[4-0]位操作码为10001时,判定数据包中包含ACK扩展传输头。
进一步地,步骤S2中,对ACK扩展传输头进行解析的过程包括以下子步骤:
当ACK扩展传输头综合域(AETH Syndrome Field)的第7位~第5位([7-5])为011且ACK扩展传输头综合域第4位~第0位([4-0])为00000时,判定该数据包为因乱序产生的NAK包;其中,ACK扩展传输头综合域的第7位~第5位如果为011,判定为否定确认包(NAK),如果ACK扩展传输头综合域第4位~第0位为00000时,判定为数据包序列号序列错误,代表有包乱序。
基于前述方法,本发明还提及一种RDMA网络RC通信模式的数据流长尾优化装置,所述数据流长尾优化装置包括:
第一ToR交换机和第二ToR交换机,第一ToR交换机临近请求者,第二ToR交换机临近响应者,请求者和响应者分别通过第一ToR交换机和第二ToR交换机进行数据交互;
第一判断模块,用于在第二ToR交换机接收到响应者发送的数据包后,对数据包包含的操作码进行判断,如果数据包中包含ACK扩展传输头时,启动第二判断模块;
第二判断模块,用于对ACK扩展传输头进行解析,如果解析结果为该数据包代表否定确认且是有包乱序的NAK包,生成复制控制指令;
复制模块,用于根据复制控制指令对NAK包进行复制并发送至请求者;
解析模块,用于对接收到的第二ToR交换机发送的复制的NAK包进行解析,记录其中携带的数据包序列号,记为ePSN,将解析到的数据包序列号ePSN发送至第二复制模块;
第二复制模块,用于复制拥有相同序列号的请求者本地数据包,发送,同时生成删除指令至删除模块;
删除模块,用于根据删除指令以删除解析模块中记录的数据包序列号ePSN。
本发明公开了一种优化RDMA网络RC通信模式中报文丢失导致的数据流长尾的方法,包括:对包的操作码进行判断,当包含AETH(ACK Extended Transport Header)时,进一步进行解析;若发现是NAK包时,利用交换机镜像功能在响应者的第二ToR交换机上复制NAK包,发送;请求者的第一ToR交换机上记录下来NAK上携带的ePSN(被损坏的包上面的包序列号),并复制第一个拥有此PSN的数据包。完成数据包复制后,第一ToR交换机将删除记录的PSN。本发明优化了在RDMA nak-once机制下,NAK丢失及重传包丢失带来的超时重传问题,在带宽成本可以忽略的情况下有效降低了包丢失造成的长尾时延,提高了应用的性能。
本发明的有益效果是:
第一,本发明的RDMA网络RC通信模式的数据流长尾优化方法,采用独特的复制策略复制了NAK包及NAK上携带的PSN的数据包,有效降低了因NAK包丢失及数据包丢失两次的概率,从而降低了超时重传发生的概率,提升了数据中心网络RDMA的性能,保障了低时延,高吞吐,保障应用程序的性能。本发明发现了数据中心中慢速IO出现的2个原因,通过简单有效的复制策略可以降低慢速IO出现的概率,保障了应用程序的性能。
第二,本发明的RDMA网络RC通信模式的数据流长尾优化方法,因为包较小且仅被复制一次,额外带宽消耗极低。
附图说明
图1为NAK丢失导致的请求者超时重传原理示意图。
图2为包丢失两次导致的请求者超时重传原理示意图。
图3为靠近响应者的第二ToR交换机复制NAK包的过程示意图。
图4为靠近请求者的第一ToR交换机记录PSN的过程示意图。
图5为靠近请求者的第一ToR交换机复制NAK上携带的PSN的数据包的过程示意图。
图6是本发明实施例的RDMA网络RC通信模式的数据流长尾优化方法流程图。
具体实施方式
现在结合附图对本发明作进一步详细的说明。
需要注意的是,发明中所引用的如“上”、“下”、“左”、“右”、“前”、“后”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
图6是本发明实施例的RDMA网络RC通信模式的数据流长尾优化方法流程图,图中的1~6是数据交互过程序号。参见图6,请求者和响应者分别通过第一ToR交换机和第二ToR交换机进行数据交互;该优化方法包括以下步骤:
步骤1:靠近响应者的第二ToR交换机检测对响应者发送的数据包的操作码(Opcode)进行判断,当包含AETH(ACK Extended Transport Header)时,转入步骤2对数据包进行再次解析。
示例性地,对数据包的操作码(Opcode)进行判断的过程为:采用靠近响应者的第二ToR交换机对所有包进行操作码解析,当操作码的第4位~第0位为10001时,表示为Acknowledge,进行步骤2的解析。
步骤2:当 AETH的解析结果为NAK时,靠近响应者的第二ToR交换机对此数据包(判定该数据包为NAK包)进行复制并发送至请求者。
示例性地,当ACK扩展传输头综合域(AETH Syndrome Field)的第7位~第5位([7-5])为011,判定为NAK,当ACK扩展传输头综合域第4位~第0位([4-0])为00000时,判定该数据包为因乱序(PSN Sequence Error)产生的NAK包;如图3所示,符合以上条件的NAK包会被靠近响应者的第二ToR交换机进行复制并发送给请求者。
步骤3:当靠近请求者的第一ToR交换机收到NAK包时,解析并记录NAK包上携带的包序列号,记为ePSN,并复制第一个拥有此PSN的数据包,准备重新发送。
如图4所示,当靠近请求者的第一ToR交换机确认收到乱序的NAK包时,解析其携带的PSN(PSN为响应者期望的包序列号),第一ToR交换机将此PSN记录下来,完成具有相同PSN的数据包复制后,删除自身记录的PSN。
第一ToR交换机的复制方式如图5所示,靠近请求者的第一ToR交换机对请求者发送的数据包进行解析,当数据包的PSN与记录的ePSN相同时,复制该数据包,并发往响应者。
优选的,靠近请求者的第一ToR交换机复制具有相同PSN的数据包并发出后,删除本地记录的PSN,避免造成多次复制。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (4)

1.一种RDMA网络RC通信模式的数据流长尾优化方法,其特征在于,请求者和响应者分别通过第一ToR交换机和第二ToR交换机进行数据交互;所述优化方法包括以下步骤:
S1,第二ToR交换机接收响应者发送的数据包,对数据包包含的操作码进行判断,如果数据包中包含ACK扩展传输头时,转入步骤S2;
S2,第二ToR交换机对ACK扩展传输头进行解析,如果解析结果为该数据包代表包序列号混乱的NAK包,对NAK包进行复制并发送给请求者;
S3,第一ToR交换机接收NAK包并对其进行解析,记录其中携带的数据包序列号,记为ePSN,当检测到请求者发出相同序列号的数据包时,复制一份发出,随后删除记录的数据包序列号ePSN。
2.根据权利要求1所述的RDMA网络RC通信模式的数据流长尾优化方法,其特征在于,步骤S1中,对数据包包含的指令进行判断的过程包括以下子步骤:
第二ToR交换机对所有数据包的操作码的第4位~第0位进行解析,当操作码的第4位~第0位为10001时,判定数据包中包含ACK扩展传输头。
3.根据权利要求2所述的RDMA网络RC通信模式的数据流长尾优化方法,其特征在于,步骤S2中,对ACK扩展传输头进行解析的过程包括以下子步骤:
当ACK扩展传输头综合域的第7位~第5位为011且ACK扩展传输头综合域第4位~第0位为00000时,判定该数据包为因乱序产生的NAK包;其中,ACK扩展传输头综合域的第7位~第5位如果为011,判定为否定确认包,如果ACK扩展传输头综合域第4位~第0位为00000时,判定为数据包序列号序列错误,代表有包乱序。
4.一种RDMA网络RC通信模式的数据流长尾优化装置,其特征在于,所述数据流长尾优化装置包括:
第一ToR交换机和第二ToR交换机,第一ToR交换机临近请求者,第二ToR交换机临近响应者,请求者和响应者分别通过第一ToR交换机和第二ToR交换机进行数据交互;
第一判断模块,用于在第二ToR交换机接收到响应者发送的数据包后,对数据包包含的操作码进行判断,如果数据包中包含ACK扩展传输头时,启动第二判断模块;
第二判断模块,用于对ACK扩展传输头进行解析,如果解析结果为该数据包代表否定确认且是有包乱序的NAK包,生成复制控制指令;
复制模块,用于根据复制控制指令对NAK包进行复制并发送至请求者;
解析模块,用于对接收到的第二ToR交换机发送的复制的NAK包进行解析,记录其中携带的数据包序列号,记为ePSN,将解析到的数据包序列号ePSN发送至第二复制模块;
第二复制模块,用于复制拥有相同序列号的请求者本地数据包,发送,同时生成删除指令至删除模块;
删除模块,用于根据删除指令以删除解析模块中记录的数据包序列号ePSN。
CN202210159172.8A 2022-02-22 2022-02-22 一种rdma网络rc通信模式的数据流长尾优化方法 Active CN114221918B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210159172.8A CN114221918B (zh) 2022-02-22 2022-02-22 一种rdma网络rc通信模式的数据流长尾优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210159172.8A CN114221918B (zh) 2022-02-22 2022-02-22 一种rdma网络rc通信模式的数据流长尾优化方法

Publications (2)

Publication Number Publication Date
CN114221918A true CN114221918A (zh) 2022-03-22
CN114221918B CN114221918B (zh) 2022-05-20

Family

ID=80709124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210159172.8A Active CN114221918B (zh) 2022-02-22 2022-02-22 一种rdma网络rc通信模式的数据流长尾优化方法

Country Status (1)

Country Link
CN (1) CN114221918B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111786748A (zh) * 2019-08-29 2020-10-16 北京京东尚科信息技术有限公司 数据重传方法和系统、网卡、装置、服务器和存储介质
CN112637015A (zh) * 2020-12-23 2021-04-09 盛科网络(苏州)有限公司 一种基于psn实现rdma网络的丢包检测方法及装置
CN113300818A (zh) * 2021-02-08 2021-08-24 阿里巴巴集团控股有限公司 数据传输系统及方法
WO2021213611A1 (en) * 2020-04-20 2021-10-28 Huawei Technologies Co., Ltd. An appratus and a method for selective multiple packet transmission for preferred packets
US20210385147A1 (en) * 2020-06-05 2021-12-09 Huawei Technologies Co., Ltd. Device and method for delivering acknowledgment in network transport protocols

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111786748A (zh) * 2019-08-29 2020-10-16 北京京东尚科信息技术有限公司 数据重传方法和系统、网卡、装置、服务器和存储介质
WO2021213611A1 (en) * 2020-04-20 2021-10-28 Huawei Technologies Co., Ltd. An appratus and a method for selective multiple packet transmission for preferred packets
US20210385147A1 (en) * 2020-06-05 2021-12-09 Huawei Technologies Co., Ltd. Device and method for delivering acknowledgment in network transport protocols
CN112637015A (zh) * 2020-12-23 2021-04-09 盛科网络(苏州)有限公司 一种基于psn实现rdma网络的丢包检测方法及装置
CN113300818A (zh) * 2021-02-08 2021-08-24 阿里巴巴集团控股有限公司 数据传输系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YI WANG 等: ""Error Recovery of RDMA Packets in Data Center Networks"", 《2019 28TH INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICATION AND NETWORKS (ICCCN)》 *

Also Published As

Publication number Publication date
CN114221918B (zh) 2022-05-20

Similar Documents

Publication Publication Date Title
US7305486B2 (en) System and method for fast, reliable byte stream transport
Balakrishnan et al. Explicit loss notification and wireless web performance
Paxson et al. Known TCP implementation problems
US10430374B2 (en) Selective acknowledgement of RDMA packets
US7487424B2 (en) Bitmap manager, method of allocating a bitmap memory, method of generating an acknowledgement between network entities, and network entity implementing the same
US7746786B2 (en) Retransmission control method and device
US6389016B1 (en) Data communication system and method for transporting data
KR100787294B1 (ko) 이동 통신 기지국의 티씨피 성능 향상 장치
JP2010114938A (ja) 通信方法
US9071525B2 (en) Data receiving apparatus, data receiving method, and program storage medium
US20070133414A1 (en) Method for faster detection and retransmission of lost TCP segments
KR20070051632A (ko) 통신 네트워크에서 데이터 프레임을 효율적으로 전송하는방법 및 장치
US20040095950A1 (en) Storage system
JP2006287925A (ja) エラー回復機構およびそれを備えるネットワーク要素
CN112738229A (zh) 一种实现数据自动续传的通信方法
US7007199B2 (en) Reliable communication method and device
KR100392169B1 (ko) 통신 시스템에서 데이터 패킷을 전달하기 위한 방법 및 장치
CN114221918B (zh) 一种rdma网络rc通信模式的数据流长尾优化方法
US20030137948A1 (en) Retransmission control in wireless packet data networks
US8239722B2 (en) Packet retransmission control method and apparatus in multicast communication
CN102201901A (zh) 数据重传方法及装置
KR100289232B1 (ko) 무선 데이터 서비스를 위한 이중 모드 선택적 반복 자동 재송요구 방법
US20020057687A1 (en) High speed interconnection for embedded systems within a computer network
JP2006191368A (ja) ネットワーク伝送装置
JPH0955718A (ja) データ通信装置

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