一种块确认帧的传输方法及设备与流程

文档序号:11843319阅读:171来源:国知局
一种块确认帧的传输方法及设备与流程
本发明涉及通信领域,尤其涉及一种块确认帧的传输方法及设备。
背景技术
:在基于IEEE802.11协议的无线高保真(英文:WirelessFidelity,简称:WiFi)系统中,无线接口的协议栈中包含有媒体接入控制(英文:MediumAccessControl,简称:MAC)层协议。为了能够减少采用MAC层协议进行数据传输时的帧间间隔、信道竞争时间以及物理头的重复传输,802.11n中提出了一种MAC层聚合传输机制,其被称为聚合MAC协议数据单元(英文:AggregateMACProtocolDataUnit,简称:A-MPDU),在这种MAC层聚合传输机制中,一个采用A-MPDU结构的物理层汇聚过程协议数据单元(英文:physicallayerconvergenceprocedureProtocolDataUnit,简称:PPDU)中可以包含至少一个MAC协议数据单元(英文:MACProtocolDataUnit,简称:MPDU),其中,该PPDU中包含的所有MPDU是发送给同一接收设备的。在现有标准中规定,当接收设备接收到采用A-MPDU结构的PPDU时,需向发送设备回复块确认(英文:BlockAcknowledgment,简称:BA)帧,其中,该BA帧中包含块确认位表(英文:BABitmap)域,BABitmap域中的每位对应所有需反馈是否被正确接收的MPDU中的一个。由于一个采用A-MPDU结构的PPDU最多允许聚合64个MPDU,因此,现有标准规定,BABitmap域的长度为固定的64比特(bits)。但是,在实际使用中,一个采用A-MPDU结构的PPDU中所聚合的MPDU的个数往往远小于64,在这种情况下,若BABitmap域的长度仍采用64bits,便会使得BABitmap域冗余,从而导致资源的浪费。技术实现要素:本发明提供一种块确认帧的传输方法及设备,解决了由于BABitmap域冗余导致的资源浪费问题。为达到上述目的,本发明采用如下技术方案:本发明的第一方面,提供一种块确认帧的传输方法,包括:接收设备接收至少一个发送设备发送的至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU;所述接收设备根据对所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧,并向所述至少一个发送设备中的每个发送设备发送所述BA帧;其中,所述BA帧中包含与所述至少一个发送设备中的每个发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。结合第一方面,在第一种可能的实现方式中,所述接收设备根据对所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧,包括:针对所述至少一个发送设备中的每个发送设备,所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度;根据所述与所述发送设备对应的块确认位表域的长度确定与所述发送设备对应的块确认位表域;确定与所述发送设备对应的位表长度指示;所述接收设备根据与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成所述BA帧。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述确定与所述发送设备对应的块确认位表域的长度具体为:所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度。结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述确定与所述发送设备对应的块确认位表域的长度具体为:所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与未正 确接收的所述发送设备发送的MPDU的最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度。结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述与发送设备对应的BA信息包含的块确认起始序列控制域包含起始序列号子域,所述起始序列号子域的值设置为所述未正确接收的所述发送设备发送的MPDU的最小序列号,表示块确认位表域中第一比特对应的序列号为所述最小序列号,且位于所述最小序列号之前的所有序列号对应的MPDU均被正确接收。结合第一方面或上述可能的实现方式中的任一种,在第五种可能的实现方式中,在所述接收设备根据对所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧之前,所述方法还包括:针对所述至少一个发送设备中的每个发送设备,所述接收设备确定与所述发送设备对应的BA信息包含的每流标识TID信息域中的确认指示设置为第一值,所述第一值表示所述与所述发送设备对应的BA信息中包含所述块确认起始序列控制域和所述块确认位表域。结合第一方面或上述可能的实现方式中的任一种,在第六种可能的实现方式中,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。结合第一方面的第一~四种可能的实现方式中的任一种,在第七种可能的实现方式中,所述确定与所述发送设备对应的位表长度指示,包括:所述接收设备根据所述与所述发送设备对应的块确认位表域的长度和预设的第一映射关系,确定所述与所述发送设备对应的位表长度指示;其中,所述第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。结合第一方面的第二种可能的实现方式,在第八种可能的实现方式中,所述根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度,包括:所述接收设备根据正确接收的所述发送设备发送的MPDU中的最大 序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数;所述接收设备根据正确接收的所述发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数;所述接收设备根据所述需反馈是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的块确认位表域的长度。结合第一方面的第八种可能的实现方式,在第九种可能的实现方式中,所述确定与所述发送设备对应的位表长度指示,包括:所述接收设备根据所述需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与所述发送设备对应的数量指示;其中,所述数量指示用于指示所述需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示;所述接收设备根据正确接收的所述发送设备发送的MPDU的最大分片编号,确定与所述发送设备对应的标记指示;其中,所述标记指示用于指示反馈MPDU是否被正确接收所需的字节数;所述接收设备将与所述发送设备对应的数量指示和与所述发送设备对应的标记指示组合生成所述与所述发送设备对应的位表长度指示。本发明的第二方面,提供一种块确认帧的传输方法,包括:发送设备向接收设备发送至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU;所述发送设备接收所述接收设备发送的块确认BA帧;其中,所述BA帧中包含有与所述发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。结合第二方面,在第一种可能的实现方式中,所述块确认位表域的长度是所述接收设备根据正确接收的所述发送 设备发送的MPDU的最大序列号与最小序列号的差值确定的。结合第二方面,在第二种可能的实现方式中,所述块确认位表域的长度是所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与未正确接收的所述发送设备发送的MPDU的最小序列号的差值确定的。结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述与发送设备对应的BA信息包含的块确认起始序列控制域包含起始序列号子域,所述起始序列号子域的值设置为所述未正确接收的所述发送设备发送的MPDU的最小序列号,表示块确认位表域中第一比特对应的序列号为所述最小序列号,且位于所述最小序列号之前的所有序列号对应的MPDU均被正确接收。结合第二方面或上述可能的实现方式中的任一种,在第四种可能的实现方式中,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。结合第二方面或上述可能的实现方式中的任一种,在第五种可能的实现方式中,在所述发送设备接收所述接收设备发送的块确认BA帧之后,还包括:所述发送设备根据所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述发送设备根据所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度,包括:所述发送设备根据所述位表长度指示和预设的第一映射关系,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度;其中,所述第一映射关系用于指示至少一个位表长度指示对应的块确认位表域的长度。结合第二方面的第五种可能的实现方式,在第七种可能的实现方式中,所述发送设备根据所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度,包括:所述发送设备根据所述位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数;其中,所述数量指示用于指示所述接收设备需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数;所述发送设备根据所述位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,所述标记指示用于指示所述接收设备反馈MPDU是否被正确接收所需的字节数;所述发送设备根据所述反馈的是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。本发明的第三方面,提供一种接收设备,包括:接收单元,用于接收至少一个发送设备发送的至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU;生成单元,用于根据对所述接收单元接收的所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧;发送单元,用于向所述至少一个发送设备中的每个发送设备发送所述生成单元生成的所述BA帧;其中,所述BA帧中包含与所述至少一个发送设备中的每个发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。结合第三方面,在第一种可能的实现方式中,所述生成单元,包括:确定模块,用于针对所述至少一个发送设备中的每个发送设备,根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度;根据所述与所述发送设备对应的块确认位表域的长度确定与所述发送设备对应的块确认位 表域;确定与所述发送设备对应的位表长度指示;生成模块,用于根据所述确定模块确定出的与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成所述BA帧。结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述确定模块用于确定与所述发送设备对应的块确认位表域的长度具体为:所述确定模块用于根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度。结合第三方面的第一种可能的实现方式,在第三种可能的实现方式中,所述确定模块用于确定与所述发送设备对应的块确认位表域的长度具体为:所述确定模块用于根据正确接收的所述发送设备发送的MPDU的最大序列号与未正确接收的所述发送设备发送的MPDU的最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度。结合第三方面的第三种可能的实现方式,在第四种可能的实现方式中,所述与发送设备对应的BA信息包含的块确认起始序列控制域包含起始序列号子域,所述起始序列号子域的值设置为所述未正确接收的所述发送设备发送的MPDU的最小序列号,表示块确认位表域中第一比特对应的序列号为所述最小序列号,且位于所述最小序列号之前的所有序列号对应的MPDU均被正确接收。结合第三方面或上述可能的实现方式中的任一种,在第五种可能的实现方式中,所述接收设备还包括:确定单元,用于在所述生成单元根据对所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧之前,针对所述至少一个发送设备中的每个发送设备,确定与所述发送设备对应的BA信息包含的每流标识TID信息域中的确认指示设置为第一值,所述第一值表示所述与所述发送设备对应的BA信息中包含所述块确认起始序列控制域和所述块确认位表域。结合第三方面或上述可能的实现方式中的任一种,在第六种可能的实现方式中,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信 息包含的块确认起始序列控制域的分片编号子域中。结合第三方面的第一~四种可能的实现方式中的任一种,在第七种可能的实现方式中,所述确定模块用于确定与所述发送设备对应的位表长度指示具体为:所述确定模块用于根据所述与所述发送设备对应的块确认位表域的长度和预设的第一映射关系,确定所述与所述发送设备对应的位表长度指示;其中,所述第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。结合第三方面的第二种可能的实现方式,在第八种可能的实现方式中,所述确定模块用于根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度具体为:根据正确接收的所述发送设备发送的MPDU中的最大序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数;根据正确接收的所述发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数;根据所述需反馈是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的块确认位表域的长度。结合第三方面的第八种可能的实现方式,在第九种可能的实现方式中,所述确定模块用于确定与所述发送设备对应的位表长度指示具体为:所述确定模块用于:根据所述需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与所述发送设备对应的数量指示;其中,所述数量指示用于指示所述需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示;根据正确接收的所述发送设备发送的MPDU的最大分片编号,确定与所述发送设备对应的标记指示;其中,所述标记指示用于指示反馈MPDU是否被正确接收所需的字节数;将与所述发送设备对应的数量指示和与所述发送设备对应的标记指 示组合生成所述与所述发送设备对应的位表长度指示。本发明的第四方面,提供一种发送设备,包括:发送单元,用于向接收设备发送至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU;接收单元,用于接收所述接收设备发送的块确认BA帧;其中,所述BA帧中包含有与所述发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。结合第四方面,在第一种可能的实现方式中,所述块确认位表域的长度是所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值确定的。结合第四方面,在第二种可能的实现方式中,所述块确认位表域的长度是所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与未正确接收的所述发送设备发送的MPDU的最小序列号的差值确定的。结合第四方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述与发送设备对应的BA信息包含的块确认起始序列控制域包含起始序列号子域,所述起始序列号子域的值设置为所述未正确接收的所述发送设备发送的MPDU的最小序列号,表示块确认位表域中第一比特对应的序列号为所述最小序列号,且位于所述最小序列号之前的所有序列号对应的MPDU均被正确接收。结合第四方面或第四方面的第一种可能的实现方式中的任一种,在第四种可能的实现方式中,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。结合第四方面或上述可能的实现方式中的任一种,在第五种可能的实现方式中,所述发送设备还包括:确定单元,用于在所述接收单元接收所述接收设备发送的块确认BA帧之后,根据所述接收单元接收到的所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。结合第四方面的第五种可能的实现方式中,在第六种可能的实现方式中,所述确定单元,具体用于:根据所述位表长度指示和预设的第一映射关系,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度;其中,所述第一映射关系用于指示至少一个位表长度指示对应的块确认位表域的长度。结合第四方面的第五种可能的实现方式,在第七种可能的实现方式中,所述确定单元,具体用于:根据所述位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数;其中,所述数量指示用于指示所述接收设备需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数;根据所述位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,所述标记指示用于指示所述接收设备反馈MPDU是否被正确接收所需的字节数;根据所述反馈的是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。本发明提供的块确认帧的传输方法及设备,接收设备接收至少一个发送设备发送的至少一个PPDU,并根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成认BA帧,并向至少一个发送设备中的每个发送设备发送该BA帧,且该BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为现有技术提供的一种multiSTABA帧的结构示意图;图2为本发明一实施例提供的一种块确认帧的传输方法流程图;图3为本发明另一实施例提供的一种块确认帧的传输方法流程图;图4为本发明另一实施例提供的一种块确认帧的传输方法流程图;图5为本发明实施例提供的一种BA帧的结构示意图;图6为本发明实施例提供的另一种BA帧的结构示意图;图7为本发明另一实施例提供的一种接收设备的组成示意图;图8为本发明另一实施例提供的另一种接收设备的组成示意图;图9为本发明另一实施例提供的一种发送设备的组成示意图;图10为本发明另一实施例提供的另一种发送设备的组成示意图;图11为本发明另一实施例提供的一种接收设备的组成示意图;图12为本发明另一实施例提供的一种发送设备的组成示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。A-MPDU是802.11n中提出的一种MAC层聚合传输机制,在该机制提出之前,一个PPDU中仅包含一个MPDU,而在A-MPDU中,一个采用A-MPDU结构的PPDU可以包含至少一个MPDU,其中包含的各个MPDU可以属于不同的帧类型,也可以具有不同的源地址(英文:SourceAddress,简称:SA)或目的地址(英文:DestinationAddress,简称:DA),但一个PPDU中包含的所有MPDU是发送给同一接收设备的,即具有相同的接收地址(英文:ReceivingAddress,简称:RA)。相比传 统的(一个PPDU仅包含一个MPDU)传输方式,采用A-MPDU结构的传输方式能够减少数据传输时的帧间间隔、信道竞争时间以及物理头的重复传输,有效提高了传输效率。其中,在802.11n和802.11ac中规定,当接收设备接收到一个采用A-MPDU结构的PPDU时,需向发送设备回复一个BA帧,其中,该BA帧中包含一个BABitmap(BA位表)域,该BABitmap域中的每位对应所有需反馈是否被正确接收的MPDU中的一个。且由于一个采用A-MPDU结构的PPDU最多允许聚合64个MPDU,因此,802.11n和802.11ac均规定BABitmap域的长度为固定的64bits。随着通信技术的发展,应用于通信系统的标准也在不断的演进,在802.11ac的下一代标准802.11ax中,引入了上行多用户(英文:UplinkMultipleUser,简称:ULMU)传输机制,其中,该传输机制包括UL正交频分多址(英文:OrthogonalFrequency-DivisionMultipleAccess,简称:ULOFDMA)和ULMU多输入多输出(英文:ULMU-MultipleInputMultipleOutput,简称:ULMU-MIMO)。在这种传输机制下,接入点(英文:AccessPoint,简称:AP)可以同时接收到多个站点(英文:Station,简称:STA)的PPDU,其中,每个STA的PPDU均采用了A-MPDU结构,也就是说,每个STA的PPDU中均包含有至少一个MPDU。根据目前标准的规定,AP需发送一个多(multi-)STABA帧向多个STA回复确认信息。具体的,如图1所示,该multi-STABA帧中包含有MAC头(其中,该MAC头可以包括:帧控制(英文:FrameControl)域,持续时间/标识(英文:Duration/ID)域,RA域,发送地址(英文:transmitaddress,简称:TA)域),BA控制(英文:BAcontrol),帧校验序列(英文:FrameCheckSequence,简称:FCS),以及至少一个BAInformation(中文:块确认信息),每个BAInformation对应一个STA。针对一个STA对应的BAInformation来说,BAInformation的第一个域,即每流标识信息(英文:PerTrafficIdentifierInformation,简称:PerTIDInfo)域的前11bits(即,B0-B10)为该STA的关联标识(英文:AssociationIdentifier,简称:AID)。此外,为了节省传输开销,如图1所示,PerTIDInfo域的第12个比 特位(即,B11)为一个ACK(英文:Acknowledgment,中文:确认)/BA指示,用于指示该PerTIDInfo域之后,是否存在块确认起始序列控制(英文:BlockAckStartingSequenceControl)域和BABitmap域。具体的,当该ACK/BA指示设置为BA时,PerTIDInfo域之后存在BlockAckStartingSequenceControl域和BABitmap域,当该ACK/BA指示设置为ACK时,PerTIDInfo域之后不存在BlockAckStartingSequenceControl域和BABitmap域,即此时的BAInformation可省去BlockAckStartingSequenceControl域和BABitmap域,仅包含PerTIDInfo域即可。其中,在以下两种情况下,ACK/BA指示设置为ACK,情况一:接收设备接收到的STA的PPDU中仅包含一个MPDU且该MPDU被正确接收;情况二:接收设备接收到的STA的PPDU中包含至少两个MPDU且该至少两个MPDU均被正确接收。其中,对于BABitmap域的长度,由于一个采用A-MPDU结构的PPDU最多允许聚合64个MPDU,基于此,现有标准规定,BABitmap域的长度为固定的64bits。然而,在实际使用中,一个采用A-MPDU结构的PPDU中所聚合的MPDU的个数往往远小于64,因此使用64bits的BABitmap域会使得BABitmap域冗余,导致资源浪费,尤其在引入ULMU传输机制之后,BA帧(如,multi-STABA帧、multi-TIDBA帧)中包含多个BABitmap域,会使得BABitmap域冗余累加,资源的浪费会更加严重。采用本发明提供的块确认帧的传输方法,可以很好的解决由于BABitmap域冗余导致的资源浪费问题。需要说明的是,本发明实施例中所述的接收设备可以是AP,相应的,所述的发送设备是STA;或者,所述的接收设备可以是STA、相应的,所述的发送设备是AP;或者,所述的接收设备可以是STA,相应的,发送设备也是STA。总之,所述发送设备和所述接收设备都是支持802.11协议的设备。一种可选的场景是,多个STA以ULOFDMA或ULMU-MIMO的方式向AP发送UL数据,AP根据接收结果向多个STA反馈块确认BA消息。此时,所述发送设备是AP,所述接收设备是STA。为了便于本领域技术人员的理解,本发明通过以下实施例对本发明提 供的技术方案的具体实现过程进行说明。本发明一实施例提供一种块确认帧的传输方法,如图2所示,该方法可以包括:101、接收设备接收至少一个发送设备发送的至少一个PPDU。其中,每个发送设备发送的PPDU中包含至少一个MPDU。需要说明的是,本发明实施例中所述的至少一个发送设备包括:向接收设备发送了PPDU且该PPDU中存在至少一个MPDU被接收设备正确接收的发送设备,而向接收设备发送了PPDU,但PPDU中包括的所有MPDU均未被正确接收的发送设备不包含在所述的至少一个发送设备之中。需要说明的是,本发明实施例提供的块确认帧的传输方法,不仅适用于接收设备针对接收到的至少一个发送设备发送的采用A-MPDU结构的PPDU的确认回复,还适用于针对发送设备连续地向接收设备发送多个PPDU(其中,每个PPDU中一般包含一个MPDU,发送设备可以间隔固定时间向接收设备发送相邻的PPDU,如该固定时间为短帧间间隔(英文:ShortInterframeSpace,简称:SIFS)),并向接收设备发送BA请求(英文:BARequest,简称:BAR),要求接收设备进行确认回复的情况,在该情况下,BA帧是针对多个PPDU的确认回复。102、接收设备根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成BA帧。其中,BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和位表长度指示(英文:BitmapLength);位表长度指示用于指示块确认位表域的长度,且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。具体的,在接收设备接收至少一个发送设备中的每个发送设备发送的至少一个PPDU之后,接收设备可以根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况,生成BA帧。103、接收设备向至少一个发送设备中的每个发送设备发送BA帧。其中,在接收设备根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成BA帧之后,便可以分别向该至少一个发送设备中的每个发送设备发送该BA帧。本发明提供的块确认帧的传输方法,接收设备接收至少一个发送设备发送的至少一个PPDU,并根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成认BA帧,并向至少一个发送设备中的每个发送设备发送该BA帧,且该BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。进一步的,在本发明一个实施例中,步骤102具体可以包括:针对至少一个发送设备中的每个发送设备,接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与发送设备对应的块确认位表域的长度,并根据与发送设备对应的块确认位表域的长度确定与发送设备对应的块确认位表域,并确定与发送设备对应的位表长度指示。接收设备根据确定出的与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成BA帧。进一步的,在本发明实施例中,针对与发送设备对应的BA信息包含每TID信息域中设置有确认指示(如,ACK/BA指示)的情况,在步骤102接收设备根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成BA帧之前,本发明实施例提供的块确认帧的传输方法还可以包括:针对至少一个发送设备中的每个发送设备,接收设备确定与发送设备对应的BA信息包含的每TID信息域中的确认指示设置为第一值,第一值表示与发送设备对应的BA信息中包含块确认起始序列控制域和块确认位表域。该每TID信息域位于块确认起始序列控制域和块确认位表域之前。其中,所述的确认指示可以为ACK/BA指示,对应的第一值可以为预设的0或1,表示BA信息中包含块确认起始序列控制域和块确认位表域。例如,协议规定,ACK/BA指示为0表示BA信息中包含块确认起始序列控制域和块确认位表域,ACK/BA指示为1表示BA信息中不包含块确认起始序列控制域和块确认位表域,则第一值为0。或者,协议规定,ACK/BA指示为1表示BA信息中包含块确认起始序列控制域和块确认位表域,ACK/BA指示为0表示BA信息中不包含块确认起始序列控制域和块确认位表域,则第一值为1。进一步的,在现有标准中,块确认起始序列控制域的分片编号子域并未使用,即总是设置为全0,因此,在本发明实施例中,位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域的分片编号(英文:FragmentNumber)子域中。优选的,可以用FragmentNumber子域的4bits的其中3bits来承载该与发送设备对应的位表长度指示。当然,也可以用FragmentNumber子域的全部4bits来承载该与发送设备对应的位表长度指示,以表示更小的粒度。进一步,在本发明实施例中,块确认起始序列控制域中的起始序列号子域的值设置为正确接收的发送设备发送的MPDU的最小序列号。进一步的,在本发明实施例中,示例性的,在第一种可能的实现方式中,针对普通BA帧,即未使用分片的应用场景,在采用FragmentNumber子域(全部的4bits的其中3bits)承载位表长度指示的情况下,由于BA帧的长度是以字节为单位的,BABitmap域的长度也应该是字节的整数倍。因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,然后将该差值代入公式一:中(其中x为差值,表示向上取整),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。例如,确定的正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值为7,则根据公式一计算出的块确认位表域的长度为1字节,再例如,确定的正确接收的发送设备发送的MPDU 的最大序列号与最小序列号的差值为41,则根据公式一计算出的块确认位表域的长度为6字节。示例性的,在第二种可能的实现方式中,针对普通BA帧的基本BA变体(英文:BasicBlockAckvariant),即使用分片的应用场景,在采用FragmentNumber子域(全部的4bits)承载位表长度指示的情况下,由于PPDU最多聚合的MPDU的个数为64,并且一个MPDU最多允许分为16个分片,因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,然后将该差值代入公式二:中(其中x为差值,表示向上取整),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。例如,确定的正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值为7,则根据公式二计算出的块确认位表域的长度为16字节,再例如,确定的正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值为41,则根据公式二计算出的块确认位表域的长度为88字节。需要说明的是,在使用分片的场景中,接收设备接收到一个MPDU的多个分片,当这些分片中存在至少一个分片被正确接收,即认为该MPDU需要进行确认,在考虑最大序列号和最小序列号时也应当将此MPDU的序列号考虑进去。换句话说,在使用分片的场景中,所谓“正确接收的发送设备发送的MPDU”是指至少有一个分片被正确接收的MPDU。进一步的,在本发明实施例中,当采用上述第一种或第二种实现方式确定块确认位表域的长度时,所述的确定与发送设备对应的位表长度指示,具体的可以包括:接收设备根据与发送设备对应的块确认位表域的长度和预设的第一映射关系,确定与发送设备对应的位表长度指示。其中,该第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。进一步的,在本发明实施例中,在第三种可能的实现方式中,针对普通BA帧的基本BA变体,即使用分片的应用场景,在采用Fragment Number子域(全部的4bits)承载位表长度指示的情况下,由于PPDU最多聚合的MPDU的个数为64,并且一个MDPU最多允许分为16个分片,因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与发送设备对应的块确认位表域的长度,具体的可以包括:接收设备根据正确接收的发送设备发送的MPDU中的最大序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数。其中,确定需反馈是否被正确接收的MPDU的个数具体的可以是,首先,计算正确接收的发送设备发送的MPDU中的最大序列号与最小序列号的差值,然后将差值代入公式三:计算得到的结果即为需反馈是否被正确接收的MPDU的个数。例如,正确接收的发送设备发送的MPDU中的最大序列号与最小序列号的差值为19,则根据公式三计算出的需反馈是否被正确接收的MPDU的个数为24。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数。其中,若接收设备确定所有正确接收的发送设备发送的MPDU中,存在至少一个MPDU的被正确接收的最大分片编号大于或等于8,则确定反馈MPDU是否被正确接收所需的字节数为2字节(16bits)。其中,分片编号的取值范围为0~15。若接收设备确定所有正确接收的发送设备发送的MPDU中,所有MPDU的被正确接收的最大分片编号均小于8,则确定反馈MPDU是否被正确接收所需的字节数为1字节(8bits)。例如,某个MPDU包含12个分片,但接收设备仅正确接收到其中5个。若被正确接收的分片为编号分别为1、2、4、5、6的分片,此时,最大分片编号为6,小于8,那么此时,确定的反馈MPDU是否被正确接收所需的字节数为1字节;若被正确接收的分片为编号分别为1、3、5、8、11的分片,此时,最大分片编号为11,大于8,那么此时,确定的反馈MPDU是否被正确接收所需的字节数为2字节。接收设备根据需反馈是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数,确定与发送设备对应的块确认位表域的长度。其中,将需反馈是否被正确接收的MPDU的个数和反馈一个MPDU是否被正确接收所需的字节数代入公式四:A×B(A表示需反馈是否被正确接收的MPDU的个数,A根据公式三计算得到;B表示反馈一个MPDU是否被正确接收所需的字节数),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。例如,需反馈是否被正确接收的MPDU的个数A=24,反馈一个MPDU是否被正确接收所需的字节数B=2,则根据公式四计算出的块确认位表域的长度为48字节。进一步的,在本发明实施例中,当采用上述第三种实现方式确定块确认位表域的长度时,所述的确定与发送设备对应的位表长度指示,具体的可以包括:接收设备根据需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与发送设备对应的数量指示;其中,数量指示用于指示需反馈是否被正确接收的MPDU的个数,第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号,确定与发送设备对应的标记指示;其中,标记指示用于指示反馈MPDU是否被正确接收所需的字节数。接收设备将与发送设备对应的数量指示和与发送设备对应的标记指示组合生成与发送设备对应的位表长度指示。在本发明另一实施例中,步骤102具体可以包括:针对至少一个发送设备中的每个发送设备,接收设备根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定与发送设备对应的块确认位表域的长度。然后,与上一实施例类似,根据与发送设备对应的块确认位表域的长度确定与发送设备对应的块确认位表域,并确定与发送设备对应的位表长度指示。接收设备根据确定出的与每个发送设备对应的位表长度指示和与每 个发送设备对应的块确认位表域,生成BA帧。进一步的,在本发明实施例中,针对与发送设备对应的BA信息包含每TID信息域中设置有确认指示(如,ACK/BA指示)的情况,在步骤102接收设备根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成BA帧之前,本发明实施例提供的块确认帧的传输方法还可以包括:针对至少一个发送设备中的每个发送设备,接收设备确定与发送设备对应的BA信息包含的每TID信息域中的确认指示设置为第一值,第一值表示与发送设备对应的BA信息中包含块确认起始序列控制域和块确认位表域。该每TID信息域位于块确认起始序列控制域和块确认位表域之前。其中,所述的确认指示可以为ACK/BA指示,对应的第一值可以为预设的0或1,表示BA信息中包含块确认起始序列控制域和块确认位表域。例如,协议规定,ACK/BA指示为0表示BA信息中包含块确认起始序列控制域和块确认位表域,ACK/BA指示为1表示BA信息中不包含块确认起始序列控制域和块确认位表域,则第一值为0。或者,协议规定,ACK/BA指示为1表示BA信息中包含块确认起始序列控制域和块确认位表域,ACK/BA指示为0表示BA信息中不包含块确认起始序列控制域和块确认位表域,则第一值为1。进一步的,在现有标准中,块确认起始序列控制域的分片编号子域并未使用,即总是设置为全0,因此,在本发明实施例中,位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域的分片编号(英文:FragmentNumber)子域中。优选的,可以用FragmentNumber子域的4bits的其中3bits来承载该与发送设备对应的位表长度指示。当然,也可以用FragmentNumber子域的全部4bits来承载该与发送设备对应的位表长度指示,以表示更小的粒度。进一步,在本发明实施例中,所述发送设备对应的BA信息包含的块确认起始序列控制域包含起始序列号子域,该起始序列号子域的值设置为未正确接收的发送设备发送的MPDU的最小序列号,表示块确认位表域中第一比特对应的序列号为该最小序列号,且位于该最小序列号之前的所 有序列号对应的MPDU均被正确接收。换句话说,小于该最小序列号的序列号对应的MPDU均被所述接收设备正确接收。进一步的,在本发明实施例中,示例性的,在第一种可能的实现方式中,针对普通BA帧,即未使用分片的应用场景,在采用FragmentNumber子域(全部的4bits的其中3bits)承载位表长度指示的情况下,由于BA帧的长度是以字节为单位的,BABitmap域的长度也应该是字节的整数倍。因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定与发送设备对应的块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号u与未正确接收的发送设备发送的MPDU的最小序列号v,然后将它们代入公式一:中(其中u为正确接收的发送设备发送的MPDU的最大序列号,v为未正确接收的发送设备发送的MPDU的最小序列号,表示向上取整,||表示绝对值),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。与此同时,还应将块确认起始序列控制域中的起始序列号子域设置为未正确接收的发送设备发送的MPDU的最小序列号v,表示块确认位表域中第一比特对应的序列号为该值,且位于此序列号之前所有序列号对应的MPDU均被正确接收。例如,发送设备发送的MPDU的序列号范围为10~50,如果接收设备正确接收除序列号32对应的MPDU之外的所有MPDU,则u=50,v=32,即块确认位表域的长度为3字节,且此时对应的起始序列号设置为32,表示小于32的序列号对应的MPDU都被正确接收;如果接收设备正确接收除序列号10对应的MPDU之外的所有MPDU,则u=50,v=10,即块确认位表域的长度为6字节,且此时对应的起始序列号设置为10,表示小于10的序列号对应的MPDU都被正确接收;如果接收设备正确接收除序列号45~50对应的MPDU之外的所有MPDU,则u=44,v=45,即块确认位表域的长度为1字节,且此时对应的起始序列号设置为45,表示小于45的序列号对应的MPDU都被正确接收,这种情况下,块确认位表域的所有比特均为0;如果接收设备正确接收除序列号47对应的MPDU之外的所有MPDU,则u=50,v=47,即块确认位表域的长度为1字节,且此时对应的起始序列号设置为47,表示小于47的序列号对应的MPDU都被正确接收,这种情况下,块确认位表域的个比特取值为01110000。进一步的,在本发明实施例中,在第四种可能的实现方式中,针对普通BA帧的基本BA变体,即使用分片的应用场景,示例性的,在第二种可能的实现方式中,针对普通BA帧的基本BA变体(英文:BasicBlockAckvariant),即使用分片的应用场景,在采用FragmentNumber子域(全部的4bits)承载位表长度指示的情况下,由于PPDU最多聚合的MPDU的个数为64,并且一个MPDU最多允许分为16个分片,因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定与发送设备对应的块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号u与未正确接收的发送设备发送的MPDU的最小序列号v,然后将它们代入公式二:中(其中u为正确接收的发送设备发送的MPDU的最大序列号,v为未正确接收的发送设备发送的MPDU的最小序列号,表示向上取整,||表示绝对值),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。与此同时,还应将块确认起始序列控制域中的起始序列号子域设置为未正确接收的发送设备发送的MPDU的最小序列号v,表示块确认位表域中第一比特对应的序列号为该值,且位于此序列号之前所有序列号对应的MPDU被正确接收。例如,发送设备发送的MPDU的序列号范围为10~50,如果接接收设备正确接收除序列号32对应的MPDU之外的所有MPDU,则u=50,v=32,即块确认位表域的长度为40字节,且此时对应的起始序列号设置为32,表示小于32的序列号对应的MPDU的所有分片都被正确接收;如果接收设备正确接收除序列号10对应的MPDU之外的所有MPDU,则u=50,v=10,即块确认位表域的长度为88字节,且此时对应的起始序列号设置为10,表示小于10的序列号对应的MPDU的所有分片都被正确接收;如果接收设备正确接收除序列号45~50对应的MPDU之外的所有MPDU,则u=44,v=45,即块确认位表域的长度为8字节,且此时对应的起始序列号设置为45,表示小于45的序列号对应的MPDU的所有分片都被正确接收;如果接收设备正确接收除序列号47对应的MPDU之外的所有MPDU,则u=50,v=47,即块确认位表域的长度为8字节,且此时对应的起始序列号设置为47,表示小于47的序列号对应的MPDU的所有分片都被正确接收,这种情况下,块确认位表域的个比特取值为01110000。需要说明的是,在使用分片的场景中,接收设备接收到一个MPDU的多个分片。所谓“正确接收的发送设备发送的MPDU”是指该MPDU对应的所有分配均被正确接收的MPDU,所谓“未正确接收的发送设备发送的MPDU”,是指至少有一个分片未被正确接收的MPDU。同理,一个MPDU被接收错误,即该MPDU包含的分片至少有一个接收错误;一个MPDU被正确接收,即该MPDU包含的所有分片均被正确接收。进一步的,在本发明实施例中,当采用上述第一种或第二种实现方式确定块确认位表域的长度时,所述的确定与发送设备对应的位表长度指示,具体的可以包括:接收设备根据与发送设备对应的块确认位表域的长度和预设的第一映射关系,确定与发送设备对应的位表长度指示。其中,该第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。进一步的,在本发明实施例中,在第三种可能的实现方式中,针对普通BA帧的基本BA变体,即使用分片的应用场景,在采用FragmentNumber子域(全部的4bits)承载位表长度指示的情况下,由于PPDU最多聚合的MPDU的个数为64,并且一个MDPU最多允许分为16个分片,因此,所述的根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定与发送设备对应的块确认位表域的长度,具体的可以包括:接收设备根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数。其中,确定需反馈是否被正确接收的MPDU的个数具体的可以是, 首先,计算正确接收的发送设备发送的MPDU的最大序列号u与未正确接收的发送设备发送的MPDU的最小序列号v,然后将差值代入公式三:A=|u-v|+1中(其中u为正确接收的发送设备发送的MPDU的最大序列号,v为未正确接收的发送设备发送的MPDU的最小序列号,表示向上取整,||表示绝对值),计算得到的结果即为需反馈是否被正确接收的MPDU的个数。例如,发送设备发送的MPDU的序列号范围为10~50,如果接接收设备正确接收除序列号32对应的MPDU之外的所有MPDU,则u=50,v=32,A=|u-v|+1=19,即需反馈的MPDU个数为19个;如果接收设备正确接收除序列号10对应的MPDU之外的所有MPDU,则u=50,v=10,A=|u-v|+1=41,即需反馈的MPDU个数为41个;如果接收设备正确接收除序列号45~50对应的MPDU之外的所有MPDU,则u=44,v=45,A=|u-v|+1=2,即需反馈的MPDU个数为2个;如果接收设备正确接收除序列号47对应的MPDU之外的所有MPDU,则u=50,v=47,|u-v|+1=4,即需反馈的MPDU个数为4个。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数。其中,若接收设备确定所有正确接收的发送设备发送的MPDU中,存在至少一个MPDU的被正确接收的最大分片编号大于或等于8,则确定反馈MPDU是否被正确接收所需的字节数为2字节(16bits)。其中,分片编号的取值范围为0~15。若接收设备确定所有正确接收的发送设备发送的MPDU中,所有MPDU的被正确接收的最大分片编号均小于8,则确定反馈MPDU是否被正确接收所需的字节数为1字节(8bits)。例如,某个MPDU包含12个分片,但接收设备仅正确接收到其中5个。若被正确接收的分片为编号分别为1、2、4、5、6的分片,此时,最大分片编号为6,小于8,那么此时,确定的反馈MPDU是否被正确接收所需的字节数为1字节;若被正确接收的分片为编号分别为1、3、5、8、11的分片,此时,最大分片编号为11,大于8,那么此时,确定的反馈MPDU是否被正确接收所需的字节数为2字节。接收设备根据需反馈是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数,确定与发送设备对应的块确认位表域的长 度。其中,将需反馈是否被正确接收的MPDU的个数和反馈一个MPDU是否被正确接收所需的字节数代入公式四:A×B(A表示需反馈是否被正确接收的MPDU的个数,A根据公式三计算得到;B表示反馈一个MPDU是否被正确接收所需的字节数),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。与此同时,还应将块确认起始序列控制域中的起始序列号子域设置为未正确接收的发送设备发送的MPDU的最小序列号v,表示块确认位表域中第一比特对应的序列号为该值,且位于此序列号之前所有序列号对应的MPDU被正确接收。例如,需反馈是否被正确接收的MPDU的个数A=24,反馈一个MPDU是否被正确接收所需的字节数B=2,则根据公式四计算出的块确认位表域的长度为48字节。再例如,发送设备发送的MPDU的序列号范围为10~50,如果接接收设备正确接收除序列号32对应的MPDU之外的所有MPDU,则u=50,v=32,A=|u-v|+1=19,B=2,则根据公式四计算出的块确认位表域的长度为38字节,同时,还应将对应的起始序列号设置为v=32,表示小于32的序列号对应的MPDU的所有分片都被正确接收。需要说明的是,在使用分片的场景中,接收设备接收到一个MPDU的多个分片。所谓“正确接收的发送设备发送的MPDU”是指该MPDU对应的所有分配均被正确接收的MPDU,所谓“未正确接收的发送设备发送的MPDU”,是指至少有一个分片未被正确接收的MPDU。同理,一个MPDU被接收错误,即该MPDU包含的分片至少有一个接收错误;一个MPDU被正确接收,即该MPDU包含的所有分片均被正确接收。进一步的,在本发明实施例中,当采用上述第三种实现方式确定块确认位表域的长度时,所述的确定与发送设备对应的位表长度指示,具体的可以包括:接收设备根据需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与发送设备对应的数量指示;其中,数量指示用于指示需反馈是否被正确接收的MPDU的个数,第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号, 确定与发送设备对应的标记指示;其中,标记指示用于指示反馈MPDU是否被正确接收所需的字节数。接收设备将与发送设备对应的数量指示和与发送设备对应的标记指示组合生成与发送设备对应的位表长度指示。上述两个实施例给出了两种确定与发送设备对应的块确认位表域的长度的方法:方法一、接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与发送设备对应的块确认位表域的长度;方法二、接收设备根据正确接收的发送设备发送的MPDU的最大序列号与未正确接收的发送设备发送的MPDU的最小序列号的差值,确定与发送设备对应的块确认位表域的长度。某些情况下,接收设备使用方法一确定的块确认位表域的长度更小;而另一些情况下,接收设备使用方法二确定的块确认位表域的长度更小。例如,发送端发送的A-MPDU包含序列号为1~64的共64个MPDU,若其中序列号为1~32的MPDU接收错误,其他MPDU均接收正确,则使用方法一确定的块确认位表域的长度为32bits,而使用方法二确定的块确认位表域的长度为64bits,显然方法一开销更小;若其中序列号为33~40的MPDU接收错误,其他MPDU均接收正确,则使用方法一确定的块确认位表域的长度为64bits,而使用方法二确定的块确认位表域的长度为32bits,即方法二开销更小。因此,接收端可根据接收情况确定采用哪种方法。具体地,接收设备在BA帧中引入第一指示信息,用于指示BA帧中块确认位表域长度的确定所使用的方法。例如,第一指示信息为0,表示块确认位表域长度的确定使用方法一;第一指示信息为1,表示块确认位表域长度的确定使用方法二。当然,第一指示信息的具体含义,还可等效地解释为指示起始序列号子域的含义。例如,第一指示信息为0,表示起始序列号子域承载的是接收设备正确接收MPDU的最小序列号;第一指示信息为1,表示起始序列号子域承载的是接收设备未正确接收MPDU的最小序列号。具体地,第一指示信息可位于BA帧中的BA控制域中,表示当前BA 帧中所有BAInfo中均采用该第一指示信息所指示的方法。可选地,第一指示信息还可位于BA帧中每个BAInfo中,用于指示当前BAInfo所采用的块确认位表域长度的确定方法。具体地,第一指示信息可位于BAInfo包含的块确认起始序列控制域的FragmentNumber子域中。本发明另一实施例提供一种块确认帧的传输方法,如图3所示,该方法可以包括:201、发送设备向接收设备发送至少一个PPDU。其中,发送设备发送的PPDU中包含至少一个MPDU。202、发送设备接收接收设备发送的BA帧。其中,BA帧中包含有与发送设备对应的BA信息,该BA信息包含块确认位表域和位表长度指示;该位表长度指示用于指示块确认位表域的长度,且位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。需要说明的是,本发明实施例提供的块确认帧的传输方法,不仅适用于接收设备针对接收到的至少一个发送设备发送的采用A-MPDU结构的PPDU的确认回复,还适用于针对发送设备连续地向接收设备发送多个PPDU(其中,每个PPDU中一般包含一个MPDU,发送设备可以间隔固定时间向接收设备发送相邻的PPDU,如该固定时间为SIFS),并向接收设备发送BAR,要求接收设备进行确认回复的情况,在该情况下,BA帧是针对多个PPDU的确认回复。本发明提供的块确认帧的传输方法,发送设备向接收设备发送至少一个包含至少一个MPDU的PPDU,并接收接收设备发送的BA帧,且该BA帧中包含与发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与该发送设备对应的BA信息包含的块确认起始序列控制域中。接收设备通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。进一步的,在本发明实施例中,块确认位表域的长度是接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值确定的。进一步的,在现有标准中,块确认起始序列控制域的分片编号子域并未使用,即总是设置为全0,因此,在本发明实施例中,位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。优选的,可以用FragmentNumber子域的4bits的其中3bits来承载该与发送设备对应的位表长度指示。当然,也可以用FragmentNumber子域的全部4bits来承载该与发送设备对应的位表长度指示,以表示更小的粒度。进一步的,在本发明实施例中,在步骤202发送设备接收接收设备发送的BA帧之后,本发明实施例提供的块确认帧的传输方法还可以包括:发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度。进一步的,在本发明实施例中,当接收设备采用上述实施例中的第一种或第二种实现方式确定块确认位表域的长度时,发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度,具体的可以包括:发送设备根据位表长度指示和预设的第一映射关系,确定与发送设备对应的BA信息包含的块确认位表域的长度;其中,第一映射关系用于指示至少一个位表长度指示对应的块确认位表域的长度。进一步的,当接收设备采用上述实施例中的第三种实现方式确定块确认位表域的长度时,在本发明实施例中,发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度,具体的可以包括:发送设备根据位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数;其中,数量指示用于指示接收设备需反馈是否被正确接收的MPDU的个数,第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数。发送设备根据位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,标记指示用于指示接收设备反馈MPDU是 否被正确接收所需的字节数。发送设备根据反馈的是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数,确定与发送设备对应的BA信息包含的块确认位表域的长度。本发明另一实施例提供一种块确认帧的传输方法,如图4所示,该方法可以包括:301、至少一个发送设备向接收设备发送至少一个PPDU。其中,每个发送设备发送的PPDU中可以包含至少一个MPDU。302、接收设备接收至少一个发送设备发送的至少一个PPDU。其中,根据标准规定,在接收设备接收至少一个发送设备发送的至少一个PPDU之后,需向发送设备回复确认信息,即接收设备需根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成BA帧。在本发明实施例中,首先,接收设备需根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况确定生成BA帧所需的信息,然后根据确定的生成BA帧所需的信息生成BA帧,其中,针对至少一个发送设备中的每个发送设备,确定生成BA帧所需的信息具体的可以包括以下步骤303-步骤306,根据确定的生成BA帧所需的信息生成BA帧具体的包括以下步骤307。303、接收设备确定与发送设备对应的BA信息包含的每TID信息域中的确认指示设置为第一值。其中,第一值表示与发送设备对应的BA信息中包含块确认起始序列控制域和块确认位表域。示例性的,所述的确认指示可以为ACK/BA指示,对应的第一值可以为BA。由于在现有技术中,当接收设备确定发送设备发送的至少一个MPDU中存在未正确接收的MPDU时,需将与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA,且此时与发送设备对应的BA信息中包含每TID信息域,BlockAckStartingSequenceControl域和BABitmap域。具体的是,当发送设备发送的PPDU中仅包含一个MPDU时,若接收设备确定该MPDU未被正确接收,则将与发送设备对 应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA;当发送设备发送的PPDU中包含至少两个MPDU时,若接收设备确定至少两个MPDU中存在至少一个MPDU未被正确接收,则将与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA。而当接收设备确定发送设备发送的至少一个MPDU中不存在未被正确接收的MPDU时,需将与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为ACK,且此时与发送设备对应的BA信息中仅包含每TID信息域,而不包含BlockAckStartingSequenceControl域和BABitmap域。因此,在接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值确定与发送设备对应的块确认位表域的长度之前,可以先确定与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示是否设置为BA,并在确定与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA,再执行根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值确定与发送设备对应的块确认位表域的长度的操作。304、接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与发送设备对应的块确认位表域的长度。其中,本发明实施例中所述的块确认位表域的长度可以采用位表长度指示来指示,该位表长度指示可以承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域的分片编号(英文:FragmentNumber)子域,该分片编号子域的长度为4bits。示例性的,在第一种可能的实现方式中,针对普通BA帧,即未使用分片的应用场景,可以采用FragmentNumber子域(全部的4bits的其中3bits)承载位表长度指示,由于BA帧的长度是以字节为单位的,BABitmap域的长度也应该是字节的整数倍。因此,接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,然后将该差值代入公式一:中(其中x为差值,表示向上取整),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。在第二种可能的实现方式中,针对普通BA帧的基本BA变体,该BA帧的BABitmap域的长度最多为128字节,原因在于,该基本BA变体适用于使用分片的场景,且每个MPDU最多允许的分为16个分片,这样在每个MPDU在BABitmap域中便需16个比特来反馈是否被正确接收,且PPDU最多允许聚合64个MPDU,因此,BABitmap域的长度最多为128字节,此时,可以采用FragmentNumber子域(全部的4bits)承载位表长度指示,在这种场景下,接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定块确认位表域的长度的具体过程可以是:先确定正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,然后将该差值代入公式二:中(其中x为差值,表示向上取整),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。在第三种可能的实现方式中,针对普通BA帧的基本BA变体,可以采用FragmentNumber子域(全部的4bits)承载位表长度指示,在这种场景下,接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值,确定块确认位表域的长度的具体过程可以是:接收设备根据正确接收的发送设备发送的MPDU中的最大序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数。首先,接收设备计算正确接收的发送设备发送的MPDU中的最大序列号与最小序列号的差值,然后将差值代入公式三:计算得到的结果即为需反馈是否被正确接收的MPDU的个数。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数。其中,若接收设备确定所有正确接收的发送设备发送的MPDU中,存在至少一个MPDU的被正确接收的最大分片编号大于或等于8,则确定反馈MPDU是否被正确接收所需的字节数为2字节(16bits)。若接收设备确定所有正确接收的发送设备发送的MPDU中,所有MPDU的被正确接收的最大分片编号均小于8,则确定反馈MPDU是否被正确接收所需的字节数为1字节(8bits)。接收设备根据需反馈是否被正确接收的MPDU的个数和反馈MPDU 是否被正确接收所需的字节数,确定与发送设备对应的块确认位表域的长度。其中,将需反馈是否被正确接收的MPDU的个数和反馈一个MPDU是否被正确接收所需的字节数代入公式四:A×B(A表示需反馈是否被正确接收的MPDU的个数,根据公式三计算得到;B表示反馈一个MPDU是否被正确接收所需的字节数),计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。305、接收设备根据与发送设备对应的块确认位表域的长度确定与发送设备对应的块确认位表域。其中,在接收设备根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值确定出与发送设备对应的块确认位表域的长度之后,接收设备可以根据确定出的与发送设备对应的块确认位表域的长度和对该发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况,确定与发送设备对应的块确认位表域。示例性的,针对普通BA帧,即未使用分片的应用场景,假设发送设备发送的PPDU中包含15个MPDU,并且,该15个MPDU中正确接收的MPDU的序列号分别为:4、7、8、9、12,由于15个MPDU中存在未正确接收的MPDU,因此与该发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA,此时,接收设备在确定与发送设备对应的BA信息包含的每TID信息域中的ACK/BA指示设置为BA,并根据正确接收的发送设备发送的MPDU的最大序列号与最小序列号的差值和步骤304中的公式一:确定出与发送设备对应的块确认位表域的长度为2字节之后,根据15个MPDU的接收情况和确定出的与发送设备对应的块确认位表域的长度,确定的与该发送设备对应的块确认位表域为0001001110010000。其中,块确认位表域中1表示对应序列号的MPDU被正确接收,0表示对应序列号的MPDU未被正确接收,且需在BlockAckStartingSequenceControl域中指示起始序列号为0。306、接收设备确定与发送设备对应的位表长度指示。其中,在第一种可能的实现方式中,当采用步骤304中的第一种或第 二种实现方式确定块确认位表域的长度时,接收设备确定与发送设备对应的位表长度指示具体的可以是:接收设备根据与发送设备对应的块确认位表域的长度和预设的第一映射关系,确定与发送设备对应的位表长度指示。其中,第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。示例性的,针对普通BA帧,即未使用分片的应用场景,如图5所示,以采用块确认起始序列控制域的分片编号子域的3bits(假设采用块确认起始序列控制域的分片编号子域的B0-B2)承载该位表长度指示为例(当然,也可采用分片编号子域的全部4bits来承载该位表长度指示,但是考虑到MAC帧的长度是以字节为单位的,因此采用小于1字节的粒度单位没有必要,也就是说,优选的,采用确认起始序列控制域的分片编号子域的3bits承载该位表长度指示),不同块确认位表域的长度与位表长度指示的对应关系可以如表1所示。表1确认位表域的长度(单位:字节)位表长度指示二进制1000021001320104301154100651017611087111例如,发送设备发送的PPDU中包含20个MPDU,并且,该20个MPDU中正确接收的MPDU的序列号分别为:3、5、8、10、12、15,此时,接收设备先可以确定出正确接收的该发送设备发送的MPDU中的 最大序列号15和最小序列号3的差值12,然后根据差值12和本发明实施例中步骤304中的公式一:中(其中x为差值,表示向上取整)确定与该发送设备对应的块确认位表域的长度为2字节,此时便可以根据与发送设备对应的块确认位表域的长度2字节和表1所示的第一映射关系,确定与发送设备对应的位表长度指示为1,其对应的二进制为001。示例性的,针对普通BA帧的基本BA变体,即使用分片的应用场景,可以采用分片编号子域全部4bits来表示位表长度指示,此时,不同块确认位表域的长度与位表长度指示的对应关系可以如表2所示。表2例如,发送设备发送的PPDU中包含25个MPDU,并且,该25个MPDU中正确接收的MPDU的序列号分别为:5、8、10、12、15、18、22,此时,接收设备先可以确定出正确接收的该发送设备发送的MPDU中的最大序列号22和最小序列号5的差值17,然后根据差值17和本发明实施例中步骤304中的公式二:中确定与该发送设备对应的块确认位表域的长度为40字节,此时便可以根据与发送设备对应的块确认位表域的长度40字节和表2所示的第一映射关系,确定与发送设备对应的位表长度指示为4,其对应的二进制为0100。在第二种可能的实现方式中,当采用步骤304中的第三种实现方式确定块确认位表域的长度时,接收设备确定与发送设备对应的位表长度指示具体的可以是:接收设备根据需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与发送设备对应的数量指示。其中,数量指示用于指示需反馈是否被正确接收的MPDU的个数,第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示。示例性的,以采用块确认起始序列控制域的分片编号子域的3bits承载该数量指示为例,第二映射关系可以如表3所示。表3例如,确定出的需反馈是否被正确接收的MPDU的个数为24,那么根据如表3所示的第二映射关系可以确定数量指示为2,对应的二进制为010。接收设备根据正确接收的发送设备发送的MPDU的最大分片编号,确定与发送设备对应的标记指示。其中,标记指示用于指示反馈MPDU是否被正确接收所需的字节数。具体的,若接收设备确定所有正确接收的发送设备发送的MPDU中,存在至少一个MPDU的被正确接收的最大分片编号大于或等于8,则确定反馈MPDU是否被正确接收所需的字节数为2字节(16bits),也就是说,当接收设备确定所有正确接收的发送设备发送的MPDU中存在至少一个MPDU的被正确接收的最大分片编号大于或等于8时,则将用于指示反馈MPDU是否被正确接收所需的字节数为2字节的标记指示确定为与该发送设备对应的标记指示。若接收设备确定所有正确接收的发送设备发送的MPDU中,所有MPDU的被正确接收的最大分片编号均小于8,则确定反馈MPDU是否被正确接收所需的字节数为1字节(8bits),也就是说,当接收设备确定所有正确接收的发送设备发送的MPDU中所有MPDU的被正确接收的最大分片编号均小于8时,则将用于指示反馈MPDU是否被正确接收所需的字节数为1字节的标记指示确定为与该发送设备对应的标记指示。示例性的,以采用块确认起始序列控制域的分片编号子域的1bit承载该标记指示为例,假设该1bit为“1”时,表示反馈MPDU是否被正确接收所需的字节数为1,该1bit为“0”时,表示反馈MPDU是否被正确接收所需的字节数为2,那么,当接收设备确定所有正确接收的发送设备发送的MPDU中存在至少一个MPDU的被正确接收的最大分片编号大于或等于8时,则将“0”确定为与该发送设备对应的标记指示,当接收设备确定所有正确接收的发送设备发送的MPDU中所有MPDU的被正确接收 的最大分片编号均小于8时,则将“1”确定为与该发送设备对应的标记指示。接收设备将与发送设备对应的数量指示和与发送设备对应的标记指示组合生成与发送设备对应的位表长度指示。示例性的,如图6所示,假设采用分片编号子域的前3个比特(如,B0-B2)承载数量指示,第4个比特(如,B3)承载标记指示,且确定的数量指示为010,标记指示为“1”,那么生成的位表长度指示为0101。当然,接收设备可以针对至少一个发送设备中的每个发送设备,均执行以上步骤303-步骤306,以得到与至少一个发送设备中的每个发送设备对应的位表长度指示和块确认位表域,并在得到与至少一个发送设备中的每个发送设备对应的位表长度指示和块确认位表域之后,执行以下步骤307。307、接收设备根据与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成BA帧。其中,与发送设备对应的位表长度指示包含于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。优选的,与发送设备对应的位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。308、接收设备向至少一个发送设备中的每个发送设备发送BA帧。在步骤308中接收设备向至少一个发送设备中的每个发送设备发送BA帧之后,针对至少一个发送设备中的每个发送设备,可以执行以下步骤309和步骤310。309、发送设备接收接收设备发送的BA帧。310、发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度。其中,当接收设备采用本发明实施例中步骤304中所述的第一种或第二种实现方式确定块确认位表域的长度时,发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度,包括:发送设备根据位表长度指示和预设的第一映射关系,确定与发送设备对应的BA信息包含的块确认位表域的长度。其中,第一映射关系用于指示至少一个 位表长度指示对应的块确认位表域的长度。需要说明的是,该第一映射关系可以如本发明实施例中步骤306中所述的表1和表2所示,本发明在此不再详细赘述。其中,当接收设备采用本发明实施例中步骤304中所述的第三种实现方式确定块确认位表域的长度时,发送设备根据位表长度指示确定与发送设备对应的BA信息包含的块确认位表域的长度,包括:发送设备根据位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数。其中,数量指示用于指示接收设备需反馈是否被正确接收的MPDU的个数,第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数。示例性的,当接收设备采用分片编号子域承载包括数量指示和标记指示的位表长度指示,具体的采用分片编号子域的前3个比特承载数量指示,第4个比特承载标记指示时,发送设备可以根据位表长度指示的前三个比特和预设的第二映射关系,便可以确定出反馈的是否被正确接收的MPDU的个数。需要说明的是,该第二映射关系可以如本发明实施例中步骤306中所述的表3所示,本发明在此不再详细赘述。发送设备根据位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,标记指示用于指示接收设备反馈MPDU是否被正确接收所需的字节数。示例性的,当接收设备采用分片编号子域承载包括数量指示和标记指示的位表长度指示,具体的采用分片编号子域的前3个比特承载数量指示,第4个比特承载标记指示时,发送设备可以根据位表长度指示的第4个比特,便可以确定出反馈MPDU是否被正确接收所需的字节数。例如,标记指示为“1”,则确定出的反馈MPDU是否被正确接收所需的字节数为1字节,标记指示为“0”,则确定出的反馈MPDU是否被正确接收所需的字节数为2字节。发送设备根据反馈的是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数,确定与发送设备对应的BA信息包含的块确认位表域的长度。其中,发送设备在确定出反馈的是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数之后,便可以反馈的是否被正确接收的MPDU的个数和反馈MPDU是否被正确接收所需的字节数相乘,计算得到的结果即为块确认位表域的长度(其中,确定的块确认位表域的长度的单位为字节)。进一步的,在发送设备确定出与发送设备对应的BA信息包含的块确认位表域的长度之后,可以根据块确认位表域的长度对该BA信息进行解析,以获得需重传的MPDU的信息,进而对接收设备未成功接收的所有MPDU进行重传。本发明提供的块确认帧的传输方法,接收设备接收至少一个发送设备发送的至少一个PPDU,并根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成认BA帧,并向至少一个发送设备中的每个发送设备发送该BA帧,且该BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。本发明另一实施例提供一种接收设备,如图7所示,该接收设备可以包括:接收单元41、生成单元42、发送单元43。接收单元41,用于接收至少一个发送设备发送的至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU。生成单元42,用于根据对所述接收单元41接收的所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧。发送单元43,用于向所述至少一个发送设备中的每个发送设备发送所述生成单元42生成的所述BA帧。其中,所述BA帧中包含与所述至少一个发送设备中的每个发送设备 对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。在本发明实施例中,进一步的,如图8所示,所述生成单元42可以包括:确定模块421、生成模块422。确定模块421,用于针对所述至少一个发送设备中的每个发送设备,根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度;根据所述与所述发送设备对应的块确认位表域的长度确定与所述发送设备对应的块确认位表域;确定与所述发送设备对应的位表长度指示。生成模块422,用于根据所述确定模块421确定出的与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成所述BA帧。在本发明实施例中,进一步的,所述接收设备还可以包括:确定单元44。确定单元44,用于在所述生成单元42根据对所述至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧之前,针对所述至少一个发送设备中的每个发送设备,确定与所述发送设备对应的BA信息包含的每流标识TID信息域中的确认指示设置为第一值,所述第一值表示所述与所述发送设备对应的BA信息中包含所述块确认起始序列控制域和所述块确认位表域。在本发明实施例中,进一步的,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。在本发明实施例中,进一步的,所述确定模块421,具体用于根据所述与所述发送设备对应的块确认位表域的长度和预设的第一映射关系,确定所述与所述发送设备对应的位表长度指示;其中,所述第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。在本发明实施例中,进一步的,所述确定模块421,具体用于根据正 确接收的所述发送设备发送的MPDU中的最大序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数;根据正确接收的所述发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数;根据所述需反馈是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的块确认位表域的长度。在本发明实施例中,进一步的,所述确定模块421,具体用于根据所述需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与所述发送设备对应的数量指示;其中,所述数量指示用于指示所述需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示;根据正确接收的所述发送设备发送的MPDU的最大分片编号,确定与所述发送设备对应的标记指示;其中,所述标记指示用于指示反馈MPDU是否被正确接收所需的字节数;将与所述发送设备对应的数量指示和与所述发送设备对应的标记指示组合生成所述与所述发送设备对应的位表长度指示。需要说明的是,本发明实施例提供的接收设备中各功能模块的具体工作过程可以参考方法实施例中对应过程的具体描述,本发明实施例在此不再详细赘述。本发明提供的接收设备,接收至少一个发送设备发送的至少一个PPDU,并根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成认BA帧,并向至少一个发送设备中的每个发送设备发送该BA帧,且该BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。本发明另一实施例提供一种发送设备,如图9所示,该发送设备可以包括:发送单元51、接收单元52。发送单元51,用于向接收设备发送至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU。接收单元52,用于接收所述接收设备发送的块确认BA帧;其中,所述BA帧中包含有与所述发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。在本发明实施例中,进一步的,所述块确认位表域的长度是所述接收设备根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值确定的。在本发明实施例中,进一步的,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。在本发明实施例中,进一步的,如图10所示,该发送设备还可以包括:确定单元53。确定单元53,用于在所述接收单元52接收所述接收设备发送的块确认BA帧之后,根据所述接收单元52接收到的所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。在本发明实施例中,进一步的,所述确定单元53,具体用于根据所述位表长度指示和预设的第一映射关系,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度;其中,所述第一映射关系用于指示至少一个位表长度指示对应的块确认位表域的长度。在本发明实施例中,进一步的,所述确定单元53,具体用于根据所述位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数;其中,所述数量指示用于指示所述接收设备需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数;根据所述位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,所述标记指示用于指示所述接收设备反馈MPDU是否被正确 接收所需的字节数;根据所述反馈的是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。需要说明的是,本发明实施例提供的发送设备中各功能模块的具体工作过程可以参考方法实施例中对应过程的具体描述,本发明实施例在此不再详细赘述。本发明提供的发送设备,向接收设备发送至少一个包含至少一个MPDU的PPDU,并接收接收设备发送的BA帧,且该BA帧中包含与发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与该发送设备对应的BA信息包含的块确认起始序列控制域中。接收设备通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。本发明另一实施例提供一种接收设备,如图11所示,该接收设备可以包括:接收器61、处理器62、发送器63。接收器61,用于接收至少一个发送设备发送的至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU。处理器62,用于根据对至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧。其中,所述BA帧中包含与所述至少一个发送设备中的每个发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。发送器63,用于向所述至少一个发送设备中的每个发送设备发送所述BA帧。在本发明实施例中,进一步的,所述处理器62,具体用于针对所述 至少一个发送设备中的每个发送设备,根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值,确定与所述发送设备对应的块确认位表域的长度;根据所述与所述发送设备对应的块确认位表域的长度确定与所述发送设备对应的块确认位表域;确定与所述发送设备对应的位表长度指示;根据与每个发送设备对应的位表长度指示和与每个发送设备对应的块确认位表域,生成所述BA帧。在本发明实施例中,进一步的,所述处理器62,还用于在所述根据对至少一个发送设备中的每个发送设备发送的所述至少一个PPDU中的所述至少一个MPDU的接收情况生成块确认BA帧之前,针对所述至少一个发送设备中的每个发送设备,确定与所述发送设备对应的BA信息包含的每流标识TID信息域中的确认指示设置为第一值,所述第一值表示所述与所述发送设备对应的BA信息中包含所述块确认起始序列控制域和所述块确认位表域。在本发明实施例中,进一步的,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。在本发明实施例中,进一步的,所述处理器62,具体用于根据所述与所述发送设备对应的块确认位表域的长度和预设的第一映射关系,确定所述与所述发送设备对应的位表长度指示;其中,所述第一映射关系用于指示至少一个块确认位表域的长度对应的位表长度指示。在本发明实施例中,进一步的,所述处理器62,具体用于根据正确接收的所述发送设备发送的MPDU中的最大序列号和最小序列号的差值,确定需反馈是否被正确接收的MPDU的个数;根据正确接收的所述发送设备发送的MPDU的最大分片编号确定反馈MPDU是否被正确接收所需的字节数;根据所述需反馈是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的块确认位表域的长度。在本发明实施例中,进一步的,所述处理器62,具体用于根据所述需反馈是否被正确接收的MPDU的个数和预设的第二映射关系,确定与所述发送设备对应的数量指示;其中,所述数量指示用于指示所述需反馈 是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个需反馈是否被正确接收的MPDU的个数对应的数量指示;根据正确接收的所述发送设备发送的MPDU的最大分片编号,确定与所述发送设备对应的标记指示;其中,所述标记指示用于指示反馈MPDU是否被正确接收所需的字节数;将与所述发送设备对应的数量指示和与所述发送设备对应的标记指示组合生成所述与所述发送设备对应的位表长度指示。需要说明的是,本发明实施例提供的接收设备中各功能模块的具体工作过程可以参考方法实施例中对应过程的具体描述,本发明实施例在此不再详细赘述。本发明提供的接收设备,接收至少一个发送设备发送的至少一个PPDU,并根据对至少一个发送设备中的每个发送设备发送的至少一个PPDU中的至少一个MPDU的接收情况生成认BA帧,并向至少一个发送设备中的每个发送设备发送该BA帧,且该BA帧中包含与至少一个发送设备中的每个发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与发送设备对应的BA信息包含的块确认起始序列控制域中。通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。本发明另一实施例提供一种发送设备,如图12所示,该发送设备可以包括:发送器71、接收器72。发送器71,用于向接收设备发送至少一个物理层汇聚过程协议数据单元PPDU;其中,所述PPDU中包含至少一个媒体接入控制协议数据单元MPDU。接收器72,用于接收所述接收设备发送的块确认BA帧。其中,所述BA帧中包含有与所述发送设备对应的BA信息,所述BA信息包含块确认位表域和位表长度指示;所述位表长度指示用于指示所述块确认位表域的长度,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域中。在本发明实施例中,进一步的,所述块确认位表域的长度是所述接收 设备根据正确接收的所述发送设备发送的MPDU的最大序列号与最小序列号的差值确定的。在本发明实施例中,进一步的,所述位表长度指示承载于所述BA帧的与所述发送设备对应的BA信息包含的块确认起始序列控制域的分片编号子域中。在本发明实施例中,进一步的,该发送设备还可以包括:处理器73。处理器73,用于在所述接收器72接收所述接收设备发送的块确认BA帧之后,根据所述位表长度指示确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。在本发明实施例中,进一步的,所述处理器73,具体用于根据所述位表长度指示和预设的第一映射关系,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度;其中,所述第一映射关系用于指示至少一个位表长度指示对应的块确认位表域的长度。在本发明实施例中,进一步的,所述处理器73,具体用于根据所述位表长度指示的数量指示和预设的第二映射关系,确定反馈的是否被正确接收的MPDU的个数;其中,所述数量指示用于指示所述接收设备需反馈是否被正确接收的MPDU的个数,所述第二映射关系用于指示至少一个数量指示对应的反馈的是否被正确接收的MPDU的个数;根据所述位表长度指示的标记指示,确定反馈MPDU是否被正确接收所需的字节数;其中,所述标记指示用于指示所述接收设备反馈MPDU是否被正确接收所需的字节数;根据所述反馈的是否被正确接收的MPDU的个数和所述反馈MPDU是否被正确接收所需的字节数,确定所述与所述发送设备对应的BA信息包含的块确认位表域的长度。需要说明的是,本发明实施例提供的发送设备中各功能模块的具体工作过程可以参考方法实施例中对应过程的具体描述,本发明实施例在此不再详细赘述。本发明提供的发送设备,向接收设备发送至少一个包含至少一个MPDU的PPDU,并接收接收设备发送的BA帧,且该BA帧中包含与发送设备对应的BA信息,该BA信息包含块确认位表域和用于指示该块确认位表域的长度的位表长度指示,并且该位表长度指示承载于BA帧的与 该发送设备对应的BA信息包含的块确认起始序列控制域中。接收设备通过采用位表长度指示来指示块确认位表域的长度,使得生成的BA帧中包括的BA信息的块确认位表域的长度无需使用固定的64比特,从而解决了由于BABitmap域冗余导致的资源浪费问题。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步 骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-OnlyMemory,简称:ROM)、随机存取存储器(英文:RandomAccessMemory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1