Wireless communication method and communication device

By introducing an out-of-order transmission mechanism into the block confirmation mechanism, the problem of head-of-line blocking is solved, the effective transmission of low-latency data units is ensured, and data transmission efficiency and reliability are improved.

WO2025152032A1PCT designated stage expired Publication Date: 2025-07-24GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/072563
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-16
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

The existing block confirmation mechanism has head-of-line blocking problems in data transmission, resulting in low-latency data units being unable to transmit in time and cannot meet their quality-of-service requirements.

Method used

An out-of-order transmission mechanism is introduced, and by indicating and determining the out-of-order transmission situation in the block confirmation mechanism, data units are allowed to be passed in sequence to solve the problem of head of queue blocking.

Benefits of technology

It realizes effective transmission of low-latency data streams, meets its delay requirements, and improves data transmission efficiency and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024072563_24072025_PF_FP_ABST
    Figure CN2024072563_24072025_PF_FP_ABST
Patent Text Reader

Abstract

Provided are a wireless communication method and a communication device. The method comprises: a first device receives a first frame sent by a second device, wherein the first frame is used for indicating information related to out-of-order delivery in a block acknowledgment mechanism. On the basis of the first frame, the first device and the second device may negotiate to determine a situation of out-of-order delivery in the block acknowledgement mechanism, so as to ensure effective application of out-of-order delivery in data delivery.
Need to check novelty before this filing date? Find Prior Art

Description

Wireless communication method and communication device Technical Field

[0001] The present application relates to the field of communication technology, and more specifically, to a wireless communication method and a communication device. Background Art

[0002] The block acknowledgement (BA) mechanism improves channel efficiency by aggregating multiple acknowledgments (Ack) into one frame. The station or MLD that sends data using the block acknowledgement mechanism can be called the originator, and the station or MLD intended to receive the data can be called the recipient. The recipient can include a receive reordering buffer control for each transmission address (TA) / traffic identifier (TID). The receive reordering buffer can be responsible for reordering the received data units so that the data units are ultimately delivered to the next medium access control (MAC) process in the order of the received serial number (SN). With the development of technology, some technologies have proposed an out-of-order delivery mechanism in the block acknowledgement mechanism.

[0003] Summary of the Invention

[0004] The present application provides a wireless communication method and a communication device. The following introduces various aspects involved in the present application.

[0005] In a first aspect, a wireless communication method is provided, comprising: a first device receiving a first frame sent by a second device, wherein the first frame is used to indicate information related to out-of-order transmission in a block acknowledgement mechanism.

[0006] In a second aspect, a wireless communication method is provided, including: a second device sending a first frame to a first device, wherein the first frame is used to indicate information related to out-of-order transmission in a block acknowledgement mechanism.

[0007] According to a third aspect, a communication device is provided. The communication device is a first device, and the communication device includes: a first receiving unit, configured to receive a first frame sent by a second device; wherein the first frame is used to indicate information related to out-of-order transmission in a block confirmation mechanism.

[0008] In a fourth aspect, a communication device is provided, which is a second device, and includes: a first sending unit, used to send a first frame to the first device; wherein the first frame is used to indicate information related to out-of-order transmission in a block confirmation mechanism.

[0009] In a fifth aspect, a communication device is provided, comprising a processor and a memory, wherein the memory is used to store one or more computer programs, and the processor is used to call the computer program in the memory to enable the communication device to perform some or all of the steps in the above-mentioned various aspects of the method.

[0010] In a sixth aspect, an embodiment of the present application provides a communication system, which includes the above-mentioned communication device. In another possible design, the system may also include other devices that interact with the communication device in the solution provided in the embodiment of the present application.

[0011] In a seventh aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program, and the computer program enables a communication device to execute part or all of the steps in the methods of the above aspects.

[0012] In an eighth aspect, embodiments of the present application provide a computer program product, wherein the computer program product includes a non-transitory computer-readable storage medium storing a computer program, wherein the computer program is operable to cause a communication device to perform some or all of the steps of the methods described in each of the above aspects. In some implementations, the computer program product may be a software installation package.

[0013] In a ninth aspect, an embodiment of the present application provides a chip comprising a memory and a processor, wherein the processor can call and run a computer program from the memory to implement some or all of the steps described in the methods of the above aspects.

[0014] Based on the first frame, the first device and the second device can indicate and determine the out-of-order transmission situation in the block confirmation mechanism, thereby ensuring that the out-of-order transmission is effectively applied to data transmission. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] FIG1 is a schematic diagram of a wireless communication system used in an embodiment of the present application.

[0016] Figure 2 is an example of an out-of-order transmission mechanism.

[0017] Figure 3 shows another example of an out-of-order transmission mechanism.

[0018] FIG4 is a schematic flowchart of a wireless communication method provided in an embodiment of the present application.

[0019] FIG5 is a diagram showing an example of the format of the first element provided in an embodiment of the present application.

[0020] FIG6 is a diagram showing an example of the format of the out-of-order transmission control field provided in an embodiment of the present application.

[0021] FIG7 is a diagram showing an example format of an out-of-order transmission parameter set field provided in an embodiment of the present application.

[0022] FIG8 is a diagram showing an example format of a conditional parameter field provided in an embodiment of the present application.

[0023] FIG9 is a schematic diagram of the behaviors of the initiator and the receiver provided in an embodiment of the present application.

[0024] FIG10 is a schematic structural diagram of a communication device provided in an embodiment of the present application.

[0025] FIG11 is a schematic structural diagram of another communication device provided in an embodiment of the present application.

[0026] FIG12 is a schematic structural diagram of a device for communication provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The technical solution in this application will be described below with reference to the accompanying drawings.

[0028] Communication System

[0029] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as wireless local area networks (WLAN), wireless fidelity (WiFi), high performance radio local area networks (HIPELAN), wide area networks (WAN), cellular networks, or other communication systems. For another example, the technical solutions provided in the embodiments of the present application can be applied to communication systems that adopt the 802.11 standard. For example, the 802.11 standard includes but is not limited to the 802.11ax standard, the 802.11be standard, and the next generation 802.11 standard.

[0030] FIG1 is a schematic diagram of a communication system applicable to embodiments of the present application. Referring to FIG1 , the communication devices in the communication system 100 may include access points (APs) 111 and 112, and stations (STAs) 121 and 122. STA 121 may access the network through AP 111, and STA 122 may access the network through AP 112.

[0031] In some implementations, a STA may establish an association with one or more APs, after which the associated STAs and APs may communicate. For example, as shown in FIG1 , AP 111 and STA 121 may communicate after establishing an association, and AP 112 and STA 122 may communicate after establishing an association.

[0032] In some implementations, the communication in the communication system 100 may be communication between an AP and a non-AP STA, communication between a non-AP STA and a non-AP STA, or communication between a STA and a peer STA, where a peer STA may refer to a device that communicates with the STA peer, for example, the peer STA may be an AP or a non-AP STA.

[0033] It should be understood that FIG1 exemplarily shows two AP STAs and two non-AP STAs, and the communication system 100 may also include a larger number of AP STAs, or the communication system 100 may include other numbers of non-AP STAs, which is not limited in the embodiments of the present application.

[0034] In addition, the above communication system can be applied to scenarios of multi-device collaboration, such as multi-AP (multiple access points, multi-AP) collaboration, or multi-site collaboration.

[0035] In the embodiments of this application, the names of AP and / or STA are not limited. In some scenarios, AP can also be called AP STA, that is, in a sense, AP is also a type of STA. In other scenarios, STA can also be called non-AP STA.

[0036] In some scenarios, the aforementioned communication device may also be a "multi-link device (MLD)," i.e., a device that can communicate via multiple communication links, where the multiple communication links may include communication links in different frequency bands, such as millimeter wave bands and / or low-frequency bands. Generally, if the multi-link device is an AP, the AP may also be referred to as a "multi-link AP." If the multi-link device is a STA, the STA may also be referred to as a "multi-link STA."

[0037] In the embodiment of the present application, the AP can be a device in a wireless network. The AP can be a communication entity such as a communication server, a router, a switch, a bridge, or the AP can include various forms of macro base stations, micro base stations, relay stations, etc. Of course, the AP can also be a chip or circuit or processing system in these various forms of devices, thereby realizing the method and function of the embodiment of the present application. The AP can be applied to a variety of scenarios, such as sensor nodes in smart cities (such as smart water meters, smart electricity meters, smart air detection nodes), smart devices in smart homes (such as smart cameras, projectors, displays, TVs, speakers, refrigerators, washing machines, etc.), nodes in the Internet of Things, entertainment terminals (such as wearable devices such as AR and VR), smart devices in smart offices (such as printers, projectors, etc.), Internet of Vehicles devices in the Internet of Vehicles, and some infrastructure in daily life scenarios (such as vending machines, self-service navigation counters in supermarkets, self-service checkout devices, self-service ordering machines), etc.

[0038] In some implementations, the role of a STA in a communication system is not absolute; in some scenarios, a STA can function as an AP. For example, when a mobile phone is connected to a router, it can be a non-AP STA, while when it is acting as a hotspot for other phones, it functions as an AP.

[0039] In the embodiments of the present application, a STA in the embodiments of the present application may be a device with wireless transceiver capabilities, such as a device that supports the 802.11 series of protocols and can communicate with an AP or other STAs. For example, a STA is any user communication device that allows a user to communicate with an AP and, in turn, with a WLAN. Examples of STAs include user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal, subscriber unit, subscriber station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent, or user device.

[0040] The STA in the embodiment of the present application may also be a device that provides voice / data connectivity to users, such as a handheld device or vehicle-mounted device with wireless connection function. Examples include: mobile phones, tablet computers, laptop computers, PDAs, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, cellular phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices or other processing devices connected to wireless modems, in-vehicle devices, wearable devices, terminal devices in 5G networks or future-evolved public land mobile communication networks. The terminal equipment in the network (PLMN), etc., is not limited to this in the embodiments of the present application.

[0041] By way of example and not limitation, in the embodiments of this application, the STA may also be a wearable device. Wearable devices, also known as wearable smart devices, are a general term for wearable devices that utilize wearable technology to intelligently design and develop wearable devices for everyday wear, such as glasses, gloves, watches, clothing, and shoes. Examples include smart watches or smart glasses, as well as devices that focus on a specific application function and require integration with other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.

[0042] In addition, in the embodiments of the present application, a STA can also be a terminal device in the Internet of Things (IoT) system. The IoT is an important component of the future development of information technology. Its main technical feature is to connect objects to the network through communication technology, thereby realizing an intelligent network that interconnects people and machines and things. In the embodiments of the present application, IoT technology can achieve massive connections, deep coverage, and terminal power saving through narrowband (NB) technology, for example.

[0043] Furthermore, in the embodiments of the present application, a STA may be a device in a connected vehicle system. The communication methods in a connected vehicle system are collectively referred to as V2X (where X represents everything). For example, V2X communication includes vehicle-to-vehicle (V2V) communication, vehicle-to-infrastructure (V2I) communication, vehicle-to-pedestrian (V2P) communication, and vehicle-to-network (V2N) communication.

[0044] In addition, in the embodiment of the present application, STA may also include sensors such as smart printers, train detectors, gas stations, etc., whose main functions include collecting data (part of the terminal equipment), receiving AP control information and downlink data, and sending electromagnetic waves to transmit data to the AP.

[0045] In addition, the AP in the embodiment of the present application may be a device for communicating with a STA. The AP may be a network device in a wireless local area network. The AP may be used to communicate with the STA through the wireless local area network.

[0046] From the perspective of the communication standards supported by the AP, in some implementations, the AP can be a device that supports the 802.11be standard. The AP can also be a device that supports various current and future 802.11 family WLAN standards, such as 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a.

[0047] From the perspective of STA-supported communication standards, in some implementations, non-AP STAs can support the 802.11be standard. Non-AP STAs can also support various current and future 802.11 family wireless local area network (WLAN) standards, including 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a.

[0048] In the embodiments of the present application, there is no limitation on the frequency bands supported by WLAN technology. In some implementations, the frequency bands supported by WLAN technology may include, but are not limited to, low frequency bands (e.g., 2.4 GHz, 5 GHz, 6 GHz) and high frequency bands (e.g., 45 GHz, 60 GHz).

[0049] It should be understood that the specific forms of STA and AP in the embodiments of the present application are not particularly limited and are merely illustrative.

[0050] Block confirmation mechanism

[0051] The block acknowledgement mechanism improves channel efficiency by aggregating multiple acknowledgements (Acks) into a single frame. A station or MLD that sends data using the block acknowledgement mechanism is called an originator, and a station or MLD that is intended to receive the data is called a recipient.

[0052] In addition to the GLK-GCR block acknowledgment or by using the unsolicited block acknowledgment extension mechanism, the block acknowledgment mechanism can be initialized by exchanging add block acknowledgment (ADDBA) request frames and / or ADDBA response frames. After initialization, the initiator can transmit a series of block quality of service (QoS) data frames to the receiver. A block can be started in a polled transmission opportunity (polled TXOP), in a service period (SP), or by winning a TXOP through enhanced distributed channel access (EDCA). The number of data frames in a block is limited, and the amount of state retained by the receiver is limited. The medium access control protocol data unit (MPDU) within the frames of a block can be acknowledged by a BA frame. Among them, the BA frame can be requested by a block acknowledgment request (BlockAckReq) frame.

[0053] The initiator can include a send buffer control. The send buffer control can use the send window to submit MPDUs for transmission and can release the send buffer when receiving a BA frame from the receiver. The send window can be represented by WinStartO and WinSizeO. WinStartO indicates the starting sequence number of the send window, and WinSizeO indicates the amount of buffer negotiated in the block acknowledgement protocol. The initiator can transmit QoS data frames with TIDs that match the block acknowledgement protocol in any order, as long as their sequence numbers are within the current transmission window.

[0054] It should be noted that the buffer zone can also be called cache.

[0055] The receiver may include a receive reordering buffer control for each transmission address (TA) / TID. The receive reordering buffer control may be used to control the associated control state. The receive reordering buffer may be responsible for reordering medium access control service data units (MSDUs) or aggregation medium access control service data units (A-MSDUs) so that the MSDUs or A-MSDUs are ultimately delivered to the next MAC process (or MAC flow) in the order of the received sequence numbers. It may also be responsible for identifying and discarding duplicate frames (i.e., frames with the same sequence number).

[0056] MLD follows the mechanisms defined by the Block Ack operation and the additional rules defined by the Block Ack process in Multilink Operation. The MLD that sends data using the Block Ack mechanism is referred to as the sender MLD or initiator MLD, while the MLD that is the intended recipient of the data is referred to as the receiver MLD.

[0057] To establish a block acknowledgement agreement between two MLDs, the initiating MLD may send an ADDBA request frame to the receiving MLD from any attached STA operating on an enabled link. The sending of the ADDBA request frame may depend on the power state of the non-AP STA operating on the link. The ADDBA request frame may indicate the TID for which the block acknowledgement agreement is being established. Upon receiving the ADDBA request frame, the receiving MLD shall respond via any attached STA operating on the enabled link. The sending of the ADDBA response frame may depend on the power state of the non-AP STA operating on the link. The receiving MLD may choose to accept or reject the request. If the receiving MLD accepts the request, a block acknowledgement agreement may be established between the initiating and receiving MLDs for the TID specified in the ADDBA frame.

[0058] When a block acknowledgement protocol is established between two MLDs for a TID, QoS data frames belonging to the TID can be exchanged between the two MLDs on any link to which the TID is mapped according to the TID to link mapping (TTLM) rules and multi-link power management rules.

[0059] The initiating MLD MAY maintain a single common transmit buffer control. This single common transmit buffer control MAY use WinStart(0) and WinSize(0) to handle each block return protocol negotiated with the receiving MLD to submit MPDUs for transmission over links subject to TTLM. The sending MLD MUST release the transmit buffer associated with a successfully received MPDU upon receipt of the corresponding BA frame.

[0060] The receiving MLD is used for each<peer MLD,TID> The tuple maintains a single, common receive reordering buffer, independent of the number of established links. The receive reordering buffer is responsible for reordering MSDUs or A-MSDUs so that they are ultimately passed up to the next MAC process in the received sequence number order. This buffer is also responsible for identifying and discarding duplicate frames (i.e., frames with the same sequence number as a currently buffered frame) as part of this block acknowledgment protocol.

[0061] in-order delivery

[0062] The following uses the WiFi system as an example to illustrate the sequential transmission mechanism.

[0063] Wi-Fi's MAC data service provides a peer logical link control (LLC) sublayer entity or IEEE 802.1Q bridge port with the ability to exchange MSDUs. To support this service, the local MAC can use the underlying physical layer services to transmit the MSDU to the peer MAC entity, where it is passed to the peer LLC sublayer or bridge port. This asynchronous MSDU transmission is performed on a connectionless basis. By default, MSDU transmission is on a best-effort basis. However, QoS facilities use TIDs to specify different services on a per-MSDU basis.

[0064] A station may maintain one or more SN spaces to determine the sequence number of a frame when transmitting it. When multiple SN spaces are supported, the appropriate SN space may be determined by information in the MAC Control field of the frame to be transmitted. For each MSDU (not in an A-MSDU), A-MSDU, or medium access control management protocol data unit (MMPDU) transmitted using that SN space, each SN space may be represented by a modulo 4096 counter, starting at 0 and incrementing by 1.

[0065] It should be noted that the SN space can also be called an SN sequence. In addition, as mentioned above, the SN space can be represented by a counter. Different SN spaces can correspond to different counters.

[0066] For an MLD, the MLD can maintain one or more SN spaces. These SN spaces can be used when a STA affiliated with the MLD sends individually addressed QoS data frames to STAs associated with the associated MLD to determine the frame sequence number. The SN space can contain one counter or multiple counters.

[0067] It should be noted that MPDUs belonging to the same MSDU or A-MSDU should have the same sequence number. Different MSDUs (if not in an A-MSDU), A-MSDUs or MMPDUs have different sequence numbers in most cases.

[0068] Under the in-order transmission mechanism, after two devices (such as two stations or two MLDs) have negotiated and established a block acknowledgment protocol for a certain TID, they need to process data units (or packets) based on the transmission order (such as sequence number) according to the currently defined block acknowledgment mechanism operation rules. This limitation leads to the head of line blocking problem. The head of line blocking problem includes: on the receiving side, if there are holes in the data units stored in the reordering buffer (i.e., there are data units with earlier sequence numbers that have not been received), the data stored in the reordering buffer will not be passed to the next MAC process; for the sender, the sender needs to send data units with lower SNs before sending data units with higher SNs. In the case of head of line blocking, data units may not be transmitted in a timely manner. In particular, for data units with low latency transmission requirements, the data units may not be transmitted quickly due to head of line blocking, resulting in the transmission of data units failing to meet their QoS requirements.

[0069] Some technologies propose that a mechanism based on out-of-order transmission or reception of data units (abbreviated as out-of-order transmission mechanism) can be introduced into the block confirmation mechanism to solve the head-of-line blocking problem. The out-of-order transmission mechanism is described below.

[0070] Out-of-order transmission

[0071] In some embodiments, a medium access control service access point (MAC-SAP) is allowed to optionally transmit out-of-order data units for specific TIDs. The number of specific TIDs may be limited to one or two. This out-of-order transmission mechanism may be limited to the establishment of flows that can benefit from out-of-order packet transmission (e.g., following the corresponding subcarrier spacing (SCS) negotiation). Furthermore, some embodiments may differentiate between the packet number (PN) space used by frames that require out-of-order transmission and frames that require in-order transmission. This out-of-order transmission mechanism is described below using Figure 2 as an example.

[0072] As shown in Figure 2, although the receiver initially fails to successfully receive the MPDU with SN 11 and PN 51 (i.e., the hole shown in Figure 2), it still passes the received MPDU (e.g., PN 50 or 113) to the next MAC process for replay detection. Then, after receiving the MPDU with PN 51, it passes it along with the subsequently received MPDU to the next MAC process.

[0073] In some embodiments, different PN spaces can be configured for the SN space. Different PN spaces can correspond to different replay counters. For example, independent PN sequences and replay counters can be configured for low-latency data units, enabling earlier processing of these units. This also allows continued support for replay detection of other data units within the same TID. This out-of-order transmission mechanism is illustrated below using Figure 3 as an example.

[0074] As shown in Figure 3, traffic flows A and B can belong to different PN spaces (i.e., use different PN sequences). Accordingly, flows A and B use different replay counters. As shown in Figure 3, even if the STA fails to successfully receive MPDU0 sent by the AP, it can still transmit MPDU2 and MPDU3 to the upper layer.

[0075] Figure 4 is a schematic flowchart of a wireless communication method provided by an embodiment of the present application. The method shown in Figure 4 can be performed by a first device and a second device. For example, the first device can be the initiator described above, and the second device can be the receiver. Alternatively, the first device can be the receiver described above, and the second device can be the initiator.

[0076] The method shown in FIG4 includes step S410 .

[0077] Step S410: The first device receives a first frame sent by the second device.

[0078] The first frame may be used to indicate information related to out-of-order transmission in a block acknowledgement mechanism. For example, the first frame may be used to indicate information related to out-of-order transmission in a block acknowledgement mechanism of a data unit corresponding to the first TID.

[0079] It should be noted that the block acknowledgement mechanism described in this application includes one of the following: a block acknowledgement mechanism based on multi-link operation (MLO); and a block acknowledgement mechanism based on non-MLO. For the MLO-based block acknowledgement mechanism, both the first device and the second device can be MLD devices, and the first device and the second device have established multi-link. For the non-MLO block acknowledgement mechanism, one of the first device and the second device is a non-MLD device.

[0080] Based on the first frame, the first device and the second device can indicate and confirm the out-of-order transmission in the block acknowledgement mechanism, thereby ensuring that out-of-order transmission is effectively applied to data transmission. In addition, for low-latency data streams, indicating the out-of-order transmission in the first frame can enable the low-latency data stream to apply out-of-order transmission, thereby meeting the latency requirements of the data stream.

[0081] It should be noted that this application does not limit the specific implementation method of out-of-order transmission.

[0082] For example, when out-of-order transmission is enabled, the QoS data of one SN space (i.e., individually addressed QoS data units) is not passed to the next MAC process (or the protocol layer above the physical layer (referred to as the upper layer)) in SN order. For example, when out-of-order transmission is enabled, even if the data unit received by the receiver is larger than the SN of the unreceived data unit, the receiver can pass the received data unit to the next MAC process for processing. That is, when out-of-order transmission is enabled, if the sequence number SN of the received first data unit is larger than the SN of the unreceived second data unit, the first data unit can be passed to the next MAC process. The first data unit and the second data unit may belong to the same SN space. That is, the first data unit and the second data unit are QoS data units corresponding to the same TID (e.g., the first TID), i.e., individually addressed QoS data units. Exemplarily, the first SN space may correspond to multiple PN spaces. The multiple PN spaces may include the first PN space. The data units of the first PN space may be passed to the next MAC process in PN order.

[0083] It should be noted that, in this application, the SN of the first data unit is greater than the SN of the second data unit, which may mean that the time when the initiator or the transmitting end sends the first data unit in the MAC SAP (or the time when the SN is added to the first data unit) is later than the time when the second data unit is sent. Therefore, it can be seen that if the time when the initiator sends the first data unit in the MAC SAP is later than the time when the second data unit is sent, if out-of-order transmission is enabled, even if the receiver does not receive the second data unit, the receiver can first pass the first data unit to the next MAC process for processing.

[0084] For another example, when out-of-order transmission is enabled, a data unit of the same TID may use multiple SN spaces.

[0085] For example, when out-of-order transmission is enabled, the order in which the initiator sends data units in the MAC SAP may differ from the order in which the receiver receives the data units in the MAC SAP. For example, if the initiator sends data unit 0 and data unit 1 in sequence in the MAC SAP, and the receiver receives data unit 1 and data unit 0 in sequence in the MAC SAP, the transmission of data unit 0 and data unit 1 can be considered out-of-order transmission because the receiver receives data unit 1 first.

[0086] For example, when out-of-order transmission is enabled, data units can be passed to the next MAC process in the order of increasing sequence number subfield values, but there may be gaps or holes in the sequence number subfield values ​​of the data units passed to the next MAC process.

[0087] It should be noted that the data units involved in this application may include one or more of the following: MSDU, A-MSDU, MPDU.

[0088] Optionally, the first frame may be used to receive or reject the first request. The first request may, for example, be related to an out-of-order transmission request in a block acknowledgement mechanism. Optionally, the first frame may be used to configure information related to out-of-order transmission in a block acknowledgement mechanism.

[0089] In some embodiments, the first frame may include an ADDBA response frame. When the first frame includes an ADDBA response frame, the first device may be the initiator and the second device may be the receiver. The ADDBA response frame allows the receiver to confirm information related to out-of-order transmission. In other words, the first frame may be used to confirm information related to out-of-order transmission.

[0090] In some embodiments, the first frame may include an ADDBA request frame. When the first frame includes the ADDBA request frame, the first device may be the recipient and the second device may be the initiator. The initiator may indicate, suggest, or configure information related to out-of-order transmission to the recipient via the ADDBA request frame.

[0091] It can be seen from the above embodiments that either the sender or the receiver can send the first frame to indicate, suggest, configure or confirm information related to out-of-order transmission.

[0092] In some embodiments, both the first device and the second device can send information related to out-of-order transmission. For example, the second device can send a first frame to the first device, and the first device can send a second frame to the second device. Both the first frame and the second frame can be related to out-of-order transmission. For example, the first device can send the second frame to the second device and expect to receive the first frame. In another example, in response to the second device receiving the second frame, the second device can send the first frame to the first device. In other words, the first frame can be sent in response to the second frame.

[0093] In some implementations, the second frame may be used to request configuration of information related to out-of-order transmission in a block acknowledgment mechanism. In this case, the first frame may be used to confirm the configuration of the second frame. It should be noted that this application does not limit the confirmation method of the first frame. For example, the first frame may feedback an acknowledgement (ACK) or a negative acknowledgement (NACK). For another example, the second frame may include one or more fields to configure information related to out-of-order transmission in a block acknowledgment mechanism, and the first frame may include the same one or more fields to confirm information related to out-of-order transmission in a block acknowledgment mechanism. The values ​​of the same one or more fields in the first frame may be the same as the values ​​of one or more fields included in the second frame to confirm the configuration of the second frame. Alternatively, the values ​​of the same one or more fields in the first frame may be different from the values ​​of one or more fields included in the second frame, and the initiator and the receiver may perform out-of-order transmission based on the indication of the first frame.

[0094] Alternatively, the first frame may be determined based on the second frame. For example, the information related to out-of-order transmission in the first frame may be the same as the information related to out-of-order transmission in the second frame, to confirm that the second device uses the configuration in the first frame. For another example, if the information related to out-of-order transmission in the first frame may be different from the information related to out-of-order transmission in the second frame, the first device and the second device may perform out-of-order transmission based on the first frame.

[0095] For example, the second frame may include an ADDBA request frame. Correspondingly, the first frame may be an ADDBA confirmation frame. That is, the first device and the second device may interact through the ADDBA request frame and the ADDBA confirmation frame to request and confirm information related to out-of-order transmission in the block confirmation mechanism.

[0096] In some embodiments, information related to out-of-order transmission in a block acknowledgment mechanism may be carried in one or more fields. For example, the one or more fields may include one or more of the following fields: an out-of-order transmission configuration field, and multiple block acknowledgment parameter set fields.

[0097] For example, the first frame may include one or more of the following fields: an out-of-order transmission configuration field, one or more block acknowledgement parameter set fields. For another example, the second frame may include one or more of the following fields: an out-of-order transmission configuration field, one or more block acknowledgement parameter set fields.

[0098] The out-of-order transmission configuration field can be used to configure or confirm some information related to out-of-order transmission in the block acknowledgement mechanism. For example, the out-of-order transmission configuration field can be used to configure or confirm one or more of the following information: whether to enable out-of-order transmission and out-of-order transmission parameters.

[0099] In some embodiments, the out-of-order transmission configuration field may carry a first element. That is, information related to out-of-order transmission in the block confirmation mechanism may be carried in the first element. Based on this, the first element may also be referred to as an out-of-order transmission configuration element.

[0100] Multiple Block Acknowledgement Parameter Set fields may correspond one-to-one with multiple SN spaces. For example, if the data unit of the first TID uses N SN spaces, the first frame may include N Block Acknowledgement Parameter Set fields. N may be an integer greater than 1. The N SN spaces may correspond one-to-one with the N Block Acknowledgement Parameter Set fields.

[0101] It should be noted that both the out-of-order transmission configuration field and the multiple block acknowledgement parameter set fields may be optional fields. For example, if out-of-order transmission is not enabled, the first frame or the second frame may not include the out-of-order transmission configuration field. For another example, if out-of-order transmission is not enabled, the first frame or the second frame may include only one block acknowledgement parameter set field.

[0102] The following uses the ADDBA request frame and the ADDBA response frame as an example to illustrate the formats of the first frame and the second frame.

[0103] The action field of the ADDBA request frame may include some or all of the following fields: category, block ACK action, dialog token, block ACK parameter set, block ACK timeout value, block ACK starting sequence control, GCR group address element (optional), multi-band (optional), TCLAS (optional), ADDBA extension (optional), EDMG flow control extension configuration (optional), SAR configuration (optional), out-of-order transmission configuration (optional), and block ACK parameter set (optional). The following examples illustrate these fields.

[0104] For the Dialog Token field, for the Unsolicited Block Return Extended Protocol, the Dialog Token field may be set to 0; otherwise, the Dialog Token field may be set to a non-zero value selected by the STA.

[0105] Regarding the Block Acknowledgement Parameter Set field, when the Block Acknowledgement protocol corresponds to multiple different SN sequences, the ADDBA request frame will contain multiple Block Acknowledgement Parameter Set fields. One Block Acknowledgement Parameter Set field can be used to indicate the Block Acknowledgement Parameter Set corresponding to one of the SN sequences. For example, the first Block Acknowledgement Parameter Set field can correspond to the Block Acknowledgement Parameter Set corresponding to the SN sequence corresponding to a data unit that does not carry a target tag (described below). By default, the second Block Acknowledgement Parameter Set field corresponds to the Block Acknowledgement Parameter Set corresponding to the SN sequence corresponding to a data unit that carries a target tag.

[0106] It should be noted that, in this application, the description of each field in the Action field of the ADDBA request frame can refer to the above or related technologies. Related technologies may include, for example, the description of the Action field in the IEEE 802.11 specification. For example, the Classification field can refer to the definition in the Action field of the IEEE 802.11 specification. As another example, the Block Ack Action field can refer to the definition for each ADDBA request variant in the corresponding section of the IEEE 802.11 specification. As another example, the Dialogue Token field can refer to the definition in the Dialogue Token field section of the IEEE 802.11 specification. As another example, the Block Ack Timeout Value field can refer to the definition in the Block Confirmation Timeout Value field section of the IEEE 802.11 specification. As another example, the Block Ack Parameter Set field can refer to the definition of the Block Ack Parameter Set field in the IEEE 802.11 specification. As another example, the Block Ack Start Sequence Control field can refer to the definition in the Block Ack Start Sequence Control field section of the IEEE 802.11 specification. For another example, the block acknowledgement parameter set field may refer to the definition in the block acknowledgement parameter set field section in the IEEE 802.11 specification.

[0107] The ADDBA response frame may include one or more of the following fields: Classification, Block Ack Action, Dialog Token, Status Code, Block Ack Parameter Set, Block Ack Timeout, GCR Group Address Element (optional), Multi-Band (optional), TCLAS (optional), ADDBA Extension (optional), Reservation, EDMG Flow Control Extension Configuration (optional), SAR Configuration (optional), Originator Preferred MCS Element (optional), Out-of-Order Delivery Configuration (optional), and Block Ack Parameter Set (optional). The following are examples of these fields.

[0108] The Dialog Token field may be copied from the corresponding received ADDBA request frame.

[0109] Regarding the Block Acknowledgement Parameter Set field, when the Block Acknowledgement protocol corresponds to multiple different SN sequences, the ADDBA response frame may contain multiple Block Acknowledgement Parameter Set fields. A Block Acknowledgement Parameter Set field may be used to indicate the Block Acknowledgement Parameter Set corresponding to one of the SN sequences. The first Block Acknowledgement Parameter Set field may correspond to the Block Acknowledgement Parameter Set corresponding to the SN sequence corresponding to the data unit that does not carry the target flag. By default, the second Block Acknowledgement Parameter Set field corresponds to the Block Acknowledgement Parameter Set corresponding to the SN sequence corresponding to the data unit that carries the target flag.

[0110] It should be noted that, in the present application, the description of each field in the action field of the ADDBA request frame can refer to the above or related technologies. Related technologies may include, for example, the description of the action field in the IEEE 802.11 specification. For example, the classification field can refer to the definition in the action field of the IEEE 802.11 specification. For another example, the status code field can refer to the definition in the status code field section of the IEEE 802.11 specification. For another example, the block confirmation timeout value field can refer to the definition in the block determination timeout value field section of the IEEE 802.11 specification. For another example, the block confirmation start sequence control field can refer to the definition in the block confirmation start sequence control field section of the IEEE 802.11 specification.

[0111] In some embodiments, the information related to out-of-order transmission in the block confirmation mechanism may include one or more of the following: whether out-of-order transmission is enabled, and out-of-order transmission parameters.

[0112] When the information related to out-of-order transmission in the block acknowledgement mechanism includes whether out-of-order transmission is enabled, the initiator may request the receiver whether to enable out-of-order transmission for a corresponding TID (e.g., a first TID); and the receiver may determine whether out-of-order transmission is enabled for the corresponding TID. The corresponding TID may be indicated by a TID field in a block acknowledgement parameter set field included in the first frame or the second frame.

[0113] The "Whether to Enable Out-of-Order Transmission" field can be used to indicate whether out-of-order transmission is enabled. For example, a value of 1 in the "Whether to Enable Out-of-Order Transmission" field can indicate that out-of-order transmission of the data unit corresponding to the corresponding TID is enabled; a value of 0 in the "Whether to Enable Out-of-Order Transmission" field can indicate that out-of-order transmission of the data unit corresponding to the corresponding TID is not enabled. For another example, a value of 0 in the "Whether to Enable Out-of-Order Transmission" field can indicate that out-of-order transmission of the data unit corresponding to the corresponding TID is enabled; a value of 1 in the "Whether to Enable Out-of-Order Transmission" field can indicate that out-of-order transmission of the data unit corresponding to the corresponding TID is not enabled.

[0114] The out-of-order transmission parameter may be used to indicate one or more parameters related to out-of-order transmission when out-of-order transmission is enabled. The out-of-order transmission parameter may be carried in the out-of-order transmission parameter set field. The out-of-order transmission parameter set field may include one or more fields to indicate one or more out-of-order transmission parameters.

[0115] In some embodiments, the first frame or the second frame may include first information. The first information may be used to indicate whether the information related to out-of-order transmission in the block acknowledgement mechanism includes the out-of-order transmission parameter. Alternatively, the first information may be used to indicate whether the out-of-order transmission parameter set field exists.

[0116] For example, when out-of-order transmission is not enabled, the first information may indicate that the out-of-order transmission parameter does not exist in the corresponding element. For another example, when out-of-order transmission is enabled, the first information may indicate that the out-of-order transmission parameter does not exist (for example, a preconfigured, predefined, or default out-of-order transmission parameter may be used) in the corresponding element.

[0117] In the case where the first information indicates that the out-of-order transmission parameter does not exist, the field corresponding to the out-of-order transmission parameter may not be transmitted, thereby reducing the occupation of communication resources.

[0118] Optionally, the first information may be carried in the presence of an out-of-order transmission parameter set field. For example, if the value of the presence of an out-of-order transmission parameter set field is 1, it may indicate that the out-of-order transmission configuration element includes the out-of-order transmission parameter set field; if the value of the presence of an out-of-order transmission parameter set field is 0, it may indicate that the out-of-order transmission configuration element does not include the out-of-order transmission parameter set field. For another example, if the value of the presence of an out-of-order transmission parameter set field is 0, it may indicate that the out-of-order transmission configuration element includes the out-of-order transmission parameter set field; if the value of the presence of an out-of-order transmission parameter set field is 1, it may indicate that the out-of-order transmission configuration element does not include the out-of-order transmission parameter set field.

[0119] As described above, information related to out-of-order transmission in the block acknowledgement mechanism can be carried in the out-of-order transmission configuration field. The out-of-order transmission configuration field can carry a first element. The following describes information related to out-of-order transmission in the block acknowledgement mechanism using the first element, and explains how the first frame or the second frame indicates information related to out-of-order transmission in the block acknowledgement mechanism.

[0120] Figure 5 is an example diagram of the format of the first element provided in an embodiment of the present application. As shown in Figure 5, the first element may include one or more of the following fields: element ID, length, and element ID extension. Among them, the element ID field may occupy 1 byte; the length field may occupy 1 byte; and the element ID extension field may occupy 1 byte. These fields can all refer to the definitions in the relevant technology. The relevant technology may include, for example, the IEEE 802.11 specification. The first element may also include other fields, which are not limited in this application.

[0121] As shown in Figure 5, the first element may include an out-of-order transmission control field and / or an out-of-order transmission parameter set field. The out-of-order transmission control field may occupy 1 byte, and the bytes occupied by the out-of-order transmission parameter set field may be variable.

[0122] Figure 6 illustrates an example format of the out-of-order transmission control field provided in an embodiment of the present application. As shown in Figure 6 , the out-of-order transmission control field may include one or more of the following fields: whether out-of-order transmission is enabled, whether an out-of-order transmission parameter set exists, and reserved. The out-of-order transmission enable field may occupy one bit, and the out-of-order transmission parameter set field may occupy one bit. The out-of-order transmission control field may also include other fields, which are not limited in this application.

[0123] The out-of-order transmission parameters are described below with examples. The out-of-order transmission parameters may include one or more of the following: a processing mode, a first quantity, a first indication, a second indication, a third indication, and a conditional parameter. Each of these is described below.

[0124] The processing mode may be used to indicate whether the data unit of the first TID uses multiple SN spaces. For example, the processing mode may indicate whether the QoS data corresponding to the first TID (i.e., the individually addressed QoS data unit) uses only one SN space or one or more SN spaces.

[0125] The processing mode can be carried by the processing mode field. The encoding of the processing mode field can be shown in Table 1.

[0126] Table 1

[0127] In Table 1, the first value may be 0, and the second value may be 1. Alternatively, the first value may be 1, and the second value may be 0.

[0128] The first number may be used to indicate the number of SN spaces used by the data unit of the first TID.The data unit of the first TID may include QoS data corresponding to the first TID (ie, a separately addressed QoS data unit).

[0129] The first quantity may be carried in the SN space quantity field. The SN space quantity field may also be referred to as the SN sequence quantity field. This application does not limit the method by which the SN space quantity field indicates the first quantity. For example, the value indicated by the SN space quantity field plus 1 may be the first quantity. For another example, the value indicated by the SN space quantity field may be the first quantity.

[0130] The first indication may be used to indicate whether to distinguish and process data units of the first TID according to tags of the data units.

[0131] Optionally, the tag of the data unit can be used to classify the data unit. Alternatively, the tag of the data unit can be used to distinguish the corresponding data unit from other data units. For example, the tag of the data unit may include a first tag and / or a second tag. The first tag can be used to indicate that the corresponding data unit is a special data unit. Therefore, the first tag can also be called a target tag or a special tag. The second tag can be used to indicate that the corresponding data unit is not a special data unit. Special data units may, for example, include "low latency or urgent transmission" data units. That is, the target tag may include: a low latency tag; and / or an urgent transmission tag. For another example, the tag of the data unit may be marked by a sub-stream identifier (sub-TID).

[0132] In some implementations, when data units of a first TID are processed differently based on a data unit tag, the first device and / or the second device may process data units in the first TID that carry the first tag differently from data units that do not carry the first tag. Alternatively, the first device and / or the second device may process data units in the first TID that carry the first tag differently from data units that carry the second tag.

[0133] In some implementations, when data units of the first TID are processed differently according to the data unit tag, the first device and / or the second device may process data units with different sub-stream identifier tags in the first TID differently.

[0134] The first indication may be carried in the field of whether to distinguish the data unit mark. The present application does not limit the method of indicating the field of whether to distinguish the data unit mark. For example, a value of 1 in the field of whether to distinguish the data unit mark may indicate that the first device and / or the second device distinguishes the processing based on the data unit mark; a value of 0 in the subfield of whether to distinguish the data unit mark indicates that the first device and / or the second device does not need to distinguish the processing based on the data unit mark. For another example, a value of 0 in the field of whether to distinguish the data unit mark may indicate that the first device and / or the second device distinguishes the processing based on the data unit mark; a value of 1 in the subfield of whether to distinguish the data unit mark indicates that the first device and / or the second device does not need to distinguish the processing based on the data unit mark.

[0135] The second indication may be used to indicate whether to spatially distinguish and process the data unit of the first TID across multiple SNs according to the tag of the data unit, wherein the description of the tag of the data unit is as described above.

[0136] In some implementations, when data units of a first TID are processed using multiple SN spaces for differentiating processing based on a data unit tag, the first device and / or the second device may process data units carrying the first tag and data units not carrying the first tag in the first TID using the multiple SN spaces for differentiating processing. Alternatively, the first device and / or the second device may process data units carrying the first tag and data units carrying the second tag in the first TID using the multiple SN spaces for differentiating processing.

[0137] In some implementations, when data units of a first TID are processed differently based on a data unit tag, the first device and / or the second device may use multiple SN spaces to process data units with different substream identifier tags in the first TID differently. One SN space may correspond to one or more substream identifiers. For example, multiple SN spaces may correspond one-to-one to multiple substream identifiers.

[0138] The second indication can be indicated by whether the SN space or sequence field is distinguished based on the data unit tag. The present application does not limit the indication method of the second indication. For example, if the value of the field "Whether to distinguish the SN space or sequence based on the data unit tag" is 1, it can indicate that the data unit corresponding to the corresponding TID (such as a separately addressed QoS data unit) is further distinguished in SN space or sequence according to the tag of the data unit; if the value of the field "Whether to distinguish the SN space or sequence based on the data unit tag" is 0, it can indicate that the data unit corresponding to the corresponding TID (such as a separately addressed QoS data unit) is not further distinguished in SN space or sequence according to the tag of the data unit. For another example, if the value of the field "Whether to distinguish the SN space or sequence based on the data unit tag" is 0, it can indicate that the data unit corresponding to the corresponding TID (such as a separately addressed QoS data unit) is further distinguished in SN space or sequence according to the tag of the data unit; if the value of the field "Whether to distinguish the SN space or sequence based on the data unit tag" is 1, it can indicate that the data unit corresponding to the corresponding TID (such as a separately addressed QoS data unit) is not further distinguished in SN space or sequence according to the tag of the data unit.

[0139] The third indication can be used to indicate whether the first data unit can be passed to the next MAC process when the SN of the received first data unit is greater than (or later than) the SN of the unreceived second data unit. In other words, the third indication can be used to indicate whether the QoS data (i.e., individually addressed QoS data units) corresponding to the first TID using a specific SN sequence or SN space are allowed to be transmitted out of order. That is, even if there are data units with an earlier sequence number SN (or an earlier transmission order) that have not yet been received, in some cases (e.g., when the first condition is met), the receiver of the data unit will pass the received data unit with a later sequence number SN (or a later transmission order) to the next MAC process (or upper layer). It should be noted that when the number of SN sequences corresponding to the first TID is greater than 1, the specific SN sequence corresponding to the first TID may refer to one or each of the multiple SN sequences corresponding to the first TID.

[0140] The third indication can be indicated by the SN sequence whether out-of-order transmission is allowed field. The present application does not limit the indication method of the third indication. For example, the value of the SN sequence whether out-of-order transmission field is 1 can indicate that the QoS data (i.e., individually addressed QoS data unit) of the specific SN sequence (or specific counter) corresponding to the first TID is allowed to be transmitted out of order; the value of the SN sequence whether out-of-order transmission field is 0 can indicate that the QoS data (i.e., individually addressed QoS data unit) using the specific SN sequence (or specific counter) corresponding to the first TID is not allowed to be transmitted out of order. For another example, the value of the SN sequence whether out-of-order transmission field is 0 can indicate that the QoS data (i.e., individually addressed QoS data unit) of the specific SN sequence (or specific counter) corresponding to the first TID is allowed to be transmitted out of order; the value of the SN sequence whether out-of-order transmission field is 1 can indicate that the QoS data (i.e., individually addressed QoS data unit) using the specific SN sequence (or specific counter) corresponding to the first TID is not allowed to be transmitted out of order.

[0141] The condition parameter can be used to indicate a first condition. If the first condition is met, the first data unit can be passed to the next MAC process. For example, even if there are data units with earlier sequence numbers (or earlier transmission order) that have not yet been received, if the first condition is met, the receiver of the data unit will pass the first data unit with a later received sequence number (or later transmission order) to the next MAC process (or upper layer).

[0142] The conditional parameter may be carried in a conditional parameter field. The conditional parameter field may include one or more fields. The one or more fields may correspond one-to-one with one or more parameters included in the conditional parameter.

[0143] Figure 7 is an example diagram of the format of an out-of-order transmission parameter set field provided in an embodiment of the present application. As shown in Figure 7, the out-of-order transmission parameter set field may include one or more of the following fields: processing mode, number of SN spaces, whether to distinguish data unit marks, whether to distinguish SN spaces or sequences based on data unit marks, whether SN sequences allow out-of-order transmission, and conditional parameters. Among them, the processing mode field can occupy 1 bit; the number of SN spaces field can occupy 2 bits; whether to distinguish data unit marks field can occupy 1 bit; whether to distinguish SN spaces or sequences based on data unit marks field can occupy 1 bit; whether SN sequences allow out-of-order transmission field can occupy 1 bit; the number of bits occupied by the conditional parameters is variable. The description of the relevant fields is detailed above. The out-of-order transmission control field may also include other fields, which are not limited in this application.

[0144] The conditional parameters and the corresponding first condition are described in detail below.

[0145] The condition parameter may include one or more parameters. For example, the condition parameter may include one or more of the following: a first threshold, second information, a third threshold, third information, and a priority indication.

[0146] The first threshold can be used to indicate a threshold for SN deviation. It is understood that the first threshold can indicate the maximum allowable deviation between the SN of a first data unit that has been received and is to be transmitted and the SN of a second data unit that has not been received and has a higher sequence number. Therefore, the first threshold can also be called an SN deviation threshold.

[0147] In the case where the first condition is related to the first threshold, the first condition may include: a difference between the SN of the first data unit and the SN of the second data unit is less than or equal to the first threshold.

[0148] The first threshold may be carried in the SN deviation threshold field. The SN deviation threshold field may belong to the condition parameter field described above.

[0149] It should be noted that the second data unit can be any of the received data units. For example, the second data unit can be the data unit with the smallest SN or the largest SN among the unreceived data units. In other words, the second data unit can be the first data unit or the last data unit that has not been received.

[0150] The second information may be used to indicate whether the first condition is related to the first threshold. Alternatively, the second information may be used to indicate whether the condition parameter field contains an SN deviation threshold field.

[0151] The second information can be carried in the "Whether the SN Deviation Threshold Field Exists". For example, if the value of the "Whether the SN Deviation Threshold Subfield" is 0, it can indicate that the condition parameter field does not contain the SN Deviation Threshold Field; if the value of the "Whether the SN Deviation Threshold Subfield" is 1, it can indicate that the condition parameter field contains the SN Deviation Threshold Field. For another example, if the value of the "Whether the SN Deviation Threshold Subfield" is 1, it can indicate that the condition parameter field does not contain the SN Deviation Threshold Field; if the value of the "Whether the SN Deviation Threshold Subfield" is 0, it can indicate that the condition parameter field contains the SN Deviation Threshold Field.

[0152] The second threshold value may be used to indicate a buffer waiting threshold value. The second threshold value may be used to indicate a maximum waiting time of a received and to-be-transmitted data unit in the buffer.

[0153] In the case where the first condition is related to the second threshold, the first condition may include: a waiting time of the first data unit in the buffer is greater than or equal to the second threshold.

[0154] The second threshold may be carried in a buffer waiting time threshold field. The buffer waiting time threshold field may belong to the condition parameter field described above.

[0155] The third information may be used to indicate whether the first condition is related to the second threshold. Alternatively, the third information may be used to indicate whether the condition information field includes a buffer waiting time threshold field.

[0156] The third information can be carried in the field "Whether there is a buffer waiting time threshold." The present application does not limit the method for indicating the third information. For example, the value of the field "Whether there is a buffer waiting time threshold" is 0, which can indicate that the condition parameter field does not include the buffer waiting time threshold field; the value of the subfield "Whether there is a buffer waiting time threshold" is 1, which can indicate that the condition parameter field includes the buffer waiting time threshold field. For another example, the value of the field "Whether there is a buffer waiting time threshold" is 1, which can indicate that the condition parameter field does not include the buffer waiting time threshold field; the value of the subfield "Whether there is a buffer waiting time threshold" is 0, which can indicate that the condition parameter field includes the buffer waiting time threshold field.

[0157] The priority indication may be used to indicate whether the target marked data unit needs to be transmitted first.

[0158] In the case where the first condition is related to a priority indication, the first condition may include: the first data unit includes a target-tagged data unit. That is, even if there are data units with earlier SNs (or earlier transmission orders) that have not yet been received, the receiver of the data unit may pass the received target-tagged data units with later SNs (or later transmission orders) to the next MAC process (or upper layer) if the first condition is met.

[0159] The priority indication can be carried in the data unit field of whether the target mark is transmitted first. The present application does not limit the indication method of the priority indication. For example, the value of the data unit field of whether the target mark is transmitted first is 1, which can indicate that the data unit carrying the target mark is passed to the next MAC process (or upper layer) with priority; the value of the data unit field of whether the target mark is transmitted first is 0, which can indicate that the data unit carrying the target mark is not passed to the next MAC process (or upper layer) with priority.

[0160] Figure 8 is an example diagram of the format of a conditional parameter field provided in an embodiment of the present application. As shown in Figure 8, the conditional parameter field may include one or more of the following fields: whether there is an SN deviation threshold, an SN deviation threshold, whether there is a buffer waiting time threshold, a buffer waiting time threshold, and whether to prioritize the transmission of target marked data units. Among them, whether there is an SN deviation threshold field can occupy 1 bit; the SN deviation threshold field can occupy 2 or 3 bits; whether there is a buffer waiting time threshold field can occupy 1 bit; the buffer waiting time threshold field can occupy 2 or 3 bits; whether the target marked data unit field is prioritized for transmission can occupy 1 bit. The conditional parameter field may also include other fields (such as reserved fields), which are not limited in this application.

[0161] The first condition is described in detail below through Case 1 and Case 2, taking the condition parameter field shown in FIG8 as an example.

[0162] Case 1 includes: whether the data unit with the target tag is transmitted first field indicates that the data unit carrying the target tag is not delivered to the next MAC process (or upper layer) in priority.

[0163] For case 1, when the conditional parameter field includes the SN deviation threshold field and the buffer waiting time threshold field, the first condition indicated by the conditional parameter field may include: for the received first data unit, even if there is an unreceived data unit with a corresponding sequence number lower than the sequence number of the data unit (that is, there is a second data unit that is earlier in the transmission order but has not been received), the first data unit is still passed to the next MAC process (or upper layer) when the difference between the sequence number of the received and to-be-transmitted first data unit and the sequence number of the unreceived second data unit (for example, the earliest unreceived data unit) is less than or equal to the value indicated by the SN deviation threshold field, and the waiting time of the received and to-be-transmitted data unit in the buffer exceeds the time length indicated by the buffer waiting time threshold.

[0164] For case 1, when the conditional parameter field only includes the SN deviation threshold field, the first condition indicated by the conditional parameter field may include: for the received first data unit, even if there is an unreceived data unit with a corresponding sequence number lower than the sequence number of the data unit (that is, there is a data unit that is earlier in the transmission order but has not been received), the first data unit is still passed to the next MAC process (or upper layer) when the difference between the sequence number of the received and to-be-transmitted data unit and the sequence number of the unreceived data unit (for example, the earliest unreceived data unit) is less than or equal to the value indicated by the SN deviation threshold field.

[0165] For case 1, when the conditional parameter field only includes the buffer waiting time threshold field, the first condition indicated by the conditional parameter may include: for the received first data unit, even if there is a second data unit with a corresponding sequence number lower than the sequence number of the first data unit that has not been received (that is, there is a data unit that is transmitted earlier but has not been received), the first data unit is still passed to the next MAC process (or upper layer) when the waiting time of the received and to-be-transmitted first data unit in the buffer exceeds the time length indicated by the buffer waiting time threshold field.

[0166] Case 2 includes: whether the data unit field of the target tag is transmitted first indicates that the data unit carrying the target tag is delivered to the next MAC process (or upper layer) first.

[0167] For case 2, when the conditional parameter field does not include the SN deviation threshold field and the buffer waiting time threshold field, the first condition indicated by the conditional parameter field may include: for the first data unit using a specific SN sequence corresponding to the corresponding TID, if it carries a target tag (such as a "low latency or urgent send" tag), even if there is a second data unit with an earlier SN (or an earlier transmission order) that has not been received and it is confirmed that the unreceived second data unit with an earlier SN (or an earlier transmission order) is a data unit that does not carry the "low latency or urgent send" tag, the receiver may also pass the received first data unit with a later SN (or a later transmission order) and carrying the "low latency or urgent send" tag to the next MAC process (or upper layer).

[0168] For case 2, when the conditional parameter field includes the SN deviation threshold field but does not include the buffer waiting time threshold field, the first condition indicated by the conditional parameter field may include: for the first data unit using a specific SN sequence corresponding to the corresponding TID, if it carries a target tag (such as a "low latency or urgent send" tag), even if there is a second data unit with a previous SN (or a previous transmission order) that has not been received and it is confirmed that the unreceived second data unit with a previous SN (or a previous transmission order) is a data unit carrying the "low latency or urgent send" tag, if the difference between the SN of the first data unit carrying the "low latency or urgent send" tag that has been received and is to be transmitted by the receiver and the SN of the second data unit carrying the "low latency or urgent send" tag that has not been received (for example, the earliest unreceived data unit carrying the "low latency or urgent send" tag) is less than or equal to the value indicated by the SN deviation threshold field, the first data unit is still passed to the next MAC process (or to the upper layer).

[0169] In some embodiments, when data units of the same TID can use multiple SN spaces, the multiple SN spaces may include a second SN space and a third SN space, the second SN space can be used for target-tagged data units, and the third SN space can be used for non-target-tagged data units.

[0170] As described above, the target tag may include, for example, a low-latency tag and / or an urgent transmission tag. Therefore, the target tag can be used to distinguish low-latency data units from non-low-latency data units and use different SN spaces. That is, low-latency data units can use a separate SN space, allowing for earlier processing of low-latency data units, thereby meeting low-latency requirements.

[0171] As a possible implementation method, the initiator can further distinguish data units with the same RA and TID (such as individually addressed QoS data units) based on the tags of the data units, and allocate different SN spaces (or SN sequences) and corresponding caches for target tags and non-target tags. The receiver can further distinguish data units with the same TA and TID based on the tags of the data units, and allocate different caches for target tags and non-target tags. The initiator and the receiver can establish block confirmation protocol parameters and operating parameters per (or based on) RA, TID and data unit tags. That is, the first device and / or the second device can use different SN spaces or sequences for data units carrying target tags and data units not carrying target tags, thereby establishing different block confirmation protocol parameters and operating parameters. This is illustrated below with reference to Figure 9.

[0172] As shown in Figure 9, the initiator can include a send buffer (or cache) control per (or based on) RA, TID, and data unit tag. The send buffer can use WinStartO and WinSizeO to submit MPDUs for transmission and release the send buffer upon receiving a BA frame from the receiver. WinStartO is the starting sequence number of the send window, and WinSizeO is the buffer size negotiated in the block acknowledgment protocol. The receiver can include a receive reordering buffer (or cache) control per (or based on) TA, TID, and data unit tag. The receive reordering buffer can use WinStartB and WinSizeB to reorder data units. WinStartB represents the value of the sequence number field of the first unreceived data unit (e.g., an MSDU or A-MSDU, sorted in ascending sequence number order); WinSizeB represents the size of the receive window; and WinEndB represents the highest sequence number of the data unit expected to be received in the current receive window. The following uses two data unit tag indication methods as examples for explanation.

[0173] In the first indication method, the target tag of the data unit can be indicated as "low latency or urgent transmission". In this case, on the initiator, for the same RA and TID, the data unit carrying the "low latency or urgent transmission" tag and the data unit not carrying the "low latency or urgent transmission" tag or carrying the "non-low latency or non-urgent transmission" tag can use different SN spaces or sequences, respectively, thereby corresponding to different transmission cache controls. On the receiver, for the same TA and TID, the data unit carrying the "low latency or urgent transmission" tag and the data unit not carrying the "low latency or urgent transmission" tag or carrying the "non-low latency or non-urgent transmission" tag can use different SN spaces or sequences, respectively, thereby corresponding to different reception reordering cache controls.

[0174] In the second indication method, the target tag of the data unit can be marked by a sub-stream identifier (sub-TID). The sub-stream identifier can be an integer such as 0, 1, etc. Data units carrying different sub-stream identifiers can use different SN sequences (or SN spaces). On the initiator, for the same RA and TID, the data unit can use different SN spaces or sequences based on the sub-stream identifier, thereby corresponding to different transmission buffer control. On the receiver, for the same TA and TID, the data unit can use different SN spaces or sequences based on the sub-stream identifier, thereby corresponding to different reception reordering buffer control.

[0175] Aggregation control, as shown in Figure 9, can create an A-MPDU. Aggregation control can adjust the acknowledgement policy of the transmitted QoS data frame according to the rules defined in the initiator behavior to request a BA frame response.

[0176] The receiver includes a receive reordering buffer control per (or based on) TA, stream TID, and data unit tag, including related control state. The receive reordering buffer is responsible for reordering data units (such as MSDUs or A-MSDUs) so that: 1) if the current SN sequence does not allow out-of-order transmission, the data units are ultimately delivered to the next MAC process in the order of the received sequence numbers; or, 2) if the current SN sequence allows out-of-order transmission, if the block first condition is met, the receiver delivers the received data units with the later sequence numbers (or the later transmission order) to the next MAC process (or upper layer), even if there are data units with earlier sequence numbers (or earlier transmission order) that have not yet been received. The receive reordering buffer is also responsible for identifying and discarding duplicate frames (i.e., frames with the same sequence number SN) corresponding to the block acknowledgment protocol. The receive reordering buffer can maintain its own state independent of the scoreboard context control to perform receive reordering buffer control operations.

[0177] For each block acknowledgment protocol, the receiver can choose between fully stateful operation and partially stateful operation. The scoreboard context control stores an acknowledgment bitmap containing the current reception status of the data unit (e.g., MSDU or A-MSDU) corresponding to the block acknowledgment protocol. In fully stateful operation, the state is stored in statically allocated memory. In partially stateful operation, the state is stored in cache memory. Therefore, in partially stateful operation, the state information is dependent on cache flushing. This entity provides the bitmap and the value of the Starting Sequence Number subfield to be used in the BA frame sent to the initiator in response to the initiator.

[0178] The deaggregation control entity separates the frames included in the A-MPDU.

[0179] Each received data unit (eg, MPDU) may be analyzed by the scoreboard context control and the received reorder buffer control.

[0180] Optionally, each block acknowledgment protocol can be uniquely identified by a tuple consisting of address 1, address 2, TID and / or target tag from an ADDBA response frame that successfully establishes a block acknowledgment protocol. The situation in which the target tag is included in the uniquely identified tuple means that the data unit carrying the target tag corresponds to a different SN space or sequence than the data unit not carrying the target tag. The STA corresponding to address 1 of the ADDBA response frame is the initiator; the STA corresponding to address 2 of the ADDBA response frame is the receiver. A data frame containing the same address 1, address 2 and TID values ​​as the ADDBA response frame that successfully established the block acknowledgment protocol is associated with the block acknowledgment protocol, provided that the block acknowledgment protocol is still valid, which is established by receiving the ADDBA response frame.

[0181] A block acknowledgement protocol can be established between the first device and the second device using the first frame and / or the second frame. The process of establishing the block acknowledgement protocol is described below with an example. In the following embodiments, the first device may be the initiator, and the second device may be the receiver. The first frame may be an ADDBA response frame, and the second frame may be an ADDBA request frame.

[0182] To establish a block acknowledgment protocol, the initiator may send an ADDBA request frame to indicate the TID for which the block acknowledgment protocol is being established, wherein the buffer size field and the block acknowledgment timeout field in the ADDBA request frame may be advisory.

[0183] The receiver can respond with an ADDBA response frame. The receiver can choose to accept or reject the request. When the receiver accepts, a block acknowledgement protocol is established between the sender and receiver.

[0184] When the receiver accepts the request, it indicates the type of block acknowledgement protocol, the type of block acknowledgement frame, and, in the ADDBA response frame, the number of buffers to allocate to support the block acknowledgement protocol and the block acknowledgement timeout to use. Specifically, if the block acknowledgement protocol supports distinguishing SN spaces or SN sequences based on tags, the receiver MAY allocate different buffers for each SN space or sequence. If the receiver rejects the request, the initiator does not use the block acknowledgement mechanism.

[0185] For each accepted block ACK protocol, the sender may set the sequence number of the frame sent according to that protocol to the value of the "Block Ack Start Sequence Control" field of the ADDBA request frame of the accepted block ACK protocol. In particular, if the block ACK protocol supports distinguishing SN spaces or SN sequences based on target tags, the sender shall set the sequence number of the frame sent according to that protocol for a certain SN space or SN sequence to the value of the "Block Ack Start Sequence Control" field of the corresponding SN space or SN sequence of the ADDBA request frame of the accepted block ACK protocol.

[0186] When the block acknowledgement protocol is successfully established, the initiator may change the size of its transmission window, wherein the transmission window is no larger than the buffer size field of the ADDBA response frame.

[0187] In particular, if the block acknowledgement protocol supports distinguishing SN spaces or SN sequences based on tags, the initiator can change the size of the transmission window corresponding to a certain SN space or sequence (e.g., the second SN space or the third SN space). For example, the transmission window corresponding to the SN space or sequence is not larger than the buffer size field corresponding to the SN space or sequence in the ADDBA response frame.

[0188] In some embodiments, if the value of the cache size field of the ADDBA response frame is smaller than the value of the cache size field of the ADDBA request frame, the initiator needs to change the size of its transmission window (i.e., WinSizeO) so that it meets the following conditions: less than or equal to the value of the cache size field of the ADDBA response frame.

[0189] In some embodiments, if the block confirmation protocol supports distinguishing SN spaces or SN sequences based on tags, if the value of the cache size field corresponding to a certain SN space or sequence of the ADDBA response frame is smaller than the value of the cache size field of the ADDBA request frame, the initiator needs to change the size of its transmission window (WinSizeO) so that it meets the following conditions: it is smaller than or equal to the value of the cache size field corresponding to the SN space or sequence of the ADDBA response frame.

[0190] In some embodiments, if the receiver supports out-of-order transmission, the sender may include an out-of-order transmission configuration element in an ADDBA request frame. The Out-of-Order Transmission Enable subfield indicates that out-of-order transmission of the data unit corresponding to the corresponding TID is enabled, and the Processing Mode subfield indicates that the data unit corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) uses only one SN space (or SN sequence). Furthermore, the Condition Parameter field may include one or more of the SN Deviation Threshold field, the Buffer Waiting Time Threshold field, and the Prioritize Transmission of Target Marked Data Units field. If the receiver accepts the out-of-order transmission configuration of the ADDBA request frame, the receiver sends an ADDBA response frame. The ADDBA response frame may include an out-of-order transmission configuration element. The Out-of-Order Transmission Enable field included in the ADDBA response frame may indicate that out-of-order transmission of the data unit corresponding to the corresponding TID is enabled. The Processing Mode field in the ADDBA response frame may indicate that the QoS data corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) uses only one SN space (or SN sequence). The ADDBA response frame may carry one or more of the SN deviation threshold subfield, the buffer waiting time threshold field, and the data unit field of whether to prioritize transmission of the target mark in the conditional parameter field. The ADDBA response frame may be the same as the conditional parameter field carried by the ADDBA request frame, or it may be different from the conditional parameter field carried by the ADDBA request frame. In particular, the conditional parameters adopted by the successfully established block confirmation protocol and passed to the next MAC process (or upper layer) shall be based on the conditional parameters carried by the ADDBA response frame that successfully established the block confirmation protocol. If the receiver rejects the out-of-order transmission configuration, the receiver may set the whether to enable out-of-order transmission field in the out-of-order transmission configuration element in the ADDBA response to not enable out-of-order transmission of the data unit corresponding to the corresponding TID, or not include the out-of-order transmission configuration element in the ADDBA response frame.

[0191] In some embodiments, if the receiver supports out-of-order transmission, the sender may include an out-of-order transmission configuration element in an ADDBA request frame. If the Out-of-Order Transmission Enable field indicates that out-of-order transmission of the data unit corresponding to the corresponding TID is enabled, and the Processing Mode subfield indicates that the data unit corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) can use one or more SN spaces (or SN sequences), the Number of SN Spaces or SN Sequences field indicates that the number of SN spaces or SN sequences used by the QoS data unit corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) is greater than one. Furthermore, the ADDBA request frame may indicate whether SN spaces are differentiated based on data unit markings, or the Sequence field indicates that SN spaces or sequences are further differentiated based on data unit markings, and carry SN sequence conditional parameters. If the Out-of-Order Transmission Allowed SN Sequence field indicates that out-of-order transmission is allowed for data units corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) using a specific SN sequence, the conditional parameter field may be included. The parameters carried in the conditional parameter field may be advisory. If the receiver accepts the out-of-order transmission configuration of the ADDBA request frame, the receiver may send an ADDBA response frame. The ADDBA response frame may include an out-of-order transmission configuration element. In this element, the whether out-of-order transmission is enabled field may indicate whether the data unit corresponding to the corresponding TID is enabled for out-of-order transmission, the processing mode field may indicate that the data unit corresponding to the corresponding TID (i.e., the individually addressed QoS data unit) may use one or more SN spaces (or SN sequences), the SN space or SN sequence number field indicates that it is the same as that carried by the ADDBA request frame, and indicates whether the SN space or sequence field is distinguished based on the data unit tag. It indicates whether the SN space or sequence field is further distinguished based on the data unit tag, and carries a conditional parameter field. Among them, the conditional parameter field may be the same as the conditional parameter field carried by the ADDBA request frame, or it may be different from the conditional parameter field carried by the ADDBA request frame. In particular, the conditional parameters adopted by the successfully established block confirmation protocol may be based on the conditional parameter field carried by the ADDBA response frame for the successful establishment of the block confirmation protocol. If the receiver rejects the out-of-order transmission configuration, the receiver can set the out-of-order transmission subfield in the out-of-order transmission configuration element in the ADDBA response to not enable out-of-order transmission of the data unit corresponding to the corresponding TID, or not include the out-of-order transmission configuration element in the ADDBA response frame.

[0192] In some embodiments, the third data unit exchanged between the first device and the second device belongs to the first SN space, the receiving window of the first SN space is the first window, the first window may correspond to the first transmission record, and the first transmission record is used to record whether the data unit in the first window has been delivered to the next MAC process. It is understandable that the first transmission record can be used to implement an out-of-order transmission block confirmation mechanism based on the first SN space.

[0193] The out-of-order transmission block confirmation mechanism based on the first SN space can be called an out-of-order transmission block confirmation mechanism based on a single SN space. The first SN space can be the SN space in the following scenario one or scenario two. Scenario one is a scenario in which different SN spaces or sequences correspond to RA, TID, and data unit tags. The first SN space can be the second SN space or the third SN space described above. That is, the out-of-order transmission block confirmation mechanism based on a single SN space defines a block confirmation mechanism in which out-of-order transmission is allowed for a specific SN sequence (such as an SN sequence corresponding to a data unit carrying a target tag). Scenario two is a scenario in which the same SN space or sequence corresponds to the same receiver address RA and stream identifier TID. That is, the out-of-order transmission block confirmation mechanism based on a single SN space defines a block confirmation mechanism corresponding to the same SN space or sequence.

[0194] This application does not limit the recording method of the first transmission record. For example, the first transmission record can be represented by a first bitmap, and the target bit of the first bitmap can be used to indicate whether the third data unit has been passed to the next MAC process. The first bitmap can be indexed according to the sequence number of the data unit.

[0195] For block acknowledgement protocols that allow out-of-order transmission, one or more receive reordering buffers may be maintained for each block acknowledgement protocol. The receive reordering buffer may be used to cache data units that have been received but not yet passed to the next MAC process. One or more receive reordering buffers may correspond to an SN space or sequence. The one or more receive reordering buffers may include a first buffer. The first buffer may maintain a first transmission record. The sequence number range indicated in the first transmission record may correspond to the sequence number range indicated by the first buffer. Each of the one or more receive reordering buffers may maintain a corresponding transmission record.

[0196] The first buffer may also maintain one or more of the following: a first parameter (represented by the WinStartB parameter), a second parameter (represented by the WinEndB parameter), and a third parameter (represented by the WinSizeB parameter). The WinStartB parameter may represent the value of the sequence number subfield of the first data unit that has not yet been received (arranged in ascending sequence number order). The WinEndB parameter may represent the highest sequence number expected to be received in the current receive window. The WinSizeB parameter may represent the size of the receive window.

[0197] Taking the first transmission record represented by the first bitmap as an example, how to set the first transmission record is described. For example, a 12-bit unsigned integer start sequence number, WinStartB, can represent the lowest sequence number position in the first bitmap. A 12-bit unsigned integer end sequence number, WinEndB, can represent the highest sequence number position in the first bitmap. The size of the first bitmap can be set to WinSizeB.

[0198] Optionally, the WinStartB parameter may be initialized to the value of the Starting Sequence Number subfield corresponding to the SN sequence in the ADDBA request frame. The WinEndB parameter may be initialized to WinStartB + WinSizeB - 1. WinSizeB is set to the smaller of the value of the BitmapLength field and the Buffer Size field corresponding to the SN sequence in the ADDBA response frame used to establish the Block Ack protocol.

[0199] For example, if the value of the bit corresponding to the sequence number position in the first bitmap is 0, it can indicate that the data unit with the corresponding sequence number has not been delivered to the next MAC process; if the value of the bit corresponding to the sequence number position in the first bitmap is 1, it can indicate that the data unit with the corresponding sequence number has been delivered to the next MAC process. Alternatively, if the value of the bit corresponding to the sequence number position in the first bitmap is 1, it can indicate that the data unit with the corresponding sequence number has not been delivered to the next MAC process; if the value of the bit corresponding to the sequence number position in the first bitmap is 0, it can indicate that the data unit with the corresponding sequence number has been delivered to the next MAC process.

[0200] Initializing the first bitmap may include: initializing the bit corresponding to the lowest SN in the first bitmap to a first parameter, initializing the first parameter to the value of the starting sequence number field corresponding to the first SN space, initializing the bit corresponding to the highest SN in the first bitmap to a second parameter, initializing the second parameter to the value of the first parameter + the value of a third parameter - 1, and the third parameter to the smaller of the length of the first bitmap and the value of the cache size field corresponding to the first SN space. The first parameter may be WinStartB, the second parameter may be WinEndB, and the third parameter may be WinSizeB.

[0201] Based on this, when initializing the first bitmap, one or more of the following can be set: the lowest serial number position in the first bitmap is WinStartB; the highest serial number position in the first bitmap is WinEndB; the corresponding bit values ​​within the position range of WinStartB and WinEndB in the first bitmap are all set to 0.

[0202] In some embodiments, upon receiving the third data unit, if the first transmission record indicates that the third data unit has been delivered to the next MAC process, the third data unit may be discarded. The first transmission record indicating that the third data unit has been delivered to the next MAC process may include: a bit corresponding to the third data unit in the first bitmap is 1.

[0203] In some embodiments, if the first transmission record indicates that the third data unit is not delivered to the next MAC process, the third data unit in the first buffer may be delivered to the next MAC process. For example, the first SN space may correspond to the first buffer, and if the first transmission record indicates that the third data unit is not delivered to the next MAC process and the third data unit satisfies the first condition, the third data unit in the first buffer may be delivered to the next MAC process.

[0204] In some embodiments, in response to the third data unit being delivered to the next MAC process, the first transmission record may be updated to indicate that the third data unit has been delivered to the next MAC process. The updating of the first transmission record to indicate that the third data unit has been delivered to the next MAC process may include: updating a bit corresponding to the third data unit in the first bitmap to 1.

[0205] The following describes an example of the operation of the first cache on the received third data unit.

[0206] The data frame corresponding to the third data unit may be associated with a specific block acknowledgement protocol, and the modification of the first transmission record corresponding to the first SN space (or sequence) may satisfy the following embodiments. In the following embodiments, SN is the value of the sequence number subfield of the received third data unit.

[0207] In some embodiments, if WinStart B ≤SN≤WinEnd B , the receiver can perform steps 1.1 to 1.6.

[0208] Step 1.1, if there is no data unit with the same SN in the first cache and the bit value corresponding to the SN of the third data unit in the first bitmap is set to 0, the received third data unit is stored in the cache; if there is a data unit with the same SN in the first cache or the bit value corresponding to the SN of the third data unit in the first bitmap is set to 1, the third data unit is discarded.

[0209] In step 1.2, if the third data unit is stored in the cache in consecutive ascending order of sequence number subfield values ​​starting with SN = WinStartB or SN > WinStartB, and meets the in-order transmission condition (i.e., in-order transmission to the next MAC process), the third data unit is passed to the next MAC process, and the first bitmap is updated, i.e., the bit value corresponding to the sequence number of the third data unit in the first bitmap is set to 1 (indicating that the data unit corresponding to the bit position has been passed to the next MAC process). It should be noted that the in-order transmission condition can be referred to the receive reordering buffer control operation defined in the IEEE 802.11 specification.

[0210] For other data units, steps 1 and 2 continue in sequence until there is no cached data unit with a sequence number that is the next sequence value after the current sequence number subfield and the value of the bit corresponding to the sequence number of the data unit in the first bitmap is 0 (i.e., indicating that the data unit has not been passed to the next MAC process). The current sequence number subfield refers to the sequence number subfield of the data unit currently being passed to the next MAC process. Optionally, the packet number subfield of the data unit last passed to the next MAC process (if any) is recorded and set to PN-S.

[0211] In step 1.3, WinStartB is set to the value of the sequence number subfield of the last data unit currently passed to the next MAC process plus 1.

[0212] Step 1.4, set WinEndB = WinStartB + WinSizeB – 1.

[0213] Step 1.5: Perform the following update step 1 and / or update step 2 based on the sequence number range indicated by the first bitmap and the corresponding transmission record (ie, the corresponding bit value).

[0214] In update step 1, the start sequence number (or the lowest sequence number) indicated by the first bitmap after the update can be set to WinStartB; the end sequence number (or the highest sequence number) indicated by the first bitmap can be set to WinEndB.

[0215] Update step 2: for a certain sequence number indicated in the updated first bitmap, when there is a transmission record corresponding to the sequence number in the first bitmap before the update (for example, the bit value is 1), the bit value corresponding to the indicated sequence number is set to the bit value corresponding to the sequence number in the first bitmap before the update; when there is no transmission record corresponding to the sequence number in the first bitmap before the update, the bit value corresponding to the indicated sequence number can be set to 0.

[0216] Step 1.6: Check whether there is a hole in the data units stored in the first cache (ie, for a cached data unit corresponding to a certain sequence number, there is a data unit that has not been received yet but has an earlier sequence number).

[0217] If a hole exists, the sequence number of the MSDU or A-MSDU with the highest sequence number that is not currently cached (ie, not received) is set as SN-Hole, and out-of-order transmission-related processing is performed based on the first condition.

[0218] If the first condition is determined based on the SN deviation threshold determined by negotiation of the block confirmation protocol, the data units stored in the first cache can be sorted in ascending order from the lowest to the highest according to the value of their sequence number field. Among them, if the difference between the sequence number of the cached third data unit and the SN-Hole is less than or equal to the value indicated by the SN deviation threshold field of the block confirmation protocol determined by negotiation, the third data unit is still passed to the next MAC process (or to the upper layer). At the same time, the bit value of the sequence number position corresponding to the third data unit in the first bitmap is set to 1, indicating that the third data unit at the corresponding sequence number position has been passed to the next MAC process (or to the upper layer). This process can continue in the order of the data units in the first cache until there are no data units in the cache that meet the first condition for passing to the next MAC process.

[0219] If the first condition is determined based on the priority transmission target tag determined by the block confirmation protocol negotiation, the data units stored in the first cache can be sorted in ascending order from lowest to highest according to the value of their sequence number subfield. When there is a data unit carrying a target tag, and the packet number field value corresponding to the data unit is continuous with PN-S (for example, its packet number field value is PN-S plus 1), the data unit is passed to the next MAC process (or to the upper layer). At the same time, PN-S is set to the packet number subfield of the data unit most recently passed to the next MAC process; and the bit value corresponding to the sequence number position of the data unit in the first bitmap can be set to 1 to indicate that the data unit at the corresponding sequence number position has been passed to the next MAC process. This process can continue in the order of the data units until there are no data units in the cache that meet the conditions for passing to the next MAC process.

[0220] In some embodiments, if WinEnd B <SN<WinStart B +2 11 , the recipient can perform steps 2.1 to 2.8.

[0221] Step 2.1: If there is no data unit with the same sequence number in the first buffer, the received MPDU is stored in the first buffer. If there is a data unit with the same sequence number in the first buffer, the data unit is discarded.

[0222] Step 2.2, set WinEndB = SN.

[0223] Step 2.3, set WinStartB = WinEndB - WinSizeB + 1

[0224] In step 2.4, any complete data units stored in the first buffer whose sequence number subfield values ​​are lower than the new value of WinStartB are passed to the next MAC process in ascending order of sequence number subfield values. The sequence number subfield values ​​of the data units passed to the next MAC process may have gaps.

[0225] Step 2.5: Pass the data units stored in the first cache to the next MAC process in ascending order of the sequence number subfield values ​​starting from WinStartB, and continue in sequence until there is no data unit with a sequence number that is the next sequence number value of the current sequence number subfield and the value of the bit corresponding to the MSDU or A-MSDU sequence number in the first bitmap is 0 (i.e., indicating that the data unit is not passed to the next MAC process). The current sequence number subfield refers to the sequence number subfield of the data unit currently passed to the next MAC process. Optionally, the packet number subfield (if any) of the data unit last passed to the next MAC process is recorded and its value is set to PN-S.

[0226] In step 2.6, WinStartB is set to the value of the sequence number subfield of the last data unit currently passed to the next MAC process plus 1.

[0227] Step 2.7, set WinEndB = WinStartB + WinSizeB – 1

[0228] Step 2.8: Follow steps 1.5 and 1.6 above.

[0229] In some embodiments, if WinStart B +2 11 ≤SN≤WinStart B , discard the data unit, that is, do not store the data unit in the buffer, nor pass the data unit to the next MAC process.

[0230] The method embodiments of the present application are described in detail above, and the device embodiments of the present application are described in detail below. It should be understood that the description of the method embodiments corresponds to the description of the device embodiments, so for parts not described in detail, reference can be made to the above method embodiments.

[0231] FIG10 is a schematic structural diagram of a communication device 1000 provided in an embodiment of the present application. The communication device 1000 is a first device and includes: a first receiving unit 1010 .

[0232] The first receiving unit 1010 is configured to receive a first frame sent by a second device, wherein the first frame is used to indicate information related to out-of-order transmission in a block acknowledgement mechanism.

[0233] In the embodiment of the present application, the above-mentioned communication device 1000 can be used to execute some or all of the method steps executed by the first device in the above-mentioned method embodiment. The communication device 1000 includes units or modules for executing the method steps corresponding to Figures 4 to 9 above. The method flow has been described in detail in the above-mentioned embodiments. The modules in this embodiment have the same functions or perform the same steps, which will not be repeated here. However, as those skilled in the art should know, the text descriptions corresponding to Figures 4 to 9 above can be introduced into this embodiment and correspond to the modules in the communication device 1000.

[0234] In an optional embodiment, the first receiving unit 1010 may be a transceiver 1230. The communication device 1000 may further include a processor 1210 and a memory 1220, as specifically shown in FIG12 .

[0235] FIG11 is a schematic structural diagram of a communication device 1100 provided in an embodiment of the present application. The communication device 1100 is a second device and includes a first sending unit 1110 .

[0236] The first sending unit 1110 is configured to send a first frame to a first device, wherein the first frame is used to indicate information related to out-of-order transmission in a block acknowledgement mechanism.

[0237] In an embodiment of the present application, the above-mentioned communication device 1100 can be used to execute some or all of the method steps executed by the first device in the above-mentioned method embodiment. The communication device 1100 includes a unit or module for executing the method steps corresponding to Figures 4 to 9 above. The method flow has been described in detail in the above-mentioned embodiment. The modules in this embodiment have the same functions or perform the same steps, which will not be repeated here. However, those skilled in the art should know that the text descriptions corresponding to Figures 4 to 9 above can be introduced into this embodiment and correspond to the modules in the communication device 1100.

[0238] In an optional embodiment, the first sending unit 1110 may be a transceiver 1230. The communication device 1100 may further include a processor 1210 and a memory 1220, as specifically shown in FIG12 .

[0239] Figure 12 is a schematic block diagram of a communication device according to an embodiment of the present application. The dashed lines in Figure 12 indicate that the unit or module is optional. The device 1200 can be used to implement the method described in the above method embodiment. The device 1200 can be a chip or a communication device.

[0240] The device 1200 may include one or more processors 1210. The processor 1210 may support the device 1200 to implement the method described in the above method embodiment. The processor 1210 may be a general-purpose processor or a special-purpose processor. For example, the processor may be a central processing unit (CPU). Alternatively, the processor may be another general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc. The general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.

[0241] The apparatus 1200 may further include one or more memories 1220. The memories 1220 store programs that can be executed by the processor 1210, causing the processor 1210 to perform the methods described in the above method embodiments. The memories 1220 may be independent of the processor 1210 or integrated into the processor 1210.

[0242] The apparatus 1200 may further include a transceiver 1230. The processor 1210 may communicate with other devices or chips via the transceiver 1230. For example, the processor 1210 may transmit and receive data with other devices or chips via the transceiver 1230.

[0243] The present invention also provides a computer-readable storage medium for storing a program. The computer-readable storage medium can be applied to the communication device provided in the present invention, and the program enables a computer to execute the method performed by the communication device in each embodiment of the present invention.

[0244] The present application also provides a computer program product. The computer program product includes a program. The computer program product can be applied to the communication device provided in the present application, and the program causes a computer to execute the method performed by the communication device in each embodiment of the present application.

[0245] The embodiments of the present application also provide a computer program. The computer program can be applied to the communication device provided in the embodiments of the present application, and the computer program enables a computer to execute the method executed by the communication device in each embodiment of the present application.

[0246] It should be understood that the terms "system" and "network" in this application can be used interchangeably. In addition, the terms used in this application are only used to explain the specific embodiments of this application and are not intended to limit this application. The terms "first", "second", "third", and "fourth" in the specification and claims of this application and the accompanying drawings are used to distinguish different objects rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions.

[0247] In the embodiments of the present application, a "field" may also be referred to as a "field," a "subfield," or a "subfield." A field may occupy one or more bytes (byte / octet), or a field may occupy one or more bits (bit).

[0248] In the embodiments of this application, the term "indication" may refer to a direct indication, an indirect indication, or an indication of an association. For example, "A indicates B" may refer to a direct indication of B, e.g., B can obtain information through A; it may refer to an indirect indication of B, e.g., A indicates C, e.g., B can obtain information through C; or it may refer to an association between A and B.

[0249] In the embodiment of the present application, "B corresponding to A" means that B is associated with A and B can be determined based on A. However, it should be understood that determining B based on A does not mean determining B based solely on A, but B can also be determined based on A and / or other information.

[0250] In the embodiments of the present application, the term "corresponding" may indicate a direct or indirect correspondence between the two, or an association relationship between the two, or a relationship between indication and indication, configuration and configuration, etc.

[0251] In the embodiments of the present application, "pre-defined" or "pre-configured" may be implemented by pre-storing corresponding codes, tables, or other methods that can be used to indicate relevant information in devices (e.g., including APs and STAs). The present application does not limit the specific implementation method. For example, pre-defined may refer to information defined in a protocol.

[0252] In the embodiments of this application, the term "and / or" is simply a description of the association relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this document generally indicates that the related objects are in an "or" relationship.

[0253] In the embodiments of this application, the term "include" can refer to direct inclusion or indirect inclusion. Alternatively, the term "include" in the embodiments of this application can be replaced with "indicates" or "is used to determine." For example, "A includes B" can be replaced with "A indicates B" or "A is used to determine B."

[0254] In various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0255] In the embodiments of the present application, the “protocol” may refer to a standard protocol in the communication field, for example, it may include a WiFi protocol and related protocols used in future WiFi communication systems, and the present application does not limit this.

[0256] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0257] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0258] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0259] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that can be read by a computer or a data storage device such as a server or data center that includes one or more available media integrated therein. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a digital versatile disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).

[0260] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A wireless communication method, characterized in that, Comprising: A first device receives a first frame sent by a second device; Wherein, the first frame is used to indicate information related to out-of-order transmission in the block acknowledgment mechanism.

2. The method according to claim 1, wherein The first frame is used to accept or reject a first request, the first request being related to an out-of-order transmission request in the block acknowledgment mechanism; and / or, The first frame is used to configure information related to out-of-order transmission in the block acknowledgment mechanism.

3. The method according to claim 1 or 2, characterized in that, The first frame includes an ADDBA response frame.

4. The method according to any one of claims 1 to 3, characterized in that Further comprising: The first device sends a second frame to the second device; Wherein, the second frame is used to indicate the information related to out-of-order transmission in the block acknowledgment mechanism.

5. The method according to claim 4, wherein The first frame is for responding to the second frame.

6. The method according to claim 4 or 5, characterized in that The second frame includes an ADDBA request frame.

7. The method according to any one of claims 1-6, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism includes one or more of the following: Whether to enable the out-of-order transmission; Out-of-order transmission parameters.

8. The method according to claim 7, characterized in that The first frame includes first information, which is used to indicate whether the information related to out-of-order transmission in the block acknowledgment mechanism includes the out-of-order transmission parameters.

9. The method according to claim 7 or 8, characterized in that, The out-of-order transmission parameters include one or more of the following: A processing mode, used to indicate whether data units of a first traffic identifier TID use multiple SN spaces; A first quantity, used to indicate the number of SN spaces used by the data units of the first TID; A first indication, used to indicate whether to distinguish and process the data units of the first TID according to the markings of the data units; A second indication, used to indicate whether to distinguish and process the data units of the first TID through multiple SN spaces according to the markings of the data units; A third indication, used to indicate whether the first data unit can be passed to the next MAC process when the sequence number SN of the received first data unit is greater than the SN of the un-received second data unit; A condition parameter, used to indicate a first condition, and when the first condition is met, the first data unit can be passed to the next media access control MAC process.

10. The method according to claim 9, characterized in that, The condition parameter includes one or more of the following: A first threshold, used to indicate a threshold of SN deviation; Second information, used to indicate whether the first condition is related to the first threshold; A second threshold, used to indicate a threshold of buffer waiting; Third information, used to indicate whether the first condition is related to the second threshold; A priority indication, used to indicate whether it is necessary to preferentially transmit data units with a target marking.

11. The method according to claim 10, characterized in that, When the first condition is related to the first threshold, the first condition includes: the difference between the SN of the first data unit and the SN of the second data unit is less than or equal to the first threshold.

12. The method according to claim 11, wherein The second data unit includes: among the un-received data units, the data unit with the smallest or largest SN.

13. The method according to any one of claims 10 to 12, characterized in that, When the first condition is related to the second threshold, the first condition includes: the waiting time of the first data unit in the buffer is greater than or equal to the second threshold.

14. The method according to any one of claims 10-13, characterized in that, When the first condition is related to the priority indication, the first condition includes: the first data unit includes a data unit with a target marking.

15. The method according to any one of claims 1-14, characterized in that, When data units with the same TID adopt multiple SN spaces, the multiple SN spaces include a second SN space and a third SN space. The second SN space is used for data units with a target label, and the third SN space is used for data units without a target label.

16. The method according to any one of claims 10-15, characterized in that, The target label includes: a low latency label; and / or, an urgent transmission label.

17. The method according to any one of claims 1-16, characterized in that, The third data unit in the interaction between the first device and the second device belongs to the first SN space. The reception window of the first SN space is the first window, and the first window corresponds to the first transmission record, which is used to record whether the data units in the first window have been transferred to the next MAC process.

18. The method according to claim 17, wherein The first transmission record is represented by a first bitmap. The target bit of the first bitmap is used to indicate whether the third data unit has been transferred to the next MAC process.

19. The method according to claim 18, wherein The bit corresponding to the lowest SN in the first bitmap is initialized to a first parameter, which is initialized to the value of the starting sequence number field corresponding to the first SN space. The bit corresponding to the highest SN in the first bitmap is initialized to a second parameter, which is initialized to the value of the first parameter + the value of a third parameter - 1. The third parameter is the smaller of the length of the first bitmap and the value of the buffer size field corresponding to the first SN space.

20. The method according to any one of claims 17-19, characterized in that, When the third data unit is received, if the first transmission record indicates that the third data unit has been transferred to the next MAC process, the third data unit is discarded.

21. The method according to any one of claims 17 - 20, characterized in that, The first SN space corresponds to the first buffer. If the first transmission record indicates that the third data unit has not been transferred to the next MAC process and the third data unit meets the first condition, the third data unit in the first buffer is transferred to the next MAC process.

22. The method according to any one of claims 17-21, characterized in that, In response to the third data unit being transferred to the next MAC process, the first transmission record is updated to indicate that the third data unit has been transferred to the next MAC process.

23. The method according to any one of claims 1-22, characterized in that, When data units with the first TID adopt N SN spaces, the first frame includes N block acknowledgment parameter set fields. The N SN spaces correspond one-to-one with the N block acknowledgment parameter set fields, and N is a positive integer.

24. The method according to any one of claims 1 to 23, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism is carried by a first element.

25. The method according to any one of claims 1-24, characterized in that, The out-of-order transmission is used for the transmission of data units, which include one or more of the following: medium access control layer service data unit (MSDU), aggregated medium access control layer service data unit (A-MSDU), medium access control layer protocol data unit (MPDU).

26. A wireless communication method, characterized in that, Including: The second device sends a first frame to the first device; Among them, the first frame is used to indicate information related to out-of-order transmission in the block acknowledgment mechanism.

27. The method according to claim 26, wherein The first frame is used to accept or reject a first request, and the first request is related to an out-of-order transmission request in the block acknowledgment mechanism; and / or, The first frame is used to configure information related to out-of-order transmission in the block acknowledgment mechanism.

28. The method according to claim 26 or 27, characterized in that, The first frame includes an ADDBA response frame.

29. The method according to any one of claims 26-28, characterized in that, Further including: The second device receives a second frame sent by the first device; Wherein, the second frame is used to indicate information related to out-of-order transmission in the block acknowledgment mechanism.

30. The method according to claim 29, wherein, The first frame is determined based on the second frame.

31. The method according to claim 29 or 30, characterized in that, The second frame includes an ADDBA request frame.

32. The method according to any one of claims 26 - 31, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism includes one or more of the following: Whether to enable the out-of-order transmission; Out-of-order transmission parameters.

33. The method according to claim 32, wherein The first frame includes first information, and the first information is used to indicate whether the information related to out-of-order transmission in the block acknowledgment mechanism includes the out-of-order transmission parameters.

34. The method according to claim 32 or 33, characterized in that, The out-of-order transmission parameters include one or more of the following: A processing mode, used to indicate whether data units of a first traffic identifier (TID) adopt multiple SN spaces; A first quantity, used to indicate the number of SN spaces adopted by the data units of the first TID; A first indication, used to indicate whether to distinguish and process the data units of the first TID according to the markings of the data units; A second indication, used to indicate whether to distinguish and process the data units of the first TID through multiple SN spaces according to the markings of the data units; A third indication, used to indicate whether the first data unit can be delivered to the next MAC process when the sequence number (SN) of the received first data unit is greater than the SN of the second data unit that has not been received; A conditional parameter, used to indicate a first condition, and when the first condition is met, the first data unit can be delivered to the next media access control (MAC) process.

35. The method according to claim 34, wherein, The conditional parameter includes one or more of the following: A first threshold, used to indicate the threshold of the SN deviation; Second information, used to indicate whether the first condition is related to the first threshold; A second threshold, used to indicate the threshold of the buffer wait; Third information, used to indicate whether the first condition is related to the second threshold; A priority indication, used to indicate whether it is necessary to preferentially transmit data units with a target marking.

36. The method according to claim 35, wherein When the first condition is related to the first threshold, the first condition includes: the difference between the SN of the first data unit and the SN of the second data unit is less than or equal to the first threshold.

37. The method according to claim 36, wherein The second data unit includes: among the data units that have not been received, the data unit with the smallest or largest SN.

38. The method according to any one of claims 35 to 37, characterized in that, When the first condition is related to the second threshold, the first condition includes: the waiting time of the first data unit in the buffer is greater than or equal to the second threshold.

39. The method according to any one of claims 35 - 38, characterized in that, When the first condition is related to the priority indication, the first condition includes: the first data unit includes a data unit with a target marking.

40. The method according to any one of claims 26-39, characterized in that, When data units of the same TID adopt multiple SN spaces, the multiple SN spaces include a second SN space and a third SN space, the second SN space is used for data units with a target marking, and the third SN space is used for data units without a target marking.

41. The method according to any one of claims 35 to 40, characterized in that, The target marking includes: a low-latency marking; and / or, an urgent transmission marking.

42. The method according to any one of claims 26-41, characterized in that, The third data unit of the interaction between the first device and the second device belongs to the first SN space. The receive window of the first SN space is the first window, and the first window corresponds to the first transmission record, which is used to record whether the data unit in the first window has been transferred to the next MAC process.

43. The method according to claim 42, characterized in that, The first transmission record is represented by a first bitmap. The target bit of the first bitmap is used to indicate whether the third data unit has been transferred to the next MAC process.

44. The method according to claim 43, wherein The bit corresponding to the lowest SN in the first bitmap is initialized to a first parameter, and the first parameter is initialized to the value of the starting sequence number field corresponding to the first SN space. The bit corresponding to the highest SN in the first bitmap is initialized to a second parameter, and the second parameter is initialized to the value of the first parameter + the value of a third parameter - 1. The third parameter is the smaller of the length of the first bitmap and the value of the buffer size field corresponding to the first SN space.

45. The method according to any one of claims 42-44, characterized in that, When the third data unit is received, if the first transmission record indicates that the third data unit has been transferred to the next MAC process, the third data unit is discarded.

46. The method according to any one of claims 42-45, characterized in that, The first SN space corresponds to the first buffer. If the first transmission record indicates that the third data unit has not been transferred to the next MAC process and the third data unit meets the first condition, the third data unit in the first buffer is transferred to the next MAC process.

47. The method according to any one of claims 42 - 46, characterized in that, In response to the third data unit being transferred to the next MAC process, the first transmission record is updated to indicate that the third data unit has been transferred to the next MAC process.

48. The method according to any one of claims 26-47, characterized in that, When the data units of the first TID use N SN spaces, the first frame includes N block acknowledgment parameter set fields. The N SN spaces correspond one-to-one with the N block acknowledgment parameter set fields, and N is a positive integer.

49. The method according to any one of claims 26-48, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism is carried by a first element.

50. The method according to any one of claims 26-49, characterized in that, The out-of-order transmission is used for the transmission of data units, and the data units include one or more of the following: medium access control layer service data unit (MSDU), aggregated medium access control layer service data unit (A-MSDU), medium access control layer protocol data unit (MPDU).

51. A communication device, characterized in that, The communication device is the first device, and the communication device includes: A first receiving unit, configured to receive a first frame sent by a second device; Wherein, the first frame is used to indicate information related to out-of-order transmission in the block acknowledgment mechanism.

52. The communication device according to claim 51, wherein The first frame is used to accept or reject a first request, and the first request is related to an out-of-order transmission request in the block acknowledgment mechanism; and / or, The first frame is used to configure information related to out-of-order transmission in the block acknowledgment mechanism.

53. The communication device according to claim 51 or 52, characterized in that, The first frame includes an ADDBA response frame.

54. The communication device according to any one of claims 51 to 53, characterized in that, The communication device is further configured to: Send a second frame to the second device; Wherein, the second frame is used to indicate the information related to out-of-order transmission in the block acknowledgment mechanism.

55. The communication device according to claim 54, characterized in that, The first frame is determined based on the second frame.

56. The communication device according to claim 54 or 55, characterized in that, The second frame includes an ADDBA request frame.

57. The communication device according to any one of claims 51 to 56, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism includes one or more of the following: Whether to enable the out-of-order transmission; Out-of-order transmission parameters.

58. The communication device according to claim 57, characterized in that, The first frame includes first information, which is used to indicate whether the information related to out-of-order transmission in the block acknowledgment mechanism includes the out-of-order transmission parameters.

59. The communication device according to claim 57 or 58, characterized in that, The out-of-order transmission parameters include one or more of the following: A processing mode, which is used to indicate whether data units of a first traffic identifier (TID) adopt multiple SN spaces; A first quantity, which is used to indicate the number of SN spaces adopted by the data units of the first TID; A first indication, which is used to indicate whether to distinguish and process the data units of the first TID according to the tags of the data units; A second indication, which is used to indicate whether to distinguish and process the data units of the first TID through multiple SN spaces according to the tags of the data units; A third indication, which is used to indicate whether the first data unit can be delivered to the next MAC process when the sequence number (SN) of the received first data unit is greater than the SN of the un-received second data unit; A condition parameter, which is used to indicate a first condition, and when the first condition is met, the first data unit can be delivered to the next media access control (MAC) process.

60. The communication device according to claim 59, characterized in that, The condition parameter includes one or more of the following: A first threshold, which is used to indicate the threshold of the SN deviation; Second information, which is used to indicate whether the first condition is related to the first threshold; A second threshold, which is used to indicate the threshold of the buffer waiting; Third information, which is used to indicate whether the first condition is related to the second threshold; A priority indication, which is used to indicate whether it is necessary to preferentially transmit data units with a target tag.

61. The communication device according to claim 60, wherein, When the first condition is related to the first threshold, the first condition includes: the difference between the SN of the first data unit and the SN of the second data unit is less than or equal to the first threshold.

62. The communication device according to claim 61, characterized in that, The second data unit includes: among the un-received data units, the data unit with the smallest or largest SN.

63. The communication device according to any one of claims 60-62, characterized in that, When the first condition is related to the second threshold, the first condition includes: the waiting time of the first data unit in the buffer is greater than or equal to the second threshold.

64. The communication device according to any one of claims 60 - 63, characterized in that, When the first condition is related to the priority indication, the first condition includes: the first data unit includes a data unit with a target tag.

65. The communication device according to any one of claims 51 to 64, characterized in that, When data units of the same TID adopt multiple SN spaces, the multiple SN spaces include a second SN space and a third SN space, the second SN space is used for data units with a target tag, and the third SN space is used for data units without a target tag.

66. The communication device according to any one of claims 60-65, characterized in that, The target tag includes: a low-latency tag; and / or, an emergency transmission tag.

67. The communication device according to any one of claims 51 to 66, characterized in that, The third data unit in the interaction between the first device and the second device belongs to a first SN space, the reception window of the first SN space is a first window, and the first window corresponds to a first transmission record, and the first transmission record is used to record whether the data units in the first window have been delivered to the next MAC process.

68. The communication device according to claim 67, characterized in that, The first transfer record is represented by a first bitmap, and target bits of the first bitmap are used to indicate whether the third data unit has been transferred to the next MAC process.

69. The communication device according to claim 68, wherein, Bits corresponding to the lowest SN in the first bitmap are initialized to a first parameter, the first parameter is initialized to a value of a starting sequence number field corresponding to a first SN space, bits corresponding to the highest SN in the first bitmap are initialized to a second parameter, the second parameter is initialized to a value of the first parameter + a value of a third parameter - 1, and the third parameter is the smaller of a length of the first bitmap and a value of a buffer size field corresponding to the first SN space.

70. The communication device according to any one of claims 67 - 69, characterized in that, In a case where the third data unit is received, if the first transfer record indicates that the third data unit has been transferred to the next MAC process, the third data unit is discarded.

71. The communication device according to any one of claims 67 - 70, characterized in that, The first SN space corresponds to the first buffer. If the first transfer record indicates that the third data unit has not been transferred to the next MAC process and the third data unit meets a first condition, the third data unit in the first buffer is transferred to the next MAC process.

72. The communication device according to any one of claims 67 - 71, characterized in that, In response to the third data unit being transferred to the next MAC process, the first transfer record is updated to indicate that the third data unit has been transferred to the next MAC process.

73. The communication device according to any one of claims 51-72, characterized in that, In a case where data units of a first TID employ N SN spaces, the first frame includes N block acknowledgment parameter set fields, the N SN spaces correspond to the N block acknowledgment parameter set fields one by one, and N is a positive integer.

74. The communication device according to any one of claims 51 - 73, characterized in that, Information related to out-of-order transmission in the block acknowledgment mechanism is carried by a first element.

75. The communication device according to any one of claims 51 to 74, characterized in that, The out-of-order transmission is used for transmission of data units, and the data units include one or more of the following: a media access control layer service data unit (MSDU), an aggregated media access control layer service data unit (A-MSDU), and a media access control layer protocol data unit (MPDU).

76. A communication device, characterized in that, The communication device is a second device, and the communication device includes: A first sending unit, configured to send a first frame to a first device; Wherein, the first frame is used to indicate information related to out-of-order transmission in the block acknowledgment mechanism.

77. The communication device according to claim 76, wherein The first frame is used to accept or reject a first request, and the first request is related to an out-of-order transmission request in the block acknowledgment mechanism; and / or, The first frame is used to configure information related to out-of-order transmission in the block acknowledgment mechanism. The communication device according to claim 76 or 77, characterized in that, The first frame includes an ADDBA response frame.

79. The communication device according to any one of claims 76 - 78, characterized in that, The communication device is further configured to: The second device receives a second frame sent by the first device; Wherein, the second frame is used to indicate the information related to out-of-order transmission in the block acknowledgment mechanism.

80. The communication device according to claim 79, characterized in that, The first frame is determined based on the second frame.

81. The communication device according to claim 79 or 80, characterized in that, The second frame includes an ADDBA request frame.

82. The communication device according to any one of claims 76 - 81, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism includes one or more of the following: Whether to enable the out-of-order transmission; Out-of-order transmission parameters.

83. The communication device according to claim 82, characterized in that, The first frame includes first information, and the first information is used to indicate whether the information related to out-of-order transmission in the block acknowledgment mechanism includes the out-of-order transmission parameters.

84. The communication device according to claim 82 or 83, characterized in that, The out-of-order transmission parameters include one or more of the following: A processing mode, used to indicate whether data units of a first traffic identifier (TID) adopt multiple SN spaces; A first quantity, used to indicate the number of SN spaces adopted by data units of the first TID; A first indication, used to indicate whether data units of the first TID are processed separately according to the markings of the data units; A second indication, used to indicate whether data units of the first TID are processed separately through multiple SN spaces according to the markings of the data units; A third indication, used to indicate whether, when the sequence number (SN) of a received first data unit is greater than the SN of an un-received second data unit, the first data unit can be transmitted to the next MAC process; A conditional parameter, used to indicate a first condition, and when the first condition is met, the first data unit can be transmitted to the next media access control (MAC) process.

85. The communication device according to claim 84, wherein The conditional parameter includes one or more of the following: A first threshold, used to indicate a threshold of SN deviation; A second piece of information, used to indicate whether the first condition is related to the first threshold; A second threshold, used to indicate a threshold of buffer waiting; A third piece of information, used to indicate whether the first condition is related to the second threshold; A priority indication, used to indicate whether data units with a target marking need to be transmitted preferentially.

86. The communication device according to claim 85, characterized in that, When the first condition is related to the first threshold, the first condition includes: the difference between the SN of the first data unit and the SN of the second data unit is less than or equal to the first threshold.

87. The communication device according to claim 86, characterized in that, The second data unit includes: among the un-received data units, the data unit with the smallest or largest SN.

88. The communication device according to any one of claims 85 - 87, characterized in that, When the first condition is related to the second threshold, the first condition includes: the waiting time of the first data unit in the buffer is greater than or equal to the second threshold.

89. The communication device according to any one of claims 85-88, characterized in that, When the first condition is related to the priority indication, the first condition includes: the first data unit includes a data unit with a target marking.

90. The communication device according to any one of claims 76-89, characterized in that, When data units of the same TID adopt multiple SN spaces, the multiple SN spaces include a second SN space and a third SN space. The second SN space is used for data units with a target marking, and the third SN space is used for data units without a target marking.

91. The communication device according to any one of claims 85 to 90, characterized in that, The target marking includes: a low-latency marking; and / or, an emergency transmission marking.

92. The communication device according to any one of claims 76 - 91, characterized in that, A third data unit in the interaction between the first device and the second device belongs to a first SN space. The reception window of the first SN space is a first window, and the first window corresponds to a first transmission record, which is used to record whether the data units in the first window have been transmitted to the next MAC process.

93. The communication device according to claim 92, characterized in that, The first transmission record is represented by a first bitmap, and the target bit of the first bitmap is used to indicate whether the third data unit has been transmitted to the next MAC process.

94. The communication device according to claim 93, wherein, The bit corresponding to the lowest SN in the first bitmap is initialized to a first parameter, the first parameter is initialized to the value of the starting sequence number field corresponding to the first SN space, the bit corresponding to the highest SN in the first bitmap is initialized to a second parameter, the second parameter is initialized to the value of the first parameter + the value of a third parameter - 1, and the third parameter is the smaller of the length of the first bitmap and the value of the buffer size field corresponding to the first SN space.

95. The communication device according to any one of claims 92 to 94, characterized in that, In the case of receiving the third data unit, if the first transfer record indicates that the third data unit has been transferred to the next MAC process, the third data unit is discarded.

96. The communication device according to any one of claims 92-95, characterized in that, The first SN space corresponds to the first buffer. If the first transfer record indicates that the third data unit has not been transferred to the next MAC process and the third data unit meets a first condition, the third data unit in the first buffer is transferred to the next MAC process.

97. The communication device according to any one of claims 92-96, characterized in that, In response to the third data unit being transferred to the next MAC process, the first transfer record is updated to indicate that the third data unit has been transferred to the next MAC process.

98. The communication device according to any one of claims 76-97, characterized in that, In the case where the data units of the first TID use N SN spaces, the first frame includes N block acknowledgment parameter set fields, and the N SN spaces correspond one-to-one to the N block acknowledgment parameter set fields, where N is a positive integer.

99. The communication device according to any one of claims 76-98, characterized in that, The information related to out-of-order transmission in the block acknowledgment mechanism is carried by a first element.

100. The communication device according to any one of claims 76 - 99, characterized in that, The out-of-order transmission is used for the transmission of data units, and the data units include one or more of the following: medium access control layer service data unit (MSDU), aggregated medium access control layer service data unit (A-MSDU), medium access control layer protocol data unit (MPDU).

101. A communication device, characterized in that, It includes a memory and a processor. The memory is used to store a program, and the processor is used to call the program in the memory to enable the communication device to execute the method according to any one of claims 1 - 100.

102. A device, characterized in that, It includes a processor for calling a program from a memory to enable the device to execute the method according to any one of claims 1 - 100.

103. A chip, characterized in that, It includes a processor for calling a program from a memory such that the device installed with the chip executes the method according to any one of claims 1 - 100.

104. A computer-readable storage medium, characterized in that, A program is stored thereon, and the program enables a computer to execute the method according to any one of claims 1 - 100.

105. A computer program product, characterized in that, It includes a program that enables a computer to execute the method according to any one of claims 1 - 100.

106. A computer program, characterized in that, The computer program enables a computer to execute the method according to any one of claims 1 - 100.

Citation Information

Patent Citations

  • A method and apparatus for unsolicited block acknowledgements

    CN107645368A

  • Data retransmission method and device and electronic equipment

    CN111431669A

  • Multi-link communication method and multi-link device

    CN114501543A

  • Communication device and communication method for multilink block acknowledgement

    CN114747148A

  • Multi-link communication method and device

    CN116545918A