Data transmission negotiation method and apparatus, and device and storage medium
By transmitting frames for negotiation between communication devices, the problem of head-of-line blocking is solved, and negotiation of out-of-order transmission is realized, ensuring the efficiency of data transmission and service quality.
Patent Information
- Application Number
- PCT/CN2023/135692
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-30
- Publication Date
- 2025-06-05
AI Technical Summary
During communication transmission, the limitation of sending data in sequence will lead to head-of-line blocking problems, resulting in data packets with low-latency transmission requirements that cannot be quickly transmitted and cannot meet the service quality requirements.
By transmitting at least one frame for negotiating whether to use out-of-order transmission, the device can negotiate out-of-order transmission in advance, and explicitly use out-of-order transmission methods before data transmission.
Ensure that data transmission can be carried out based on a clear transmission mechanism between devices, avoid head-of-line blockage, and meet service quality requirements.
Smart Images

Figure CN2023135692_05062025_PF_FP_ABST
Abstract
Description
Data transmission negotiation method, device, equipment and storage medium Technical Field
[0001] The embodiments of the present application relate to the field of communication technology, and in particular to a negotiation method, apparatus, device, and storage medium for data transmission. Background Art
[0002] During the communication transmission process, the restriction of sending data in sequence will lead to the head of line blocking problem. The head of line blocking problem means that the data sender needs to send data packets in sequence according to the order of serial numbers; when a data packet fails to be sent, it will affect the sending of other data packets after the data packet, so that data packets with low latency transmission requirements cannot be transmitted quickly, resulting in the data packet transmission failing to meet the corresponding service quality requirements.
[0003] In related technologies, the problem of head-of-line blocking can be solved by introducing an out-of-order transmission processing mechanism. However, the data sender and data receiver have not yet clearly determined how to negotiate whether to use the out-of-order transmission processing mechanism.
[0004] Summary of the Invention
[0005] The present invention provides a data transmission negotiation method, apparatus, device, and storage medium. The technical solution is as follows:
[0006] According to one aspect of an embodiment of the present application, a data transmission negotiation method is provided, the method comprising:
[0007] At least one frame is transmitted, the frame being used to negotiate whether to use out-of-order transmission.
[0008] According to another aspect of an embodiment of the present application, a data transmission negotiation device is provided, the device including:
[0009] The transmission module is configured to transmit at least one frame, where the frame is used to negotiate whether to use out-of-order transmission.
[0010] According to another aspect of an embodiment of the present application, a communication device is provided, the communication device including:
[0011] processor;
[0012] a transceiver connected to the processor;
[0013] a memory for storing executable instructions for the processor;
[0014] The processor is configured to load and execute executable instructions to implement the negotiation method for data transmission in the above aspects.
[0015] According to another aspect of an embodiment of the present application, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is loaded and executed by a processor to implement the negotiation method for data transmission as described in the above aspects.
[0016] According to another aspect of an embodiment of the present application, a computer program product or computer program is provided, which includes computer instructions, and the computer instructions are stored in a computer-readable storage medium; a processor reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to implement a negotiation method for data transmission as described in the above aspects.
[0017] The technical solutions provided by the embodiments of the present application may have the following beneficial effects:
[0018] By transmitting at least one frame for negotiating whether to use out-of-order transmission, the first device can negotiate in advance on out-of-order transmission through the frame for negotiating whether to use out-of-order transmission during data transmission with other communication devices. Before data transmission, by transmitting the frame for negotiating whether to use out-of-order transmission, it is clear how to use out-of-order transmission, thereby ensuring that data can be transmitted between the first device and other communication devices based on a clear transmission mechanism. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] FIG1 shows a schematic diagram of out-of-order transmission provided by the related art;
[0020] FIG2 shows a schematic diagram of out-of-order transmission provided by the related art;
[0021] FIG3 shows a schematic diagram of a communication system provided by an embodiment of the present application;
[0022] FIG4 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0023] FIG5 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0024] FIG6 shows a schematic diagram of fields provided in an embodiment of the present application;
[0025] FIG7 shows a schematic diagram of fields provided in an embodiment of the present application;
[0026] FIG8 shows a schematic diagram of fields provided in an embodiment of the present application;
[0027] FIG9 shows a schematic diagram of fields provided in an embodiment of the present application;
[0028] FIG10 shows a schematic diagram of fields provided in an embodiment of the present application;
[0029] FIG11 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0030] FIG12 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0031] FIG13 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0032] FIG14 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0033] FIG15 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0034] FIG16 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0035] FIG17 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0036] FIG18 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0037] FIG19 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0038] FIG20 shows a flowchart of a data transmission negotiation method provided in an embodiment of the present application;
[0039] FIG21 shows a structural block diagram of a data transmission negotiation device provided in an embodiment of the present application;
[0040] FIG22 shows a structural block diagram of a data transmission negotiation device provided in an embodiment of the present application;
[0041] Figure 23 shows a structural diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0042] In order to make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be further described in detail with reference to the accompanying drawings. The exemplary embodiments will be described in detail here, and examples thereof are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the attached claims. With respect to the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application.
[0043] The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. The singular forms "a", "said" and "the" used in this disclosure and the appended claims are also intended to include plural forms, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items. It should be understood that although the terms first, second, third, etc. may be used to describe various information in this disclosure, these information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this disclosure, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0044] First, the relevant technologies involved in the embodiments of this application are introduced:
[0045] Sequential transmission mechanism:
[0046] The Media Access Control (MAC) data service of Wireless Fidelity (Wi-Fi) provides the ability to exchange MAC Service Data Units (MSDUs) with peer Logical Link Control (LLC) sublayer entities or IEEE 802.1Q bridge ports. To support this service, the local MAC uses the underlying physical layer services to transfer the MSDU to the peer MAC entity, which then passes the MSDU to the peer LLC sublayer or bridge port. This asynchronous MSDU transfer is performed on a connectionless basis. By default, MSDU transfers are performed on a best-effort basis. However, Quality of Service (QoS) facilities use Traffic Identifiers (TIDs) to specify different services on a per-MSDU basis.
[0047] A station (STA) maintains one or more sequence number spaces, which are used to determine the sequence number of frames when transmitting them. When multiple sequence number spaces are supported, the appropriate sequence number space is determined by information in the MAC Control field of the frame being transmitted. For each MSDU, A-MSDU, or M-MPDU transmitted using that sequence number space, each sequence number space is represented by a modulo 4096 counter that starts at 0 and increments by 1.
[0048] A Multi-Link Device (MLD) maintains one or more sequence number spaces that are 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 numbers. The sequence number space can contain one or more counters.
[0049] MAC Protocol Data Units (MPDUs) belonging to the same MSDU or A-MSDU should have the same sequence number. Different MSDUs, A-MSDUs, or M-MPDUs have different sequence numbers.
[0050] Robust Security Network Association (RSNA) confidentiality and integrity protocol:
[0051] The Wi-Fi standard defines the following RSNA data confidentiality and integrity protocols: Counter Mode (CTR) with Cipher-block Chaining Message Authentication Code (CBC-MAC) protocol (CTR with CBC-MAC protocol, CCMP) and Galois / Counter Mode protocol (GCMP).
[0052] CCMP provides data confidentiality, authentication, integrity, and replay protection. CCMP is a counter with CBC-MAC (CCM) based on the Advanced Encryption Standard (AES) encryption algorithm. CCM combines CTR for data confidentiality and CBC-MAC for authentication and integrity. CCM protects the integrity of the MPDU data field and selected parts of the IEEE 802.11 MPDU header. CCM is a generic mode that can be used with any block-oriented encryption algorithm. CCM requires a new temporary key for each session. CCM also requires that each frame protected by a given temporary key have a unique nonce value. Reusing a nonce value with the same temporary key invalidates all security guarantees.
[0053] For secure PVO MPDUs, CCMP encrypts the body of the plaintext MPDU and encapsulates the resulting ciphertext. Each MPDU is assigned a new non-zero packet number (PN) by incrementing it, so that PNs are not repeated for the same temporary key.
[0054] The PN value is used to number each MPDU in sequence. Each sender STA that is not affiliated with an MLD should maintain a single PN for each pairwise transient key security association (PTKSA) and group temporal key security association (GTKSA). Each sender STA that is affiliated with an MLD should use the PN maintained by the MLD for the PTKSA or the PN maintained by the STA for the GTKSA. The PN should be implemented as a 48-bit strictly increasing integer, initialized to 0 when the corresponding transient key is initialized or refreshed.
[0055] The PN value of each MPDU increases by a positive number. For MPDUs composed of fragmented MSDUs, A-MSDUs, and MMPDUs, the PN should be incremented by 1. For PV0 MPDUs, the PN of a series of encrypted MPDUs using the same temporary key will not repeat. For PV1 MPDUs, the PN of a series of encrypted MPDUs using the same temporary key and partial stream identifier (PTID) will never repeat.
[0056] When the PN space is exhausted, that is, the PN exceeds the thresholds defined by the PN Exhaustion Minimum Threshold and the PN Exhaustion Maximum Threshold, the options available to the implementation are to replace the corresponding key or terminate the communication. If individually addressed MPDUs are sent by the MLD to the receiving MLD via attached STAs, a single PN space shall be reserved for the PTKSA for transmission via all attached STAs.
[0057] The data receiver shall discard any received data frame with a PN less than or equal to the replay counter value associated with the transmitter address or transmitting station address (TA), receiver address or receiving station address (RA), and priority value of the received MPDU. If the MPDU is an individually addressed data frame transmitted between an access point (AP) MLD and a non-AP MLD associated with the AP MLD by an attached STA, the data receiver shall discard any received data frame with a PN less than or equal to the replay counter value associated with the data transmitter MLD MAC address, the data receiver MLD MAC address, and the priority value of the received MPDU.
[0058] For individually addressed MPDUs received by dependent STAs from the transmitting MLD, the receiving MLD shall maintain a set of replay counters for the PTKSA for all dependent STAs.
[0059] Out-of-order transmission mechanism:
[0060] IEEE 802.11-23 / 697r0 addresses the Wi-Fi head-of-line blocking issue and proposes allowing MAC Service Access Points (MAC-SAPs) to optionally transmit out-of-order packets for specific TIDs. The number of specific TIDs may be limited to one or two, and their use may be limited to establishing flows that benefit from out-of-order packet delivery. Furthermore, a distinction is made between the PN spaces used for frames that require out-of-order transmission and frames that require in-order transmission.
[0061] For example, out-of-order delivery is shown in Figure 1. Although the data receiver cannot successfully receive the MPDU with a serial number (SN) of 11 and a PN of 51 at the beginning, it still passes the received MPDU (such as PN 50 or 113) to the next MAC process first, that is, performs replay detection; after receiving the MPDU with a PN of 51, it passes it to the next MAC process together with the subsequently received MPDUs.
[0062] The SN is used to sequentially number each data packet and facilitate reordering in the event of out-of-order transmission, packet loss, or timeouts. For example, as shown in Figure 1, data packets with SN=10, SN=11, and so on are transmitted sequentially. If out-of-order transmission, packet loss, or timeouts occur, the data receiver may not receive the data packets in the exact order corresponding to the SNs. For example, if the data packet with SN=11 fails to be transmitted to the data receiver, the data receiver will continue to receive data packets from the data sender, but will need to reorder the data packets upon receiving the data packet with SN=11.
[0063] The PN is also used to number packets. This number serves as decoding information for each packet and helps with replay detection in the event of out-of-order transmission, packet loss, or timeouts. The replay detection rules include at least one of the following:
[0064] PN value is calculated continuously for each MPDU.
[0065] Each data sender shall maintain a PN value for each PTKSA, GTKSA, and Station Key Security Association (STAkeySA).
[0066] The PN sequence is a 48-bit monotonically increasing positive integer. It is initialized to 1 when the corresponding temporary key is initialized or refreshed.
[0067] The data receiver shall maintain a separate set of PN replay counters for each PTKSA, GTKSA, and STAKeySA. The data receiver shall reset the replay counter to 0 when resetting the temporary key. The replay counter is set to the PN value of the received CCMP MPDU.
[0068] The data receiver maintains a separate replay counter for each PTKSA, GTKSA, and STAKeySA, and uses the PN value from the received data frame to check for replayed data frames. IEEE 802.11 MSDU priorities are not used. The data transmitter does not reorder frames within the replay counter, but may reorder frames outside the replay counter.
[0069] If the PN value of an MPDU is not continuous, the entire MSDU it is in will be discarded by the data receiver. The data receiver will also discard any MPDU with a PN value less than or equal to the replay counter value and increase the CCMP replay count value.
[0070] IEEE 802.11-23 / 0799r0 proposes a separate PN sequence and replay counter for low-latency packets, enabling earlier processing of low-latency packets while still supporting replay detection for other packets with the same TID. As shown in Figure 2, the access point uses different PN sequences and replay counters for streams A and B sent to the station. For example, stream A uses the PN sequence {0,1,2,3,4,5,6}, while stream B uses the PN sequence {7,8,9,10,11,12,13}. The station's response message, corresponding to the bitmap {0,1,1,1}, indicates that MPDU0 was not successfully received. However, since MPDU0 belongs to stream A, while MPDU2 and MPDU3 belong to stream B, the station can still transmit MPDU2 and MPDU3 to the upper layer even if MPDU0 is not successfully received.
[0071] FIG3 is a schematic diagram of a communication system 10 provided by an exemplary embodiment of the present application. The communication system 10 includes terminals, terminals and network devices, or access points (APs) and station-stations (STAs), though this application does not limit this. This application uses the example of a communication system 10 including an AP 110 and a station-station (STA) 120 for illustration.
[0072] In some scenarios, an AP may also be referred to as an AP STA, meaning that, in a sense, an AP is also a type of STA. In some scenarios, a STA may also be referred to as a non-AP STA. In some embodiments, a STA may include both an AP STA and a non-AP STA.
[0073] Communication in a communication system can occur between an AP and a non-AP STA, between a non-AP STA and a non-AP STA, or between a STA and a peer STA. A peer STA refers to a device that communicates with a STA. For example, a peer STA can be an AP or a non-AP STA. For example, there are two communication scenarios between a STA and an AP: uplink communication and downlink communication. Uplink communication refers to a STA sending signals to an AP, while downlink communication refers to an AP sending signals to a STA.
[0074] An AP is like a bridge between a wired network and a wireless network. Its main function is to connect various wireless network clients together and then connect the wireless network to the Ethernet. An AP device can be a terminal device with a Wi-Fi chip (such as a mobile phone) or a network device (such as a router). It should be understood that the role of a STA in a communication system is not absolute. For example, in some scenarios, when a mobile phone is connected to a router, it is a non-AP STA. When the mobile phone serves as a hotspot for other mobile phones, it acts as an AP. APs and non-AP STAs can be devices used in the Internet of Vehicles, IoT nodes and sensors in the Internet of Things (IoT), smart cameras, smart remote controls, smart water and electricity meters in smart homes, and sensors in smart cities.
[0075] In some embodiments, non-AP STAs may support, but are not limited to, 802.11bf. Non-AP STAs may also support various current and future 802.11 family wireless local area network (WLAN) standards, such as 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a.
[0076] In some embodiments, the AP may be a device supporting 802.11bf. The AP may also be a device supporting various current and future 802.11 family WLAN standards, such as 802.11ax, 802.11ac, 802.11n, 802.11g, 802.11b, and 802.11a.
[0077] In the embodiments of the present application, a STA may be a mobile phone, tablet computer, computer, virtual reality (VR) device, augmented reality (AR) device, communication equipment used in industrial control, set-top box, communication equipment used in unmanned driving, vehicle-mounted communication equipment, communication equipment used in telemedicine, communication equipment used in smart grids, communication equipment used in transportation safety, communication equipment used in smart cities or smart homes, wireless communication chips, etc. WLAN technology may support frequency bands including, but not limited to, low frequency bands (2.4 GHz, 5 GHz, 6 GHz) and high frequency bands (60 GHz).
[0078] There are one or more links between the station and the access point. In some embodiments, the station and the access point support multi-band communication, for example, communicating simultaneously on the 2.4 GHz, 5 GHz, 6 GHz, and 60 GHz frequency bands, or communicating simultaneously on different channels in the same frequency band (or different frequency bands), thereby improving the communication throughput and / or reliability between devices. Such a device is generally referred to as a multi-band device, and may also be referred to as a multi-link device (MLD), and sometimes also referred to as a multi-link entity or a multi-band entity. A multi-link device can be an access point device or a station device. If the multi-link device is an access point device, the multi-link device includes one or more APs; if the multi-link device is a station device, the multi-link device includes one or more non-AP STAs. A multi-link device including one or more APs can also be referred to as an AP, and a multi-link device including one or more non-AP STAs can also be referred to as a non-AP. In the embodiment of the present application, a non-AP can be referred to as a STA.
[0079] In an embodiment of the present application, an AP may include multiple APs, and a non-AP may include multiple STAs. Multiple links may be formed between multiple APs in the AP and multiple STAs in the non-AP, and data communication may be performed between the APs in the AP and corresponding STAs in the non-AP via the corresponding links. An AP is a device deployed in a wireless local area network to provide wireless communication capabilities for STAs. A STA may include: user equipment (UE), access terminal, subscriber unit, subscriber station, mobile station, mobile station, remote station, remote terminal, mobile device, wireless communication device, user agent, or user device. Optionally, a STA may also be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, an in-vehicle device, or a wearable device, but the embodiments of the present application are not limited thereto.
[0080] In the embodiment of the present application, both the STA and the AP support the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, but are not limited to the IEEE 802.11 standard.
[0081] In some embodiments, to address the head-of-line blocking problem that may occur during in-order (sequential) transmission, related technologies have introduced an out-of-order transmission mechanism. However, related technologies only propose that the addition of an out-of-order transmission mechanism in addition to the in-order transmission mechanism can address the head-of-line blocking problem that may occur during in-order transmission, but fail to address how to clearly define how out-of-order transmission should be used between the data sender and the data receiver.
[0082] To address the above issues, an embodiment of the present application proposes a data transmission negotiation method, providing a negotiation solution for an out-of-order transmission mechanism. Figure 4 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by a first device, which is a multi-link device that serves as an access point, or a multi-link device that is not an access point. In the embodiment of the present application, the first device is a data sender. The method includes:
[0083] Step 220: The first device transmits at least one frame.
[0084] In some embodiments, the first device is an AP in the above communication system, or a STA in the above communication system. Optionally, in the embodiment of the present application, an example is given in which the first device is a sending device requesting negotiation on whether to use out-of-order transmission.
[0085] The first device transmits at least one frame for negotiating whether to use out-of-order transmission. In this embodiment, the term "transmit" can be considered as sending and / or receiving.
[0086] Optionally, the frame includes at least one of the following:
[0087] Request frame;
[0088] Response frame;
[0089] ·Remove the frame.
[0090] In some embodiments, the first device transmits at least one request frame, the request frame being used to request negotiation of whether to use out-of-order transmission.
[0091] In some embodiments, the first device transmits at least one response frame, the response frame being used to respond to whether out-of-order transmission is used.
[0092] In some embodiments, the first device transmits at least one teardown frame, where the teardown frame is used to tear down the data transmission mode (such as out-of-order transmission mode) used by the negotiated data unit.
[0093] In some embodiments, the first device transmits at least one request frame and at least one response frame.
[0094] In some embodiments, the first device transmits at least one request frame and at least one teardown frame.
[0095] In some embodiments, the first device transmits at least one response frame and at least one teardown frame.
[0096] In some embodiments, the first device transmits at least one request frame, at least one response frame, and at least one teardown frame.
[0097] In some embodiments, this frame is also used to negotiate an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the request frame is also used to request negotiation of an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the response frame is also used to respond to whether the out-of-order handling method and processing parameters when out-of-order transmission is allowed are used.
[0098] In some embodiments, the out-of-order processing method and processing parameters include at least one of the following information:
[0099] Transmission direction;
[0100] Allows either out-of-order or in-order transmission;
[0101] Whether to allow out-of-order transmission of data units corresponding to at least one TID;
[0102] The sequence number (SN) processing and reordering method for the data units corresponding to at least one TID;
[0103] Packet number PN processing and replay detection method for data units corresponding to at least one TID;
[0104] The number of SN spaces and / or the number of the first counter used by the data unit corresponding to at least one TID;
[0105] The maximum number of SN spaces allowed for a data unit corresponding to at least one TID;
[0106] The maximum number of first counters allowed for data units corresponding to at least one TID;
[0107] Whether out-of-order transmission is allowed for the data unit corresponding to at least one TID using the SN space and / or the first counter;
[0108] Conditional parameters for delivering the received data unit corresponding to at least one TID to the upper layer;
[0109] The maximum allowed deviation between the sequence number of the data unit corresponding to at least one received TID and the sequence number of the data unit corresponding to at least one unreceived TID;
[0110] The maximum waiting time in the buffer for a data unit corresponding to at least one received TID;
[0111] The number of PN spaces and / or the number of second counters used by data units corresponding to at least one TID;
[0112] The maximum number of PN spaces allowed for a data unit corresponding to at least one TID;
[0113] The maximum number of second counters allowed for data units corresponding to at least one TID;
[0114] Whether to use the PN window to perform replay detection on the data unit corresponding to at least one TID;
[0115] The size of the PN window used for replay detection of the data unit corresponding to at least one TID.
[0116] The data unit corresponding to at least one TID includes a data unit corresponding to one TID and / or a data unit corresponding to each of at least two TIDs. Specifically, the above information is described in the following embodiments.
[0117] To sum up, the method provided in this embodiment, by transmitting at least one frame for negotiating whether to use out-of-order transmission, enables the first device to negotiate in advance on out-of-order transmission during data transmission with other communication devices through the frame for negotiating whether to use out-of-order transmission. Before data transmission, by transmitting the frame for negotiating whether to use out-of-order transmission, it is clear how to use out-of-order transmission, thereby ensuring that data can be transmitted between the first device and other communication devices based on a clear transmission mechanism.
[0118] For the request frame:
[0119] FIG5 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the first device, and the above step 220 includes the following sub-steps:
[0120] Step 221: The first device sends a request frame.
[0121] In some embodiments, the request frame is used to request negotiation of whether to use out-of-order transmission. Optionally, the request frame is used to request negotiation of using out-of-order transmission. Optionally, the request frame is used to request negotiation of not using out-of-order transmission. Optionally, the request frame is used to request negotiation of using out-of-order transmission for data units corresponding to a TID value of m, where m is an integer. Optionally, the request frame is used to request negotiation of not using out-of-order transmission for data units corresponding to a TID value of n, where n is an integer.
[0122] In some embodiments, the request frame is further used to request negotiation of an out-of-order processing method and processing parameters when out-of-order transmission is allowed.
[0123] In some embodiments, the request frame is an action frame. In some embodiments, the request frame includes at least one field. For example, the request frame includes a first action field, which is used to indicate the transaction requested by the request frame. Exemplarily, as shown in Table 1 below, the first action field includes at least one of a category field, a protected action field, a dialog token field, and a data unit in-order / out-of-order transmission field.
[0124] Table 1
[0125] The Category field can be set to the corresponding value in the "Code" column of the "Category" value in the IEEE 802.11 specification. Action frames of a given category are referred to as <Category Name> Action frames. For example, frames in the Protected Ultra High Reliability (UHR) category are referred to as Protected UHR Action frames.
[0126] The protected action field is a field following the category field and is used to distinguish the protected action frame format, wherein the specific protected action frame format can be indicated by a corresponding protected action field value.
[0127] The Dialog Token field is typically set to a non-zero value, chosen by the station sending the request frame, to identify the transaction requested by the request frame.
[0128] The data unit in-order / out-of-order transmission field contains at least one data transmission element. This data transmission element may also be referred to as a data unit in-order / out-of-order transmission element. Optionally, when the data unit in-order / out-of-order transmission field contains at least two data transmission elements, different data transmission elements are used to indicate data transmission in different transmission directions. Exemplarily, when the data unit in-order / out-of-order transmission field contains two data transmission elements, one data transmission element is used to indicate data transmission in the uplink direction, and the other data transmission element is used to indicate data transmission in the downlink direction.
[0129] In some embodiments, the request frame includes a first field.
[0130] Optionally, the first field is carried in the data unit in-order / out-of-order transmission field. Optionally, the first field is carried in a data transmission element in the data unit in-order / out-of-order transmission field. The data transmission element is used to indicate whether out-of-order transmission is allowed for data units corresponding to all or some of the TIDs, and the out-of-order processing method and processing parameters when out-of-order transmission is allowed for data units corresponding to all or some of the TIDs.
[0131] In the embodiment of the present application, an example is given in which the first field is carried in a data transmission element in the in-order / out-of-order transmission field of the above-mentioned data unit. The format of the data transmission element is shown in Table 2 below:
[0132] Table 2
[0133] The Element ID field, the Length field, and the Element ID Extension field comply with the definition in the IEEE 802.11 specification.
[0134] It should be noted that the names of different fields in the embodiments of the present application are only example names. Specifically, the name of each field may also have other representations, which are not limited in the embodiments of the present application.
[0135] In some embodiments, the first field may also be referred to as an out-of-order transmission handling control field. The first field is used to request whether out-of-order transmission is allowed for data units corresponding to at least one TID in at least one transmission direction, and / or, if out-of-order transmission is allowed, the out-of-order handling method and processing parameters.
[0136] Optionally, the first field is used to request that data units corresponding to at least one TID be allowed to be transmitted out of order in at least one transmission direction.
[0137] Optionally, the first field is used to request that data units corresponding to at least one TID not be allowed to be transmitted out of order in at least one transmission direction.
[0138] Optionally, the first field is used to request an out-of-order processing method and processing parameters when out-of-order transmission is allowed for a data unit corresponding to at least one TID in at least one transmission direction.
[0139] Optionally, the first field is used to request that data units corresponding to at least one TID be allowed to be transmitted out of order in at least one transmission direction, and to request an out of order processing method and processing parameters when out of order transmission is allowed.
[0140] In some embodiments, the first field includes at least one of the following fields:
[0141] First subfield;
[0142] · Second subfield;
[0143] The third subfield;
[0144] Reserved subfield.
[0145] Exemplarily, as shown in FIG6 , the out-of-order transmission processing control field (first field) includes a direction subfield (first subfield), a default data unit in-order / out-of-order transmission subfield (second subfield), an out-of-order transmission processing bitmap subfield (third subfield), and at least one of a reserved subfield.
[0146] The out-of-order transmission handling bitmap subfield (third subfield) is indicated based on the data unit in-order / out-of-order transmission subfield (second subfield). When the data unit in-order / out-of-order transmission subfield (second subfield) indicates that out-of-order transmission is allowed, the out-of-order transmission handling control field (first field) includes the out-of-order transmission handling bitmap subfield (third subfield); when the data unit in-order / out-of-order transmission subfield (second subfield) indicates that out-of-order transmission is not allowed, the out-of-order transmission handling bitmap subfield (third subfield) is not included in the out-of-order transmission handling control field (first field). The reserved subfield is optional.
[0147] Optionally, the first subfield may also be referred to as a direction subfield. The first subfield is used to indicate a transmission direction, which includes an uplink direction and / or a downlink direction.
[0148] Optionally, the field value of the first subfield includes at least one of the following:
[0149] First value;
[0150] Second value;
[0151] ·The third value.
[0152] When the value of the first subfield is a first value, the transmission direction is indicated as uplink. When the value of the first subfield is a second value, the transmission direction is indicated as downlink. When the value of the first subfield is a third value, the transmission direction includes both uplink and downlink.
[0153] Exemplarily, when the value of the first subfield is 0, the transmission direction is indicated as uplink. When the value of the first subfield is 1, the transmission direction is indicated as downlink. When the value of the first subfield is 2, the transmission direction includes both uplink and downlink. Alternatively, when the value of the first subfield is 0, the transmission direction is indicated as uplink. When the value of the first subfield is 2, the transmission direction is indicated as downlink. When the value of the first subfield is 1, the transmission direction includes both uplink and downlink. Alternatively, when the value of the first subfield is 2, the transmission direction is indicated as uplink. When the value of the first subfield is 1, the transmission direction is indicated as downlink. When the value of the first subfield is 0, the transmission direction includes both uplink and downlink. Alternatively, when the value of the first subfield is 1, the transmission direction is indicated as uplink. When the value of the first subfield is 0, the transmission direction includes both uplink and downlink. Alternatively, if the value of the first subfield is 1, the transmission direction is indicated as the uplink direction. If the value of the first subfield is 2, the transmission direction is indicated as the downlink direction. If the value of the first subfield is 0, the transmission direction includes both the uplink and downlink directions. Alternatively, if the value of the first subfield is 2, the transmission direction is indicated as the uplink direction. If the value of the first subfield is 0, the transmission direction is indicated as the downlink direction. If the value of the first subfield is 1, the transmission direction includes both the uplink and downlink directions.
[0154] It should be noted that "first", "second" and "third" here are only used to indicate three different field values. In some embodiments, the correspondence between the field value of the first subfield and the transmission direction may also be: the first value is used to indicate that the transmission direction is the uplink direction, the second value is used to indicate that the transmission direction includes both the uplink direction and the downlink direction, and the third value is used to indicate that the transmission direction is the downlink direction; or, the first value is used to indicate that the transmission direction includes both the uplink direction and the downlink direction, the second value is used to indicate that the transmission direction is the downlink direction, and the third value is used to indicate that the transmission direction is the uplink direction; or, the first value is used to indicate that the transmission direction is the downlink direction, the second value may be used to indicate that the transmission direction is the uplink direction, and the third value is used to indicate that the transmission direction includes both the uplink direction and the downlink direction; or, the first value is used to indicate that the transmission direction is the downlink direction, the second value may be used to indicate that the transmission direction includes both the uplink direction and the downlink direction, and the third value is used to indicate that the transmission direction is the uplink direction; or, the first value is used to indicate that the transmission direction includes both the uplink direction and the downlink direction, the second value may be used to indicate that the transmission direction is the uplink direction, and the third value is used to indicate that the transmission direction is the downlink direction.
[0155] Optionally, the second subfield may also be referred to as a default data unit transmission subfield. The second subfield is used to indicate whether out-of-order transmission is permitted. Alternatively, the second subfield is used to indicate whether, among all data units corresponding to the TIDs, at least one data unit corresponding to the TID is allowed for out-of-order transmission. Optionally, the second subfield is further used to indicate whether out-of-order transmission or in-order transmission is permitted. Optionally, the second subfield is used to indicate whether out-of-order transmission is permitted, or the second subfield is used to indicate whether in-order transmission is permitted.
[0156] Optionally, the field value of the second subfield includes at least one of the following:
[0157] · Fourth value;
[0158] · Fifth value.
[0159] When the field value of the second subfield is the fourth value, it indicates that out-of-order transmission is allowed. When the field value of the second subfield is the fifth value, it indicates that out-of-order transmission is not allowed.
[0160] Exemplarily, when the field value of the second subfield is 0, it indicates that out-of-order transmission is allowed. When the field value of the second subfield is 1, it indicates that out-of-order transmission is not allowed. Alternatively, when the field value of the second subfield is 1, it indicates that out-of-order transmission is allowed. When the field value of the second subfield is 0, it indicates that out-of-order transmission is not allowed.
[0161] It should be noted that "fourth" and "fifth" are used here only to indicate two different field values. In some embodiments, the field value of the second subfield may also be indicated in such a way that the fourth value is used to indicate that out-of-order transmission is not allowed, and the fifth value is used to indicate that out-of-order transmission is allowed.
[0162] It should also be noted that in the embodiment of the present application, the field values of different fields may be the same. For example, the first value of the first subfield is 0, and the fourth value of the second subfield is also 0.
[0163] In some embodiments, the request frame further includes a second field. Optionally, the second field may also be referred to as a TID i out-of-order transmission processing field. This second field is used to indicate the out-of-order processing method for data units corresponding to all TIDs, or to indicate the out-of-order processing method for data units corresponding to a TID value of i. In the embodiments of the present application, an example is provided in which the second field is used to indicate the out-of-order processing method for data units corresponding to a TID value of i. The value of i is an integer.
[0164] In some embodiments, the second field further includes the first subfield described above, which is used to indicate the transmission direction of the data unit corresponding to the TID value i. The transmission direction includes an uplink direction and / or a downlink direction. Exemplarily, the first subfield is used to indicate that the transmission direction of the data unit corresponding to the TID value i is uplink transmission; or, to indicate that the transmission direction of the data unit corresponding to the TID value i is downlink transmission; or, to indicate that the transmission direction of the data unit corresponding to the TID value i includes both uplink transmission and downlink transmission.
[0165] Optionally, the second field is carried in the data unit in-order / out-of-order transmission field. Optionally, the second field is carried in a data transmission element in the data unit in-order / out-of-order transmission field. The data transmission element is used to indicate whether out-of-order transmission is allowed for data units corresponding to all or some of the TIDs, and the out-of-order processing method and processing parameters when out-of-order transmission is allowed for data units corresponding to all or some of the TIDs.
[0166] Optionally, when the second subfield in the first field indicates that out-of-order transmission is not allowed, the request frame does not include the second field.
[0167] Optionally, when the second subfield in the first field indicates that out-of-order transmission is allowed, the request frame includes the second field.
[0168] Optionally, the second field is determined based on the third subfield in the first field. If the second subfield in the first field indicates that out-of-order transmission is allowed, the first field further includes a third subfield. The third subfield may also be referred to as an out-of-order transmission processing presence bitmap field, which is used to indicate, in a bitmap manner, whether the request frame contains the second field.
[0169] Optionally, the third subfield indicates based on a bitmap. If the sixth value exists in the bitmap, the request frame is indicated to include the second field. If the sixth value does not exist in the bitmap, the request frame is indicated to not include the second field. For example, assuming the sixth value is 1, if the bitmap corresponding to the third subfield is {0, 1, 0, 0, 0, 0, 0}, the request frame is indicated to include the second field.
[0170] Optionally, the bitmap is also used to indicate the position of the data unit for which out-of-order transmission is allowed among all data units corresponding to the TIDs. Alternatively, it can be understood that the bitmap is used to indicate the value of i. For example, assuming that the sixth value is 1, when the bitmap corresponding to the third subfield is {0, 1, 0, 0, 0, 0, 0}, the data unit for which out-of-order transmission is allowed is the data unit corresponding to TID 2, that is, i = 2.
[0171] In some embodiments, the second field includes at least one of the following fields:
[0172] · The fourth subfield;
[0173] Fifth subfield;
[0174] · The sixth subfield;
[0175] · Seventh subfield;
[0176] · Eighth subfield.
[0177] The presence or absence of the sixth subfield is indicated based on the fifth subfield, and the presence or absence of the eighth subfield is indicated based on the seventh subfield.
[0178] Exemplarily, as shown in FIG7 , the TID i out-of-order transmission handling field (second field) includes at least one of the following: whether out-of-order transmission is allowed subfield (fourth subfield), whether the SN processing and reordering subfield for TID i exists (fifth subfield), the SN processing and reordering subfield for TID i exists (sixth subfield), whether the PN processing and replay detection subfield for TID i exists (seventh subfield), and the PN processing and replay detection subfield for TID i (eighth subfield).
[0179] The SN Processing and Reordering subfield (sixth subfield) for TID i is indicated based on whether the SN Processing and Reordering subfield (fifth subfield) for TID i exists. If the presence of the SN Processing and Reordering subfield (fifth subfield) for TID i indicates the presence of SN processing and reordering for TID i, the SN Processing and Reordering subfield (sixth subfield) for TID i is included in the Out-of-Order Transmission Handling field (second field). If the presence of the SN Processing and Reordering subfield (fifth subfield) for TID i indicates the absence of SN processing and reordering for TID i, the SN Processing and Reordering subfield (sixth subfield) for TID i is not included in the Out-of-Order Transmission Handling field (second field).
[0180] The PN Processing and Replay Detection Subfield (eighth subfield) for TID i indicates whether the PN Processing and Replay Detection Subfield (seventh subfield) for TID i exists. If the PN Processing and Replay Detection Subfield (seventh subfield) for TID i exists, the PN Processing and Replay Detection Subfield (eighth subfield) for TID i is included in the Out-of-Order Transmission Handling Field (second field). If the PN Processing and Replay Detection Subfield (seventh subfield) for TID i exists, the PN Processing and Replay Detection Subfield (eighth subfield) for TID i is not included in the Out-of-Order Transmission Handling Field (second field).
[0181] Optionally, the fourth subfield may also be referred to as a "whether out-of-order transmission is allowed" subfield. The fourth subfield is used to indicate whether out-of-order transmission is allowed for the data unit corresponding to the TID value i.
[0182] Optionally, the field value of the fourth subfield includes at least one of the following:
[0183] · Sixth value;
[0184] ·Seventh value.
[0185] When the field value of the fourth subfield is the sixth value, it indicates that the data unit corresponding to the TID value i is allowed to use out-of-order transmission. When the field value of the fourth subfield is the seventh value, it indicates that the data unit corresponding to the TID value i is not allowed to use out-of-order transmission.
[0186] Illustratively, when the field value of the fourth subfield is 0, it indicates that the data unit corresponding to the TID value i is allowed to use out-of-order transmission. When the field value of the fourth subfield is 1, it indicates that the data unit corresponding to the TID value i is not allowed to use out-of-order transmission. Alternatively, when the field value of the fourth subfield is 1, it indicates that the data unit corresponding to the TID value i is allowed to use out-of-order transmission. When the field value of the fourth subfield is 0, it indicates that the data unit corresponding to the TID value i is not allowed to use out-of-order transmission.
[0187] It should be noted that "sixth" and "seventh" are used here only to indicate two different field values. In some embodiments, the field value of the fourth subfield may also be indicated in such a way that the sixth value is used to indicate that the data unit corresponding to the TID value i is not allowed to use out-of-order transmission, and the seventh value is used to indicate that the data unit corresponding to the TID value i is allowed to use out-of-order transmission.
[0188] Fifth subfield:
[0189] Optionally, the fifth subfield may also be referred to as a subfield indicating whether SN processing and reordering of TID i exists. The fifth subfield is used to indicate whether the sixth subfield is included.
[0190] Optionally, the field value of the fifth subfield includes at least one of the following:
[0191] · Eighth value;
[0192] Ninth value.
[0193] In which, when the field value of the fifth subfield is the eighth value, it indicates that the sixth subfield is included; when the field value of the fifth subfield is the ninth value, it indicates that the sixth subfield is not included.
[0194] Exemplarily, when the field value of the fifth subfield is 0, it indicates that the sixth subfield is included; when the field value of the fifth subfield is 1, it indicates that the sixth subfield is not included. Alternatively, when the field value of the fifth subfield is 1, it indicates that the sixth subfield is included; when the field value of the fifth subfield is 0, it indicates that the sixth subfield is not included.
[0195] It should be noted that "eighth" and "ninth" are used here only to indicate two different field values. In some embodiments, the field value of the fifth subfield may also be indicated in such a way that the eighth value indicates that the sixth subfield is not included, and the ninth value indicates that the sixth subfield is included.
[0196] Optionally, the sixth subfield may also be referred to as the SN processing and reordering subfield of TID i. The sixth subfield is used to indicate the SN processing and reordering method of the data unit corresponding to the TID value i.
[0197] In some embodiments, when the fifth subfield indicates that the second field includes a sixth subfield, the sixth subfield includes at least one of the following fields:
[0198] First processing mode subfield;
[0199] Maximum number of SN spaces allowed subfield;
[0200] Maximum number of counters allowed subfield;
[0201] Whether the SN sequence allows out-of-order transmission subfield;
[0202] The conditional parameter subfield passed to the upper layer.
[0203] Exemplarily, as shown in FIG8 , the SN processing and reordering subfield (sixth subfield) of TID i includes at least one of a first processing mode subfield, a maximum number of SN spaces allowed subfield, a maximum number of counters allowed subfield, a subfield indicating whether out-of-order transmission of SN sequences is allowed, and a conditional parameter subfield passed to an upper layer.
[0204] In some embodiments, the first processing mode subfield is used to indicate the number of SN spaces and / or the number of the first counter used by the data unit corresponding to the TID value i. The first counter is a counter used to count SNs to obtain an SN sequence.
[0205] Optionally, the first processing mode subfield is used to indicate that the data unit corresponding to the TID value i uses one SN space and / or one first counter. Optionally, the first processing mode subfield is used to indicate that the data unit corresponding to the TID value i uses at least one SN space and / or at least one first counter.
[0206] Optionally, the field value of the first processing mode subfield includes at least one of the following:
[0207] First processing threshold;
[0208] • Second processing threshold.
[0209] The first processing threshold is used to indicate that the data unit corresponding to TID value i uses one SN space and / or one first counter. Optionally, when the data receiver is a STA, the first counter is indexed by <address 1, TID i>, where address 1 is the RA; when the data receiver is an MLD, the first counter is indexed by <MLD MAC address to which the STA identified by address 1 is attached, TID i>.
[0210] The second processing threshold is used to indicate that the data unit corresponding to the TID value i uses at least one SN space and / or at least one first counter. Optionally, when the data receiver is a STA, the first counter is indexed by <address 1, TID i, flow identifier or data unit tag>, where address 1 is the RA; when the data receiver is an MLD, the first counter is indexed by <MLD MAC address to which the STA identified by address 1 is attached, TID i, flow identifier or data unit tag>.
[0211] It should be noted that "first" and "second" are used here only to indicate two different field values. In some embodiments, the field value of the first processing mode subfield may also be indicated in such a way that the first processing threshold is used to indicate that the data unit corresponding to the TID value i uses at least one SN space and / or at least one first counter, and the second processing threshold is used to indicate that the data unit corresponding to the TID value i uses one SN space and / or one first counter.
[0212] In some embodiments, the Maximum Number of SN Spaces Allowed subfield is used to indicate the maximum number of SN spaces allowed for a data unit corresponding to a TID value of i. Optionally, the Maximum Number of SN Spaces Allowed subfield is associated with the First Processing Mode subfield. If the First Processing Mode subfield indicates that a number of SN spaces are used for a data unit corresponding to a TID value of i, the maximum number of SN spaces used indicated by the Maximum Number of SN Spaces Allowed subfield should be greater than or equal to a, where a is a positive integer.
[0213] In some embodiments, the Maximum Number of Counters Allowed subfield is used to indicate the maximum number of first counters allowed to be used for a data unit corresponding to a TID value of i. Optionally, the Maximum Number of Counters Allowed subfield is associated with the First Processing Mode subfield. If the First Processing Mode subfield indicates that b first counters are used for a data unit corresponding to a TID value of i, the maximum number of first counters indicated by the Maximum Number of Counters Allowed subfield should be greater than or equal to b, where b is a positive integer.
[0214] In some embodiments, the SN sequence allows out-of-order transmission subfield is used to indicate whether the data unit corresponding to the TID value i of the SN space and / or the first counter is allowed to be transmitted out of order.
[0215] Optionally, the field value of the subfield "Whether the SN sequence allows out-of-order transmission" includes at least one of the following:
[0216] · Tenth value;
[0217] · Eleventh value.
[0218] Among them, the tenth value is used to indicate that the data unit corresponding to the TID value i using the SN space and / or the first counter is allowed to be transmitted out of order, and the eleventh value is used to indicate that the data unit corresponding to the TID value i using the SN space and / or the first counter is not allowed to be transmitted out of order.
[0219] Exemplarily, when the field value of the subfield "Whether the SN sequence allows out-of-order transmission" is 0, it indicates that the data unit corresponding to the value i of the TID of the SN space and / or the first counter is allowed to be transmitted out of order; when the field value of the subfield "Whether the SN sequence allows out-of-order transmission" is 1, it indicates that the data unit corresponding to the value i of the TID of the SN space and / or the first counter is not allowed to be transmitted out of order. Alternatively, when the field value of the subfield "Whether the SN sequence allows out-of-order transmission" is 1, it indicates that the data unit corresponding to the value i of the TID of the SN space and / or the first counter is allowed to be transmitted out of order; when the field value of the subfield "Whether the SN sequence allows out-of-order transmission" is 0, it indicates that the data unit corresponding to the value i of the TID of the SN space and / or the first counter is not allowed to be transmitted out of order.
[0220] It should be noted that "tenth" and "eleventh" are used here only to indicate two different field values. In some embodiments, the field value of the processing mode subfield may also be indicated in such a way that the tenth value is used to indicate that the data unit corresponding to the TID value i using the SN space and / or the first counter is not allowed to be transmitted out of order, and the eleventh value is used to indicate that the data unit corresponding to the TID value i using the SN space and / or the first counter is allowed to be transmitted out of order.
[0221] In some embodiments, the conditional parameter subfield passed to the upper layer is used to indicate the conditional parameters for passing the received data unit to the upper layer. Or, it is used to indicate the conditional parameters for passing the received data unit to the next MAC process. In some embodiments, the conditional parameter subfield passed to the upper layer needs to be set when there is a data unit that is earlier in the transmission order but has not been received. For example, assuming that the data units transmitted in the transmission order include the first data unit, the second data unit, and the third data unit, when the first data unit and the third data unit are successfully transmitted and the second data unit fails to be transmitted, the conditional parameter subfield passed to the upper layer needs to be indicated for the first data unit and the third data unit that are successfully transmitted.
[0222] In some embodiments, the conditional parameter subfield passed to the upper layer includes at least one of the following fields:
[0223] Whether the SN Deviation Threshold subfield exists;
[0224] SN Deviation Threshold subfield;
[0225] Whether there is a buffer waiting time threshold subfield;
[0226] • Buffer Waiting Time Threshold subfield.
[0227] The existence of the SN deviation threshold subfield is based on whether the SN deviation threshold subfield is indicated, and the existence of the buffer waiting time threshold subfield is based on whether the buffer waiting time threshold subfield is indicated.
[0228] Exemplarily, as shown in FIG9 , the conditional parameter subfields passed to the upper layer include at least one of the SN deviation threshold subfield, the SN deviation threshold subfield, the buffer waiting time threshold subfield, and the buffer waiting time threshold subfield.
[0229] In some embodiments, whether the SN deviation threshold subfield exists is used to indicate whether the conditional parameter subfield passed to the upper layer includes the SN deviation threshold subfield.
[0230] Optionally, the field value of the "Whether SN Deviation Threshold Exists" subfield includes at least one of the following:
[0231] ·Twelfth value;
[0232] ·The thirteenth value.
[0233] Among them, the twelfth value is used to indicate that the conditional parameter subfield passed to the upper layer includes the SN deviation threshold subfield, and the thirteenth value is used to indicate that the conditional parameter subfield passed to the upper layer does not include the SN deviation threshold subfield.
[0234] Exemplarily, if the field value of the "Presence of SN Deviation Threshold" subfield is 1, it indicates that the conditional parameter subfield passed to the upper layer includes the SN Deviation Threshold subfield; if the field value of the "Presence of SN Deviation Threshold" subfield is 0, it indicates that the conditional parameter subfield passed to the upper layer does not include the SN Deviation Threshold subfield. Alternatively, if the field value of the "Presence of SN Deviation Threshold" subfield is 0, it indicates that the conditional parameter subfield passed to the upper layer includes the SN Deviation Threshold subfield; if the field value of the "Presence of SN Deviation Threshold" subfield is 1, it indicates that the conditional parameter subfield passed to the upper layer does not include the SN Deviation Threshold subfield.
[0235] It should be noted that the "twelfth" and "thirteenth" here are merely used to indicate two different field values. In some embodiments, the presence of the SN Deviation Threshold subfield may be indicated by the twelfth value being used to indicate that the conditional parameter subfield passed to the upper layer does not include the SN Deviation Threshold subfield, and the thirteenth value being used to indicate that the conditional parameter subfield passed to the upper layer includes the SN Deviation Threshold subfield.
[0236] In some embodiments, if the presence of an SN deviation threshold subfield indicates that the conditional parameter subfield passed to the upper layer includes the SN deviation threshold subfield, the conditional parameter subfield passed to the upper layer includes the SN deviation threshold subfield. The SN deviation threshold subfield is used to indicate the maximum allowable deviation between the first sequence number and the second sequence number. The first sequence number is the sequence number of the received data unit, and the second sequence number is the sequence number of the unreceived data unit. Alternatively, it can be understood that the first sequence number is the sequence number corresponding to the last received data unit, and the second sequence number is the sequence number of the first unreceived data unit.
[0237] In some embodiments, the SN Deviation Threshold subfield may also be understood as being used to limit the maximum deviation between the first sequence number and the second sequence number. If the deviation between the sequence number corresponding to the received data unit and the sequence number of the first unreceived data unit is less than or equal to the maximum deviation, the received data unit should be passed to an upper layer or should be passed to the next MAC process.
[0238] In some embodiments, whether a buffer waiting time threshold subfield exists is used to indicate whether the condition parameter subfield passed to the upper layer includes a buffer waiting time threshold subfield.
[0239] Optionally, the field value of the "Whether a Buffer Waiting Time Threshold Exists" subfield includes at least one of the following:
[0240] ·14th value;
[0241] ·The fifteenth value.
[0242] Among them, the fourteenth value is used to indicate that the conditional parameter subfield passed to the upper layer includes the buffer waiting time threshold subfield, and the fifteenth value is used to indicate that the conditional parameter subfield passed to the upper layer does not include the buffer waiting time threshold subfield.
[0243] Exemplarily, if the value of the "Whether a Buffer Waiting Time Threshold" subfield is 1, it indicates that the conditional parameter subfield passed to the upper layer includes the Buffer Waiting Time Threshold subfield; if the value of the "Whether a Buffer Waiting Time Threshold" subfield is 0, it indicates that the conditional parameter subfield passed to the upper layer does not include the Buffer Waiting Time Threshold subfield. Alternatively, if the value of the "Whether a Buffer Waiting Time Threshold" subfield is 0, it indicates that the conditional parameter subfield passed to the upper layer includes the Buffer Waiting Time Threshold subfield; if the value of the "Whether a Buffer Waiting Time Threshold" subfield is 1, it indicates that the conditional parameter subfield passed to the upper layer does not include the Buffer Waiting Time Threshold subfield.
[0244] It should be noted that the "fourteenth" and "fifteenth" here are merely used to indicate two different field values. In some embodiments, the presence of the Buffer Waiting Time Threshold subfield may be indicated by the fourteenth value indicating that the Buffer Waiting Time Threshold subfield is not included in the Conditional Parameters subfield passed to the upper layer, and the fifteenth value indicating that the Buffer Waiting Time Threshold subfield is included in the Conditional Parameters subfield passed to the upper layer.
[0245] In some embodiments, if the presence of the buffer waiting time threshold subfield indicates that the conditional parameter subfield passed to the upper layer includes a buffer waiting time threshold subfield, the conditional parameter subfield passed to the upper layer includes a buffer waiting time threshold subfield. The buffer waiting time threshold subfield is used to indicate the maximum waiting time of a received data unit in the buffer.
[0246] In some embodiments, the buffer waiting time threshold subfield may also be understood as limiting the maximum waiting time of a received data unit in the buffer. If the waiting time of a received data unit in the buffer is greater than the maximum waiting time, the received data unit should be passed to an upper layer or to the next MAC process.
[0247] In some embodiments, when the conditional parameter subfield passed to the upper layer includes the SN deviation threshold subfield and the buffer waiting time threshold subfield, the received data unit whose deviation from the sequence number of the first unreceived data unit is less than or equal to the maximum deviation and whose waiting time in the buffer is greater than the maximum waiting time should be passed to the upper layer or to the next MAC process.
[0248] Seventh subfield:
[0249] In some embodiments, the seventh subfield may also be referred to as a PN processing and replay detection subfield for TID i. The seventh subfield is used to indicate whether the eighth subfield is included.
[0250] Optionally, the field value of the seventh subfield includes at least one of the following:
[0251] · Sixteenth value;
[0252] · Seventeenth value.
[0253] In which, when the field value of the seventh subfield is the sixteenth value, it indicates that the eighth subfield is included; when the field value of the seventh subfield is the seventeenth value, it indicates that the eighth subfield is not included.
[0254] Illustratively, when the field value of the seventh subfield is 0, it indicates that the eighth subfield is included; when the field value of the seventh subfield is 1, it indicates that the eighth subfield is not included. Alternatively, when the field value of the seventh subfield is 1, it indicates that the eighth subfield is included; when the field value of the seventh subfield is 0, it indicates that the eighth subfield is not included.
[0255] It should be noted that "sixteenth" and "seventeenth" are used here only to indicate two different field values. In some embodiments, the field value of the seventh subfield may also be indicated by the sixteenth value being used to indicate that the eighth subfield is not included, and the seventeenth value being used to indicate that the eighth subfield is included.
[0256] Optionally, the eighth subfield may also be called the PN processing and replay detection subfield of TID i. The eighth subfield is used to indicate the PN processing and replay detection mode of the data unit corresponding to the TID value i.
[0257] In some embodiments, when the seventh subfield indicates that the eighth subfield is included in the second field, the eighth subfield includes at least one of the following fields:
[0258] Second processing mode subfield;
[0259] Whether to use the PN window for replay detection subfield;
[0260] PN Window Size subfield;
[0261] Maximum number of PN spaces allowed subfield;
[0262] The maximum number of counters allowed subfield.
[0263] Illustratively, as shown in FIG10 , the PN processing and replay detection subfield (the seventh subfield) of TID i includes at least one of a second processing mode subfield, a PN window for replay detection subfield, a PN window size subfield, a maximum allowed PN space number subfield, and a maximum allowed counter number subfield.
[0264] In some embodiments, the second processing mode subfield is used to indicate the PN space and / or the number of second counters used by the data unit corresponding to the TID value i. The second counter is a counter used to count PNs to obtain a PN sequence.
[0265] Optionally, the second processing mode subfield is used to indicate that the data unit corresponding to the TID value i uses one PN space and / or one second counter. Optionally, the second processing mode subfield is used to indicate that the data unit corresponding to the TID value i uses at least one PN space and / or at least one second counter.
[0266] Optionally, the field value of the second processing mode sub - field includes at least one of the following:
[0267] · The third processing threshold;
[0268] · The fourth processing threshold.
[0269] Among them, the third processing threshold is used to indicate that the data unit corresponding to the TID value of i adopts one PN space and / or one second counter. Optionally, when the data receiver is a STA, the second counter is associated with <TA, RA, TID i or the priority corresponding to TID i>; when the data receiver is an MLD, the second counter is associated with <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the priority corresponding to TID i>.
[0270] The fourth processing threshold is used to indicate that the data unit corresponding to the TID value of i adopts at least one PN space and / or at least one second counter. Optionally, when the data receiver is a STA, the second counter is associated with <TA, RA, TID i or the priority corresponding to TID i, flow identifier or data unit tag>; when the data receiver is an MLD, the second counter is associated with <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the priority corresponding to TID i, flow identifier or data unit tag>.
[0271] It should be noted that here "third" and "fourth" are only used to indicate that they are two different field values. In some embodiments, the indication method of the field value of the second processing mode sub - field may also be that the third processing threshold is used to indicate that the data unit corresponding to the TID value of i adopts at least one PN space and / or at least one second counter, and the fourth processing threshold is used to indicate that the data unit corresponding to the TID value of i adopts one PN space and / or one second counter.
[0272] In some embodiments, the sub - field of whether to use a PN window for replay detection is used to indicate whether to use a PN window to perform replay detection on the data unit corresponding to the TID value of i.
[0273] Optionally, the field value of the sub - field of whether to use a PN window for replay detection includes at least one of the following:
[0274] · The eighteenth value;
[0275] · The nineteenth value.
[0276] The eighteenth value is used to indicate that the PN window is used to perform replay detection on the data unit corresponding to the TID value i, and the nineteenth value is used to indicate that the PN window is not used to perform replay detection on the data unit corresponding to the TID value i.
[0277] Illustratively, when the value of the "Whether to Use PN Window for Replay Detection" subfield is 0, it indicates that a PN window is used to perform replay detection on the data unit corresponding to the TID value i; when the value of the "Whether to Use PN Window for Replay Detection" subfield is 1, it indicates that a PN window is not used to perform replay detection on the data unit corresponding to the TID value i. Alternatively, when the value of the "Whether to Use PN Window for Replay Detection" subfield is 1, it indicates that a PN window is used to perform replay detection on the data unit corresponding to the TID value i; when the value of the "Whether to Use PN Window for Replay Detection" subfield is 0, it indicates that a PN window is not used to perform replay detection on the data unit corresponding to the TID value i.
[0278] It should be noted that "18th" and "19th" are used here merely to indicate two different field values. In some embodiments, the field value of the "Whether to Use a PN Window for Replay Detection" subfield may also indicate that the 18th value indicates not to use a PN window for replay detection of the data unit corresponding to the TID value i, and the 19th value indicates to use a PN window for replay detection of the data unit corresponding to the TID value i.
[0279] In some embodiments, when the "Whether to Use PN Window for Replay Detection" subfield indicates that a PN window is not used to perform replay detection on the data unit corresponding to the TID value i, replay detection is performed on the data unit corresponding to the TID value i based on the PN value of the data unit corresponding to the TID value i and the count value of the second counter.
[0280] In some embodiments, when the subfield "Whether to use PN window for replay detection" indicates that the PN window is not used to perform replay detection on the data unit corresponding to the TID value i, the eighth subfield does not include the PN window size subfield.
[0281] In some embodiments, when the "Whether to Use PN Window for Replay Detection" subfield indicates that a PN window is used to perform replay detection on the data unit corresponding to the TID value i, the eighth subfield includes a PN Window Size subfield. The PN Window Size subfield is used to indicate the size of the PN window used to perform replay detection on the data unit corresponding to the TID value i.
[0282] Optionally, when the difference between the PN value corresponding to the data unit corresponding to the TID value i and the PN value corresponding to the last received data unit is less than or equal to the size of the PN window, the data unit corresponding to the TID value i is considered to have passed the replay detection; when the difference between the PN value corresponding to the data unit corresponding to the TID value i and the PN value corresponding to the last received data unit is greater than the size of the PN window, the data unit corresponding to the TID value i is considered to have failed the replay detection, and the data unit is discarded.
[0283] In some embodiments, the Maximum Number of PN Spaces Allowed subfield is used to indicate the maximum number of PN spaces allowed to be used by a data unit corresponding to a TID value of i. Optionally, the Maximum Number of PN Spaces Allowed subfield is associated with the Second Processing Mode subfield. If the Second Processing Mode subfield indicates that a data unit corresponding to a TID value of i uses c PN spaces, the maximum number of PN spaces used indicated by the Maximum Number of PN Spaces Allowed subfield should be greater than or equal to c, where c is a positive integer.
[0284] In some embodiments, the Maximum Number of Counters Allowed subfield is used to indicate the maximum number of second counters permitted for a data unit corresponding to a TID value of i. Optionally, the Maximum Number of Counters Allowed subfield is associated with the Second Processing Mode subfield. If the Second Processing Mode subfield indicates that d first counters are permitted for a data unit corresponding to a TID value of i, the maximum number of second counters permitted to be used indicated by the Maximum Number of Counters Allowed subfield should be greater than or equal to d, where d is a positive integer.
[0285] To sum up, the method provided in this embodiment enables the first device to request negotiation for out-of-order transmission in advance through the request frame during data transmission with other communication devices, and clarifies how to use out-of-order transmission before data transmission, thereby ensuring that data can be transmitted between the first device and other communication devices based on a clear transmission mechanism.
[0286] In some embodiments, the above-mentioned request frame includes a first data unit transmission element, which is used to indicate the transmission mode parameters corresponding to the request frame; the transmission mode parameters include whether out-of-order transmission is allowed in at least one transmission direction, and / or, the out-of-order processing method and processing parameters when out-of-order transmission is allowed.
[0287] In some embodiments, when the first device is associated or reassociated with the second device, the request frame is a data transmission request frame used to request negotiation of whether to use out-of-order transmission. Optionally, the data transmission request frame is also used to request negotiation of out-of-order processing methods and processing parameters when out-of-order transmission is allowed.
[0288] In some embodiments, during the process of a first device associating or reassociating with a second device, the request frame is an association or reassociation request frame, which is used to request association or reassociation with the second device and to request negotiation of whether to use out-of-order transmission. Optionally, the association or reassociation request frame is also used to request negotiation of an out-of-order handling method and processing parameters when out-of-order transmission is allowed.
[0289] For response frames:
[0290] FIG11 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the first device, and the above step 220 further includes the following sub-steps:
[0291] Step 222: The first device receives the response frame.
[0292] In some embodiments, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the request frame is used to respond to not using out-of-order transmission. Optionally, the response frame is used to respond to using out-of-order transmission for a data unit corresponding to a TID value of m, where m is an integer. Optionally, the response frame is used to respond to not using out-of-order transmission for a data unit corresponding to a TID value of n, where n is an integer. In some embodiments, the response frame is also used to respond to whether an out-of-order processing method and processing parameters are used when out-of-order transmission is allowed.
[0293] In some embodiments, the response frame is an action frame. In some embodiments, the response frame includes at least one field. For example, the response frame includes a second action field, which is used to respond to the transaction requested by the request frame. Exemplarily, as shown in Table 3 below, the second action field includes a category field, a protected action field, a dialog token field, a status code field, and a data unit in-order / out-of-order transmission field.
[0294] Table 3
[0295] The Category field can be set to the corresponding value in the "Code" column of the "Category" value in the IEEE 802.11 specification. Action frames of a given category are referred to as <Category Name> Action frames. For example, frames in the Protected UHR category are referred to as Protected UHR Action frames.
[0296] The protected action field is a field following the category field and is used to distinguish the protected action frame format, wherein the specific protected action frame format can be indicated by a corresponding protected action field value.
[0297] The Dialog Token field is typically set to a non-zero value, selected by the station sending the response frame to identify the transaction requested in the response request frame. If the response frame is not used to respond to the transaction requested in the response request frame, the Dialog Token field is set to zero.
[0298] In some embodiments, the response frame includes a status code field, and the first device determines whether the peer device has received the request corresponding to the request frame based on the received status code field. Optionally, the status code field is used to indicate whether the request corresponding to the request frame has been received.
[0299] Optionally, the status code field value includes at least one of the following:
[0300] First value;
[0301] Second value;
[0302] The third value.
[0303] When the field value of the status code field is the first value, the status code field is used to indicate acceptance of the request corresponding to the request frame.
[0304] When the field value of the status code field is the second value, the status code field is used to indicate that the request corresponding to the request frame is rejected.
[0305] When the field value of the status code field is the third value, the status code field is used to indicate rejection of the request corresponding to the request frame, and to recommend negotiation of whether to use out-of-order transmission in at least one transmission direction, and / or an out-of-order processing method and processing parameters for data units corresponding to at least one TID when out-of-order transmission is allowed.
[0306] It should be noted that "first," "second," and "third" are used here only to indicate three different field values. In some embodiments, the field value of the status code field may also indicate: a first value indicating acceptance of the request corresponding to the request frame; a second value indicating rejection of the request corresponding to the request frame, and a recommendation to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or, if out-of-order transmission is allowed, the out-of-order handling method and processing parameters for the data unit corresponding to at least one TID; a third value indicating rejection of the request corresponding to the request frame. Alternatively, the first value indicating rejection of the request corresponding to the request frame, and a recommendation to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or, if out-of-order transmission is allowed, the out-of-order handling method and processing parameters for the data unit corresponding to at least one TID; the second value indicating rejection of the request corresponding to the request frame; and the third value indicating acceptance of the request corresponding to the request frame. Alternatively, the first value indicating rejection of the request corresponding to the request frame, and a recommendation to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or, if out-of-order transmission is allowed, the out-of-order handling method and processing parameters for the data unit corresponding to at least one TID. Alternatively, the first value indicates rejection of the request corresponding to the request frame; the second value indicates rejection of the request corresponding to the request frame and a suggestion to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or the out-of-order handling method and processing parameters for the data unit corresponding to at least one TID if out-of-order transmission is allowed; and the third value indicates acceptance of the request corresponding to the request frame. Alternatively, the first value indicates rejection of the request corresponding to the request frame and a suggestion to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or the out-of-order handling method and processing parameters for the data unit corresponding to at least one TID if out-of-order transmission is allowed; the second value indicates acceptance of the request corresponding to the request frame; and the third value indicates rejection of the request corresponding to the request frame.
[0307] For example, it is shown in Table 4 below:
[0308] Table 4
[0309] Optionally, when the field value of the status code field is a third value, that is, when indicating a rejection of the request corresponding to the request frame and suggesting negotiation of whether to use out-of-order transmission in at least one transmission direction, and / or when out-of-order transmission is allowed, the response frame may also include a third field. Optionally, the third field may also be referred to as a data unit in-order / out-of-order transmission field. Alternatively, the third field may be considered to be carried within the data unit in-order / out-of-order transmission field. The data unit in-order / out-of-order transmission field includes at least one data transmission element. This data transmission element may also be referred to as a data unit in-order / out-of-order transmission element. Optionally, when the data unit in-order / out-of-order transmission field includes at least two data transmission elements, different data transmission elements are used to indicate data transmission in different transmission directions. Exemplarily, when the data unit in-order / out-of-order transmission field includes two data transmission elements, one data transmission element is used to indicate data transmission in the uplink direction, and the other data transmission element is used to indicate data transmission in the downlink direction.
[0310] In some embodiments, the third field is used to indicate whether out-of-order transmission is allowed for the data unit corresponding to the at least one TID in at least one transmission direction, and / or an out-of-order processing method and processing parameters when out-of-order transmission is allowed for the data unit corresponding to the at least one TID in at least one transmission direction.
[0311] Optionally, the third field is used to indicate that the data unit corresponding to at least one TID is allowed to be transmitted out of order in at least one transmission direction.
[0312] Optionally, the third field is used to indicate that data units corresponding to at least one TID are not allowed to be transmitted out of order in at least one transmission direction.
[0313] Optionally, the third field is used to indicate an out-of-order processing method and processing parameters when out-of-order transmission is allowed for data units corresponding to at least one TID in at least one transmission direction.
[0314] Optionally, the third field is used to indicate that out-of-order transmission is allowed for the data unit corresponding to at least one TID in at least one transmission direction, and an out-of-order processing method and processing parameters when out-of-order transmission is allowed for the data unit corresponding to at least one TID in at least one transmission direction.
[0315] In some embodiments, the implementation of the third field is similar to that of the first field, and for details, refer to the implementation of the first field in step 221 above.
[0316] To sum up, the method provided in this embodiment, by receiving a response frame, enables the first device to clarify in advance how to use out-of-order transmission through the response frame during the process of data transmission with other communication devices, thereby ensuring that data can be transmitted between the first device and the other communication devices based on a clear transmission mechanism.
[0317] In some embodiments, when the response frame indicates acceptance of the request corresponding to the request frame, data is transmitted according to the out-of-order transmission method requested by the request frame. For example, the request frame requests out-of-order transmission of the data unit corresponding to the TID value i, and when the response frame indicates acceptance of the request corresponding to the request frame, out-of-order transmission is used for the data unit corresponding to the TID value i.
[0318] In some embodiments, if the response frame indicates a rejection of the request corresponding to the request frame, the transmission mode used before the request frame is sent is used. The transmission mode used before the request frame is sent includes an in-order transmission mode or an out-of-order transmission mode. For example, before the request frame is sent, in-order transmission is used for the data unit corresponding to the TID value i. The request frame requests out-of-order transmission for the data unit corresponding to the TID value i. If the response frame indicates a rejection of the request corresponding to the request frame, in-order transmission is still used for the data unit corresponding to the TID value i.
[0319] In some embodiments, when the response frame indicates a rejection of the request corresponding to the request frame and a proposal to negotiate whether to use out-of-order transmission in at least one transmission direction and / or an out-of-order processing method and processing parameters for data units corresponding to at least one TID if out-of-order transmission is allowed, the data transmission negotiation process is repeated, and a request frame is sent and a response frame is received in response to the proposal of whether to use out-of-order transmission in at least one transmission direction for data units corresponding to the at least one TID.
[0320] In some embodiments, when the response frame indicates a rejection of the request corresponding to the request frame and recommends negotiation of whether to use out-of-order transmission in at least one transmission direction and / or an out-of-order handling method and processing parameters for a data unit corresponding to at least one TID if out-of-order transmission is allowed, the response frame includes a second data unit transmission element, where the second data unit transmission element is used to indicate recommended transmission method parameters. The transmission method parameters include whether out-of-order transmission is allowed in at least one transmission direction and / or an out-of-order handling method and processing parameters if out-of-order transmission is allowed.
[0321] In some embodiments, when the first device is associated or reassociated with the second device, the response frame is a data transmission response frame, which is only used to respond to whether out-of-order transmission is used. Optionally, the data transmission response frame is also used to respond to whether an out-of-order processing method and processing parameters are used when out-of-order transmission is allowed.
[0322] In some embodiments, during the process of a first device associating or reassociating with a second device, the response frame is an association or reassociation response frame, which is used to respond to both whether to associate or reassociate with the second device and whether to use out-of-order transmission. Optionally, the association or reassociation response frame is also used to respond to whether to use an out-of-order processing method and processing parameters when out-of-order transmission is allowed.
[0323] For the teardown frame:
[0324] FIG12 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the first device, and the above step 220 further includes the following sub-steps:
[0325] Step 223: The first device sends a teardown frame.
[0326] In some embodiments, the teardown frame is used to tear down a negotiated data transmission mode for a data unit. Optionally, the teardown frame is used to tear down a negotiated out-of-order transmission mode for a data unit. Optionally, the teardown frame is used to tear down a negotiated out-of-order transmission permission. Optionally, the teardown frame is used to tear down a negotiated out-of-order transmission permission for a data unit corresponding to a TID value i.
[0327] In some embodiments, the teardown frame includes at least one field. For example, the teardown frame includes a third action field, which is used to indicate the transaction to which the teardown frame corresponds. Exemplarily, as shown in Table 5 below, the third action field includes a category field and a protected action field.
[0328] Table 5
[0329] The Category field can be set to the corresponding value in the "Code" column of the "Category" value in the IEEE 802.11 specification. Action frames of a given category are referred to as <Category Name> Action frames. For example, frames in the Protected UHR category are referred to as Protected UHR Action frames.
[0330] The protected action field is a field following the category field and is used to distinguish the protected action frame format, wherein the specific protected action frame format can be indicated by a corresponding protected action field value.
[0331] FIG13 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the first device, and the above step 220 further includes the following sub-steps:
[0332] Step 224: The first device receives the teardown frame.
[0333] Specifically, the implementation method of removing the frame is detailed in step 223 above.
[0334] FIG14 is a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by a second device, which is a multi-link device that serves as an access point, or a multi-link device that is not an access point. In the embodiment of the present application, the second device is a data receiver. The method includes:
[0335] Step 320: The second device transmits at least one frame.
[0336] In some embodiments, the second device is an AP in the above-mentioned communication system, or a STA in the above-mentioned communication system. Optionally, in the embodiments of the present application, an example is given in which the second device is a receiving device that receives a message sent by the first device requesting negotiation on whether to use out-of-order transmission.
[0337] The second device transmits at least one frame for negotiating whether to use out-of-order transmission. In this embodiment, the term "transmit" can be considered as sending and / or receiving.
[0338] Optionally, the frame includes at least one of the following:
[0339] Request frame;
[0340] Response frame;
[0341] ·Remove the frame.
[0342] In some embodiments, the second device transmits at least one request frame, the request frame being used to request negotiation of whether to use out-of-order transmission.
[0343] In some embodiments, the second device transmits at least one response frame, the response frame being used to respond to whether out-of-order transmission is used.
[0344] In some embodiments, the second device transmits at least one teardown frame, which is used to tear down the data transmission method used by the negotiated data unit.
[0345] In some embodiments, the second device transmits at least one request frame and at least one response frame.
[0346] In some embodiments, the second device transmits at least one request frame and at least one teardown frame.
[0347] In some embodiments, the second device transmits at least one response frame and at least one teardown frame.
[0348] In some embodiments, the second device transmits at least one request frame, at least one response frame, and at least one teardown frame.
[0349] In some embodiments, this frame is also used to negotiate an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the request frame is also used to request negotiation of an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the response frame is also used to respond to whether the out-of-order handling method and processing parameters when out-of-order transmission is allowed are used.
[0350] In some embodiments, the out-of-order processing method and processing parameters include at least one of the following information:
[0351] Transmission direction;
[0352] Allows either out-of-order or in-order transmission;
[0353] Whether to allow out-of-order transmission of data units corresponding to at least one TID;
[0354] The sequence number (SN) processing and reordering method for the data units corresponding to at least one TID;
[0355] Packet number PN processing and replay detection method for data units corresponding to at least one TID;
[0356] The number of SN spaces and / or the number of the first counter used by the data unit corresponding to at least one TID;
[0357] The maximum number of SN spaces allowed for a data unit corresponding to at least one TID;
[0358] The maximum number of first counters allowed for data units corresponding to at least one TID;
[0359] Whether out-of-order transmission is allowed for the data unit corresponding to at least one TID using the SN space and / or the first counter;
[0360] Conditional parameters for delivering the received data unit corresponding to at least one TID to the upper layer;
[0361] The maximum allowed deviation between the sequence number of the data unit corresponding to at least one received TID and the sequence number of the data unit corresponding to at least one unreceived TID;
[0362] The maximum waiting time in the buffer for a data unit corresponding to at least one received TID;
[0363] The number of PN spaces and / or the number of second counters used by data units corresponding to at least one TID;
[0364] The maximum number of PN spaces allowed for a data unit corresponding to at least one TID;
[0365] The maximum number of second counters allowed for data units corresponding to at least one TID;
[0366] Whether to use the PN window to perform replay detection on the data unit corresponding to at least one TID;
[0367] The size of the PN window used for replay detection of the data unit corresponding to at least one TID.
[0368] The data unit corresponding to at least one TID includes a data unit corresponding to one TID and / or a data unit corresponding to each of at least two TIDs.
[0369] To sum up, the method provided in this embodiment, by transmitting at least one frame for negotiating whether to use out-of-order transmission, enables the second device to negotiate in advance on out-of-order transmission during data transmission with other communication devices through the frame for negotiating whether to use out-of-order transmission. Before data transmission, by transmitting the frame for negotiating whether to use out-of-order transmission, it is clear how to use out-of-order transmission, thereby ensuring that data can be transmitted between the second device and other communication devices based on a clear transmission mechanism.
[0370] For the request frame:
[0371] FIG15 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the second device, and the above step 320 includes the following sub-steps:
[0372] Step 321: The second device receives the request frame.
[0373] In some embodiments, the request frame is used to request negotiation on whether to use out-of-order transmission. Optionally, the request frame is used to request negotiation on whether to use out-of-order transmission. Optionally, the request frame is used to request negotiation on not using out-of-order transmission. Optionally, the request frame is used to request negotiation on using out-of-order transmission for data units corresponding to a TID value of m, where m is an integer. Optionally, the request frame is used to request negotiation on not using out-of-order transmission for data units corresponding to a TID value of n, where n is an integer. In some embodiments, the request frame is also used to request negotiation on an out-of-order handling method and processing parameters when out-of-order transmission is permitted.
[0374] Specifically, the implementation method of the request frame is detailed in the above step 221.
[0375] For response frames:
[0376] FIG16 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the second device, and the above step 320 further includes the following sub-steps:
[0377] Step 322: The second device sends a response frame.
[0378] In some embodiments, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the request frame is used to respond to not using out-of-order transmission. Optionally, the response frame is used to respond to using out-of-order transmission for a data unit corresponding to a TID value of m, where m is an integer. Optionally, the response frame is used to respond to not using out-of-order transmission for a data unit corresponding to a TID value of n, where n is an integer. In some embodiments, the response frame is also used to respond to whether an out-of-order processing method and processing parameters are used when out-of-order transmission is allowed.
[0379] Specifically, the implementation method of the response frame is detailed in the above step 222.
[0380] For the teardown frame:
[0381] FIG17 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the second device, and the above step 320 further includes the following sub-steps:
[0382] Step 323: The second device sends a teardown frame.
[0383] Specifically, the implementation method of removing the frame is detailed in step 223 above.
[0384] FIG18 shows a flowchart of a data transmission negotiation method provided by an exemplary embodiment of the present application. The method is performed by the second device, and the above step 320 further includes the following sub-steps:
[0385] Step 324: The second device receives the teardown frame.
[0386] Specifically, the implementation method of removing the frame is detailed in step 223 above.
[0387] The data unit in-order / out-of-order transmission negotiation mechanism allows a non-Multi-Link Operation (MLO) non-AP station and a non-MLO AP to determine whether one of them is the sender of a data unit or data frame and the other is the receiver of the data unit or data frame. The mechanism then allows negotiation in the uplink and / or downlink directions regarding whether out-of-order transmission of the data frame and / or management frame corresponding to the i-th TID is permitted, as well as the out-of-order handling method and processing parameters if out-of-order transmission is permitted. For data units or data frames sent in the uplink direction, the non-MLO non-AP station is the data sender and the non-MLO AP is the data receiver. For data frames sent in the downlink direction, the non-MLO AP is the data sender and the non-MLO non-AP station is the data receiver.
[0388] By default, data frames and / or management frames corresponding to all TIDs can only be transmitted in-order (or out-of-order transmission is not allowed) in the uplink and / or downlink directions. In non-default situations, data frames and / or management frames corresponding to the i-th TID can determine whether out-of-order transmission is allowed in the uplink and / or downlink directions through data unit in-order / out-of-order transmission negotiation, and the out-of-order handling method and processing parameters if out-of-order transmission is allowed.
[0389] Negotiation of in-order / out-of-order transmission of data units for association or reassociation:
[0390] Exemplarily, as shown in FIG19 , the first device 11 is taken as a sending device requesting negotiation on whether to use out-of-order transmission, and the second device 12 is taken as a receiving device receiving the data negotiation request.
[0391] The first device 11 sends a data transmission request frame to the second device 12, wherein the data transmission request frame is used to request negotiation with the second device 12 on whether to use out-of-order transmission. Specifically, the implementation of the data transmission request frame is detailed in step 221 above.
[0392] The second device 12 receives the data transmission request frame sent by the first device 11 .
[0393] The second device 12 sends a data transmission response frame to the first device 11. The data transmission response frame is used to respond to whether the request of the first device 11 is approved. Specifically, the implementation method of the data transmission response frame is detailed in the above step 222.
[0394] Optionally, after the first device 11 and the second device 12 complete the negotiation, the first device 11 and / or the second device 12 may initiate data transmission teardown, for example, by sending a teardown frame from the first device 11 to the second device 12 and / or by sending a teardown frame from the second device 12 to the first device 11. The teardown frame is used to tear down the data transmission method used by the negotiated data unit. Specifically, the implementation of the teardown frame is detailed in step 223 above.
[0395] Negotiation of in-order / out-of-order transmission of data units during association or reassociation:
[0396] Exemplarily, as shown in FIG20 , the first device 11 is taken as a sending device requesting negotiation on whether to use out-of-order transmission, and the second device 12 is taken as a receiving device receiving the data negotiation request.
[0397] The first device 11 sends an association or re-association request frame to the second device 12. This association or re-association request frame is used not only to request negotiation with the second device 12 on whether to use out-of-order transmission, but also to request the first device 11 to associate or re-associate with the second device 12. Specifically, the implementation method for using this association or re-association request frame to request negotiation with the second device 12 on whether to use out-of-order transmission is as described in step 221 above.
[0398] The second device 12 receives the association or re-association request frame sent by the first device 11.
[0399] The second device 12 sends an association or re-association response frame to the first device 11. This association or re-association response frame is used to respond to whether it agrees to the request of the first device 11, including whether it agrees to use out-of-order transmission and whether it agrees to associate or re-associate with the first device 11. Specifically, the implementation method for using this association or re-association response frame to respond to whether to use out-of-order transmission is as described in step 222 above.
[0400] Optionally, after the negotiation between the first device 11 and the second device 12 is completed, either the first device 11 or the second device 12 can initiate data transfer disconnection, such as the first device 11 sending a disconnection frame to the second device 12 and / or the second device 12 sending a disconnection frame to the first device 11. This disconnection frame is used to disconnect the data transfer mode used for the negotiated data unit. Specifically, the implementation method of this disconnection frame is as described in step 223 above.
[0401] In some embodiments, after the data transfer negotiation between the first device and the second device is completed, the data transfer between the first device and the second device will be carried out according to the negotiation result.
[0402] For the case where data units are not distinguished:
[0403] Data sender:
[0404] It does not distinguish data units and send marks for emergency level or low latency. For the case where the data receiver is a STA, the SN counter or SN sequence is allocated according to <the MLD MAC address to which the STA identified by address 1 belongs, TID i>; for the case where the data receiver is an MLD, the counter is indexed by <the MLD MAC address to which the STA identified by address 1 belongs, TID i>. For the case where the data receiver is a STA, the PN counter or PN sequence is allocated according to <TA, RA, TID i or the corresponding priority>; for the case where the data receiver is an MLD, the counter is associated with <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the corresponding priority>.
[0405] Data receiver:
[0406] Allocate and / or control the reordering buffer according to <TA, TID i>. At the data receiver, allocate a receive reordering buffer for each <TA, TID i> and control it. The receive reordering buffer is responsible for reordering the data units corresponding to the values of TA and TID being i. It is also responsible for identifying and discarding duplicate frames, that is, frames with the same sequence number. Moreover, for the received data units, even if there are unreceived data units with sequence numbers lower than that of the data unit in front, when the difference between the sequence numbers of the received and to-be-transmitted data units and the sequence numbers of the unreceived data units is less than or equal to the SN deviation threshold, the data units marked with the specific stream identifier are still passed to the next MAC process (or passed to the upper layer).
[0407] Allocate the replay counter and perform replay detection according to <TA, RA, TID i or the corresponding priority>. For a given receiver, only one replay counter is used for the data units corresponding to TID i; in the case where the receiver is an MLD, the replay counter is associated with <the MLD MAC address affiliated with the STA identified by TA, the MLD MAC address affiliated with the STA identified by RA, TID i or the corresponding priority>.
[0408] Moreover, replay detection of data units can be performed using PN window-based replay detection. If the PN of the received data unit matches the record entry corresponding to the current PN window, the data unit passes the replay detection, and at the same time, the PN window is updated. If the PN of the received data unit does not match the record entry corresponding to the current PN window, the data unit is discarded.
[0409] For the case of differentiating data units:
[0410] Data sender:
[0411] Mark different traffic flows or different transmission delay requirements or transmission urgency levels corresponding to the i-th TID to distinguish data units of different traffic flows or different transmission delay requirements. Allocate SN counters or SN sequences according to <the MLD MAC address to which the STA identified by Address 1 belongs, TID i, flow identifier or data unit mark>. For a given receiver, the data units corresponding to TID i use one SN space and multiple counters. Among them, the counters are indexed by <the MLD MAC address to which the STA identified by Address 1 belongs, TID i, flow identifier or data unit mark>. Allocate PN counters or PN sequences according to <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the corresponding priority, flow identifier or data unit mark>. For a given receiver, the data units corresponding to TID i use one PN space and multiple counters. Among them, the counters are associated with <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the corresponding priority, flow identifier or data unit mark>.
[0412] Data receiver:
[0413] Allocate and / or control the reordering buffer according to <the MLD MAC address to which the STA identified by TA belongs, TID i, flow identifier or data unit mark>. At the data receiver, allocate and control a receive reordering buffer for each <the MLD MAC address to which the STA identified by TA belongs, TID i, flow identifier or data unit mark>. Each receive reordering buffer is responsible for reordering the data units corresponding to each <the MLD MAC address to which the STA identified by TA belongs, TID i, flow identifier or data unit mark>. It is also responsible for identifying and discarding duplicate frames, that is, identifying and discarding frames with the same sequence number.
[0414] Allocate replay counters and perform replay detection according to <TA, RA, TID i or the corresponding priority, flow identifier or data unit mark>. For a given receiver, the data units corresponding to TID i use multiple replay counters. Among them, the replay counters are associated with <the MLD MAC address to which the STA identified by TA belongs, the MLD MAC address to which the STA identified by RA belongs, TID i or the corresponding priority, flow identifier or data unit mark>.
[0415] Furthermore, replay detection based on the PN replay counter can be used to perform replay detection on data units. If the PN of a received data unit is greater than the value of the replay counter associated with <MLD MAC address of the STA identified by the TA, MLD MAC address of the STA identified by the RA, TID i or the corresponding priority, flow ID, or data unit tag>, the data unit passes replay detection.
[0416] It should be noted that the above-mentioned out-of-order transmission can be based on the literal understanding of the transmission of data units in a disordered order. It can also be that there is a difference between the time sequence in which the data sender sends data units in MAC SAP and the time sequence in which the data receiver receives data units in MAC SAP. For example, if the data sender sends the first data unit and the second data unit in sequence in MAC SAP, and the data receiver receives the second data unit and the first data unit in sequence in MAC SAP. Since the data receiver first receives the second data unit, which is sent later, and then receives the first data unit, which is sent earlier, the transmission of the above-mentioned first data unit and the second data unit can also be regarded as an out-of-order transmission.
[0417] It should be noted that the above data units include individually addressed QoS data units, which may be at least one of the following: data frames, data packets, QoS data, MPDUs, MSDUs, A-MSDUs, A-MSDUs, and MMPDUs.
[0418] FIG21 shows a block diagram of a data transmission negotiation device provided by an exemplary embodiment of the present application. The device includes:
[0419] The transmission module 2110 is configured to transmit at least one frame.
[0420] Optionally, the frame includes at least one of the following:
[0421] Request frame;
[0422] Response frame;
[0423] ·Remove the frame.
[0424] In some embodiments, at least one request frame is transmitted, the request frame being used to request negotiation of whether to use out-of-order transmission.
[0425] In some embodiments, at least one response frame is transmitted, the response frame being used to respond to whether out-of-order transmission is used.
[0426] In some embodiments, at least one teardown frame is transmitted, the teardown frame being used to tear down the data transmission mode used for the negotiated data unit.
[0427] In some embodiments, at least one request frame and at least one response frame are transmitted.
[0428] In some embodiments, at least one request frame and at least one teardown frame are transmitted.
[0429] In some embodiments, at least one response frame and at least one teardown frame are transmitted.
[0430] In some embodiments, at least one request frame, at least one response frame, and at least one teardown frame are transmitted.
[0431] In some embodiments, this frame is also used to negotiate an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the request frame is also used to request negotiation of an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the response frame is also used to respond to whether the out-of-order handling method and processing parameters when out-of-order transmission is allowed are used.
[0432] In some embodiments, the out-of-order processing method and processing parameters include at least one of the following information:
[0433] Transmission direction;
[0434] Allows either out-of-order or in-order transmission;
[0435] Whether to allow out-of-order transmission of data units corresponding to at least one TID;
[0436] The sequence number (SN) processing and reordering method for the data units corresponding to at least one TID;
[0437] Packet number PN processing and replay detection method for data units corresponding to at least one TID;
[0438] The number of SN spaces and / or the number of the first counter used by the data unit corresponding to at least one TID;
[0439] The maximum number of SN spaces allowed for a data unit corresponding to at least one TID;
[0440] The maximum number of first counters allowed for data units corresponding to at least one TID;
[0441] Whether out-of-order transmission is allowed for the data unit corresponding to at least one TID using the SN space and / or the first counter;
[0442] Conditional parameters for delivering the received data unit corresponding to at least one TID to the upper layer;
[0443] The maximum allowed deviation between the sequence number of the data unit corresponding to at least one received TID and the sequence number of the data unit corresponding to at least one unreceived TID;
[0444] The maximum waiting time in the buffer for a data unit corresponding to at least one received TID;
[0445] The number of PN spaces and / or the number of second counters used by data units corresponding to at least one TID;
[0446] The maximum number of PN spaces allowed for a data unit corresponding to at least one TID;
[0447] The maximum number of second counters allowed for data units corresponding to at least one TID;
[0448] Whether to use the PN window to perform replay detection on the data unit corresponding to at least one TID;
[0449] The size of the PN window used for replay detection of the data unit corresponding to at least one TID.
[0450] The data unit corresponding to at least one TID includes a data unit corresponding to one TID and / or a data unit corresponding to each of at least two TIDs.
[0451] In some embodiments, the transmission module 2110 includes:
[0452] The sending submodule 2111 is configured to send a request frame.
[0453] In some embodiments, the request frame is used to request negotiation of whether to use out-of-order transmission. Optionally, the request frame is used to request negotiation of using out-of-order transmission. Optionally, the request frame is used to request negotiation of not using out-of-order transmission. Optionally, the request frame is used to request negotiation of using out-of-order transmission for data units corresponding to a TID value of m, where m is an integer. Optionally, the request frame is used to request negotiation of not using out-of-order transmission for data units corresponding to a TID value of n, where n is an integer.
[0454] Specifically, the implementation method of the request frame is detailed in the above step 221.
[0455] In some embodiments, the transmission module 2110 further includes:
[0456] The receiving submodule 2112 is configured to receive a response frame.
[0457] In some embodiments, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the request frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used for a data unit corresponding to a TID value of m, where m is an integer. Optionally, the response frame is used to respond to whether out-of-order transmission is used for a data unit corresponding to a TID value of n, where n is an integer.
[0458] Specifically, the implementation method of the response frame is detailed in the above step 222.
[0459] The sending submodule 2111 is further configured to send a removal frame.
[0460] The receiving submodule 2112 is further configured to receive a removal frame.
[0461] Specifically, the implementation method of removing the frame is detailed in step 223 above.
[0462] FIG22 shows a block diagram of a data transmission negotiation device provided by an exemplary embodiment of the present application. The device includes:
[0463] The transmission module 2210 is configured to transmit at least one frame.
[0464] Optionally, the frame includes at least one of the following:
[0465] Request frame;
[0466] Response frame;
[0467] ·Remove the frame.
[0468] In some embodiments, at least one request frame is transmitted, the request frame being used to request negotiation of whether to use out-of-order transmission.
[0469] In some embodiments, at least one response frame is transmitted, the response frame being used to respond to whether out-of-order transmission is used.
[0470] In some embodiments, at least one teardown frame is transmitted, the teardown frame being used to tear down the data transmission mode used for the negotiated data unit.
[0471] In some embodiments, at least one request frame and at least one response frame are transmitted.
[0472] In some embodiments, at least one request frame and at least one teardown frame are transmitted.
[0473] In some embodiments, at least one response frame and at least one teardown frame are transmitted.
[0474] In some embodiments, at least one request frame, at least one response frame, and at least one teardown frame are transmitted.
[0475] In some embodiments, this frame is also used to negotiate an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the request frame is also used to request negotiation of an out-of-order handling method and processing parameters when out-of-order transmission is allowed. Optionally, the response frame is also used to respond to whether the out-of-order handling method and processing parameters when out-of-order transmission is allowed are used.
[0476] In some embodiments, the out-of-order processing method and processing parameters include at least one of the following information:
[0477] Transmission direction;
[0478] Allows either out-of-order or in-order transmission;
[0479] Whether to allow out-of-order transmission of data units corresponding to at least one TID;
[0480] The sequence number (SN) processing and reordering method for the data units corresponding to at least one TID;
[0481] Packet number PN processing and replay detection method for data units corresponding to at least one TID;
[0482] The number of SN spaces and / or the number of the first counter used by the data unit corresponding to at least one TID;
[0483] The maximum number of SN spaces allowed for a data unit corresponding to at least one TID;
[0484] The maximum number of first counters allowed for data units corresponding to at least one TID;
[0485] Whether out-of-order transmission is allowed for the data unit corresponding to at least one TID using the SN space and / or the first counter;
[0486] Conditional parameters for delivering the received data unit corresponding to at least one TID to the upper layer;
[0487] The maximum allowed deviation between the sequence number of the data unit corresponding to at least one received TID and the sequence number of the data unit corresponding to at least one unreceived TID;
[0488] The maximum waiting time in the buffer for a data unit corresponding to at least one received TID;
[0489] The number of PN spaces and / or the number of second counters used by data units corresponding to at least one TID;
[0490] The maximum number of PN spaces allowed for a data unit corresponding to at least one TID;
[0491] The maximum number of second counters allowed for data units corresponding to at least one TID;
[0492] Whether to use the PN window to perform replay detection on the data unit corresponding to at least one TID;
[0493] The size of the PN window used for replay detection of the data unit corresponding to at least one TID.
[0494] The data unit corresponding to at least one TID includes a data unit corresponding to one TID and / or a data unit corresponding to each of at least two TIDs.
[0495] In some embodiments, the transmission module 2210 includes:
[0496] The receiving submodule 2211 is configured to receive a request frame.
[0497] In some embodiments, the request frame is used to request negotiation of whether to use out-of-order transmission, and / or to request negotiation of out-of-order processing methods and processing parameters when out-of-order transmission is used. Optionally, the request frame is used to request negotiation of the use of out-of-order transmission. Optionally, the request frame is used to request negotiation of not using out-of-order transmission. Optionally, the request frame is used to request negotiation of the use of out-of-order transmission for data units corresponding to a TID value of m, where m is an integer. Optionally, the request frame is used to request negotiation of not using out-of-order transmission for data units corresponding to a TID value of n, where n is an integer.
[0498] Specifically, the implementation method of the request frame is detailed in the above step 222.
[0499] In some embodiments, the transmission module 2210 further includes:
[0500] The sending submodule 2212 is configured to send a response frame.
[0501] In some embodiments, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used. Optionally, the request frame is used to respond to whether out-of-order transmission is used. Optionally, the response frame is used to respond to whether out-of-order transmission is used for a data unit corresponding to a TID value of m, where m is an integer. Optionally, the response frame is used to respond to whether out-of-order transmission is used for a data unit corresponding to a TID value of n, where n is an integer.
[0502] Specifically, the implementation method of the response frame is detailed in the above step 222.
[0503] The sending submodule 2211 is further configured to send a removal frame.
[0504] The receiving submodule 2212 is further configured to receive a removal frame.
[0505] Specifically, the implementation method of removing the frame is detailed in step 223 above.
[0506] It should be noted that the device provided in the above embodiment only uses the division of the above-mentioned functional modules as an example to implement its functions. In actual applications, the above-mentioned functions can be assigned to different functional modules according to actual needs, that is, the content structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0507] FIG23 is a schematic diagram showing the structure of a communication device provided by an embodiment of the present application. The communication device may include: a processor 2301 , a receiver 2302 , a transmitter 2303 , a memory 2304 , and a bus 2305 .
[0508] The processor 2301 includes one or more processing cores. The processor 2301 executes various functional applications and information processing by running software programs and modules.
[0509] The receiver 2302 and the transmitter 2303 may be implemented as a transceiver 2306 , which may be a communication chip.
[0510] The memory 2304 is connected to the processor 2301 via a bus 2305. The memory 2304 can be used to store computer programs, and the processor 2301 is used to execute the computer programs to implement the various steps performed by the Ambient IoT device, terminal device, or network device in the above method embodiment.
[0511] In addition, the memory 2304 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, including but not limited to: RAM (Random-Access Memory) and ROM (Read-Only Memory), EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash memory or other solid-state storage technology, CD-ROM (Compact Disc Read-Only Memory), DVD (Digital Video Disc) or other optical storage, tape cassettes, magnetic tape, disk storage or other magnetic storage devices.
[0512] The embodiment of the present application also provides a computer-readable storage medium, in which a computer program is stored, and the computer program is used to be executed by a processor of an Ambient IoT device or a terminal device or a network device to implement the various steps in the negotiation method for the above-mentioned data transmission. In some embodiments, the computer-readable storage medium may include: ROM (Read-Only Memory), RAM (Random-Access Memory), SSD (Solid State Drives) or an optical disk, etc. Among them, the random access memory may include ReRAM (Resistance Random Access Memory) and DRAM (Dynamic Random Access Memory).
[0513] An embodiment of the present application further provides a chip, which includes a programmable logic circuit and / or program instructions. When the chip runs on a terminal or a network device, it is used to implement each step in the above-mentioned data transmission negotiation method.
[0514] An embodiment of the present application also provides a computer program product or computer program, which includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. The processor of the terminal or network device reads and executes the computer instructions from the computer-readable storage medium to implement each step in the above-mentioned data transmission negotiation method.
[0515] Those skilled in the art will appreciate that in one or more of the above examples, the functions described in the embodiments of the present application can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any media that facilitates the transmission of computer programs from one place to another. The storage medium can be any available medium that can be accessed by a general-purpose or special-purpose computer.
[0516] The above description is merely an exemplary embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.
Claims
1. A negotiation method for data transmission, characterized in that, the method includes: transmitting at least one frame, where the frame is used to negotiate whether to use out-of-order transmission.
2. The method according to claim 1, characterized in that, the frame is further used to negotiate the out-of-order processing method and processing parameters in the case of allowing the out-of-order transmission.
3. The method according to claim 2, characterized in that, the transmitting at least one frame includes: sending a request frame and receiving a response frame; or, receiving the request frame and sending the response frame; wherein, the request frame is used to request to negotiate whether to use the out-of-order transmission, and the response frame is used to respond whether to use the out-of-order transmission.
4. The method according to claim 3, characterized in that, the request frame is further used to request to negotiate the out-of-order processing method and processing parameters in the case of allowing the out-of-order transmission; the response frame is further used to respond whether to use the out-of-order processing method and processing parameters in the case of allowing the out-of-order transmission.
5. The method according to any one of claims 2 to 4, characterized in that, the out-of-order processing method and processing parameters include at least one of the following information: transmission direction; one of allowing the out-of-order transmission and in-order transmission; whether to allow data units corresponding to at least one traffic identifier TID to use the out-of-order transmission; the sequence number SN processing and reordering method of the data units corresponding to the at least one TID; the packet number PN processing and replay detection method of the data units corresponding to the at least one TID; the number of SN spaces and / or the number of first counters adopted by the data units corresponding to the at least one TID; the maximum number of SN spaces allowed to be adopted by the data units corresponding to the at least one TID; the maximum number of first counters allowed to be adopted by the data units corresponding to the at least one TID; whether the data units corresponding to the at least one TID adopting the SN space and / or the first counter are allowed to use the out-of-order transmission; the conditional parameters for delivering the received data units corresponding to at least one TID to the upper layer; the maximum deviation allowed between the sequence numbers of the received data units corresponding to at least one TID and the sequence numbers of the un-received data units corresponding to at least one TID; the longest waiting time of the received data units corresponding to at least one TID in the buffer; the number of PN spaces and / or the number of second counters adopted by the data units corresponding to the at least one TID; the maximum number of PN spaces allowed to be adopted by the data units corresponding to the at least one TID; the maximum number of second counters allowed to be adopted by the data units corresponding to the at least one TID; whether to use a PN window to perform replay detection on the data units corresponding to the at least one TID; the size of the PN window used to perform replay detection on the data units corresponding to the at least one TID.
6. The method according to claim 3 or 4, characterized in that, the request frame includes: The first field is used to request whether the out-of-order transmission of the data units corresponding to at least one TID is allowed in at least one transmission direction, and / or the out-of-order processing method and processing parameters in the case where the out-of-order transmission is allowed.
7. The method according to claim 6, wherein, the first field includes at least one of the following fields: The first sub-field is used to indicate the transmission direction, and the transmission direction includes the uplink direction and / or the downlink direction; The second sub-field is used to indicate whether the out-of-order transmission is allowed, or one of allowing the out-of-order transmission and the in-order transmission.
8. The method according to claim 7, wherein, in the case where the second sub-field indicates that the out-of-order transmission is allowed, the first field further includes: The third sub-field, and the third sub-field is used to indicate whether there is a second field in the request frame in a bitmap manner, and the second field is used to indicate the out-of-order processing method of the data unit corresponding to the TID value of i; wherein, the value of i is an integer.
9. The method according to claim 8, wherein, the second field includes at least one of the following fields: The fourth sub-field is used to indicate whether the data unit corresponding to the TID value of i is allowed to use the out-of-order transmission; The fifth sub-field is used to indicate whether the sixth sub-field is included; The sixth sub-field is used to indicate the SN processing and reordering method of the data unit corresponding to the TID value of i; The seventh sub-field is used to indicate whether the eighth sub-field is included; The eighth sub-field is used to indicate the PN processing and replay detection method of the data unit corresponding to the TID value of i.
10. The method according to claim 9, wherein, in the case where the fifth sub-field indicates that the sixth sub-field is included in the second field, the sixth sub-field includes at least one of the following fields: The first processing mode sub-field is used to indicate the number of SN spaces and / or the number of first counters used by the data unit corresponding to the TID value of i, and the first counter is a counter used to count the SN to obtain the SN sequence; The maximum number of allowed SN space sub-field is used to indicate the maximum number of SN spaces allowed for the data unit corresponding to the TID value of i; The maximum number of allowed counter sub-field is used to indicate the maximum number of the first counters allowed for the data unit corresponding to the TID value of i; The SN sequence out-of-order transmission allowed sub-field is used to indicate whether the data unit corresponding to the TID value of i using the SN space and / or the first counter is allowed the out-of-order transmission; The condition parameter sub-field passed to the upper layer is used to indicate the condition parameter for passing the received data unit to the upper layer.
11. The method according to claim 10, wherein, the condition parameter sub-field passed to the upper layer includes at least one of the following fields: The SN deviation threshold sub-field existence indication sub-field is used to indicate whether the SN deviation threshold sub-field is included in the condition parameter sub-field passed to the upper layer; The SN deviation threshold subfield is used to indicate the maximum allowed deviation between the first sequence number and the second sequence number, where the first sequence number is the sequence number of the received data unit and the second sequence number is the sequence number of the data unit not yet received; Whether there is a buffer waiting time threshold subfield, which is used to indicate whether the condition parameter subfield passed to the upper layer includes a buffer waiting time threshold subfield; The buffer waiting time threshold subfield is used to indicate the maximum waiting time of the received data unit in the buffer.
12. The method according to claim 9, wherein, in the case where the seventh subfield indicates that the eighth subfield is included in the second field, the eighth subfield includes at least one of the following fields: The second processing mode subfield is used to indicate the number of PN spaces and / or the number of second counters used for the data unit corresponding to the TID value of i, where the second counter is a counter for counting PN to obtain a PN sequence; Whether to use a PN window for replay detection subfield, which is used to indicate whether to use the PN window to perform replay detection on the data unit corresponding to the TID value of i; The maximum allowed number of PN space subfield is used to indicate the maximum number of PN spaces allowed for the data unit corresponding to the TID value of i; The maximum allowed number of counter subfield is used to indicate the maximum number of the second counters allowed for the data unit corresponding to the TID value of i.
13. The method according to claim 12, wherein, in the case where the whether to use a PN window for replay detection subfield indicates to use the PN window to perform replay detection on the data unit corresponding to the TID value of i, the eighth subfield further includes: The PN window size subfield is used to indicate the size of the PN window used to perform replay detection on the data unit corresponding to the TID value of i.
14. The method according to any one of claims 3 or 4, wherein, The response frame includes: A status code field, which is used to indicate whether to accept the request corresponding to the request frame.
15. The method according to claim 14, wherein, The field value of the status code field includes at least one of a first value, a second value, and a third value; when the field value of the status code field is the first value, the status code field is used to indicate accepting the request corresponding to the request frame; when the field value of the status code field is the second value, the status code field is used to indicate rejecting the request corresponding to the request frame; when the field value of the status code field is the third value, the status code field is used to indicate rejecting the request corresponding to the request frame, and to suggest negotiating whether to use out-of-order transmission in at least one transmission direction, and / or, in the case of allowing out-of-order transmission, the out-of-order processing method and processing parameters of the data units corresponding to at least one TID.
16. The method according to claim 15, wherein, When the field value of the status code field is the third value, the response frame further includes: A third field, used to indicate whether out-of-order transmission is allowed for the data unit corresponding to the at least one TID in the at least one transmission direction, and / or the out-of-order processing method and processing parameters in the case where out-of-order transmission is allowed.
17. The method according to any one of claims 2 to 16, characterized in that, The method further includes: When the response frame indicates acceptance of the request corresponding to the request frame, transmit data according to the out-of-order transmission method requested by the request frame; or, When the response frame indicates rejection of the request corresponding to the request frame, transmit data according to the transmission method before sending the request frame.
18. The method according to any one of claims 2 to 17, characterized in that, The request frame includes a first data unit transmission element, and the first data unit transmission element is used to indicate the transmission method parameters corresponding to the request frame; When the response frame indicates rejection of the request corresponding to the request frame, and proposes to negotiate whether to use out-of-order transmission in at least one transmission direction, and / or the out-of-order processing method and processing parameters of the data unit corresponding to at least one TID in the case where out-of-order transmission is allowed, the response frame includes a second data unit transmission element, and the second data unit transmission element is used to indicate the proposed transmission method parameters; wherein, the transmission method parameters include whether out-of-order transmission is allowed in at least one transmission direction, and / or the out-of-order processing method and processing parameters in the case where out-of-order transmission is allowed.
19. The method according to any one of claims 2 to 18, characterized in that, When the first device has associated or re-associated with the second device, the request frame is a data transmission request frame, and the response frame is a data transmission response frame.
20. The method according to claim 19, characterized in that, The request frame and the response frame are action frames.
21. The method according to claim 20, characterized in that, The first device is a multi-link device acting as an access point, and the second device is a multi-link device that is not an access point; or, The first device is the multi-link device that is not an access point, and the second device is the multi-link device acting as an access point.
22. The method according to claim 19, characterized in that, During the process of the first device associating or re-associating with the second device, the request frame is an association or re-association request frame, and the response frame is an association or re-association response frame.
23. The method according to any one of claims 2 to 22, characterized in that, Transmitting at least one frame further includes: Sending a disassociation frame; or receiving the disassociation frame; wherein, the disassociation frame is used to disassociate the data transmission method used by the negotiated data unit.
24. The method according to any one of claims 2 to 23, characterized in that, The data unit includes a separately addressed Quality of Service (QoS) data unit.
25. A negotiation device for data transmission, characterized in that, The device includes: A transmission module, configured to transmit at least one frame for negotiating whether to use out-of-order transmission.
26. A communication device, characterized in that the communication device comprises: a processor; a transceiver connected to the processor; a memory for storing executable instructions of the processor; wherein the processor is configured to load and execute the executable instructions to implement the data transmission negotiation method according to any one of claims 1 to 24.
27. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program, and the computer program is loaded and executed by a processor to implement the data transmission negotiation method according to any one of claims 1 to 24.
28. A computer program product, characterized in that the computer program product includes computer instructions, the computer instructions are stored in a computer-readable storage medium, and a processor obtains the computer instructions from the computer-readable storage medium, so that the processor loads and executes to implement the data transmission negotiation method according to any one of claims 1 to 24.
Citation Information
Patent Citations
Method and apparatus for ordering of protocol data unit delivery
CN109716728A
Out-of-order submission function indication method, control method and related device
CN112584334A
Data transmission method, device and system
CN116846834A
Apparatus, system, and method of out-of-order delivery of wireless communication frames
US20220116333A1
Cited By
Wireless data secure transmission method and device based on timestamp random scrambling
CN120835298A