CN117318898B - 高速串行接口中重复数据包的处理方法 - Google Patents
高速串行接口中重复数据包的处理方法 Download PDFInfo
- Publication number
- CN117318898B CN117318898B CN202311598426.7A CN202311598426A CN117318898B CN 117318898 B CN117318898 B CN 117318898B CN 202311598426 A CN202311598426 A CN 202311598426A CN 117318898 B CN117318898 B CN 117318898B
- Authority
- CN
- China
- Prior art keywords
- data
- target
- packet
- sub
- batch
- 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 37
- 238000012545 processing Methods 0.000 title claims abstract description 19
- 239000000872 buffer Substances 0.000 claims abstract description 112
- 230000006978 adaptation Effects 0.000 claims abstract description 24
- 230000003993 interaction Effects 0.000 claims abstract description 7
- 230000005540 biological transmission Effects 0.000 claims description 20
- 238000003672 processing method Methods 0.000 abstract description 10
- 238000012790 confirmation Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 26
- 230000007246 mechanism Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000000047 product Substances 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 239000007795 chemical reaction product Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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
- 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/1867—Arrangements specially adapted for the transmitter end
-
- 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/1607—Details of the supervisory signal
-
- 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
-
- 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/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本申请提供一种高速串行接口中重复数据包的处理方法,应用于基于UCIE进行数据交互的芯片对,芯片对中第一芯片和第二芯片的适配层分别包括数据发送模块和数据接收模块,所述方法包括:数据发送模块基于目标数据重传请求发送目标重传数据批;目标重传数据批位于第一芯片适配层的重传缓冲器中,重传缓冲器包括多个子缓冲器,依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,若是,立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到重复数据包确认字符后停止发送目标重传数据批并发送新数据批,能实现重复数据包的高效准确判定和处理。
Description
技术领域
本申请涉及高速互联技术领域,尤其涉及一种高速串行接口中重复数据包的处理方法。
背景技术
UCIE(Universal Chiplet Interconnect Express,通用芯粒互联标准)是高速互联领域当前最快速的解决方案,Adapter Layer(适配层)作为其三层结构的中间层,需要实现FDI(Flit-Aware D2D Interface)接口到RDI(Raw D2D Interface)接口的转换,并通过retry(重传)操作保证数据正确传输到对端。
retry操作可能导致RX(即数据接收模块)收到重复的数据包(即flit),为了减少开销,RX收到重复的flit时需要立即回复Ack(Acknowledge character,确认字符)给TX(即数据发送模块)告知当前flit已经成功接收以使TX尽快停止无效数据的发送并转而发送后续有效的数据。
然而当前业界并没有提出对于重复数据包处理的具体实现方案。
发明内容
本申请提供一种高速串行接口中重复数据包的处理方法,以用于实现高速串行接口中重复数据包的高效准确判定和处理。
本申请提供一种高速串行接口中重复数据包的处理方法,所述方法应用于基于UCIE进行数据交互的芯片对,所述芯片对中的第一芯片的适配层包括数据发送模块,所述芯片对中的第二芯片的适配层包括数据接收模块,所述方法包括:
数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;
数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;
数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,具体包括:
基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件;
基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件,具体包括:
在目标数据包的数据编号不小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第二子条件;
在目标数据包的数据编号小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第三子条件。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述参照数据编号是基于数据批长度和子缓冲器数量确定的。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述第一子条件为目标数据包的数据编号不大于已确认数据编号,所述第二子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,所述第三子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,且预设长度的已确认数据编号序列中包括数据编号上限值。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包,具体包括:
若重复数据包判定条件包括第一子条件和第二子条件,在目标数据包的数据编号和已确认数据编号同时满足第一子条件和第二子条件的情况下,确定所述目标数据包为重复数据包;
若重复数据包判定条件包括第一子条件和第三子条件,在目标数据包的数据编号和已确认数据编号满足第一子条件和第三子条件之一的情况下,确定所述目标数据包为重复数据包。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述参照数据编号为数据批长度与子缓冲器数量的乘积与1的差值。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述重传缓冲器的深度是基于数据位宽及确认字符的延时确定的。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述目标数据重传请求是在数据发送模块发送目标数据批之后未收到对应的确认字符且看门狗溢出的情况下生成的。
根据本申请提供的一种高速串行接口中重复数据包的处理方法,所述数据发送模块在基于目标数据重传请求向数据接收模块发送目标重传数据批的同时会控制协议层停止发送新数据批,直至接收到目标数据批对应的确认字符。
本申请提供的高速串行接口中重复数据包的处理方法,应用于基于UCIE进行数据交互的芯片对,所述芯片对中的第一芯片的适配层包括数据发送模块,所述芯片对中的第二芯片的适配层包括数据接收模块,所述方法包括:数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批,能够实现高速串行接口中重复数据包的高效准确判定和处理。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的高速串行接口中重复数据包的处理方法的流程示意图;
图2是本申请提供的UCIE的重传机制示意图;
图3是本申请提供的基于UCIE传输数据的链路延时示意图;
图4是本申请提供的实现无缝传输的乒乓操作机制的原理示意图;
图5是本申请提供的重传缓冲器中数据编号的演变情况示意图;
图6是本申请提供的批长度为16时普通窗口数据组合示意图;
图7是本申请提供的批长度为16时特殊窗口数据组合示意图;
图8是本申请提供的批长度为8时普通窗口数据组合示意图;
图9是本申请提供的批长度为8时特殊窗口数据组合示意图;
图10是本申请提供的批长度为4时普通窗口数据组合示意图;
图11是本申请提供的批长度为4时特殊窗口数据组合示意图;
图12是本申请提供的批长度为4时使用16个子缓冲器对应的数据编号示意图;
图13是本申请提供的批长度为8时使用8个子缓冲器对应的数据编号示意图;
图14是本申请提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本申请提供的高速串行接口中重复数据包的处理方法的流程示意图,所述方法应用于基于UCIE进行数据交互的芯片对,所述芯片对中的第一芯片(后称die0)的适配层包括数据发送模块(即TX),所述芯片对中的第二芯片(后称die1)的适配层包括数据接收模块(即RX),如图1所示,该方法包括:
步骤101,数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批。
具体的,可以理解的是,所述第一芯片的适配层还可以包括数据接收模块,相应的,所述第二芯片的适配层还可以包括数据发送模块,基于此,两者即可实现数据交互。本申请实施例后续将以第一芯片发送数据,第二芯片接收数据的场景为例进行方案介绍。
由于UCIE使用Flit格式传输数据时,会为每个数据添加2B(即Byte,字节)的header(即数据头)和2B的CRC(Cyclic Redundancy Check,循环冗余校验码),其中header里携带当前数据的sequence number(即数据编号)。图2是本申请提供的UCIE的重传机制示意图,如图2所示,图中数字为数据编号,当TX发送一部分数据后(图2中64个数据仅为示例)没有及时收到对应的Ack以继续让协议层发送后续数据,则在看门狗溢出时将发起retry操作(对应图2中0-n区域)。
此时,RX已经成功接收了协议层发送的那些数据的全部或部分并发出了应答Ack,假设仅第一批flit(即数据包)接收成功,则在收到sequence number为15的flit时将发出sequence number为15的Ack,而由于链路延时或数据畸变导致TX无法及时收到应答Ack。RX必须能在收到编号为0(对应图2中0-n区域)的重复flit时立即发出重复数据包Ack(sequence number为15),以使TX收到该重复数据包Ack后立即停止重复批的发送并转而发送后续批(即图2中16-255)。当TX发送完sequence number为255的flit后,将继续使用sequence number 0-255发送来自协议层的后续数据(即图2中0-255部分);此时,RX必须能在收到编号为0(对应图2中0-255区域)的flit时识别出其并非重复数据包。
综上所述,RX侧判断flit是否是重复数据包时仅能获知其sequence number,且重复数据包和后续包(非重复数据包)的sequence number可能一样。因此,对于协议层发给Adapter Layer的第n批数据存在以下情况:
1、第n批数据在RX侧第一次即接收成功,则第一次接收成功第n批数据后再次收到第n批数据及其之前已经接收成功的数据需认定为重复数据包;第一次接收第n批数据成功之前(此时第n-1批已经接收成功),收到第n批数据之前已经接收成功的数据需认定为重复数据包。
2、第n批数据在RX侧第一次接收失败,则首次接收第n批数据成功之后(第n批数据可能被retry多次),再次收到第n批数据及其之前已经接收成功的数据需认定为重复数据包;首次接收第n批数据成功之前(此时第n-1批已经接收成功),收到第n批数据之前已经接收成功的数据需认定为重复数据包。
基于此,本申请实施例本发明采用基于重传缓冲器(即retry buffer)深度及反压协议层来设计重复数据包的判定机制,实现将上述不定区间整数判定是否重复问题转化为定区间整数判定是否重复问题。具体的,本申请实施例在第一芯片的适配层设置重传缓冲器,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批。通过乒乓操作实现支持Adapter层的seamless操作(支持实时操作,即发送数据的有效带宽达到最大),通过反压机制实现使用较小的面积实现对协议层数据的可靠发送(发送失败后将通过retry来保证失败的数据最终发送成功)。
其中,所述重传缓冲器的深度是基于数据位宽及确认字符的延时确定的。具体的,图3是本申请提供的基于UCIE传输数据的链路延时示意图,如图3所示,die0的数据发送模块(TX)接收来自协议层的数据,经过处理(包括为每一个数据添加sequence number)后将flit发给PHY(物理层);die1的数据接收模块(RX)接收flit,当接收到期望的完整批或重复flit时会应答Ack flit;接收到发生CRC错误或发生编号错误的flit时如果正在传输给协议层则应答Nak(Negative Acknowledge character,否定字符) flit。其中,Ack和Nak的延时(即latency)是决定本申请具体实现参数的重要决定因素。
如图3所示,批长度为1(发送1个flit将收到1个Ack/Nak)的时候,die0的TX发出flit到die0的TX收到Ack/Nak的 latency计算如下:假设链路上A-C均为2个clock(即时钟周期),则传输窗口大小为:(A+B+C)×4=24 clock。可以理解的是,对于批长度为1的情况,Ack和Nak的latency仅受链路的延时影响。
由于通过seamless操作可以提升数据传输效率,因此本申请实施例的适配层必须支持正常的seamless操作。对于批长度为1的情况,要实现seamless操作则重传缓冲器需缓存的数据个数(当前以64B的数据位宽为例)将比传输窗口内可以放置的数据个数多1,即需要缓存retry buffer最小为:(24+1)×64B = 25×64×8Kb/1024=12.5Kbits。由于芯片设计需要考虑面积,故retry buffer的面积越小越好。考虑链路其它延时预估批长度为1时Ack延时大于24,落在[28,36),可通过乒乓操作机制支持seamless操作。同理,批长度为n时(n不小于1),预估Ack延时大于12×2+n,落在[28+n,36+n),也可通过乒乓操作机制支持实现seamless操作。当n为16时,预估ACK落在[44,52)。进一步的,为保险起见,本申请实施例优选将retry buffer的深度设定为64×64。即可以存入64个64B数据。
在此基础上,图4是本申请提供的实现无缝传输的乒乓操作机制的原理示意图,该示例对应的批长度n为16,retry buffer的深度为64×64,子缓冲器的数量为4,如图4所示,协议层下发的前4批数据(即group0- group4)将同步存入retry buffer的4个子buffer(即子缓冲器,每个子buffer深度为16×64,可以存入16个64B的来自协议层的flit);如果Ack_g0(group0的确认字符)正常返回则在ack_g0对应的反压线(图中back pressure)之前TX得知第一批数据成功则将第5批数据覆盖写入group0对应的子buffer,即开始乒乓操作;同理,如果Ack_g1(group1的确认字符)正常返回则在ack_g1对应的反压线之前TX得知第2批数据成功则将第6批覆盖写入group1对应的子buffer,即继续乒乓操作;以此类推可以实现Ack正常返回时Adapter层的seamless发送操作。
反之,如果Ack_g0未正常返回即在ack_g0对应的反压线之后才返回到TX,则Adapter层发完前4批数据(seamless方式)时,同步反压协议层(即控制协议层停止发送新数据批),同时无法继续乒乓操作,即seamless操作将中止;直到收到ack_g0后才解除反压并继续发送。
由此可知,Ack和Nak应答的latency将极大的影响seamless操作,进而影响有效数据的传输效率。即重复数据包的Ack应答效率将极大的影响有效数据的传输效率。
因此,本申请实施例中Ack的工作机制如下:RX侧收到一批数据后返回Ack(携带特定的sequence number)以告知TX可以传输后续数据,有时由于链路延时或数据畸变导致TX无法及时收到该应答信息,进而TX的看门狗溢出(此时将会生成目标数据重传请求以指示数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批)将会把RX已经收到的数据再次发给RX(即进行重传操作),同时RX会控制协议层停止发送新数据批,直至接收到目标数据批对应的确认字符,以保证协议层数据的可靠发送。此时,RX需要识别出已经接收成功的数据(即重复数据包)并立即回复Ack(即重复数据包确认字符,其中包括当前接收成功的最大的批尾的sequence number),以使TX及时丢弃后续重复数据的发送并转而发送新的数据。
步骤102,数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符。
步骤103,数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批。
具体的,由于UCIE协议规定必须实现Ackd_sequence_number寄存器(用于存储已确认数据编号)和current_sequence_number寄存器(用于存储当前接收到的数据包的数据编号)的功能,因此本申请实施例采用基于Ackd_sequence_number寄存器和current_sequence_number寄存器来实现重复数据包判定,即利用已有资源来降低实现重复数据包判定所需的面积。
在RX侧流水提取(即按接收顺序依次提取)当前flit的sequence number并通过和Ackd_sequence_number进行比较来实现重复数据包判定。值得注意的是,一旦检测到一个数据批的首个数据是重复数据包后将忽略当前批的后续数据,基于此,能够最大化提高重复数据包的判定和处理效率。在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符,数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批,基于此,能够最大限度避免重复数据包的发送,保证数据传输效率。
为实现重复数据包判定效率最高,本申请实施例使用以下原理:将不定长度里判断数据编号是否发生重复的问题转换为定长度里判断数据的编号是否发生重复的问题,即利用retry buffer的深度有限(以64为例),将上述问题转换为判定数据是否落在[X-63,X]和[0,X]和[X-63,255]区间里的问题。进一步,利用Ackd_sequence_number寄存器的值满足一定特性(按批长度对齐),使上述定长度问题的右边界值满足一定约束(大量连续的整数问题变为少量离散的整数问题);即,使X为少量离散的整数。
更具体的,图5是本申请提供的重传缓冲器中数据编号的演变情况示意图,根据UCIE协议RX会将上次传输成功的批对应的最大的批尾sequence number存入寄存器Ackd_sequence[7:0](即前述Ackd_sequence_number寄存器,Ackd_sequence[7:0]的值即为已确认数据编号)里。假设当前提取的flit的sequence number为explict_seq_num[7:0]。
当前采用轮询的方式将来自协议层的数据依次存入4个子buffer里,且来自协议层的数据将反复轮询的使用sequence number 0-255。故TX的retry buffer对应的sequence number的演变情况是固定的(收到Ack后才能继续向前演进)。如图5所示,TX会根据来自RX的Ack对retry buffer 的子buffer进行覆盖写操作,具体为:
前4批数据将依次写入子buffer0到子buffer3 (图5的第1列至第4列依次对应于子buffer0至子buffer3);
当收到Ack15(即对应的数据编号为15)时将第5批数据(其sequence number为64-79)覆盖写入子buffer0;进一步当仅收到ack31时(ack15丢失)将第5批和第6批数据(其sequence number为64-79和80-95)依次覆盖写入子buffer0和buffer1;
同理,当收到ack79、ack143、ack207、ack223、ack239(仅为示例),子buffer里存储的数据编号情况如图5所示。
由于共有4个子buffer,每个buffer可存入16个来自协议层的flit,故已知retrybuffer里成功的最大的sequence number后可知该sequence number对应的前面的flit(最多有63个)。RX利用TX的retry buffer对应的sequence number的演变情况固定的特性,通过巧妙分类可以高效识别重复数据包。
对于具体的重复数据包判定规则,所述基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,具体包括:
基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件;
基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包。
所述基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件,具体包括:
在目标数据包的数据编号不小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第二子条件;
在目标数据包的数据编号小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第三子条件。
所述参照数据编号是基于数据批长度和子缓冲器数量确定的,更具体的,所述参照数据编号为数据批长度与子缓冲器数量的乘积与1的差值。
所述第一子条件为目标数据包的数据编号不大于已确认数据编号,所述第二子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,所述第三子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,且预设长度的已确认数据编号序列中包括数据编号上限值(表示RX发出过sequence number为255的Ack,即已经用过1轮全部sequence number,所述预设长度可根据实际需要进行设定)。
所述基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包,具体包括:
若重复数据包判定条件包括第一子条件和第二子条件,在目标数据包的数据编号和已确认数据编号同时满足第一子条件和第二子条件的情况下,确定所述目标数据包为重复数据包;
若重复数据包判定条件包括第一子条件和第三子条件,在目标数据包的数据编号和已确认数据编号满足第一子条件和第三子条件之一的情况下,确定所述目标数据包为重复数据包。
具体的,本申请通过研究图5中的数据编号演变情况发现,在目标数据包的数据编号不小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第二子条件,在目标数据包的数据编号和已确认数据编号同时满足第一子条件和第二子条件的情况下,即可确定所述目标数据包为重复数据包;在目标数据包的数据编号小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第三子条件,在目标数据包的数据编号和已确认数据编号满足第一子条件和第三子条件之一的情况下,即可确定所述目标数据包为重复数据包。其中,所述参照数据编号为数据批长度与子缓冲器数量的乘积与1的差值。
具体的,图6是本申请提供的批长度为16时普通窗口数据组合示意图,图7是本申请提供的批长度为16时特殊窗口数据组合示意图。对于图6-7的情形,其对应的数据批长度为16,子缓冲器数量为4,因此参照数据编号为63。结合图6可知,当ackd_sequence[7:0]的值不是15/31/47(即不小于参照数据编号63)时,并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63(第二子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0](第一子条件);
如果同时满足,则图6中的4种情况及其演化的组合(如16-79,…,176-239)对应的重复数据包均能被检测出来。
结合图7可知,当ackd_sequence[7:0]的值是15/31/47(即小于参照数据编号63)时,并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63且检测到已经用过1轮全部sequence number(即预设长度的已确认数据编号序列中包括数据编号上限值255)(第三子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0](第一子条件);
如果满足其一,则图7中的6种情况对应的重复数据包将被检测出来。其中,前3种对应乒乓操作的潜伏期。值得注意的是,8’d47-8’d63=8’d240。
可以理解的是,前述链路的延时可能随工艺的升级而变小,进而可以考虑使用更小的重传缓冲器,对应的使用更小的批长度,其同样适用于上述重复数据包判定规则。
其中,图8是本申请提供的批长度为8时普通窗口数据组合示意图,图9是本申请提供的批长度为8时特殊窗口数据组合示意图,当批长度为8时,对于4个子buffer,每个子buffer可以存入8个数据。由此,重传缓冲器的面积相较批长度为16时减小1/2。对于图8-9的情形,其对应的参照数据编号为31。结合图8可知,当ackd_sequence[7:0]的值不是7/15/23(即不小于参照数据编号31)时,并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d31(第二子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果同时满足,则图8中的4种情况及其演化的组合(如8-39,…,216-247)对应的重复数据包均能被检测出来。
结合图9可知,当ackd_sequence[7:0]的值是7/15/23(即小于参照数据编号31)时,并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d31且检测到已经用过1轮全部sequence number(即预设长度的已确认数据编号序列中包括数据编号上限值255)(第三子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果满足其一,则图9中的6种情况对应的重复数据包将被检测出来。其中,前3种对应乒乓操作的潜伏期。值得注意的是,8’d7-8’d31=8’d232。
图10是本申请提供的批长度为4时普通窗口数据组合示意图,图11是本申请提供的批长度为4时特殊窗口数据组合示意图,当批长度为4时,对于4个子buffer,每个子buffer可以存入4个数据。由此,缓存的面积相较批长度为16时减小3/4。对于图10-11的情形,其对应的参照数据编号为15。结合图10可知,当ackd_sequence[7:0]的值不是3/7/11(即不小于参照数据编号15)时,并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d15(第二子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果同时满足,则图10中的4种情况及其演化的组合(如4-19,…,236-251)对应的重复数据包均能被检测出来。
结合图11可知,当ackd_sequence[7:0]的值是3/7/11(即小于参照数据编号15)时,并行判定以下条件是否满足 :
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d15且检测到已经用过1轮全部sequence number(即预设长度的已确认数据编号序列中包括数据编号上限值255)(第三子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果满足其一,则图11中的6种情况对应的重复数据包将被检测出来。其中,前3种对应乒乓操作的潜伏期。值得注意的是,8’d3-8’d15=8’d244。
进一步的,站在芯片厂商的角度,前述链路的延时无法预知,且出厂的芯片需要考虑兼容过去的低端产品。故而缓存需要向上兼容,假设最大设计深度为4个子buffer,每个子buffer可以存入16个数据。对于部分应用场景可能存在非常短的数据流(例如发送4个数据后停止,空闲一段时间后再发送4个),此时使用过长的批长度效率较低。故存在批长度为4或8时可使用的总缓存超过上述4个子buffer所需容量的情况,此时缓存资源将出现巨大浪费。针对该问题,本申请实施例提出了一种通过扩大TX的滑动窗口来充分利用buffer资源以提升效率的方案,即将子buffer进行进一步细分,使每个子buffer存放一个数据批,该方案同样适用于前述重复数据包判定规则。
图12是本申请提供的批长度为4时使用16个子缓冲器对应的数据编号示意图,如图12所示,当批长度为4时,对于4个子buffer,每个子buffer可以存入16个数据。为充分利用buffer资源,将全部重传缓冲器分为16个子buffer,每个子buffer可以存入4个数据。对于图12的情形,其对应的参照数据编号为63。结合图12可知,当ackd_sequence[7:0]的值不是3/7/11/15/19/23/27/31/35/39/43/47/51/55/59时(即不小于参照数据编号63),并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63(第二子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果同时满足,则图12中的情况(0-63)及其演化的组合(如4-67,…,188-251,192-255)对应的重复数据包均能被检测出来。
当ackd_sequence[7:0]的值是3/7/11/15/19/23/27/31/35/39/43/47/51/55/59时(即小于参照数据编号63),并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63且检测到已经用过1轮全部sequence number(即预设长度的已确认数据编号序列中包括数据编号上限值255)(第三子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果满足其一,则其对应的30种情况对应的重复数据包将被检测出来。其中,前15种(0-3,0-7,0-11,…,0-59)对应乒乓操作的潜伏期。
图13是本申请提供的批长度为8时使用8个子缓冲器对应的数据编号示意图,如图13所示,当批长度为8时,对于4个子buffer,每个子buffer可以存入16个数据。为充分利用buffer资源,将全部缓存分为8个子buffer,每个子buffer可以存入8个数据。对于图13的情形,其对应的参照数据编号为63。结合图13可知,当ackd_sequence[7:0]的值不是7/15/23/31/39/47/55时(即不小于参照数据编号63),并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63(第二子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果同时满足,则图13中的情况(0-63)及其演化的组合(如8-71,…,184-247,192-255)对应的重复数据包均能被检测出来。
当ackd_sequence[7:0]的值是7/15/23/31/39/47/55时(即小于参照数据编号63),并行判定以下条件是否满足:
1、explict_seq_num[7:0]>= ackd_sequence[7:0]-8’d63且检测到已经用过1轮全部sequence number(即预设长度的已确认数据编号序列中包括数据编号上限值255)(第三子条件);
2、explict_seq_num[7:0]<= ackd_sequence[7:0] (第一子条件);
如果满足其一,则其对应的14种情况对应的重复数据包将被检测出来。其中,前7种(0-7,0-15,0-23,…,0-55)对应乒乓操作的潜伏期。
同时,上述方案仅需在RX侧使用5个位宽为8 bit的比较器和2个位宽为8 bit的减法器(面积非常小)即可实现重复数据包判定,其对FDI到RDI上数据的传输latency没有影响(速度最大)。
综上所述,本申请实施例的高速串行接口中重复数据包的处理方法能够在使用极少的资源且不影响数据通路latency的情况下实现重复数据包的Ack应答效率最大化。
本申请实施例提供的方法,应用于基于UCIE进行数据交互的芯片对,所述芯片对中的第一芯片的适配层包括数据发送模块,所述芯片对中的第二芯片的适配层包括数据接收模块,所述方法包括:数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批,能够实现高速串行接口中重复数据包的高效准确判定和处理。
图14示例了一种电子设备的实体结构示意图,如图14所示,该电子设备可以包括:处理器201、通信接口202、存储器203和通信总线204,其中,处理器201,通信接口202,存储器203通过通信总线204完成相互间的通信。处理器201可以调用存储器203中的逻辑指令,以执行上述各方法所提供的高速串行接口中重复数据包的处理方法,所述方法包括:数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批。
此外,上述的存储器203中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
当然,上述逻辑指令也可以通过硬件功能单元的形式实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以硬件产品的形式体现出来,该硬件产品可以作为芯片的硬件功能模块以执行本申请各个实施例所述方法的全部或部分步骤,以实现高速串行接口中重复数据包的高效准确判定和处理。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的高速串行接口中重复数据包的处理方法,所述方法包括:数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批。
又一方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的高速串行接口中重复数据包的处理方法,所述方法包括:数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (6)
1.一种高速串行接口中重复数据包的处理方法,其特征在于,所述方法应用于基于UCIE进行数据交互的芯片对,所述芯片对中的第一芯片的适配层包括数据发送模块,所述芯片对中的第二芯片的适配层包括数据接收模块,所述方法包括:
数据发送模块基于目标数据重传请求向数据接收模块发送目标重传数据批;所述目标重传数据批位于第一芯片的适配层的重传缓冲器中,所述重传缓冲器包括连续编号的多个子缓冲器,各子缓冲器的深度相同,用于依次缓存来自协议层的连续数据批;
数据接收模块基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,并在检测到重复数据包的情况下立即向数据发送模块返回重复数据包确认字符;
数据发送模块接收到所述重复数据包确认字符后停止发送所述目标重传数据批并向数据接收模块发送来自协议层的新数据批;
所述基于目标重传数据批中数据包的数据编号及已确认数据编号检测是否存在重复数据包,具体包括:
基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件;
基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包;
所述基于目标重传数据批中目标数据包的数据编号与参照数据编号的比较结果,确定重复数据包判定条件,具体包括:
在目标数据包的数据编号不小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第二子条件;
在目标数据包的数据编号小于参照数据编号的情况下,重复数据包判定条件包括第一子条件和第三子条件;
所述参照数据编号是基于数据批长度和子缓冲器数量确定的;
所述第一子条件为目标数据包的数据编号不大于已确认数据编号,所述第二子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,所述第三子条件为目标数据包的数据编号不小于已确认数据编号与参照数据编号的差值,且预设长度的已确认数据编号序列中包括数据编号上限值。
2.根据权利要求1所述的高速串行接口中重复数据包的处理方法,其特征在于,所述基于目标数据包的数据编号、已确认数据编号及所述重复数据包判定条件确定所述目标数据包是否为重复数据包,具体包括:
若重复数据包判定条件包括第一子条件和第二子条件,在目标数据包的数据编号和已确认数据编号同时满足第一子条件和第二子条件的情况下,确定所述目标数据包为重复数据包;
若重复数据包判定条件包括第一子条件和第三子条件,在目标数据包的数据编号和已确认数据编号满足第一子条件和第三子条件之一的情况下,确定所述目标数据包为重复数据包。
3.根据权利要求1所述的高速串行接口中重复数据包的处理方法,其特征在于,所述参照数据编号为数据批长度与子缓冲器数量的乘积与1的差值。
4.根据权利要求1所述的高速串行接口中重复数据包的处理方法,其特征在于,所述重传缓冲器的深度是基于数据位宽及确认字符的延时确定的。
5.根据权利要求4所述的高速串行接口中重复数据包的处理方法,其特征在于,所述目标数据重传请求是在数据发送模块发送目标数据批之后未收到对应的确认字符且看门狗溢出的情况下生成的。
6.根据权利要求5所述的高速串行接口中重复数据包的处理方法,其特征在于,所述数据发送模块在基于目标数据重传请求向数据接收模块发送目标重传数据批的同时会控制协议层停止发送新数据批,直至接收到目标数据批对应的确认字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311598426.7A CN117318898B (zh) | 2023-11-24 | 2023-11-24 | 高速串行接口中重复数据包的处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311598426.7A CN117318898B (zh) | 2023-11-24 | 2023-11-24 | 高速串行接口中重复数据包的处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117318898A CN117318898A (zh) | 2023-12-29 |
CN117318898B true CN117318898B (zh) | 2024-02-09 |
Family
ID=89285074
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311598426.7A Active CN117318898B (zh) | 2023-11-24 | 2023-11-24 | 高速串行接口中重复数据包的处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117318898B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682483A (zh) * | 2007-04-30 | 2010-03-24 | 诺基亚公司 | 用于提供数据重传方案的方法和设备 |
CN103141050A (zh) * | 2011-12-28 | 2013-06-05 | 华为技术有限公司 | 快速通道互联系统中数据包重传方法、节点 |
CN108449161A (zh) * | 2018-02-11 | 2018-08-24 | 重庆邮电大学 | 一种中继协作无线网络中基于网络编码的重传方法 |
CN109690993A (zh) * | 2016-07-28 | 2019-04-26 | 阿尔卡特朗讯 | 用于无线电通信网络中的无线数据传输的方法、设备和计算机程序 |
CN111327402A (zh) * | 2018-12-17 | 2020-06-23 | 杭州海康威视数字技术股份有限公司 | 重传数据的方法、装置和系统 |
CN113596736A (zh) * | 2020-04-30 | 2021-11-02 | 维沃移动通信有限公司 | 数据重传方法、装置、目标节点、源节点及终端 |
CN113992307A (zh) * | 2021-10-28 | 2022-01-28 | 国网信息通信产业集团有限公司 | 数据报文的传输方法、装置、电子设备及计算机存储介质 |
CN115396078A (zh) * | 2019-03-25 | 2022-11-25 | 华为技术有限公司 | 一种数据传输方法及装置 |
CN116112128A (zh) * | 2023-04-14 | 2023-05-12 | 海马云(天津)信息技术有限公司 | 发送重传请求的方法及装置、数据接收端设备和存储介质 |
CN116436570A (zh) * | 2023-04-23 | 2023-07-14 | 深圳市元征科技股份有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11418296B2 (en) * | 2017-01-23 | 2022-08-16 | Sony Group Corporation | Coverage enhancement and fast acknowledgement |
US11658776B2 (en) * | 2019-11-08 | 2023-05-23 | Semiconductor Components Industries, Llc | Feedback and retransmission format of HARQ protocol |
US11695487B2 (en) * | 2020-12-23 | 2023-07-04 | Bose Corporation | Robust broadcast via relayed retransmission |
-
2023
- 2023-11-24 CN CN202311598426.7A patent/CN117318898B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682483A (zh) * | 2007-04-30 | 2010-03-24 | 诺基亚公司 | 用于提供数据重传方案的方法和设备 |
CN103141050A (zh) * | 2011-12-28 | 2013-06-05 | 华为技术有限公司 | 快速通道互联系统中数据包重传方法、节点 |
CN109690993A (zh) * | 2016-07-28 | 2019-04-26 | 阿尔卡特朗讯 | 用于无线电通信网络中的无线数据传输的方法、设备和计算机程序 |
CN108449161A (zh) * | 2018-02-11 | 2018-08-24 | 重庆邮电大学 | 一种中继协作无线网络中基于网络编码的重传方法 |
CN111327402A (zh) * | 2018-12-17 | 2020-06-23 | 杭州海康威视数字技术股份有限公司 | 重传数据的方法、装置和系统 |
CN115396078A (zh) * | 2019-03-25 | 2022-11-25 | 华为技术有限公司 | 一种数据传输方法及装置 |
CN113596736A (zh) * | 2020-04-30 | 2021-11-02 | 维沃移动通信有限公司 | 数据重传方法、装置、目标节点、源节点及终端 |
CN113992307A (zh) * | 2021-10-28 | 2022-01-28 | 国网信息通信产业集团有限公司 | 数据报文的传输方法、装置、电子设备及计算机存储介质 |
CN116112128A (zh) * | 2023-04-14 | 2023-05-12 | 海马云(天津)信息技术有限公司 | 发送重传请求的方法及装置、数据接收端设备和存储介质 |
CN116436570A (zh) * | 2023-04-23 | 2023-07-14 | 深圳市元征科技股份有限公司 | 一种数据传输方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117318898A (zh) | 2023-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220200897A1 (en) | System and method for facilitating efficient management of non-idempotent operations in a network interface controller (nic) | |
CN111786748B (zh) | 数据重传方法和系统、网卡、装置、服务器和存储介质 | |
CN112118191B (zh) | 多路径传输拥塞控制方法、装置、控制设备及存储介质 | |
US20060195753A1 (en) | Bitmap manager, method of allocating a bitmap memory, method of generating an acknowledgement between network entities, and network entity implementing the same | |
US20180004705A1 (en) | Selective acknowledgment of RDMA packets | |
US8306062B1 (en) | Method and apparatus of adaptive large receive offload | |
KR100787294B1 (ko) | 이동 통신 기지국의 티씨피 성능 향상 장치 | |
EP1768297A2 (en) | Method and apparatus for improving transmission delay of status report in a wireless communications system | |
US20120063526A1 (en) | Method and apparatus for transmitting data, and communication system | |
JPH0832585A (ja) | 無線lanシステム | |
US9075926B2 (en) | Distributed interconnect bus apparatus | |
CN117318898B (zh) | 高速串行接口中重复数据包的处理方法 | |
CN116743317B (zh) | 基于通用芯片互联标准的数据传输方法 | |
US6973071B1 (en) | Method and apparatus for controlling the flow of data in a wireless communication system | |
CN116209990A (zh) | 用于降低远程直接存储器访问系统中时延的设备、方法和系统 | |
CN111543079B (zh) | 无线链路控制(rlc)确认模式(am)数据接收 | |
US8522104B2 (en) | Smart aging retry buffer | |
JP2009188508A (ja) | データ送受信装置 | |
CN117435537A (zh) | 高速串行接口中重传关联参数的确定方法 | |
CN117527151B (zh) | 基于ucie的数据重传方法 | |
CN116743324B (zh) | 数据传输方法、装置、接收端、存储介质、系统及服务器 | |
CN110730141A (zh) | 一种聚合调度方法、发送端及计算机可读存储介质 | |
CN117792581A (zh) | 高速串行接口中应答包的传输方法 | |
CN114337921B (zh) | 一种数据传输方法、数据传输装置和相关设备 | |
CN117792580A (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 |