CN108028836B - Data sending method, data receiving confirmation method and device - Google Patents

Data sending method, data receiving confirmation method and device Download PDF

Info

Publication number
CN108028836B
CN108028836B CN201680052200.9A CN201680052200A CN108028836B CN 108028836 B CN108028836 B CN 108028836B CN 201680052200 A CN201680052200 A CN 201680052200A CN 108028836 B CN108028836 B CN 108028836B
Authority
CN
China
Prior art keywords
mpdu
sequence number
esi
temporary
field
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
Application number
CN201680052200.9A
Other languages
Chinese (zh)
Other versions
CN108028836A (en
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN108028836A publication Critical patent/CN108028836A/en
Application granted granted Critical
Publication of CN108028836B publication Critical patent/CN108028836B/en
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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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

Abstract

The invention discloses a data sending method, a data receiving confirmation method and a data receiving confirmation device, which are used for solving the problems of high transmission overhead and difficult confirmation of a receiving end under the condition that an MPDU (inter-digital protocol data packet) containing a plurality of TIDs (TIDs) and/or a part of MPDUs contained in the A-MPDU are fragmented. The data sending method comprises the following steps: the method comprises the steps that a sending end respectively configures the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), wherein the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains fragments; and the sending end sends the A-MPDU after the temporary sequence number is configured.

Description

Data sending method, data receiving confirmation method and device
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a data sending method, a data receiving confirmation method, and a data receiving confirmation device.
Background
In a Wireless Local Area Network (WLAN) based on Wireless Fidelity (WiFi), a receiving end usually uses a Block Acknowledgement (BA) frame to Acknowledge one or more Aggregate MPDUs (a-MPDUs; MPDUs: MAC Protocol Data Unit, MAC Protocol Data Unit; MAC: Medium Access Control) from a transmitting end.
a-MPDUs are a MAC layer aggregation transport mechanism proposed in 802.11n and are commonly used in 802.11 ac. Until then, only one MPDU was included in each frame. However, in an a-MPDU, a plurality of MPDUs may be included, each MPDU may belong to a different frame type, and may also have a different Source Address (SA) or Destination Address (DA), but all MPDUs have the same receiving Address, that is, all MPDUs in one a-MPDU are sent to the same receiving device, but the possibility that a plurality of MPDUs of the same a-MPDU are sent to different receiving devices is not excluded. Meanwhile, all MPDUs in the same a-MPDU have the same stream Identifier (TID), i.e., all MPDUs belong to the same stream (Traffic). Compared with a transmission mode of sending a plurality of frames and each frame comprises one MPDU, the A-MPDU reduces inter-frame intervals, channel competition time and repeated transmission of a physical header, so that the transmission efficiency can be effectively improved.
When a receiving end receives an A-MPDU which is sent to the receiving end and requires immediate acknowledgement, namely when an acknowledgement policy (Ack policy) in the MPDU is set as an implicit block acknowledgement request (implicit BAR), a block acknowledgement (Block Ack, BA) frame is replied to the sending end, wherein the BA frame comprises a block acknowledgement bit table (BA Bitmap), and each bit of the BA Bitmap corresponds to one MPDU in the A-MPDU. Since one a-MPDU allows aggregation of 64 MPDUs at most, the BA Bitmap has a fixed length of 64 bits. The specific design of the BA frame has a number of variants (variants). As shown in fig. 1, between an a-MPDU and a BA frame, a sender may further need to send a Block Acknowledgement Request (BAR) frame, that is, the sender requires a receiver to Acknowledge some MPDUs. In this case, Ack policy in the MPDU is set to BA, and at this time, the BA frame is replied by the receiving end when receiving the BAR frame of the transmitting end, instead of replying the BA frame immediately when receiving the a-MPDU, that is, the transmitting end needs to send the BAR frame to trigger the receiving end to reply the BA frame.
In another case, as shown in fig. 2, the receiving end receives multiple a-MPDUs sent by the sending end, where different a-MPDUs may have different TIDs, and then the receiving end sends BA frames to acknowledge, where the frames include multiple 64-bit BA bitmaps, and each BA Bitmap corresponds to one TID, and such BA frames are called multi-TID BAs.
In 802.11ac, a next generation standard 802.11ax, due to introduction of an Uplink (UL) multi-user (MU) transmission mechanism including UL OFDMA and UL MU-MIMO, an Access Point (AP) receives transmission frames of multiple Stations (STA) at the same time, and the transmission frame of each STA includes an a-MPDU. According to the current standard meeting passing resolution, the AP needs to send a multi-STA BA frame (M-BA for short) to reply confirmation information to a plurality of STAs. In particular, the multi-STA BA frame adopts a structure similar to that of the multi-TID BA in the existing standard.
As shown in fig. 3, a schematic structure diagram of a multi-STA BA frame is shown, where the multi-STA BA frame includes a plurality of block acknowledgement Information (BA Information, abbreviated as BA Info), each BA Information corresponds to an STA, and an identifier AID of the STA is included in the first 11bits (B0-B10) of a first field Per TID Info (referred to as Per TID Information) of each BAInfo. In addition, an ACK/BA indication is introduced, when the ACK/BA indication is set as BA, a Block ACK Starting Sequence Control (Block ACK Starting Sequence Control) field and a BA Bitmap field exist after the Per TID Info field; when the ACK/BA indication is set to ACK, there are no Block ACK Starting Sequence Control and BABitmap fields after the Per TID Info field, i.e. the current BA Information contains only Per TID Info. Setting the ACK/BA indication to ACK occurs in two cases: the device receives the A-MPDUs which only contain one MPDU and the receiving end correctly resolves the MPDU, or the device receives the A-MPDUs which contain a plurality of MPDUs and the receiving end correctly resolves all the MPDUs in the A-MPDUs. Under the condition of correctly receiving all the MPDUs, whether each MPDU is correctly received or not does not need to be independently indicated, so that the Block ackStarting Sequence Control and the BA Bitmap field can be saved, and the aim of saving transmission overhead is fulfilled. The multi-STABA Frame further includes a Frame Check Sequence (FCS) field, a Duration/identification (Duration/ID) field, a Receiving Address (RA) field, and a Transmitting Address (TA) field.
In 802.11ax, there has recently been a proposal to allow MPDUs containing multiple TIDs in the same a-MPDU, which we call multi-TID a-MPDUs, in order to further improve the efficiency of multi-user transmission. As shown in fig. 4a, which is a schematic structural diagram of a multi-TID a-MPDU, if the amount of data to be transmitted by STA2 is much larger than that of other STAs, the other STAs have to fill many redundant bits during transmission, the Number in "()" in fig. 4a indicates the Sequence Number (SN) of the MPDU contained in the subframe, the VO subframe indicates a Video (Video) subframe, and the VI subframe indicates a Voice (Voice) subframe, wherein one subframe includes an MPDU delimiter, an MPDU, and a padding byte (PAD), the length of the padding byte is usually 0 to 3 bytes, and the purpose of the padding byte is to make the length of the subframe be an integer multiple of 4 bytes. However, if the a-MPDU is allowed to contain multi-TID data, as shown in fig. 4b, MPDUs of different TIDs can be aggregated to be transmitted in the same a-MPDU, so that only a small amount of redundant bits are needed for padding, thereby improving the efficiency. In fig. 4b, the BE subframe indicates a Best Effort subframe, and the BK subframe indicates a Background subframe. The TID of an MPDU contained in a VO subframe, namely a subframe, is VO, the TID of an MPDU contained in a VI subframe, namely a subframe, is VI, the TID of an MPDU contained in a BE subframe, namely a subframe, is BE, and the TID of an MPDU contained in a BK subframe, namely a subframe, is BK.
The problem how to confirm if the receiving end receives the A-MPDU containing a plurality of TID data is needed to be solved.
1) DL MU transmission
The STA receives an a-MPDU intended for itself, containing multi-TID data, and then replies with an acknowledgement. One obvious way to do this is to use multi-TID BAs, where each BA Info corresponds to one TID. However, this is wasteful. In the aforementioned Multi-TID BA usage scenario, each A-MPDU may contain 64 MPDUs, and thus it is worth one BA Info (12 bytes long) per A-MPDU. However, in DL MU scenarios, although a plurality of TID MPDUs are also included in the a-MPDU, the sum of these MPDUs of different TIDs does not exceed 64, that is, the number of MPDUs per TID is much less than 64, so that one BA Info per TID is wasted.
2) UL MU transmission
The AP receives a plurality of A-MPDUs transmitted by a plurality of STAs in an ULMU mode, wherein at least one A-MPDU comprises a plurality of TIDs, and then the AP replies an acknowledgement frame in an M-BA mode or an OFDMA BA mode. So-called OFDMA BA, where the AP replies acknowledgement messages to each STA individually in a DL OFDMA manner, for a-MPDUs containing multi-TID MPDUs, an obvious way to reply is to acknowledge with multi-TID BA frames, which will face the same waste problem as in DL MUs. An available confirmation mode through simple combination according to the prior art is to expand a Multi-TID BA frame format, where each BA Info corresponds to an < AID, TID >, AID (Association Identifier), i.e., Association Identifier of the STA, to identify the STA, and the TID is a stream Identifier, as shown in fig. 5, which is an M-BA frame structure diagram. This approach is wasteful as multi-TID validation of DL MUs, because the sum of MPDUs of all TIDs corresponding to the same AID does not exceed 64, e.g., AID1 corresponds to TID2 and TID3, AID2 corresponds to TID1, TID3 and TID4, AID3 corresponds to TID2 in fig. 5, and it is wasteful to correspond to one BA Info per TID.
It can be seen that, no matter UL MU or DL MU, when the receiving end replies acknowledgement to one multi-TID a-MPDU, there is a great waste in using one BA Info per TID.
In addition, if some MPDUs in an a-MPDU contain fragments and some MPDUs do not contain fragments, it is also difficult for the receiving end to confirm these MPDUs and fragments simultaneously with a BA Bitmap, because in this case, it is required that some bits in the BA Bitmap correspond to MPDUs and some bits correspond to fragments, which is difficult to achieve in the current standard. An obvious solution is to use different BA Info in the BA frame to acknowledge the receiving end, and further, if the a-MPDU includes both MPDUs with different TIDs and some MPDUs also include fragments, the acknowledgement in this case will face two difficulties, namely, the problem of wasted acknowledgement overhead caused by MPDUs with multiple TIDs and the problem of difficult acknowledgement caused by mixed transmission of MPDUs and fragments, so it needs to be further solved.
Disclosure of Invention
The embodiment of the invention provides a data sending method, a data receiving confirmation method and a data receiving confirmation device, which are used for solving the problems of high transmission overhead and difficult confirmation of a receiving end under the condition that an MPDU (multi-terminal identification protocol) containing a plurality of TIDs (time division multiplexing) and/or a part of MPDUs contained in the A-MPDU are fragmented.
The embodiment of the invention provides the following specific technical scheme:
in a first aspect, a data sending method is provided, including:
the method comprises the steps that a sending end respectively configures the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), wherein the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains fragments;
and the sending end sends the A-MPDU after the temporary sequence number is configured.
With reference to the first aspect, in a first possible implementation manner, the configuring, by the sender, a temporary sequence number of each mac protocol data unit MPDU included in an aggregate mac protocol data unit a-MPDU includes:
the sending end carries a corresponding temporary sequence number in each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the sending end carries a corresponding temporary sequence number in each MPDU except the first MPDU of the A-MPDU, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, the temporary sequence number is located in a MAC header of the MPDU, or in a delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the first aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner, the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to the first aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the first aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the first aspect to the sixth possible implementation manner, in a ninth possible implementation manner, after the sending end sends the a-MPDU after configuring the temporary sequence number, the method further includes:
the method comprises the steps that a transmitting end receives a block acknowledgement BA frame, the BA frame comprises a block acknowledgement information field corresponding to the transmitting end, the block acknowledgement information field comprises a block acknowledgement bit table subdomain, the block acknowledgement information field comprises a first sequence number type indication, and the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit table subdomain corresponds to a temporary sequence number of one MPDU in the A-MPDUs;
and the sending end judges whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table sub-field.
With reference to the ninth possible implementation manner of the first aspect, in a tenth possible implementation manner, the determining, by the sender, whether an MPDU corresponding to a temporary sequence number corresponding to each bit is correctly received according to a value of each bit in the block acknowledgement bit table sub-field includes:
and the sending end judges whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the stored corresponding relation between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subdomain.
With reference to the ninth possible implementation manner of the first aspect, in an eleventh possible implementation manner, the block acknowledgement information field further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
With reference to the eleventh possible implementation manner of the first aspect, in a twelfth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain, or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the twelfth possible implementation manner of the first aspect, in a thirteenth possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to any one of the ninth to the thirteenth possible implementation manners of the first aspect, in a fourteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the fourteenth possible implementation manner of the first aspect, in a fifteenth possible implementation manner, the second ESI is located in a per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the fourteenth possible implementation manner of the first aspect, in a sixteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to any one of the ninth to the thirteenth possible implementation manners of the first aspect, in a seventeenth possible implementation manner, after the transmitting end transmits the a-MPDU and before the receiving of the BA frame, the method further includes:
the transmitting end transmits a Block Acknowledgement Request (BAR) frame.
With reference to the seventeenth possible implementation manner of the first aspect, in an eighteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the value of the third ESI is the same as that of the first ESI.
With reference to the eighteenth possible implementation manner of the first aspect, in a nineteenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the eighteenth possible implementation manner of the first aspect, in a twentieth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the eighteenth to twenty possible implementation manners of the first aspect, in a twenty-first possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to the twenty-first possible implementation manner of the first aspect, in a twenty-second possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
In a second aspect, a data reception confirmation method is provided, including:
a receiving end receives an aggregated media access control protocol data unit (A-MPDU) sent by a sending end, wherein each MPDU in the A-MPDU is respectively configured with a corresponding temporary sequence number, and the temporary sequence numbers of any two MPDUs in the A-MPDU are different, wherein the stream identifications (TIDs) of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU comprises a fragment;
the receiving end sends a block acknowledgement BA frame, the BA frame comprises a block acknowledgement information field corresponding to the sending end, the block acknowledgement information field comprises a block acknowledgement bit list subdomain, and the block acknowledgement information field comprises a first sequence number type indication, wherein the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit list subdomain corresponds to a temporary sequence number of one MPDU in the A-MPDUs.
With reference to the second aspect, in a first possible implementation manner, each mac protocol data unit MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner, the temporary sequence number is located in a MAC header of the MPDU, or in a delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the second aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the second aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the second aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; or
The temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the second aspect, in a sixth possible implementation manner, the existence of the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to any one of the second aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the second aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the second aspect to the sixth possible implementation manner, in a ninth possible implementation manner, the block acknowledgement information field further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
With reference to the ninth possible implementation manner of the second aspect, in a tenth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain, or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the tenth possible implementation manner of the second aspect, in an eleventh possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to the ninth or tenth possible implementation manner of the second aspect, in a twelfth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the twelfth possible implementation manner of the second aspect, in a thirteenth possible implementation manner, the second ESI is located in the per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the twelfth possible implementation manner of the second aspect, in a fourteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to the second aspect, in a fifteenth possible implementation manner, after the receiving end receives the a-MPDU and before the receiving end transmits the BA frame, the method further includes:
and the receiving end receives the block acknowledgement request BAR frame sent by the sending end.
With reference to the fifteenth possible implementation manner of the second aspect, in a sixteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
the BA frame carries a second interactive sequence identification ESI, and the second ESI is used for identifying a current interactive sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI.
With reference to the sixteenth possible implementation manner of the second aspect, in a seventeenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the sixteenth possible implementation manner of the second aspect, in an eighteenth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the sixteenth to eighteenth possible implementation manners of the second aspect, in a nineteenth possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to any one of the nineteenth possible implementation manners of the second aspect, in a twentieth possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
In a third aspect, a data transmitting apparatus is provided, including:
the device comprises a configuration module, a data processing module and a control module, wherein the configuration module is used for respectively configuring the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), and the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains fragments;
and the sending module is used for sending the A-MPDU after the temporary sequence number is configured by the configuration module.
With reference to the third aspect, in a first possible implementation manner, the configuration module is specifically configured to:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
and carrying a corresponding temporary sequence number in each MPDU except the first MPDU of the A-MPDUs, wherein the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the third aspect, in a second possible implementation manner, the temporary sequence number is located in a media access control MAC header of the MPDU, or in a MPDU delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the third aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the third aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the third aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; or
The temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the third aspect, in a sixth possible implementation manner, the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to the third aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the third aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the third aspect to the sixth possible implementation manner, in a ninth possible implementation manner, the apparatus further includes a receiving module, configured to:
receiving a Block Acknowledgement (BA) frame, wherein the BA frame comprises a block acknowledgement information field corresponding to the transmitting end, the block acknowledgement information field comprises a block acknowledgement bit list subdomain, and the block acknowledgement information field comprises a first sequence number type indication, and the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit list subdomain respectively corresponds to a temporary sequence number of one MPDU in the A-MPDUs;
further comprising a processing module for:
and judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table subdomain in the BA frame received by the receiving module.
With reference to the ninth possible implementation manner of the third aspect, in a tenth possible implementation manner, the processing module is specifically configured to:
and judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the corresponding relation between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subdomain.
With reference to the ninth possible implementation manner of the third aspect, in an eleventh possible implementation manner, the block acknowledgement information field further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
With reference to the eleventh possible implementation manner of the third aspect, in a twelfth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain, or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the twelfth possible implementation manner of the third aspect, in a thirteenth possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to any one of the ninth to the thirteenth possible implementation manners of the third aspect, in a fourteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the fourteenth possible implementation manner of the third aspect, in a fifteenth possible implementation manner, the second ESI is located in a per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the fourteenth possible implementation manner of the third aspect, in a sixteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to any one of the ninth to the thirteenth possible implementation manners of the third aspect, in a seventeenth possible implementation manner, the sending module is further configured to:
after transmitting the A-MPDU, the receiving module transmits a Block Acknowledgement Request (BAR) frame before receiving the BA frame.
With reference to the seventeenth possible implementation manner of the third aspect, in an eighteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the value of the third ESI is the same as that of the first ESI.
With reference to the eighteenth possible implementation manner of the third aspect, in a nineteenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the eighteenth possible implementation manner of the third aspect, in a twentieth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the eighteenth to twenty possible implementation manners of the third aspect, in a twenty-first possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to the twenty-first possible implementation manner of the third aspect, in a twenty-second possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
A fourth aspect provides a data reception confirmation apparatus comprising:
the receiving module is used for receiving an aggregated media access control protocol data unit (A-MPDU) sent by a sending end, wherein each of the MPDUs contained in the A-MPDU is respectively configured with a corresponding temporary sequence number, and the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identifications (TIDs) of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment;
a sending module, configured to send a block acknowledgement BA frame, where the BA frame includes a block acknowledgement information field corresponding to the sending end, the block acknowledgement information field includes a block acknowledgement bit table subfield, and the block acknowledgement information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield corresponds to a temporary sequence number of one MPDU of the a-MPDUs.
With reference to the fourth aspect, in a first possible implementation manner, each mac protocol data unit MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the fourth aspect, in a second possible implementation manner, the temporary sequence number is located in a MAC header of the MPDU, or in a delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the fourth aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the fourth aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the fourth aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the fourth aspect, in a sixth possible implementation manner, the existence of the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to any one of the fourth aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the fourth aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the fourth aspect to the sixth possible implementation manner, in a ninth possible implementation manner, the block acknowledgement information field further includes a starting sequence control sub-field, where the starting sequence control sub-field includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table sub-field.
With reference to the ninth possible implementation manner of the fourth aspect, in a tenth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain, or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the tenth possible implementation manner of the fourth aspect, in an eleventh possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to the ninth or eleventh possible implementation manner of the fourth aspect, in a twelfth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the twelfth possible implementation manner of the fourth aspect, in a thirteenth possible implementation manner, the second ESI is located in the per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the twelfth possible implementation manner of the fourth aspect, in a fourteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to the fourth aspect, in a fifteenth possible implementation manner, the receiving module is further configured to:
after receiving the a-MPDU, before the transmitting module transmits the BA frame, a block acknowledgement request BAR frame transmitted by the transmitting end is received.
With reference to the fifteenth possible implementation manner of the fourth aspect, in a sixteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
the BA frame carries a second interactive sequence identification ESI, and the second ESI is used for identifying a current interactive sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI.
With reference to the sixteenth possible implementation manner of the fourth aspect, in a seventeenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the sixteenth possible implementation manner of the fourth aspect, in an eighteenth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the sixteenth to eighteenth possible implementation manners of the fourth aspect, in a nineteenth possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to any one of the nineteenth possible implementation manners of the fourth aspect, in a twentieth possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
In a fifth aspect, there is provided an apparatus comprising a processor, a memory and a transceiver, wherein the transceiver receives and transmits data under the control of the processor, the memory stores a preset program, the processor reads the program stored in the memory, and executes the following procedures according to the program:
respectively configuring the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), wherein the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment;
and sending the A-MPDU after the temporary sequence number is configured by the configuration module through a transceiver.
With reference to the fifth aspect, in a first possible implementation manner, the processor is specifically configured to:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
and carrying a corresponding temporary sequence number in each MPDU except the first MPDU of the A-MPDUs, wherein the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the fifth aspect, in a second possible implementation manner, the temporary sequence number is located in a MAC header of the MPDU, or in a delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the fifth aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the fifth aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the fifth aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the fifth aspect, in a sixth possible implementation manner, the existence of the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to the fifth aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the fifth aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the fifth aspect to the sixth possible implementation manner, in a ninth possible implementation manner, the processor is configured to:
receiving, by a transceiver, a Block Acknowledgement (BA) frame, where the BA frame includes a block acknowledgement information field corresponding to the transmitting end, the block acknowledgement information field includes a block acknowledgement bit table subfield, and the block acknowledgement information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield corresponds to a temporary sequence number of one of the A-MPDUs;
and judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table subdomain in the received BA frame.
With reference to the ninth possible implementation manner of the fifth aspect, in a tenth possible implementation manner, the processor is specifically configured to:
and judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the corresponding relation between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subdomain.
With reference to the ninth possible implementation manner of the fifth aspect, in an eleventh possible implementation manner, the block acknowledgement information field further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
With reference to the eleventh possible implementation manner of the fifth aspect, in a twelfth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the twelfth possible implementation manner of the fifth aspect, in a thirteenth possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to any one of the ninth to thirteenth possible implementation manners of the fifth aspect, in a fourteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the fourteenth possible implementation manner of the fifth aspect, in a fifteenth possible implementation manner, the second ESI is located in the per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the fourteenth possible implementation manner of the fifth aspect, in a sixteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to any one of the ninth to the thirteenth possible implementation manners of the fifth aspect, in a seventeenth possible implementation manner, the processor is further configured to:
instructing the transceiver to transmit a block acknowledgement request, BAR, frame after transmitting the A-MPDU and before receiving the BA frame.
With reference to the seventeenth possible implementation manner of the fifth aspect, in an eighteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the value of the third ESI is the same as that of the first ESI.
With reference to the eighteenth possible implementation manner of the fifth aspect, in a nineteenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the eighteenth possible implementation manner of the fifth aspect, in a twentieth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the eighteenth to twenty-first possible implementation manner of the fifth aspect, in a twentieth possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to the twenty-first possible implementation manner of the fifth aspect, in a twenty-second possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
A sixth aspect provides an apparatus comprising a processor, a memory, and a transceiver, wherein the transceiver receives and transmits data under the control of the processor, the memory stores a preset program, the processor reads the program stored in the memory, and executes the following procedures according to the program:
receiving, by a transceiver, an aggregated media access control protocol data unit (A-MPDU) sent by a sending end, wherein each of the media access control protocol data units (MPDUs) included in the A-MPDU is respectively configured with a corresponding temporary sequence number, and the temporary sequence numbers of any two MPDUs included in the A-MPDU are different, wherein at least two of the stream identifications (TIDs) of the A-MPDUs are different, and/or at least one of the MPDUs includes a fragment;
and sending a Block Acknowledgement (BA) frame through a transceiver, wherein the BA frame comprises a block acknowledgement information field corresponding to the sending end, the block acknowledgement information field comprises a block acknowledgement bit table subdomain, and the block acknowledgement information field comprises a first sequence number type indication, and the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit table subdomain corresponds to the temporary sequence number of one MPDU in the A-MPDUs.
With reference to the sixth aspect, in a first possible implementation manner, each mac protocol data unit MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
With reference to the first possible implementation manner of the sixth aspect, in a second possible implementation manner, the temporary sequence number is located in a MAC header of the MPDU, or in a delimiter of the MPDU, or in a CCMP header of the MPDU.
With reference to the second possible implementation manner of the sixth aspect, in a third possible implementation manner, the temporary sequence number is located in a high efficiency HE control field in a MAC header of the MPDU, or is located in a quality of service QoS control field in the MAC header of the MPDU, or is located in a frame control field in the MAC header of the MPDU, or is located in a sequence control field in the MAC header of the MPDU.
With reference to any one of the sixth aspect to the third possible implementation manner, in a fourth possible implementation manner, the a-MPDU further carries a temporary sequence number existence indication, where the temporary sequence number existence indication is used to indicate whether the temporary sequence number exists.
With reference to the fourth possible implementation manner of the sixth aspect, in a fifth possible implementation manner, the temporary sequence number presence indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
With reference to the fifth possible implementation manner of the sixth aspect, in a sixth possible implementation manner, the existence of the temporary sequence number indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in the MAC header of the MPDU, or a frame control field located in the MAC header of the MPDU.
With reference to any one of the sixth aspect to the sixth possible implementation manner, in a seventh possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence.
With reference to the seventh possible implementation manner of the sixth aspect, in an eighth possible implementation manner, the first ESI is located in a frame control field of each MPDU in the a-MPDU, or is located in a quality of service QoS control field of each MPDU in the a-MPDU, or is located in a high efficiency HE control field of each MPDU in the a-MPDU, or is located in an MPDU delimiter corresponding to each MPDU in the a-MPDU, or is located in a physical layer PHY header of the a-MPDU.
With reference to any one of the sixth aspect to the sixth possible implementation manner, in a ninth possible implementation manner, the block acknowledgement information field further includes a starting sequence control sub-field, where the starting sequence control sub-field includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table sub-field.
With reference to the ninth possible implementation manner of the sixth aspect, in a tenth possible implementation manner, the first sequence number type indication is located in a fragment number sub-domain in the starting sequence control sub-domain, or is located in a per-flow identification information sub-domain in the block acknowledgement information domain.
With reference to the tenth possible implementation manner of the sixth aspect, in an eleventh possible implementation manner, the per-flow identification information sub-field includes a flow identification, the first sequence number type is indicated as the flow identification, and when the flow identification is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
With reference to the ninth or tenth possible implementation manner of the sixth aspect, in a twelfth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
With reference to the twelfth possible implementation manner of the sixth aspect, in a thirteenth possible implementation manner, the second ESI is located in the per-stream identification information sub-field in the block acknowledgement information field, or is located in a start sequence control sub-field in the block acknowledgement information field.
With reference to the twelfth possible implementation manner of the sixth aspect, in a fourteenth possible implementation manner, the second ESI is located in a block acknowledgement control field of the BA frame.
With reference to the sixth aspect, in a fifteenth possible implementation manner, the processor is further configured to:
and after the transceiver is instructed to receive the A-MPDU and before the BA frame is sent, receiving a Block Acknowledgement Request (BAR) frame sent by the sending end.
With reference to the fifteenth possible implementation manner of the sixth aspect, in a sixteenth possible implementation manner, each MPDU included in the a-MPDU carries a first interaction sequence identifier ESI, where the first ESI is used to identify a current interaction sequence;
the BA frame carries a second interactive sequence identification ESI, and the second ESI is used for identifying a current interactive sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI.
With reference to the sixteenth possible implementation manner of the sixth aspect, in a seventeenth possible implementation manner, the BAR frame includes a block acknowledgement request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information sub-field or a block acknowledgement request start sequence number control sub-field in the block acknowledgement request information field.
With reference to the sixteenth possible implementation manner of the sixth aspect, in an eighteenth possible implementation manner, the BAR frame includes a BAR control domain, and the third ESI is located in the BAR control domain.
With reference to any one of the sixteenth to eighteenth possible implementation manners of the sixth aspect, in a nineteenth possible implementation manner, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
With reference to any one of the nineteenth possible implementation manners of the sixth aspect, in a twentieth possible implementation manner, the second sequence number type indication is located in a BAR control field of the BAR frame, or is located in a block acknowledgement request information field corresponding to a receiving end and included in the BAR frame.
Based on the technical scheme, in the embodiment of the invention, under the condition that at least two MPDUs in the A-MPDUs have different TIDs and/or at least one MPDU contains fragments, the sending end respectively configures the temporary sequence number of each MPDU contained in the A-MPDU, and the temporary sequence numbers of all the MPDUs in the A-MPDU are unified numbers so as to ensure that the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, so that when the receiving end replies a BA frame, the receiving end can use a block acknowledgement information field to acknowledge all the MPDUs in the A-MPDU according to the temporary sequence number of each MPDU in the A-MPDU, thereby reducing the transmission overhead of the BA frame and solving the problem of difficult acknowledgement.
Drawings
FIG. 1 is a schematic diagram of an interaction sequence;
FIG. 2 is a schematic illustration of the transmission of a plurality of A-MPDUs having different TIDs;
FIG. 3 is a schematic diagram of a multi-STA BA frame structure;
FIG. 4a is a schematic transmission diagram of an A-MPDU containing one TID;
FIG. 4b is a schematic transmission diagram of an MPDU containing multiple TIDs in an A-MPDU;
fig. 5 is a schematic structural diagram of a multi-TID BA frame using a combination of an AID and a TID as an identifier;
fig. 6 is a schematic flow chart of a method for transmitting data by a transmitting end in the embodiment of the present invention;
fig. 7 is a schematic structural diagram of an a-MPDU in which a new domain-bearing temporary sequence number is added to a MAC header of the MPDU in the embodiment of the present invention;
fig. 8 is a schematic structural diagram of an HE control domain of an MPDU in the embodiment of the present invention;
fig. 9 is a schematic structural diagram of a frame control field of an MPDU in the embodiment of the present invention;
fig. 10a is a schematic diagram illustrating mapping between a sequence number and a temporary sequence number when a sequence control field of an MPDU is used to carry the temporary sequence number in the embodiment of the present invention;
FIG. 10b is a diagram illustrating the change of counters of TIDs before and after transmission of an A-MPDU when a sequence control field of the MPDU carries a temporary sequence number according to an embodiment of the present invention;
fig. 11 is a schematic structural diagram of an mpdulimiter in the embodiment of the present invention;
fig. 12 is a schematic diagram of a CCMP MPDU structure;
fig. 13 is a schematic flow chart illustrating a method for receiving data by a receiving end to confirm in accordance with an embodiment of the present invention;
fig. 14 is a schematic structural diagram of a BA frame in the embodiment of the present invention;
fig. 15 is a schematic structural diagram of another BA frame in the embodiment of the present invention;
FIG. 16 is a diagram illustrating the structure of a BAR frame according to an embodiment of the present invention;
fig. 17 is a schematic structural diagram of a data transmission device according to an embodiment of the present invention;
FIG. 18 is a block diagram of a data reception confirmation apparatus according to an embodiment of the present invention;
FIG. 19 is a schematic diagram of an apparatus according to an embodiment of the present invention;
fig. 20 is a schematic structural diagram of another apparatus according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the present invention will be described in further detail with reference to the accompanying drawings, and it is apparent that the described embodiments are only a part of the embodiments of the present invention, not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The standard specifies that the Sequence Number (SN) of a Quality of Service (QoS) data frame maintained by a sender is per < RA, TID >, and RA (receiving address) indicates a receiving address. In other words, the sequence numbers of MPDUs of different TIDs in one multi-TID a-MPDU are independent of each other. For example, in a multi-TID A-MPDU, the sequence number corresponding to the MPDU with TID being 1 is 10-15, the sequence number corresponding to the MPDU with TID being 2 is 1001-1007, and the sequence number corresponding to the MPDU with TID being 3 is 1005-1015.
However, in the current BA frame, only one field in each BA Info is used to carry the starting sequence number (i.e. the MPDU sequence number corresponding to the first bit in the BABitmap), so it is not possible to indicate multiple starting sequence numbers when different TIDs are carried in the BA bitmaps.
Based on the above analysis, the basic idea of the invention is as follows: under the condition that at least two of the A-MPDUs have different TIDs and/or at least one of the A-MPDUs contains fragments, the sending end respectively configures the temporary sequence number of each MPDU contained in the A-MPDU, and the temporary sequence numbers of all the MPDUs in the A-MPDU are unified numbers so as to ensure that the temporary sequence numbers of any two of the A-MPDUs are different, so that when the receiving end replies a BA frame, the receiving end can use a block acknowledgement information field to acknowledge all the MPDUs in the A-MPDU according to the temporary sequence number of each MPDU in the A-MPDU.
It should be noted that "the temporary sequence numbers of all MPDUs are uniform numbers", a plurality of MPDUs may be sequentially numbered or may be unordered numbers, and it is sufficient to ensure that the temporary sequence numbers of any two MPDUs are different. The sequential numbering is as follows: 0. 1, 2, 3, or 63, 62, 61, 60, or 0, 2, 4, 6, etc.; the unordered numbers are as follows: 15. 2, 30, 59, 11. However, from the viewpoint of general practice and that the length of the temporary serial number is as short as possible, the sequential incremental numbering of 0, 1, 2, and 3 is obviously more consistent with the general thinking, and thus the sequential incremental numbering is a preferable scheme for the temporary serial number.
Based on this concept, in the embodiment of the present invention, as shown in fig. 6, a detailed method flow for a sending end to send data is as follows:
601: the sending end respectively configures a temporary sequence Number (T-SN) of each MPDU contained in an A-MPDU, wherein the A-MPDU comprises a plurality of MPDUs, the temporary sequence numbers of any two MPDUs in the A-MPDU are different, wherein the stream identifications TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment.
In implementation, the a-MPDU further carries a temporary sequence number presence indication, where the temporary sequence number presence indication is used to indicate whether a temporary sequence number exists. Specifically, the temporary sequence number presence indication is located in a physical layer (PHY) header of the a-MPDU, which is commonly referred to as a physical header; or, the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU Delimiter (Delimiter) corresponding to each MPDU contained in the A-MPDU; alternatively, the temporary sequence number presence indication is located in the MAC header of each MPDU contained in the a-MPDU. The PHY header is also called a PLCP (Physical Layer convergence procedure) header, and the indication of existence of the temporal sequence number may be indicated by a bit in a SIG (Signal) field in the PLCP header, may also be indicated by polarities of some symbols in the PLCP header, or may be indicated by a remainder of dividing a Legacy Length (L-Length) in an L-SIG (Legacy Signal) field in the PLCP header by 3.
For example, the temporary sequence number presence indicates a High Efficiency (HE) control field located in a MAC header of the MPDU, or a QoS control field located in a MAC header of the MPDU, or a frame control field located in a MAC header of the MPDU. Among them, the HE control domain may also be referred to as HE Variant (variable) of a High Throughput (HT) control domain or as an HEW (High Efficiency Wireless Local Area Network) control domain in related standards or documents.
In implementation, there are various ways for carrying the temporary serial number, including but not limited to the following specific embodiments:
in a first embodiment, the temporary sequence number is located in a Media Access Control (MAC) header of the MPDU. This embodiment may include, but is not limited to, the following:
first, a transmitting end carries a corresponding temporary sequence number in each MPDU included in an a-MPDU, as shown in fig. 7, a new domain is added to an MAC header of the MPDU, and the new domain is used to carry the temporary sequence number. Specifically, a field is newly added to the MAC header of the MPDU in each sub-frame of the a-MPDU, and in order to ensure that the total length of the MAC header is an integer number of bytes, the length of the newly added field is 1 byte, but the number of bits actually used to carry the temporary sequence number may be less than 1 byte, for example, 6 bits.
The temporary sequence number presence indication may be carried using an existing domain, including but not limited to the following:
case a, the temporary sequence number present indication is located in the physical header, in particular, the temporary sequence number present indication may be located in a signaling field in the physical header. When the temporary sequence number existence indication takes a first preset value, for example 1, the temporary sequence number exists in the MAC header of each MPDU in the A-MPDU, otherwise, the temporary sequence number does not exist in the A-MPDU. The temporary sequence number presence indication may also be indicated by a polarity of a particular symbol of a domain in the physical header, e.g., when the polarity of the domain-specific symbol is a first preset polarity, it indicates that a temporary sequence number is present in a MAC header of each MPDU in the a-MPDU, otherwise, it indicates that a temporary sequence number is not present in the a-MPDU. The temporary sequence number presence indication may also be indicated by a remainder of dividing the L-Length value in the L-SIG field in the physical header by 3, e.g., a remainder of 1 indicates that a temporary sequence number is present in the MAC header of each MPDU in the a-MPDU, and a remainder of 2 indicates that a temporary sequence number is not present in the a-MPDU.
In case b, the indication of existence of the temporary sequence number is located in an MPDU Delimiter (Delimiter) corresponding to each MPDU, and there is a reserved bit in the current MPDU Delimiter, where the reserved bit may be used to carry the indication of existence of the temporary sequence number, which indicates whether the temporary sequence number exists in the MPDU corresponding to the MPDU Delimiter.
In case c, the indication of existence of the temporary sequence number is located in a MAC header of each MPDU of the a-MPDU, which may specifically be a QoS Control field or an HE Control field or a Frame Control (FC) field in the MAC header, for example, a From Distribution System (From DS; DS, Distribution System) field or a to Distribution System (ToDS) field in the Frame Control field.
Second, the temporary sequence number is carried in an existing field in the MAC header of the MPDU.
Specifically, several cases can be divided:
in case a, a transmit end carries a corresponding temporary sequence number in each MPDU included in an a-MPDU, and the temporary sequence number is located in an HE control field in an MAC header of the MPDU.
For example, as shown in fig. 8, there are 8 reserved bits in the HT control field of the 802.11n standard, and if the HE control field also adopts a similar structure, 6bits of the HE control field may carry the temporary sequence number, and one bit of the HE control field may carry the temporary sequence number presence indication. In fig. 8, CSI is Channel State Information (Channel State Information), NDP indicates a Null Data Packet (Null Data Packet), AC indicates an Access Category (Access Category), RDG indicates a reverse direction Grant (reverse direction Grant), PPDU indicates a Physical layer convergence Procedure protocol Data Unit (Physical layer convergence protocol Data Unit), TRQ indicates a training Request, MAI indicates a Modulation and Coding Scheme Request or an antenna selection indicator (MRQ or antenna Indication; MRQ, i.e., a Request for MCS, ASEL, i.e., an antenna selection, MCS, Modulation and Coding Scheme, MFSI indicates a Modulation and Coding Scheme Feedback Sequence Identifier (MCS Feedback Identifier), MFB indicates a Modulation and Coding Scheme Feedback (MCS Feedback), and an asc Identifier Command (antenna Command).
In case b, the temporary sequence number is located in the QoS control field in the MAC header of the MPDU.
The transmit end carries a corresponding temporary sequence number in each MPDU contained in the a-MPDU. According to the current standard, if an a-MPDU includes two or more subframes, an Aggregate MAC Service Data Unit (a-MSDU) cannot be used in the MPDU, that is, B7 bits in the QoS control field are reserved bits, and a multi-TID a-MPDU includes at least two subframes, so that B7 bits in the QoS control field must be reserved bits, and thus the bits may be used to carry the indication that the temporary sequence number exists, and 6bits in B8 to B15 following B7 may be used to carry the temporary sequence number. It is noted that B8-B15 in the QoS control domain is defined per se for carrying the amount of data or the expected transmission time of the stream corresponding to the TID (i.e. the content carried by B0-B3 bits) to be transmitted on the device, but many techniques have been proposed in the 802.11 standard to implement this function, such as random access techniques and so on, so B8-B15 in the QoS control domain can be redefined for carrying the temporary sequence number.
If it is desired to retain the original definition of B8-B15 in the QoS control domain, the following scheme may be employed: the sending end carries a corresponding temporary sequence number in each MPDU except for the first MPDU of the A-MPDUs, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value, for example, the predetermined value is zero. Setting the B7 bit in the QoS control domain of the first MPDU of the A-MPDUs to zero, indicating that the B8-B15 bits retain the original function, but modifying the action that the B8-B15 carry all the data amount to be transmitted or the expected transmission time, namely the sum of the data amount to be transmitted of all TIDs or the expected transmission time for transmitting the data, setting the B7 bit of other MPDUs except the first MPDU to 1, and setting the B8-B15 bits to carry temporary sequence numbers. The principle of this scheme is that the first MPDU is unambiguous and unambiguous in position, so its temporary sequence number may be set to a default value, e.g., zero, but is not necessarily explicitly carried in the MPDU.
In case c, the transmit end carries a corresponding temporary sequence number in each MPDU contained in the a-MPDU, and the temporary sequence number is located in a frame control field in the MAC header of the MPDU.
In MU transmission, as shown in fig. 9, the From DS and the To DS in the frame control field are reserved bits, and one bit of the reserved bits may be used To carry a temporary sequence number presence indication, when the temporary sequence number presence indication is a set value, for example, 1, it indicates that the temporary sequence number is carried in the Type (Type) sub-field and the sub-Type (Subtype) sub-field in the frame control field, otherwise, the Type (Type) sub-field and the sub-Type (Subtype) sub-field in the frame control field maintain the original function. The principle of this scheme is that the multi-TID a-MPDU aggregate frame Type is only possible for QoS Data frames, i.e. Type 10 and Subtype 1000, so in case the temporary sequence number presence indication has been used to indicate that the a-MPDU is a multi-TID a-MPDU, it is fully possible to carry other information, such as the temporary sequence number, with the Type and Subtype sub-fields.
In case d, the transmit end carries a corresponding temporary Sequence number in each MPDU included in the a-MPDU, and the temporary Sequence number is located in a Sequence Control (Sequence Control) field in the MAC header of the MPDU. The scheme is used for the case of an MPDU containing at least two TIDs in an a-MPDU.
Specifically, a sequence number subfield in the sequence control field is used to carry the temporary sequence number. As shown in fig. 7 and 9, the MAC header of the MPDU of the management frame and the data frame includes a sequence control field with a length of 2bytes, wherein the 12-bit sequence number sub-field is used to carry the sequence number of the current MPDU. In this embodiment, when the temporary sequence number presence indication indicates that the current MPDU uses the temporary sequence number, what is carried in the sequence number sub-field will no longer be the sequence number, but the temporary sequence number.
At this time, the temporary sequence number may be the aforementioned "unified number", i.e., the MPDU temporary sequence number is not related to the sequence number, but may be generated based on the sequence number of the MPDU aggregated in the current a-MPDU. One specific implementation is to use the maximum value in the counters of TIDs to be aggregated as the starting value of the temporary sequence number in the a-MPDU. The sending end maintains a Counter for each TID of each STA, and the Counter is used for recording the starting sequence number of the current MPDU to be sent. As shown in fig. 10a, when the MPDUs to be transmitted from the sender to the receiver are TID1(SN is 50-52), TID2(SN is 1000-1001), and TID3(SN is 2055-2057), the Counter values of the three TIDs are 50, 1000, and 2055, respectively. Obviously, the Counter 2055 with the maximum value TID3, and therefore the temporary sequence numbers in the a-MPDU start from 2055 until 2062. The order of the MPDUs of different TIDs in the a-MPDU may be arbitrarily arranged, and there is no need to follow the order of TID3, TID1, TID2 shown in fig. 10a, and even a plurality of MPDUs of the same TID may be non-consecutive. Note that, in order to avoid confusion caused by the receiving end receiving the MPDU with the same sequence number as the MPDU of a TID in the a-MPDU shortly after the current a-MPDU, after the transmission of the a-MPDU is completed, the Counter values of all TIDs should be adjusted to the maximum temporary sequence number value in the a-MPDU plus 1, and as shown in fig. 10b, the Counter values of all three TIDs are all adjusted to 2063. In addition, in order to avoid confusion at the transmitting end between the temporary sequence numbers of MPDUs in the a-MPDUs and the sequence numbers of MPDUs which have been transmitted before the current a-MPDU but have not received the receiver acknowledgement frame, it should be specified that the transmitting end satisfies the following condition for MPDUs of the same TID before the MPDUs aggregated in the a-MPDUs: 1) has received the confirmation from the receiving end, or 2) the sending end has abandoned sending due to the frame validity period, etc. Another specific implementation method is to sort the MPDUs to be transmitted, and use the sequence number of the first MPDU as the starting value of the temporary sequence number in the a-MPDU, and sequentially increment the temporary sequence numbers of other MPDUs based on the starting value.
In a second specific embodiment, the transmit end carries a corresponding temporary sequence number in each MPDU included in the a-MPDU, and the temporary sequence number is located in an MPDU Delimiter (limiter) of the MPDU.
Specifically, one byte is added to the MPDU limiter of each MPDU in the a-MPDU to carry the temporal sequence number, the number of bits actually occupied by the temporal sequence number is less than or equal to one byte, for example, the temporal sequence number occupies 6bits, as shown in fig. 11, the added byte is located after a Delimiter Signature (limiter Signature) sub-field, and this placement has an advantage of not affecting the original scheme of checking the Delimiter Signature every 4 bytes. It should be noted that the check of the newly added byte (i.e., the byte carrying the temporary sequence number) is still located in a Cyclic Redundancy Code (CRC) sub-field in the MPDU Delimiter, i.e., the temporary sequence number is checked together with other parts in the MPDU Delimiter, and the check result is still located in the CRC sub-field located before the Delimiter signature.
In this embodiment, the specific position of the indication of existence of the temporary sequence number may be a temporary sequence number, which is a specific position in the PHY header and identifies whether new bytes exist in all mpduimiter fields of the current a-MPDU; or, the temporary sequence number existence indication is located in a reserved bit of each MPDU limiter of the a-MPDU, and indicates whether a new byte exists in the MPDU corresponding to the MPDU limiter, that is, the temporary sequence number.
In a third specific embodiment, the sender carries a corresponding temporary sequence number in each MPDU included in the a-MPDU, and the temporary sequence number is located in a CCMP (Counter mode with picture-block chaining message authentication code Protocol) header of the MPDU. The scheme is only suitable for the condition that all MPDUs in the A-MPDUs are transmitted in a CCMP encryption mode.
Fig. 12 shows the format of CCMP MPDUs. Comparing the format of the MPDU in fig. 7 and 9, it can be seen that if the MPDU is transmitted in encrypted form (indicated by the "protected frame" bit of the frame control field in the MAC header) and encrypted using CCMP (indicated by ExtIV in the CCMP header), the frame body portion includes the CCMP header, the Data and Message Integrity Code (MIC), and both Data and MIC are protected by encryption. The CCMP header includes a Packet Number (PN) of 6 bytes, the 6 bytes are respectively represented by PN0 to PN5, PN0 is a low byte, and PN5 is a high byte. For a sending end, the PN of different MPDUs is added by one in sequence, and the receiving end and the TID are not distinguished, even if a frame is retransmitted, the PN is different from the PN transmitted at the previous time. Thus, the PN may uniquely identify one MPDU. Based on this, PN or the lower bits of PN may be taken as the temporary sequence number of MPDUs, e.g., PN 0. For this embodiment, the temporary sequence number present indication may also be located in the CCMP header. For example, carried with any reserved bit in the CCMP header.
In an implementation, each MPDU included in the a-MPDU carries a first interaction sequence identifier (ESI), and the first ESI is used to identify a current interaction sequence. The interactive sequence refers to a sequence composed of an A-MPDU and a BA frame, or refers to a sequence composed of an A-MPDU, a BAR frame and a BA frame. Specifically, the first ESI is included in a frame control domain or a QoS control domain or an HE control domain or an MPDU delimiter of each MPDU included in the a-MPDU. The first ESI may also be located in a PHY header of the a-MPDU. Specifically, the first ESI is located in a SIG field in a PHY header of the a-MPDU.
In a specific implementation, the ESI typically takes 2 to 3 bits.
Step 602: the transmitting end transmits the A-MPDU.
In implementation, the original Sequence Number (SN) of each MPDU in the a-MPDU still exists, and is located in a Sequence Control (Sequence Control) field of a MAC header of each MPDU in the a-MPDU, and the sender stores a corresponding relationship between the temporary Sequence Number and the Sequence Number of each MPDU in the a-MPDU.
In the embodiment of the present invention, as shown in fig. 13, a detailed flow of a method for a receiving end to receive the a-MPDU and perform data reception acknowledgement is as follows:
step 1101: the receiving end receives an A-MPDU sent by a sending end, each MPDU contained in the A-MPDU is respectively provided with a corresponding temporary sequence number, the A-MPDU comprises a plurality of MPDUs, the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein, the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment.
In implementation, each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; or each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value. The specific parameters carried by the a-MPDU and the way of carrying the parameters are the same as those described in the transmitting end, and are not described herein again.
In implementation, because the original Sequence Number (SN) of each MPDU in the a-MPDU still exists, the receiving end still sequences the Sequence of each MPDU according to the SN of each MPDU after receiving the a-MPDU, so that the problem of order confusion of a plurality of MPDUs of the same TID does not occur.
Step 1102: the receiving end transmits a BA frame, wherein the BA frame includes a block acknowledgement information field (also referred to as BA Info field) corresponding to the transmitting end, the block acknowledgement information field includes a block acknowledgement bit table (BA Bitmap) sub-field, and the block acknowledgement information field includes a first sequence number Type (SN Type) indication for indicating a temporal sequence number of one MPDU in the a-MPDU for each bit of the block acknowledgement bit table sub-field.
As shown in fig. 14, the structure diagram of a BA frame is shown, where the BA frame includes a BA control field and a BA Info field, where the BA Info field includes a Per stream identification information (Per-TID Info) sub-field, a start sequence control (Starting sequence control) sub-field, and a block acknowledgement bit table sub-field. Wherein each bit in the BA Bitmap subfield corresponds to the T-SN of one MPDU. It should be noted that fig. 14 is only an example, and does not represent all possible embodiments, and the protection scope of the present invention is not limited thereto.
In an implementation, the first sequence number type indication is located in a fragment number (fragmentation number) subfield in the starting sequence control subfield, or is located in a per-stream identification information subfield in a block acknowledgement information field, or is located in a block acknowledgement control field of the BA frame. In specific implementation, the first sequence number type indication occupies 1bit, and when the first sequence number type indication takes a first value, for example, when the first sequence number type indication takes a value of 1, each bit of the indication block acknowledgement bit table subfield is a temporary sequence number of one MPDU in the a-MPDUs, which corresponds to each bit; when the first sequence number type indication takes a second value, for example, the first sequence number type indication takes a value of 0, each bit of the indication block acknowledgement bit table subfield respectively corresponds to a sequence number of one MPDU in the a-MPDUs. For the case where the first sequence number type indicates a per-flow identification information sub-domain located in the acknowledgement information domain, this may also be indicated by the flow identification (TID) therein taking a predefined value. For example, if the predefined value is 1111, when the TID takes 1111, it indicates that the starting temporary sequence number is carried in the starting sequence number sub-field in the current acknowledgement information field; otherwise, the initial sequence number sub-field in the current confirmation information field carries the initial sequence number. If the BA frame includes only one BA Info field, the first sequence number type indication may also be located in the BA control field of the BA frame, for example, indicated by a 1-bit reserved bit in the BA control field. Still further, a TID bit table may be added to the BA control field, where 1 indicates that the following block acknowledgement bit table sub-field contains an acknowledgement for the MPDU of the corresponding TID. For example, the block ack bit table is 1001, which indicates that the subsequent sub-fields of the block ack bit table contain acknowledgments for TID1 and TID4, which can simplify the processing after the data transmitting end receives the BA frame.
In an implementation, the block ack information field includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block ack bit table subfield.
In one specific implementation, as shown in fig. 14, the start sequence control subfield includes a slice number subfield and a start sequence number subfield, the slice number subfield occupies 4bits, one bit is a first sequence number type indication, and the remaining three bits are used for indicating the length of the block acknowledgement bit table; the starting sequence number subfield occupies 12 bits, the starting sequence number subfield carries a starting temporary sequence number or a starting sequence number, namely the starting temporary sequence number is carried in the starting sequence number subfield under the condition that the first sequence number type indication takes a first value, namely the indication that each bit of the block acknowledgement bit table subfield respectively corresponds to the temporary sequence number of one MPDU in the A-MPDUs, and the starting sequence number is carried in the starting sequence number subfield when the first sequence number type indication takes a second value, namely the indication that each bit of the block acknowledgement bit table subfield respectively corresponds to the sequence number of one MPDU in the A-MPDUs.
In an implementation, where a first ESI is carried in each MPDU contained in an a-MPDU to identify a current interaction sequence, a second ESI is carried in the BA frame, where the second ESI is also used to identify the current interaction sequence, and the second ESI has the same value as the first ESI.
In practice, the second ESI is set in a manner including, but not limited to, the following:
first, the second ESI is located in a per-stream identification information subfield in the block acknowledgment information field. As shown in fig. 15, since the TID Value subfield of the per stream identification information subfield in the block acknowledgement information field in the BA frame is a reserved field, the second ESI may be located in the TID Value subfield.
Specifically, when the first sequence number type indicates to take a first Value, that is, when each bit of the indication block acknowledgement bit table subfield respectively corresponds to a temporary sequence number of one MPDU in the a-MPDU, the carried in the TID Value subfield is the second ESI; when the first sequence number type indication takes a second Value, namely the indication block acknowledgement bit table subdomain each bit corresponds to a sequence number of one MPDU in the A-MPDUs, the TID carried in the TID Value subdomain is TID.
Second, the second ESI in the BA frame is located in the start sequence control sub-field in the block acknowledgement information field.
In an implementation, in a case that the length of the BA Bitmap is fixed and the T-SN corresponding to the first bit is also fixed, for example, the length of the BA Bitmap is always 64bits, and the T-SN corresponding to the first bit is always zero, it is not necessary to indicate the start temporary sequence number, i.e., the start sequence number subfield is a reserved field, in which case the second ESI in the BA frame may be located in the start sequence number subfield or the slice number subfield in the start sequence control subfield, for example, the second ESI is located in the first 3 bits or the last 3 bits in the slice number subfield.
In an implementation, if the length of the BA Bitmap is variable, for example, the specific length is indicated by three bits in the fragment number subfield, when the first sequence number type indication takes a first value, that is, in a case that each bit of the indication block acknowledgement bit table subfield respectively corresponds to a temporary sequence number of one MPDU in the a-MPDU, the start sequence control subfield contains the start temporary sequence number, and since the length of the start sequence control subfield is 12 bits and the start temporary sequence number only needs 6bits, the remaining bits of the start sequence control subfield can also be used to carry the second ESI.
Third, in the case where the BA frame contains only one BA Info field, the second ESI may also be located in the block ack control field of the BA frame, or in the first 11bits of each stream identification information subfield of the BA Info field, because the first 11bits of each stream identification information subfield are reserved bits in the case where the BA frame contains only one BA Info field.
In implementation, an acknowledgement Policy (Ack Policy) is also carried in an a-MPDU sent by a sending end, and when the acknowledgement Policy carried in the a-MPDU is BA, the sending end sends a BAR frame to a receiving end after sending the a-MPDU and before receiving a BA frame replied by the receiving end; before replying the BA frame, the receiving end receives the BAR frame sent by the sending end. Wherein the time interval between a-MPDU, BAR frame is uncertain, but the time interval between BAR frame and BA frame is typically a predefined value.
In implementation, each MPDU included in the a-MPDU carries a first ESI, where the first ESI is used to identify a current interaction sequence, and the BA frame carries a second ESI, where the second ESI is used to identify the current interaction sequence; the BAR frame carries a third ESI, the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI and indicates that the A-MPDU, the BAR frame and the BA frame belong to the same interaction sequence.
In an implementation, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI.
Specifically, the second sequence number type indication is located in a BAR control field of the BAR frame, or a block acknowledgement request information field corresponding to a receiving end included in the BAR frame.
In practice, the third ESI is set up in a manner including, but not limited to, the following:
first, the third ESI in the BAR frame is located in the per-stream identification information subfield in the block acknowledgment information field. As shown in fig. 16, since the TID Value subfield of the per-stream identification information subfield in the block acknowledgement request information field in the BAR frame is a reserved field, the third ESI may be located in the TID Value subfield.
Specifically, when the second sequence number type indicates to take the first Value, the initial sequence number sub-field in the BAR Info field carries the temporary sequence number, and the TID Value sub-field carries the third ESI; when the second sequence number type indicates to take the second Value, the sequence number is carried in the starting sequence number sub-domain, and the TID carried in the TID Value sub-domain is the TID.
Second, the third ESI in the BAR frame is located in the start sequence control sub-field in the block acknowledgement information field.
In an implementation, in a case that the length of the BA Bitmap is fixed and the T-SN corresponding to the first bit is also fixed, for example, the length of the BA Bitmap is always 64bits, the T-SN corresponding to the first bit is always zero, and the start temporary sequence number does not need to be indicated in the BAR frame, i.e., the start sequence number subfield is a reserved field, in which case the third ESI in the BAR frame may be located in the start sequence number subfield or the slice number subfield in the start sequence control subfield, for example, the third ESI is located in the first 3 bits or the last 3 bits in the slice number subfield.
Third, in the case where the BAR frame contains only one BAR Info field, the third ESI may also be located in a block acknowledgement request control (BAR context 1) field of the BAR frame or in the first 11bits of the per-stream identification information subfield of the BAR Info field, because the first 11bits of the per-stream identification information subfield are reserved bits in the case where the BAR frame contains only one BAR Info field.
In implementation, after the sending end sends the a-MPDU, the sending end further receives a BA frame replied by the block sending end, where the BA frame includes a block ack information field corresponding to the sending end, the block ack information field includes a block ack bitmap subfield, and the block ack information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block ack bitmap subfield respectively corresponds to a temporary sequence number of one MPDU in the a-MPDU; and the sending end judges whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table subdomain.
Specifically, the transmitting end stores a mapping relationship between T-SN and SN of each MPDU in the A-MPDUs. When the transmitting end receives a BA frame sent by the receiving end and a first sequence number type indication contained in the BA frame is a first value, namely the condition that each bit of the indication block acknowledgement bit list subdomain corresponds to a temporary sequence number of one MPDU in the A-MPDU respectively is indicated, the transmitting end can judge which MPDUs corresponding to SN are correctly received by the receiving end according to the mapping relation between the T-SN and the value of each bit of the block acknowledgement bit list subdomain. The sending end receives a BA frame sent by the receiving end, each bit of a BA Bitmap contained in the BA frame corresponds to one T-SN, and the sending end knows the corresponding relation between the T-SNs and the SNs, so that the sending end can judge which MPDUs corresponding to the SNs are correctly received by the receiving end according to the value of each bit in the BA Bitmap. Note that for the case where the T-SN is carried by the sequence control field, the transmit end may not need to maintain the mapping relationship between the T-SN and the SN, since the T-SN and the SN of the MPDU are the same in this case.
It should be noted that, in the above embodiment, when the UL MU transmission is acknowledged, the BA frame may include BA Info for multiple STAs, but not every BA Info uses T-SN. For example, a STA's ULA-MPDU is single TID or a UL a-MPDU is multi-TID, but the AP only parses out MPDUs of one TID. Similarly, when the dl mu transmission scheme is confirmed, a similar situation exists in the BAR frame transmitted by the AP, that is, a plurality of BARs info in the BAR frame do not all include T-SN.
It should be noted that the scheme provided by the embodiment of the present invention may be applied to acknowledgement of a multi-TID a-MPDU transmitted by a single STA by a receiving end, or may be applied to acknowledgement of a multi-TID a-MPDUs transmitted by a plurality of STAs by a receiving end in an MU manner, or may be applied to transmission and acknowledgement of an a-MPDU in which an MPDU and a fragment coexist. The MPDU is identified by a sequence number, the MPDU fragment is identified by < sequence number, fragment number >, and the MPDU fragment can be numbered uniformly by the temporary sequence number. MPDUs and MPDU fragments may be of the same TID or may be of different TIDs. Moreover, if the MPDUs included in the a-MPDU are transmitted to different target devices and the MPDUs included in the a-MPDU have different TIDs, and there may be MPDU fragments, the scheme provided by the embodiment of the present invention may also be used to uniformly number the MPDUs and the MPDU fragments.
Based on the same inventive concept, the embodiment of the present invention further provides a data sending apparatus, and specific implementation of the apparatus may refer to the description of the foregoing method embodiment section on the sending end, and repeated parts are not repeated, as shown in fig. 17, the apparatus mainly includes:
a configuration module 1501, configured to configure the temporary sequence number of each MPDU included in an a-MPDU, where the a-MPDU includes a plurality of MPDUs, and the temporary sequence numbers of any two MPDUs included in the a-MPDU are different, where at least two of the a-MPDUs have different TIDs, and/or at least one MPDU includes a fragment;
a sending module 1502, configured to send the a-MPDU after the configuration module 1501 configures the temporary sequence number.
In implementation, the configuration module 1501 is specifically configured to: each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; or each MPDU except the first MPDU of the A-MPDUs carries a corresponding temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
In implementation, the carrying manner of the temporary sequence number of each MPDU in the a-MPDU may refer to the description of the method embodiment, and is not described herein again.
In implementation, the a-MPDU further carries a temporary sequence number presence indication, where the temporary sequence number presence indication is used to indicate whether a temporary sequence number exists. The carrying manner of the temporary sequence number existence indication in the a-MPDU may refer to the description of the method embodiment section, and is not described herein again.
In an implementation, the apparatus further includes a receiving module 1503, configured to receive a BA frame, where the BA frame includes a block ack information field corresponding to the sender, the block ack information field includes a block ack bit table subfield, and the block ack information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block ack bit table subfield respectively corresponds to a temporal sequence number of one MPDU of the a-MPDUs; the apparatus further includes a processing module 1504, configured to determine whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received according to a value of each bit in the block acknowledgement bit table subfield in the BA frame received by the receiving module 1503.
In implementation, the processing module 1504 is specifically configured to determine whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received according to the stored correspondence between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subfield in the BA frame.
In an implementation, the block ack information field in the BA frame further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block ack bit table subfield in the BA frame.
For the carrying manner of the first sequence number type indication, reference may be made to the description of the method embodiment, and details are not described here.
In implementation, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence; the BA frame carries a second interaction sequence identification ESI, the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
In implementation, the manner in which the a-MPDU carries the first ESI and the manner in which the BA frame carries the second ESI may refer to the description of the method embodiment, and are not described herein again.
In an implementation, the transmitting module 1502 is further configured to transmit a block acknowledgement request BAR frame after transmitting the a-MPDU and before the receiving module 1503 receives the BA frame.
Wherein the BAR frame carries a third ESI identifying the current interaction sequence, the third ESI being the same value as the first ESI. The manner in which the BAR frame carries the third ESI may refer to the description of the method embodiment, and is not described herein again.
In an implementation, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI. The manner in which the BAR frame carries the second sequence number type indication may refer to the description of the method embodiment, and is not described herein again.
Based on the same inventive concept, the embodiment of the present invention further provides a data reception confirmation apparatus, and the specific implementation of the apparatus may refer to the description of the method embodiment, and repeated details are not repeated, as shown in fig. 18, the apparatus mainly includes:
the receiving module 1601 is configured to receive an a-MPDU sent by a sending end, where each MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, and the a-MPDU includes multiple MPDUs, and the temporary sequence numbers of any two MPDUs included in the a-MPDU are different, where at least two stream ids of the a-MPDU are different, and/or at least one MPDU includes a fragment;
a sending module 1602, configured to send a block acknowledgement BA frame, where the BA frame includes a block acknowledgement information field corresponding to a sending end, the block acknowledgement information field includes a block acknowledgement bit table subfield, and the block acknowledgement information field includes a first sequence number type indication, and the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield corresponds to a temporary sequence number of one MPDU in the a-MPDU.
In implementation, each MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically: each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; or each MPDU except the first MPDU of the A-MPDUs carries the temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
In implementation, the carrying manner of the temporary sequence number of each MPDU in the a-MPDU may refer to the description of the method embodiment, and is not described herein again.
In implementation, the a-MPDU further carries a temporary sequence number presence indication, where the temporary sequence number presence indication is used to indicate whether a temporary sequence number exists. The method for carrying the temporary sequence number existence indication in the a-MPDU may refer to the description of the method section, and is not described herein again.
In an implementation, the block ack information field of the BA frame further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block ack bit table subfield of the BA frame.
In the implementation, the manner in which the BA frame carries the first sequence number type indication may refer to the description of the method portion, and is not described herein again.
In an implementation, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence. The BA frame carries a second interaction sequence identification ESI, the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
The manner in which the a-MPDU carries the first ESI and the manner in which the BA frame carries the second ESI may refer to descriptions in the method embodiments, and are not described herein again.
In implementation, the receiving module 1601 is further configured to:
after receiving the a-MPDU, the block acknowledgement request BAR frame transmitted by the transmitting end is received before the transmitting module 1602 transmits the BA frame.
In an implementation, the BAR frame carries a third ESI identifying the current interaction sequence, the third ESI having the same value as the first ESI and the second ESI.
In an implementation, the manner in which the BAR frame carries the third ESI may be referred to in the description of the method embodiment, and is not described herein again.
In an implementation, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI. The manner in which the BAR frame carries the second sequence number type indication may refer to the description in the method embodiment, and is not described herein again.
Based on the same inventive concept, an apparatus is further provided in the embodiments of the present invention, and specific implementation of the apparatus may refer to the description of the foregoing method embodiments regarding the transmitting end, and repeated parts are not repeated, as shown in fig. 19, the apparatus mainly includes a processor 1701, a memory 1702, and a transceiver 1703, where the transceiver 1703 receives and transmits data under the control of the processor 1701, the memory 1702 stores a preset program, and the processor 1701 reads the program in the memory 1702 and executes the following processes according to the program:
respectively configuring the temporary sequence number of each MPDU contained in an A-MPDU, wherein the A-MPDU comprises a plurality of MPDUs, the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment;
the a-MPDU after the temporary sequence number is configured is transmitted through the transceiver 1703.
In implementation, the processor 1701 is specifically configured to: each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; or each MPDU except the first MPDU of the A-MPDUs carries a corresponding temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
In implementation, the carrying manner of the temporary sequence number of each MPDU in the a-MPDU may refer to the description of the method embodiment, and is not described herein again.
In implementation, the a-MPDU further carries a temporary sequence number presence indication, where the temporary sequence number presence indication is used to indicate whether a temporary sequence number exists. The carrying manner of the temporary sequence number existence indication in the a-MPDU may refer to the description of the method embodiment section, and is not described herein again.
In an implementation, the processor 1701 is configured to receive, via the transceiver 1703, a BA frame, where the BA frame includes a block ack field corresponding to a sender, the block ack field includes a block ack bit list subfield, and the block ack field includes a first sequence number type indicator, where the first sequence number type indicator indicates that each bit of the block ack bit list subfield respectively corresponds to a temporal sequence number of one MPDU of the a-MPDUs; and the device is used for judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table subdomain in the received BA frame.
In an implementation, the processor 1701 is specifically configured to determine whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received according to the stored correspondence between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subfield in the BA frame.
In an implementation, the block ack information field in the BA frame further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block ack bit table subfield in the BA frame.
For the carrying manner of the first sequence number type indication, reference may be made to the description of the method embodiment, and details are not described here.
In implementation, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence; the BA frame carries a second interaction sequence identification ESI, the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
In implementation, the manner in which the a-MPDU carries the first ESI and the manner in which the BA frame carries the second ESI may refer to the description of the method embodiment, and are not described herein again.
In an implementation, the processor 1701 instructs the transceiver 1703 to transmit a block acknowledgement request, BAR, frame after transmitting an a-MPDU and before receiving a BA frame.
Wherein the BAR frame carries a third ESI identifying the current interaction sequence, the third ESI being the same value as the first ESI. The manner in which the BAR frame carries the third ESI may refer to the description of the method embodiment, and is not described herein again.
In an implementation, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI. The manner in which the BAR frame carries the second sequence number type indication may refer to the description of the method embodiment, and is not described herein again.
Based on the same inventive concept, another device is further provided in the embodiments of the present invention, and specific implementation of the device may refer to the description of the receiving end in the above method embodiments, and repeated parts are not repeated, as shown in fig. 20, the device mainly includes a processor 1801, a memory 1802, and a transceiver 1803, where the transceiver 1803 receives and transmits data under the control of the processor 1801, a preset program is stored in the memory 1802, and the processor 1801 reads the program in the memory 1802 and executes the following processes according to the program:
receiving, by a transceiver 1803, an a-MPDU transmitted by a transmitting end, where each MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, the a-MPDU includes a plurality of MPDUs, and the temporary sequence numbers of any two MPDUs included in the a-MPDU are different, where at least two stream ids of the a-MPDU are different, and/or at least one MPDU includes a fragment;
a block acknowledgement BA frame is transmitted via the transceiver 1803, where the BA frame includes a block acknowledgement field corresponding to the transmit end, the block acknowledgement field includes a block acknowledgement bit table subfield, and the block acknowledgement field includes a first sequence number type indication, and the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield respectively corresponds to a temporal sequence number of one MPDU in the a-MPDU.
In implementation, each MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically: each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; or each MPDU except the first MPDU of the A-MPDUs carries the temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
In implementation, the carrying manner of the temporary sequence number of each MPDU in the a-MPDU may refer to the description of the method embodiment, and is not described herein again.
In implementation, the a-MPDU further carries a temporary sequence number presence indication, where the temporary sequence number presence indication is used to indicate whether a temporary sequence number exists. The method for carrying the temporary sequence number existence indication in the a-MPDU may refer to the description of the method section, and is not described herein again.
In an implementation, the block ack information field of the BA frame further includes a starting sequence control subfield, where the starting sequence control subfield includes a starting temporary sequence number, and the starting temporary sequence number is used to indicate a temporary sequence number of an MPDU corresponding to a first bit in the block ack bit table subfield of the BA frame.
In the implementation, the manner in which the BA frame carries the first sequence number type indication may refer to the description of the method portion, and is not described herein again.
In an implementation, each MPDU included in the a-MPDU carries a first interaction sequence identification ESI, where the first ESI is used to identify a current interaction sequence. The BA frame carries a second interaction sequence identification ESI, the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
The manner in which the a-MPDU carries the first ESI and the manner in which the BA frame carries the second ESI may refer to descriptions in the method embodiments, and are not described herein again.
In an implementation, the processor 1801 instructs the transceiver 1803 to receive a block acknowledgement request BAR frame transmitted by the transmit end after receiving an a-MPDU and before transmitting a BA frame.
In an implementation, the BAR frame carries a third ESI identifying the current interaction sequence, the third ESI having the same value as the first ESI and the second ESI.
In an implementation, the manner in which the BAR frame carries the third ESI may be referred to in the description of the method embodiment, and is not described herein again.
In an implementation, the BAR frame further carries a second sequence number type indication, where the second sequence number type indication is used to indicate whether the BAR frame includes the third ESI. The manner in which the BAR frame carries the second sequence number type indication may refer to the description in the method embodiment, and is not described herein again.
Based on the technical scheme, in the embodiment of the invention, under the condition that at least two MPDUs in the A-MPDUs have different TIDs and/or at least one MPDU contains fragments, the sending end respectively configures the temporary sequence number of each MPDU contained in the A-MPDU, and the temporary sequence numbers of all the MPDUs in the A-MPDU are unified numbers so as to ensure that the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, so that when the receiving end replies a BA frame, the receiving end can use a block acknowledgement information field to acknowledge all the MPDUs in the A-MPDU according to the temporary sequence number of each MPDU in the A-MPDU, thereby reducing the transmission overhead of the BA frame and solving the problem of difficult acknowledgement.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (86)

1. A data transmission method, comprising:
the method comprises the steps that a sending end respectively configures the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), wherein the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains fragments;
the sending end sends the A-MPDU after configuring a temporary sequence number;
the method comprises the steps that a transmitting end receives a block acknowledgement BA frame, the BA frame comprises a block acknowledgement information field corresponding to the transmitting end, the block acknowledgement information field comprises a block acknowledgement bit table subdomain, the block acknowledgement information field comprises a first sequence number type indication, and the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit table subdomain corresponds to a temporary sequence number of one MPDU in the A-MPDUs;
and the sending end judges whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table sub-field.
2. The method of claim 1, wherein the transmit end separately configures a temporary sequence number for each media access control protocol data unit, MPDU, contained in an aggregated media access control protocol data unit, a-MPDU, comprising:
the sending end carries a corresponding temporary sequence number in each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the sending end carries a corresponding temporary sequence number in each MPDU except the first MPDU of the A-MPDU, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
3. The method of claim 2, wherein the temporary sequence number is located in a Media Access Control (MAC) header of the MPDU, or in an MPDU delimiter of the MPDU, or in a counter mode cipher Block chaining (CCMP) header of the MPDU.
4. The method of claim 3, wherein the temporary sequence number is located in a High Efficiency (HE) control field in a MAC header of the MPDU, or in a quality of service (QoS) control field in a MAC header of the MPDU, or in a frame control field in a MAC header of the MPDU, or in a sequence control field in a MAC header of the MPDU.
5. The method of any of claims 1-4 wherein the A-MPDU also carries a temporary sequence number present indication, the temporary sequence number present indication indicating whether the temporary sequence number is present.
6. The method of claim 5, wherein the temporary sequence number present indication is located in a physical header of the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
7. The method of claim 6, wherein the temporary sequence number presence indicates a High Efficiency (HE) control field located in a MAC header of the MPDU, or a quality of service (QoS) control field located in a MAC header of the MPDU, or a frame control field located in a MAC header of an MPDU.
8. The method of any one of claims 1-4, wherein each MPDU contained in the a-MPDU carries a first interaction sequence identification ESI, the first ESI identifying a current interaction sequence.
9. The method of claim 8, wherein the first ESI is located in a frame control domain of each of the a-MPDUs, or in a quality of service QoS control domain of each of the a-MPDUs, or in a high efficiency HE control domain of each of the a-MPDUs, or in a MPDU delimiter corresponding to each of the a-MPDUs, or in a physical layer PHY header of the a-MPDU.
10. The method of claim 1, wherein the determining, by the sender, whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received according to the value of each bit in the sub-field of the block ack bit table comprises:
and the sending end judges whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the stored corresponding relation between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subdomain.
11. The method of claim 1, wherein the block acknowledgement information field further comprises a starting sequence control subfield including a starting temporary sequence number therein, the starting temporary sequence number indicating a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
12. The method of claim 11, wherein the first sequence number type indication is located in a slice number subfield in the starting sequence control subfield, or is located in a per-stream identification information subfield in the block acknowledgement information field, or is located in a block acknowledgement control field of the BA frame.
13. The method of claim 12, wherein the per-flow identification information sub-field includes a flow identification, and wherein the first sequence number type indicates that the per-flow identification information sub-field is located in the block acknowledgement information field, comprises: the first sequence number type is indicated as the flow identifier, and when the flow identifier is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
14. The method of any one of claims 10-13, wherein each MPDU contained in said a-MPDU carries a first interaction sequence identification ESI, said first ESI identifying a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
15. The method as recited in claim 14, wherein the second ESI is located in either a per-stream identification information sub-field in the block acknowledgment information field or a start sequence control sub-field in the block acknowledgment information field.
16. The method as in claim 14 wherein the second ESI is located in a block acknowledgement control field of the BA frame.
17. The method of any one of claims 10-13, wherein after the transmitting end transmits the a-MPDU and before receiving the BA frame, the method further comprises:
the transmitting end transmits a Block Acknowledgement Request (BAR) frame.
18. The method of claim 17, wherein each MPDU contained in said a-MPDU carries a first interaction sequence identification ESI therein, said first ESI identifying a current interaction sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the value of the third ESI is the same as that of the first ESI.
19. The method as claimed in claim 18, wherein the BAR frame includes a block ack request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information subfield or a block ack request start sequence number control subfield in the block ack request information field.
20. The method of claim 18, wherein the BAR frame includes a BAR control field, and wherein the third ESI is located in the BAR control field.
21. A method as recited in any of claims 18-20, wherein the BAR frame also carries a second sequence number type indication, the second sequence number type indication indicating whether the third ESI is included in the BAR frame.
22. The method of claim 21, wherein the second sequence number type indication is located in a BAR control field of the BAR frame or in a block acknowledgement request information field corresponding to a receiving end included in the BAR frame.
23. A method for acknowledging data receipt, comprising:
a receiving end receives an aggregated media access control protocol data unit (A-MPDU) sent by a sending end, wherein each MPDU in the A-MPDU is respectively configured with a corresponding temporary sequence number, and the temporary sequence numbers of any two MPDUs in the A-MPDU are different, wherein the stream identifications (TIDs) of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU comprises a fragment;
the receiving end sends a block acknowledgement BA frame, the BA frame comprises a block acknowledgement information field corresponding to the sending end, the block acknowledgement information field comprises a block acknowledgement bit list subdomain, and the block acknowledgement information field comprises a first sequence number type indication, wherein the first sequence number type indication is used for indicating that each bit of the block acknowledgement bit list subdomain corresponds to a temporary sequence number of one MPDU in the A-MPDUs.
24. The method of claim 23, wherein each mac pdu MPDU included in the a-MPDU is configured with a corresponding temporary sequence number, specifically:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
25. The method of claim 24, wherein the temporary sequence number is located in a Media Access Control (MAC) header of the MPDU, or in a MPDU delimiter of the MPDU, or in a CCMP header of the MPDU.
26. The method of claim 25, wherein the temporary sequence number is located in a High Efficiency (HE) control field in a MAC header of the MPDU, or in a quality of service (QoS) control field in a MAC header of the MPDU, or in a frame control field in a MAC header of the MPDU, or in a sequence control field in a MAC header of the MPDU.
27. The method of any one of claims 23-26 wherein the a-MPDU also carries a temporary sequence number present indication, the temporary sequence number present indication indicating whether the temporary sequence number is present.
28. The method of claim 27, wherein the temporary sequence number present indication is located in a physical header of the a-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
29. The method of claim 28, wherein the temporary sequence number presence indicates a high efficiency HE control field located in a MAC header of the MPDU, or a quality of service QoS control field located in a MAC header of the MPDU, or a frame control field located in a MAC header of an MPDU.
30. The method of any one of claims 23-26, wherein each MPDU contained in the a-MPDU carries a first interaction sequence identification ESI, the first ESI identifying a current interaction sequence.
31. The method of claim 30, wherein the first ESI is located in a frame control domain of each of the a-MPDUs, or in a quality of service QoS control domain of each of the a-MPDUs, or in a high efficiency HE control domain of each of the a-MPDUs, or in a MPDU delimiter corresponding to each of the a-MPDUs, or in a physical layer PHY header of the a-MPDU.
32. The method of any one of claims 23-26, wherein a starting sequence control subfield is further included in the block acknowledgement information field, the starting sequence control subfield including a starting temporary sequence number indicating a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
33. The method of claim 32, wherein the first sequence number type indication is located in a slice number subfield in the starting sequence control subfield, or is located in a per-stream identification information subfield in the block acknowledgement information field, or is located in a block acknowledgement control field of the BA frame.
34. The method of claim 33, wherein the per-flow identification information sub-field includes a flow identification, and wherein the first sequence number type indicates that the per-flow identification information sub-field is located in the block acknowledgement information field, comprises: the first sequence number type is indicated as the flow identifier, and when the flow identifier is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
35. The method of claim 32, wherein each MPDU contained in said a-MPDU carries a first interaction sequence identification ESI therein, said first ESI identifying a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
36. The method as recited in claim 35, wherein the second ESI is located in either a per-stream identification information sub-field in the block acknowledgment information field or a start sequence control sub-field in the block acknowledgment information field.
37. The method as recited in claim 35, wherein the second ESI is located in a block acknowledgement control field of the BA frame.
38. The method of claim 23, wherein after the receiving end receives the a-MPDU and before transmitting the BA frame, the method further comprises:
and the receiving end receives the block acknowledgement request BAR frame sent by the sending end.
39. The method of claim 38, wherein each MPDU contained in said a-MPDU carries a first interaction sequence identification ESI therein, said first ESI identifying a current interaction sequence;
the BA frame carries a second interactive sequence identification ESI, and the second ESI is used for identifying a current interactive sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI.
40. The method as claimed in claim 39, wherein the BAR frame includes a block ack request information field corresponding to a receiving end, and the third ESI is located in a per-stream identification information subfield or a block ack request start sequence number control subfield in the block ack request information field.
41. The method of claim 39, wherein the BAR frame includes a BAR control domain, and wherein the third ESI is located in the BAR control domain.
42. A method as recited in any one of claims 39-41, wherein the BAR frame also carries a second sequence number type indication, the second sequence number type indication indicating whether the third ESI is included in the BAR frame.
43. The method of claim 42, wherein the second sequence number type indication is located in a BAR control field of the BAR frame or in a block acknowledgement request information field corresponding to a receiving end included in the BAR frame.
44. A data transmission apparatus, comprising:
the device comprises a configuration module, a data processing module and a control module, wherein the configuration module is used for respectively configuring the temporary sequence number of each media access control protocol data unit (MPDU) contained in an aggregated media access control protocol data unit (A-MPDU), and the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identification TIDs of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains fragments;
a sending module, configured to send the a-MPDU after the configuration module configures the temporary sequence number;
a receiving module, configured to receive a block acknowledgement BA frame, where the BA frame includes a block acknowledgement information field corresponding to the transmitting end, the block acknowledgement information field includes a block acknowledgement bit table subfield, and the block acknowledgement information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield corresponds to a temporary sequence number of one MPDU in the a-MPDUs;
and the processing module is used for judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the value of each bit in the block acknowledgement bit table subdomain in the BA frame received by the receiving module.
45. The apparatus of claim 44, wherein the configuration module is specifically configured to:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
and carrying a corresponding temporary sequence number in each MPDU except the first MPDU of the A-MPDUs, wherein the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
46. The apparatus of claim 45, wherein the temporary sequence number is located in a Media Access Control (MAC) header of the MPDU, or in a MPDU delimiter of the MPDU, or in a CCMP header of the MPDU.
47. The apparatus of claim 46, wherein the temporary sequence number is located in a High Efficiency (HE) control field in a MAC header of the MPDU, or in a quality of service (QoS) control field in a MAC header of the MPDU, or in a frame control field in a MAC header of the MPDU, or in a sequence control field in a MAC header of the MPDU.
48. The apparatus of any one of claims 44-47, wherein the A-MPDU further carries a temporary sequence number present indication, the temporary sequence number present indication indicating whether the temporary sequence number is present.
49. The apparatus of claim 48, wherein the temporary sequence number present indication is located in a physical header of the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
50. The apparatus of claim 49, wherein the temporary sequence number presence indicates a High Efficiency (HE) control field located in a MAC header of the MPDU, or a quality of service (QoS) control field located in a MAC header of the MPDU, or a frame control field located in a MAC header of an MPDU.
51. The apparatus of any one of claims 44-47, wherein each MPDU contained in the A-MPDU carries a first ESI, the first ESI identifying a current interaction sequence.
52. The apparatus of claim 51, wherein the first ESI is located in a frame control domain of each of the A-MPDUs, or in a quality of service (QoS) control domain of each of the A-MPDUs, or in a High Efficiency (HE) control domain of each of the A-MPDUs, or in a corresponding MPDU delimiter of each of the A-MPDUs, or in a physical layer (PHY) header of the A-MPDU.
53. The apparatus of claim 44, wherein the processing module is specifically configured to:
and judging whether the MPDU corresponding to the temporary sequence number corresponding to each bit is correctly received or not according to the corresponding relation between the temporary sequence number and the sequence number of each MPDU and the value of each bit in the block acknowledgement bit table subdomain.
54. The apparatus of claim 44, wherein the block acknowledgement information field further comprises a starting sequence control subfield including a starting temporary sequence number therein, the starting temporary sequence number indicating a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
55. The apparatus of claim 54, wherein the first sequence number type indication is located in a slice number subfield in the starting sequence control subfield, or is located in a per-stream identification information subfield in the block acknowledgement information field, or is located in a block acknowledgement control field of the BA frame.
56. The apparatus of claim 55, wherein the per-flow identification information sub-field contains a flow identification, and wherein the first sequence number type indication is located in the per-flow identification information sub-field in the block acknowledgement information field, comprises: the first sequence number type is indicated as the flow identifier, and when the flow identifier is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
57. The apparatus of any one of claims 53-56, wherein each MPDU contained in the A-MPDU carries a first ESI, the first ESI identifying a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
58. The apparatus as recited in claim 57, wherein the second ESI is located in either a per-stream identification information sub-field in the block acknowledgement information field or a start sequence control sub-field in the block acknowledgement information field.
59. The apparatus as recited in claim 57, wherein the second ESI is located in a block acknowledgement control field of the BA frame.
60. The apparatus of any one of claims 53-56, wherein the sending module is further configured to:
after transmitting the A-MPDU, the receiving module transmits a Block Acknowledgement Request (BAR) frame before receiving the BA frame.
61. The apparatus of claim 60, wherein each MPDU contained in the A-MPDU carries a first ESI therein, the first ESI identifying a current interaction sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the value of the third ESI is the same as that of the first ESI.
62. The apparatus of claim 60, wherein the BAR frame includes a block ack request information field corresponding to a receiving end, and wherein the third ESI is located in a per-stream identification information subfield or a block ack request start sequence number control subfield in the block ack request information field.
63. The apparatus of claim 60, wherein the BAR frame includes a BAR control domain, and wherein the third ESI is located in the BAR control domain.
64. The apparatus of claim 60, wherein the BAR frame further carries a second sequence number type indication, the second sequence number type indication indicating whether the third ESI is included in the BAR frame.
65. The apparatus of claim 64, wherein the second sequence number type indication is located in a BAR control field of the BAR frame or in a block acknowledgement request information field corresponding to a receiving end included in the BAR frame.
66. A data reception confirmation apparatus, comprising:
the receiving module is used for receiving an aggregated media access control protocol data unit (A-MPDU) sent by a sending end, wherein each of the MPDUs contained in the A-MPDU is respectively configured with a corresponding temporary sequence number, and the temporary sequence numbers of any two MPDUs contained in the A-MPDU are different, wherein the stream identifications (TIDs) of at least two MPDUs in the A-MPDU are different, and/or at least one MPDU contains a fragment;
a sending module, configured to send a block acknowledgement BA frame, where the BA frame includes a block acknowledgement information field corresponding to the sending end, the block acknowledgement information field includes a block acknowledgement bit table subfield, and the block acknowledgement information field includes a first sequence number type indication, where the first sequence number type indication is used to indicate that each bit of the block acknowledgement bit table subfield corresponds to a temporary sequence number of one MPDU of the a-MPDUs.
67. The apparatus of claim 66, wherein each media access control protocol data unit (MPDU) contained in the A-MPDU is configured with a corresponding temporary sequence number, in particular:
each MPDU contained in the A-MPDU carries a corresponding temporary sequence number; alternatively, the first and second electrodes may be,
each MPDU except the first MPDU of the A-MPDUs carries a temporary sequence number, the first MPDU does not carry the temporary sequence number, and the temporary sequence number corresponding to the first MPDU is a predefined value.
68. The apparatus of claim 67, wherein the temporary sequence number is located in a Media Access Control (MAC) header of the MPDU, or in a MPDU delimiter of the MPDU, or in a CCMP header of the MPDU.
69. The apparatus of claim 68, wherein the temporary sequence number is located in a High Efficiency (HE) control field in a MAC header of the MPDU, or in a quality of service (QoS) control field in a MAC header of the MPDU, or in a frame control field in a MAC header of the MPDU, or in a sequence control field in a MAC header of the MPDU.
70. The apparatus of any one of claims 66-69, wherein the A-MPDU further carries a temporary sequence number present indication, the temporary sequence number present indication indicating whether the temporary sequence number is present.
71. The apparatus of claim 70, wherein the temporary sequence number present indication is located in a physical header of the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number exists and indicates that the temporary sequence number is positioned in an MPDU delimiter corresponding to each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number existence indication is positioned in a Media Access Control (MAC) header of each MPDU contained in the A-MPDU; alternatively, the first and second electrodes may be,
the temporary sequence number present indication is located in a CCMP header of each MPDU contained in the a-MPDU.
72. The apparatus of claim 71, wherein the temporary sequence number presence indicates a High Efficiency (HE) control field located in a MAC header of the MPDU, or a quality of service (QoS) control field located in a MAC header of the MPDU, or a frame control field located in a MAC header of an MPDU.
73. The apparatus of any one of claims 66-69, wherein each MPDU contained in the A-MPDU carries a first ESI therein, the first ESI identifying a current interaction sequence.
74. The apparatus of claim 73, wherein the first ESI is located in a frame control domain of each of the A-MPDUs, or in a quality of service (QoS) control domain of each of the A-MPDUs, or in a High Efficiency (HE) control domain of each of the A-MPDUs, or in a corresponding MPDU delimiter of each of the A-MPDUs, or in a physical layer (PHY) header of the A-MPDU.
75. The apparatus of any one of claims 66-69, wherein the block acknowledgement information field further comprises a starting sequence control subfield including a starting temporary sequence number therein, the starting temporary sequence number indicating a temporary sequence number of an MPDU corresponding to a first bit in the block acknowledgement bit table subfield.
76. The apparatus of claim 75, wherein the first sequence number type indication is located in a slice number subfield in the starting sequence control subfield, or is located in a per-stream identification information subfield in the block acknowledgement information field, or is located in a block acknowledgement control field of the BA frame.
77. The apparatus of claim 76, wherein the per-flow identification information sub-field contains a flow identification, and wherein the first sequence number type indicates that the per-flow identification information sub-field is located in the block acknowledgement information field, comprises: the first sequence number type is indicated as the flow identifier, and when the flow identifier is a predefined value, it indicates that a starting sequence control sub-field in the block acknowledgement information field includes a starting temporary sequence number.
78. The apparatus of claim 75, wherein each MPDU contained in the A-MPDU carries a first ESI therein, the first ESI identifying a current interaction sequence;
and the BA frame carries a second interaction sequence identifier ESI, wherein the second ESI is used for identifying the current interaction sequence, and the value of the second ESI is the same as that of the first ESI.
79. The apparatus as recited in claim 78, wherein the second ESI is located in either a per-stream identification information sub-field in the block acknowledgement information field or a start sequence control sub-field in the block acknowledgement information field.
80. The apparatus as recited in claim 78, wherein the second ESI is located in a block acknowledgement control field of the BA frame.
81. The apparatus of claim 78, wherein the receiving module is further for:
after receiving the a-MPDU, before the transmitting module transmits the BA frame, a block acknowledgement request BAR frame transmitted by the transmitting end is received.
82. The apparatus of claim 81, wherein each MPDU contained in the a-MPDU carries a first interaction sequence identification ESI therein, the first ESI to identify a current interaction sequence;
the BA frame carries a second interactive sequence identification ESI, and the second ESI is used for identifying a current interactive sequence;
and carrying a third ESI in the BAR frame, wherein the third ESI is used for identifying a current interaction sequence, and the third ESI has the same value as the first ESI and the second ESI.
83. The apparatus of claim 82, wherein the BAR frame includes a block acknowledgement request information field corresponding to a receiver, and wherein the third ESI is located in a per-stream identification information subfield or a block acknowledgement request start sequence number control subfield in the block acknowledgement request information field.
84. The apparatus of claim 82, wherein the BAR frame includes a BAR control domain, and wherein the third ESI is located in the BAR control domain.
85. The apparatus of any one of claims 82-84, wherein the BAR frame further carries a second sequence number type indication, the second sequence number type indication indicating whether the third ESI is included in the BAR frame.
86. The apparatus of claim 85, wherein the second sequence number type indication is located in a BAR control field of the BAR frame or in a block acknowledgement request information field corresponding to a receiving end included in the BAR frame.
CN201680052200.9A 2015-09-30 2016-05-03 Data sending method, data receiving confirmation method and device Active CN108028836B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2015091282 2015-09-30
CNPCT/CN2015/091282 2015-09-30
PCT/CN2016/080881 WO2017054448A1 (en) 2015-09-30 2016-05-03 Data transmission method, and method and device for confirming receipt of data

Publications (2)

Publication Number Publication Date
CN108028836A CN108028836A (en) 2018-05-11
CN108028836B true CN108028836B (en) 2020-05-08

Family

ID=58422649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680052200.9A Active CN108028836B (en) 2015-09-30 2016-05-03 Data sending method, data receiving confirmation method and device

Country Status (2)

Country Link
CN (1) CN108028836B (en)
WO (1) WO2017054448A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1735089A (en) * 2004-08-11 2006-02-15 株式会社东芝 Communication apparatus and communication method
US7675911B2 (en) * 2007-03-01 2010-03-09 Samsung Electronics Co., Ltd. Method and system for acknowledgements in wireless communications
CN103081394A (en) * 2010-09-03 2013-05-01 高通股份有限公司 Aggregated MPDU (A-MPDU) numerology and MPDU grouping
CN103201976A (en) * 2010-11-09 2013-07-10 高通股份有限公司 Packet-level erasure protection coding in aggregated packet transmissions

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090303871A1 (en) * 2008-06-10 2009-12-10 Electronics Telecommunications Research Institute Method and apparatus for packet aggregation according to traffic characteristics

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1735089A (en) * 2004-08-11 2006-02-15 株式会社东芝 Communication apparatus and communication method
CN101594210A (en) * 2004-08-11 2009-12-02 株式会社东芝 Communication equipment and communication means
US7675911B2 (en) * 2007-03-01 2010-03-09 Samsung Electronics Co., Ltd. Method and system for acknowledgements in wireless communications
CN103081394A (en) * 2010-09-03 2013-05-01 高通股份有限公司 Aggregated MPDU (A-MPDU) numerology and MPDU grouping
KR101496895B1 (en) * 2010-09-03 2015-02-27 퀄컴 인코포레이티드 Aggregated mpdu(a-mpdu) numerology and mpdu grouping
CN103201976A (en) * 2010-11-09 2013-07-10 高通股份有限公司 Packet-level erasure protection coding in aggregated packet transmissions

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Channel Adaptive Hybrid Aggregation Scheme for Next Generation Wireless LAN;Yuki Chosokabe, Tatsumi Uwai, Yuhei Nagao, Leonardo Lanante Jr.;《2015 IEEE Wireless Communications and Networking Conference Workshops (WCNCW)》;IEEE;20150618;第153-158页 *
IEEE 802.11n MAC中帧聚合技术的研究与改进;王璇;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20110415(第4期);第I136-565页 *

Also Published As

Publication number Publication date
CN108028836A (en) 2018-05-11
WO2017054448A1 (en) 2017-04-06

Similar Documents

Publication Publication Date Title
US10790937B1 (en) Hybrid automatic repeat request for wireless local area network
US11075717B2 (en) Receiving state indication method for A-MPDU and receive end device
CN106161583B (en) Method and equipment for transmitting block acknowledgement frame
JP6551692B2 (en) Dynamic scheduling in the case of subframe bundling
US9432879B2 (en) Apparatus and methods for block acknowledgment compression
EP2612462B1 (en) Aggregated mpdu (a-mpdu) numerology and mpdu grouping
KR101343169B1 (en) Resource allocation in wireless communication systems
US11082888B2 (en) Single acknowledgment policy for aggregate MPDU
EP2731393B1 (en) Retransmission resource allocation method and apparatus for wireless communication system
US20220116819A1 (en) Method and apparatus for reporting rlc layer status, storage medium and user equipment
US11296841B2 (en) Communications method and apparatus
KR101178625B1 (en) Status report triggering in wireless communication system
CN104852777B (en) Multiple target convergence transmission method and relevant device and system
US11309998B2 (en) Hybrid automatic repeat request for wireless local area network
US20160043946A1 (en) Systems and methods for aggregating multi-user media access control protocol data unit frames in a wireless network
EP2911329A1 (en) Channel transmission method, device, base station and terminal
CN111698067B (en) Data transmission method and device
US20160013891A1 (en) Feedback information transmission method, user equipment, and base station
CN107548104B (en) Data transmission method, access point and station
CN108028836B (en) Data sending method, data receiving confirmation method and device
WO2016180280A1 (en) Method and device for transmitting block acknowledgment frame
JP7240494B2 (en) Acknowledgment for simultaneous transmission and reception
CN115396840A (en) Method and apparatus for radio communication

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