一种确认报文的处理方法和通信装置以及存储介质制造方法及图纸

技术编号:36868094 阅读:17 留言:0更新日期:2023-03-15 19:25
本申请实施例公开了一种确认报文的处理方法和通信装置以及存储介质,用于减少ACK发送频率,提高数据传输效率。其中,一种确认报文的处理方法应用于第一通信装置,所述方法包括:根据所述第一通信装置支持的确认ACK机制生成第一ACK报文,所述ACK机制用于指示N种ACK报文对应的N种ACK类型、发送所述N种ACK报文各自所需的触发条件、和所述N种ACK报文分别携带的反馈信息,所述第一ACK报文属于所述N种ACK报文的一种,所述N为大于或等于2的正整数;向所述第二通信装置发送所述第一ACK报文。所述第二通信装置发送所述第一ACK报文。所述第二通信装置发送所述第一ACK报文。

【技术实现步骤摘要】
一种确认报文的处理方法和通信装置以及存储介质
[0001]本申请是分案申请,原申请的申请号是201911033773.9,原申请日是2019年10月28日,原申请的全部内容通过引用结合在本申请中。


[0002]本申请涉及计算机
,尤其涉及一种确认报文的处理方法和通信装置以及存储介质。

技术介绍

[0003]在数据传输场景中,发送方和接收方通过传输控制协议(transport control protocol,TCP)报文进行交互,发送方每发送一个数据报文,接收方回复一个确认(acknowledgement,ACK)报文。其中,TCP报文中携带一个ACK标记位,该ACK标记位用于标记TCP报文是一个ACK报文还是数据报文,当TCP报文是ACK报文时,TCP报文携带的确认号包括反馈信息,该反馈信息用于反馈接收方已收到的、有序的最大序列号。
[0004]在基于TCP报文实现的上述ACK机制中,每发送一个数据报文就需要对端回复ACK报文,因此存在ACK发送频率高和数据传输效率低下的问题,无法适应多样化的数据传输场景。例如,ACK发送频率高,无法适用于无线局域网中的数据传输,因为在频谱使用前必须有一段空闲时间和随机退避时间,而无线传输的开销,不是以报文大小计数,而是以报文个数来计数,因此,ACK报文与数据报文开销相近,消耗传输资源较多。
[0005]接下来,举例说明TCP报文的一种典型的传输和确认过程:发送方发送5个数据报文:data

1、data

2、data

3、data

4、data

5,如果data

2丢失,接收方会回复三个ACK报文:ack

data

1、ack

data

1、ack

data

1,如果仅有data

2丢失,虽然接收方已经收到其他的数据报文(即接收方接收到了data

3、data

4、data

5),但是发送方却要将data

2以及data

2之后的其他数据报文重传一次,导致数据传输效率低下。
[0006]综上描述可知,目前的ACK机制存在ACK发送频率高和数据传输效率低下的问题。

技术实现思路

[0007]本申请实施例提供了一种确认报文的处理方法和通信装置以及存储介质,用于减少ACK发送频率,提高数据传输效率。
[0008]为解决上述技术问题,本申请实施例提供以下技术方案:
[0009]第一方面,本申请实施例提供一种确认报文的处理方法,所述方法应用于第一通信装置,所述方法包括:根据所述第一通信装置支持的确认ACK机制生成第一ACK报文,所述ACK机制用于指示N种ACK报文对应的N种ACK类型、发送所述N种ACK报文各自所需的触发条件、和所述N种ACK报文分别携带的反馈信息,所述第一ACK报文属于所述N种ACK报文的一种,所述N为大于或等于2的正整数;向所述第二通信装置发送所述第一ACK报文。在本申请实施例中,第一通信装置根据第一通信装置支持的确认ACK机制生成第一ACK报文,该ACK机制用于指示N种ACK报文对应的N种ACK类型、发送N种ACK报文各自所需的触发条件、和N种
ACK报文分别携带的反馈信息,第一ACK报文属于N种ACK报文的一种,N大于或等于2,由于第一通信装置使用的ACK机制包括了ACK类型、触发条件以及反馈信息,因此第一通信装置在生成第一ACK报文时需要按照该ACK机制包括的ACK类型和反馈信息来生成第一ACK报文,并且是否需要生成第一ACK报文还需要判断是否满足第一ACK报文所需要的触发条件,然后第一通信装置向第二通信装置发送第一ACK报文。第二通信装置首先根据第二通信装置支持的确认ACK机制接收第一通信装置发送的第一ACK报文,第二通信装置根据第二通信装置支持的ACK机制确定第一ACK报文对应的第一ACK类型,第二通信装置最后使用第一ACK类型解析第一ACK报文,以生成ACK解析结果。本申请实施例中可以从ACK类型、触发条件以及反馈信息来定义ACK机制,因此实现了ACK报文的多种ACK类型的灵活自定义,以及按照触发条件发送ACK报文,减少ACK发送频率,提高数据传输效率。
[0010]在一种可能的实现方式中,所述第一ACK报文包括:第一ACK类型和第一反馈信息,所述第一ACK类型属于所述N种ACK类型的一种。在该方案中,若满足第一ACK报文的触发条件,则第一通信装置可以按照第一通信装置支持的ACK机制生成第一ACK报文,该ACK机制指示了ACK类型和反馈信息,则第一通信装置生成的第一ACK报文中可以包括第一ACK类型和第一反馈信息。第一ACK类型是指第一ACK报文对应的ACK类型,该第一ACK类型是N种ACK类型中的一种类型,第一反馈信息是指第一ACK报文所携带的反馈信息,对于第一反馈信息所需要携带的反馈信息内容,可以根据具体的ACK机制来确定,此处不做限定。第一通信装置生成的第一ACK报文中携带有第一ACK类型和第一反馈信息,从而使得接收该第一ACK报文的第二通信装置可以确定出第一ACK报文所属的ACK类型,以及该第一ACK报文所携带的具体反馈信息内容,从而第二通信装置可以确定:第一通信装置是否接收到了第二通信装置发送的数据报文,以及第一通信装置针对该接收的数据报文的反馈情况。
[0011]在一种可能的实现方式中,所述第一ACK报文包括:ACK类型选项,其中,所述ACK类型选项的大小为(2+m)个字节,所述m的取值为正整数,所述m的大小与所述N的大小正相关;所述(2+m)个字节中的1个字节用于指示所述ACK类型选项的序号;所述(2+m)个字节中的另1个字节用于指示所述ACK类型选项的长度;所述(2+m)个字节中的剩余m个字节用于指示所述第一ACK类型。在该方案中,第一ACK报文的ACK类型选项可用于指示该第一ACK报文对应的第一ACK类型,例如ACK类型选项可以包括如下三个部分:序号、长度和ACK类型,其中,序号、长度分别占用1个字节,ACK类型占用m个字节,通过ACK类型可以指示第一ACK报文对应的ACK类型为第一ACK类型,从而第一通信装置可以在ACK类型携带第一ACK类型,从而第二通信装置根据ACK类型选项中的ACK类型的具体取值确定出第一ACK类型。
[0012]在一种可能的实现方式中,所述第一ACK报文还包括:数据域;所述数据域携带所述第一反馈信息的至少一部分。在该方案中,第一反馈信息可以包括多个反馈子信息,该第一反馈信息的一部分或者全部都可以携带在数据域中,因此增加了数据域中携带的信息量,提高了反馈信息的传输效率,另外在数据域中还可以携带多种更丰富的反馈信息,因此本申请实施例提高了ACK报文携带的信息量。
[0013]在一种可能的实现本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种确认报文的处理方法,其特征在于,所述方法应用于第一通信装置,所述方法包括:根据所述第一通信装置支持的确认ACK机制生成第一ACK报文,所述ACK机制用于指示N种ACK报文对应的N种ACK类型、发送所述N种ACK报文各自所需的触发条件、和所述N种ACK报文分别携带的反馈信息;向所述第二通信装置发送所述第一ACK报文。2.根据权利要求1所述的方法,其特征在于,所述第一ACK报文包括:第一ACK类型和第一反馈信息,所述第一ACK类型属于所述N种ACK类型的一种。3.根据权利要求2所述的方法,其特征在于,所述第一ACK报文包括:ACK类型选项,其中,所述ACK类型选项的大小为(2+m)个字节,所述m的取值为正整数,所述m的大小与所述N的大小正相关;所述(2+m)个字节中的1个字节用于指示所述ACK类型选项的序号;所述(2+m)个字节中的另1个字节用于指示所述ACK类型选项的长度;所述(2+m)个字节中的剩余m个字节用于指示所述第一ACK类型。4.根据权利要求2或3所述的方法,其特征在于,所述第一ACK报文还包括:数据域;所述数据域携带所述第一反馈信息的至少一部分。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据所述第一通信装置支持的确认ACK机制生成第一ACK报文之前,所述方法还包括:向所述第二通信装置发送第一协商报文,所述第一协商报文用于指示所述第一通信装置支持的ACK机制;接收所述第二通信装置发送的第二协商报文,所述第二协商报文用于指示所述第二通信装置支持的ACK机制;当所述第一通信装置和所述第二通信装置使用相互匹配的ACK机制时,触发执行如下步骤:根据所述第一通信装置支持的确认ACK机制生成第一ACK报文。6.根据权利要求5所述的方法,其特征在于,所述第一协商报文包括:第一准许选项,所述第二协商报文包括:第二准许选项,其中,所述第一准许选项的大小为2个字节,所述第一准许选项中的1个字节用于指示所述第一准许选项的序号,所述第一准许选项中的另1个字节用于指示所述第一准许选项的长度;所述第二准许选项的大小为2个字节,所述第二准许选项中的1个字节用于指示所述第二准许选项的序号,所述第二准许选项中的另1个字节用于指示所述第二准许选项的长度。7.根据权利要求1至6中任一项所述的方法,其特征在于,生成所述第一ACK报文的触发条件包括如下的至少一种:按照预设的ACK发送频率发送所述第一ACK报文、在预设的即时事件产生时发送所述第一ACK报文。8.根据权利要求7所述的方法,其特征在于,所述按照预设的ACK发送频率发送所述第一ACK报文,包括如下至少一种:每接收到预设个数的数据报文时发送所述第一ACK报文,每经过预设的一个时间段时发送所述第一ACK报文。9.根据权利要求8所述的方法,其特征在于,所述第一通信装置通过所述第一通信装置
与所述第二通信装置之间的连接通信,所述每接收到预设个数的数据报文时发送所述第一ACK报文包括:获取所述连接的带宽时延积;当所述带宽时延积小于预设的阈值时,每接收到预设个数的数据报文时发送所述第一ACK报文;或者,当所述带宽时延积小于或等于预设的阈值时,每接收到预设个数的数据报文时发送所述第一ACK报文。10.根据权利要求9所述的方法,其特征在于,所述阈值为β
×
L
×
MSS,所述预设个数为L
×
MSS;其中,所述β表示所述第一通信装置在RTT
min
内发送的ACK报文个数,所述L表示所述第一通信装置在每发送一个ACK报文之前需要接收到的数据报文个数,所述MSS表示传输层协议的最大段长度,所述RTT
min
表示所述第一通信装置和所述第二通信装置之间的最小往返时延。11.根据权利要求8所述的方法,其特征在于,所述第一通信装置通过所述第一通信装置与所述第二通信装置之间的连接通信,所述每经过预设的一个时间段时发送所述第一ACK报文包括:获取所述连接的带宽时延积;当所述带宽时延积大于或等于预设的阈值时,每经过预设的一个时间段时发送所述第一ACK报文;或者,当所述带宽时延积大于预设的阈值时,每经过预设的一个时间段时发送所述第一ACK报文。12.根据权利要求11所述的方法,其特征在于,所述阈值为β
×
L
×
MSS,所述预设的一个时间段为其中,所述β表示所述第一通信装置在RTT
min
内发送的ACK报文个数,所述L表示所述第一通信装置在每发送一个ACK报文之前需要接收到的数据报文个数,所述MSS表示传输层协议的最大段长度,所述RTT
min
表示所述第一通信装置和所述第二通信装置之间的最小往返时延。13.根据权利要求9至12中任一项所述的方法,其特征在于,所述获取所述连接的带宽时延积,包括:获取所述第一通信装置和第二通信装置之间的连接的最大带宽、以及所述第一通信装置和所述第二通信装置之间的最小往返时延,确定所述带宽时延积等于所述最大带宽与所述最小往返时延的相乘结果;或者,获取所述第一通信装置和第二通信装置之间的连接的平均带宽、以及所述第一通信装置和所述第二通信装置之间的平均往返时延,确定所述带宽时延积等于所述平均带宽与所述平均往返时延的相乘结果。14.根据权利要求7至13中任一项所述的方法,其特征在于,所述即时事件包括如下至少一种:丢包事件、所述第一通信装置的接收缓存没有剩余容量的事件。15.根据权利要求1至14中任一项所述的方法,其特征在于,所述N种ACK报文分别携带的反馈信息包括如下至少一种:所述第一通信装置和第二通信装置之间的连接的时延信息.所述第一通信装置和第二通信装置之间的连接的带宽信息、所述第一通信装置和第二
通信装置之间的连接的抖动信息、所述第一通信装置和第二通信装置之间的连接的丢包信息.所述第一通信装置和第二通信装置之间的连接的状态标记信息。16.根据权利要求1至15中任一项所述的方法,其特征在于,所述根据所述第一通信装置支持的确认ACK机制生成第一ACK报文之前,所述方法包括:接收所述第二通信装置发送的第一数据报文,所述第一数据报文携带数据内容和第一包序号,当所述第一通信装置确定所述第一数据报文发生丢包时,所述第一ACK报文用于指示所述第一数据报文发生丢包;接收所述第二通信装置发送的第二数据报文,所述第二数据报文携带所述数据内容和第二包序号,所述第二包序号和所述第一包序号是不相同的包序号。17.一种确认信息的处理方法,其特征在于,所述方法应用于第二通信装置,所述方法包括:根据所述第二通信装置支持的确认ACK机制接收第一通信装置发送的第一ACK报文,所述ACK机制用于指示N种ACK报文对应的N种ACK类型、和所述N种ACK报文分别携带的反馈信息;根据所述第二通信装置支持的ACK机制确定所述第一ACK报文对应的第一ACK类型,所述第一ACK类型属于所述N种ACK类型的一种;使用所述第一ACK类型解析所述第一ACK报文,以生成ACK解析结果。18.根据权利要求17所述的方法,其特征在于,所述第一ACK报文包括:所述第一ACK类型和第一反馈信息。19.根据权利要求18所述的方法,其特征在于,所述第一ACK报文包括:ACK类型选项,其中,所述ACK类型选项的大小为(2+m)个字节,所述m的取值为正整数,所述m的大小与所述N的大小正相关;所述(2+m)个字节中的1个字节用于指示所述ACK类型选项的序号;所述(2+m)个字节中的另1个字节用于指示所述ACK类型选项的长度;所述(2+m)个字节中的剩余m个字节用于指示所述第一ACK类型。20.根据权利要求18或19所述的方法,其特征在于,所述第一ACK报文还包括:数据域;所述数据域携带所述第一反馈信息的至少一部分。21.根据权利要求17至20中任一项所述的方法,其特征在于,所述根据所述第二通信装置支持的确认ACK机制接收第一通信装置发送的第一ACK报文之前,所述方法还包括:接收所述第一通信装置发送的第一协商报文,所述第一协商报文用于指示所述第一通信装置支持的ACK机制;向所述第一通信装置发送第二协商报文,所述第二协商报文用于指示所述第二通信装置支持的ACK机制;当所述第一通信装置和所述第二通信装置使用相互匹配的ACK机制时,触发执行如下步骤:根据所述第二通信装置支持的确认ACK机制接收第一通信装置发送的第一ACK报文。22.根据权利要求21所述的方法,其特征在于,所述第一协商报文包括:第一准许选项,所述第二协商报文包括:第二准许选项,其中,所述第一准许选项的大小为2个字节,所述第一准许选项中的1个字节用于指示所述第
一准许选项的序号,所述第一准许选项中的另1个字节用于指示所述第一准许选项的长度;所述第二准许选项的大小为2个字节,所述第二准许选项中的1个字节用于指示所述第二准许选项的序号,所述第二准许选项中的另1个字节用于指示所述第二准许选项的长度。23.根据权利要求17至22中任一项所述的方法,其特征在于,所述根据所述第二通信装置支持的确认ACK机制接收第一通信装置发送的第一ACK报文之前,所述方法还包括:向所述第一通信装置发送第一数据报文,所述第一数据报文携带数据内容和第一包序号;根据所述第一ACK报文确定所述第一数据报文发生丢包时,向所述第一通信装置发送第二数据报文,所述第二数据报文携带所述数据内容和第二包序号,所述第二包序号和所述第一包序号是不相同的包序号。24.一种通信装置,其特征在于,所述通信装置为第一通信装置,所述第一通信装置包括:处理模块,用于根据所述第一通信装置支持的确认ACK机制生成第一ACK报文,所述ACK机制用于指示N种ACK报文对应的N种ACK类型、发送所述N种ACK报文各自所需的触发条件、和所述N种ACK报文分别携带的反馈信息;收发模块,用于向所述第二通信装置发送所述第一ACK报文。25.根据权利要求24所述的通信装置,其特征在于,所述第一ACK报文包括:第一ACK类型和第一反馈信息,所述第一ACK类型属于所述N种ACK类型的一种。26.根据权利要求25所述的通信装置,其特征在于,所述第一ACK报文包括:ACK类型...

【专利技术属性】
技术研发人员:李彤郑凯陈君森陈胜军康娇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1