Receive reordering buffer control for latency sensitive traffic

By negotiating and embedding the expiration time of delay-sensitive data packets in the IEEE 802.11 network, the problem that delay-sensitive traffic is prone to timeout during transmission is solved, and the transmission efficiency and reliability of data packets are improved.

JP7676671B2Active Publication Date: 2025-05-14SONY GROUP CORP +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2024537512
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-12-20
Filing Date
2022-12-19
Publication Date
2025-05-14
Estimated Expiration
2042-12-19

AI Technical Summary

Technical Problem

The prior art is difficult to effectively process delay-sensitive traffic in the IEEE 802.11 network, resulting in delay-sensitive data packets being easily timed out and not processed in time during transmission.

Method used

By negotiating and embedding of expiration dates between the sending and receiving STAs, ensure that delay-sensitive packets set the appropriate expiration time in the receive sorting buffer and pass it to the next MAC processing before expiration.

Benefits of technology

Improve the transmission efficiency of latency-sensitive traffic packets in IEEE 802.11 network, ensure that more latency-sensitive traffic packets can be successfully delivered within a specified time, and reduce the risk of packet loss and timeout.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007676671000001
    Figure 0007676671000001
  • Figure 0007676671000002
    Figure 0007676671000002
  • Figure 0007676671000003
    Figure 0007676671000003
Patent Text Reader

Abstract

A wireless communication apparatus, method, or protocol for a wireless STA using CSMA / CA on a wireless local area network (WLAN). A receiving STA receives an MSDU or A-MSDU including an expiration time from a transmitting STA. The receiving STA stores the MSDU or A-MSDU with the expiration time in a receive reordering buffer of a corresponding high throughput (HT) immediate block acknowledgment (Ack) agreement. The receiving STA passes the MSDU or A-MSDU to a next MAC process before the MSDU or A-MSDU expires. Thus, the percentage of latency-sensitive traffic packets communicated before the expiration time is increased.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to and the benefit of U.S. Provisional Patent Application No. 63 / 265,713, filed December 20, 2021, which is incorporated herein by reference in its entirety.

[0002] STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

[0002] Not applicable

[0003] Notification of copyrighted material

[0003] Portions of the material in this patent document may be subject to copyright protection under the copyright laws of the United States and other countries. The copyright owner has no objection to the facsimile reproduction by any third party of the patent document or the patent disclosure as it appears in the U.S. Patent and Trademark Office public files or records, but otherwise reserves all copyright rights. The copyright owner does not hereby waive any rights to have this patent document maintained in confidence, including, but not limited to, the right pursuant to 37 CFR § 1.14.

[0004]

[0005] TECHNICAL FIELD The techniques of this disclosure relate generally to receive reordering buffers in high throughput (HT) wireless communications under IEEE 802.11, and more specifically to negotiating and indicating expiration times for MSDUs and A-MSDUs. [Background technology]

[0005]

[0007] Current wireless technologies using Carrier Sense Multiple Access with Collision Avoidance (CSMA / CA) focus on high throughput performance of the network but do not have low latency capabilities. However, many applications, such as real-time applications (RTA), require low latency, creating a technology gap.

[0006]

[0008] RTA requires low latency communication and uses best effort communication. Data generated from RTA is called latency sensitive traffic, whereas data generated from time insensitive applications is called normal traffic.

[0007]

[0009] Data is passed to the MAC layer of a transmitting station (STA) in the format of a Medium Access Control (MAC) Service Data Unit (MSDU) or an Aggregated MSDU (A-MSDU), and a sequence number is assigned for duplicate detection and recovery. The transmitting STA encapsulates the MSDU or A-MSDU as an MPDU (or A-MPDU) that can be carried in a frame. The transmitting STA can then send a packet carrying the frame over a channel to the receiving STA. After receiving the packet over the channel, the receiving STA passes the frame in the packet to the MAC layer, which decodes the MSDU and A-MSDU.

[0008]

[0010] Latency-sensitive traffic requires low latency due to high timeliness requirements in delivery, and therefore an MSDU or A-MSDU of latency-sensitive traffic is valid when delivered within a certain period or before an expiration time.

[0009]

[0011] IEEE 802.11 uses a Block Ack mechanism to improve channel efficiency. A STA that transmits data is denoted as a transmitting STA, and a STA that receives data is denoted as a receiving STA. The transmitting STA and the receiving STA may have a Block Ack agreement between them to use the Block Ack mechanism. When the Block Ack mechanism is used, the receiving STA may combine multiple acknowledgements into one frame (e.g., a BA frame) to indicate the success or failure of the corresponding transmission.

[0010]

[0012] When a Block Ack (BA) mechanism such as High Throughput (HT) Immediate Block Ack is used, the receiving STA maintains receive reordering buffer control per Transmission Address (TA) / Traffic Identifier (TID) (TA / TID), i.e., the receiving STA maintains receive reordering buffer control for TID traffic from the transmitting STA (TA). The receive reordering buffer is used to reorder MSDUs and A-MSDUs, and the receiving STA must always pass MSDUs or A-MSDUs to the next MAC process in order of increasing sequence number subfield values. Summary of the Invention [Problem to be solved by the invention]

[0011]

[0013] A mechanism is described for increasing the amount of latency-sensitive traffic packets that can be communicated on an 802.11 network using CSMA / CA before their expiration. A wireless station (STA), which may be an access point (AP) or a non-AP STA, acts as a transmitting STA or a receiving STA and communicates frames between the medium access control (MAC) layer. A receiving STA successfully receives at least one MAC service data unit (MSDU) or aggregated MSDU (A-MSDU) with an expiration time from another STA acting as a transmitting STA. The MSDU or A-MSDU is stored by the receiver with an expiration time (various formats) in a receive reordering buffer of a corresponding high throughput (HT) immediate block acknowledgement (Ack) agreement. The MSDU or A-MSDU is passed to the next MAC process before the expiration time of the MSDU or A-MSDU. [Means for solving the problem]

[0012]

[0014] In at least one embodiment / mode / option, the transmitter and receiver negotiate an expiration time for an MSDU or A-MSDU of a traffic stream prior to transmission of the MSDU or A-MSDU. The expiration time may be incorporated (embedded) by the transmitting STA into the corresponding MPDU for reception by the receiving STA. The expiration time of the MSDU or A-MSDU may be expressed in various formats, as described in detail in this disclosure.

[0013]

[0015] The receive reordering buffer can store MSDUs and A-MSDUs with or without expiration values ​​in the same buffer. Various configurations can be set to determine the conditions under which MSDUs and / or A-MSDUs are passed to the next MAC.

[0014]

[0016] Further aspects of the technology described herein will become apparent in the following portions of this specification, and this detailed description is provided for complete disclosure of preferred embodiments of the technology without limiting them.

[0015]

[0017] The techniques described herein will be better understood with reference to the following drawings, which are for illustrative purposes only. [Brief description of the drawings]

[0016] [Figure 1] FIG. 1 illustrates the IEEE 802.11 High Throughput (HT) Immediate Block Ack (BA) architecture. [Diagram 2] FIG. 2 is a block diagram of a CCMP encapsulation process. [Diagram 3] FIG. 2 is a block diagram of a CCMP decapsulation process. [Figure 4] FIG. 13 is a data field diagram showing AAD construction of PV0 MPDU. [Diagram 5] FIG. 13 is a diagram of a nonce data field. [Figure 6]FIG. 13 is a data field diagram of the nonce flag subfield. [Figure 7] FIG. 1 is a data field diagram of a CCMP MPDU. [Figure 8] FIG. 2 is a block diagram of GCMP encapsulation. [Figure 9] FIG. 2 is a block diagram of GCMP decapsulation. [Figure 10] FIG. 13 is a data field diagram of the nonce subfield. [Figure 11] FIG. 1 is a data field diagram of a GCMP MPDU frame. [Figure 12] A diagram showing the interaction model of SCS setup defined in IEEE 802.11be. [Figure 13] FIG. 13 is a data field diagram of an SCS request frame. [Figure 14] FIG. 13 is a data field diagram of an SCS response frame. [Figure 15] FIG. 15 is a data field diagram of the format of the SCS status field from the SCS response shown in FIG. [Figure 16] FIG. 13 is a data field diagram of the SCS descriptor element. [Figure 17] FIG. 2 is a block diagram of communication station hardware in accordance with at least one embodiment of the present disclosure. [Figure 18] FIG. 1 is a block diagram of a multi-link device (MLD) hardware in accordance with at least one embodiment of the present disclosure. [Figure 19] FIG. 2 illustrates a network topology used in the examples, in accordance with at least one embodiment of the present disclosure. [Figure 20] 1 is a flow diagram of a STA transmitting an MSDU or A-MSDU that includes latency-sensitive information, in accordance with at least one embodiment of the present disclosure. [Figure 21] 1 is a flow diagram of a receiving STA passing an MSDU or A-MSDU of latency sensitive traffic to the next MAC process in the receive reordering buffer, in accordance with at least one embodiment of the present disclosure. [Figure 22] FIG. 2 is a data field diagram of an MPDU frame including an LL control field in accordance with at least one embodiment of the present invention. [Figure 23] 1 is a communication diagram in which a receiving STA passes an MSDU or A-MSDU of latency-sensitive traffic that is not the first MSDU or A-MSDU in the receive reordering buffer, in accordance with at least one embodiment of the present disclosure. [Figure 24] 1 is a communication diagram of another example in which a receiving STA passes an MSDU or A-MSDU of latency-sensitive traffic that is not the first MSDU or A-MSDU in the receive reordering buffer, in accordance with at least one embodiment of the present disclosure. [Diagram 25] 1 is a communication diagram in which a receiving STA passes an MSDU or A-MSDU of latency-sensitive traffic a particular period before the expiration date, in accordance with at least one embodiment of the present disclosure. [Figure 26] FIG. 1 is a communication diagram of a predetermined expiration time for an MSDU of latency sensitive traffic in accordance with at least one embodiment of the present disclosure. [Figure 27] FIG. 1 is a communication diagram in which a STA transmits an MSDU or A-MSDU carrying latency-sensitive traffic with a large SN earlier than an MSDU or A-MSDU carrying normal traffic with a smaller SN, in accordance with at least one embodiment of the present disclosure. [Figure 28] FIG. 1 is a communication diagram in which a STA transmits an MSDU or A-MSDU carrying latency-sensitive traffic with a large SN earlier than an MSDU or A-MSDU carrying normal traffic with a smaller SN, in accordance with at least one embodiment of the present disclosure. [Figure 29] FIG. 2 is a data field diagram of a TSPEC element including an MSDU expiration / lifetime field in accordance with at least one embodiment of the present disclosure. [Diagram 30] FIG. 2 is a data field diagram of a CCMP / GCMP MPDU (CCMP MPDU or GCMP MPDU) including a LL control field in accordance with at least one embodiment of the present invention. [Diagram 31] FIG. 2 is a communications diagram in which a receiving STA maintains a separate replay counter for an SCS established with a transmitting STA, in accordance with at least one embodiment of the present disclosure. [Diagram 32] A block diagram of a CCMP / GCMP encapsulation procedure for a CCMP / GCMP MPDU that includes a LL control field in accordance with at least one embodiment of the present disclosure. [Diagram 33] A block diagram of a CCMP / GCMP decapsulation procedure for a CCMP / GCMP MPDU that includes a LL control field, in accordance with at least one embodiment of the present disclosure. [Diagram 34] FIG. 13 is a data field diagram of an AAD construction for a PV0 MPDU including a LL control field in accordance with at least one embodiment of the present disclosure. [Diagram 35] FIG. 1 is a data field diagram of a nonce field of an MPDU including an LL control field in accordance with at least one embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0017] 1. Current Wireless Technology 1.1. Receive Reordering Buffer Control

[0054] The High Throughput (HT) Immediate Block Ack architecture of IEEE 802.11 (based on draft P802.11REVmd_D5.0) is shown in Figure 1. The receiver contains a receive reordering buffer control for each transmission address (TA) or traffic identifier (TID) and is responsible for passing Medium Access Control (MAC) Service Data Units (MSDUs) or aggregated MSDUs (A-MSDUs) to the next MAC process in ascending order of MSDU or A-MSDU sequence numbers and for detecting duplicated MSDUs and A-MSDUs (i.e., MSDUs and A-MSDUs with the same sequence number).

[0018]

[0055] A receive reordering buffer is maintained for each HT Immediate Block Ack agreement to buffer MSDUs or A-MSDUs of the same TA / TID that have been received but not yet passed to the next MAC process.

[0019]

[0056] A receive reordering buffer shall be maintained for each HT Immediate Block Ack agreement. Each receive reordering buffer contains records containing: (a) buffered MSDUs or A-MSDUs that have been received but not yet passed to the next MAC process; (b) a WinStartB parameter indicating the value of the sequence number subfield of the first (in ascending sequence number order) MSDU or A-MSDU that has not yet been received; (c) a WinEndB parameter indicating the maximum sequence number expected to be received in the current receive window; and (d) a WinSizeB parameter indicating the size of the receive window.

[0020] 1.2. CCMP Encapsulation and Decapsulation

[0058] CTR, which includes the CBC-MAC protocol (CCMP), provides data confidentiality, authentication, integrity, and replay protection in IEEE 802.11 networks.

[0021]

[0059] 2 and 3 show the CCMP encapsulation and decapsulation processes, respectively.

[0022]

[0060] 4 and 5 show the AAD construction and nonce of the PV0 MPDU, respectively. During these CCMP processes, the format of the AAD and nonce are constructed for CCM encryption and decryption in IEEE 802.11be. The AAD construction field of the PV0 MPDU includes subfields FC, A1-A3, SC, A4, and QC as shown. The nonce field includes a nonce flag, a STA or MLD MAC address identified by A2, and a PN as shown.

[0023]

[0061] FIG. 6 shows the Priority, Management, PV1, and Nonce Flag subfields shown as zero.

[0024]

[0062] When a STA encrypts an MPDU using CCMP, the STA increments the packet number (PN) to obtain a new PN for the MPDU, so that the PN for the MPDU is unique.

[0025]

[0063] When a STA encrypts an MPDU using CCMP, the MPDU is encapsulated as a CCMP MPDU, thereby adding a CCMP header.

[0026]

[0064] When a STA decodes a CCMP MPDU, it can extract the PN from the CCMP header of the CCMP MPDU. The STA must maintain a separate set of replay counters for each PTKSA, GTKSA, and protocol version value. For each PTKSA, GTKSA, and protocol version value, the receiver must maintain a separate replay counter for each TID. The STA discards all replayed MPDUs received with a PN less than or equal to the value of the corresponding replay counter associated with the MPDU.

[0027] 1.3.CCMP MPDU Format

[0066] 7 shows the format of a CCMP MPDU having fields of a MAC header, a CCMP header, data, MIC, and FCS. The CCMP field includes subfields of PN0, PN1, Reserved, Ext IV, Key ID, and PN2 to PN5.

[0028]

[0067] Compared with the normal MPDU format in IEEE802.11, a CCMP header is added between the MAC header and the frame body (data). Meanwhile, a MIC field is added between the data and FCS. The CCMP header and MIC are constructed during the CCMP encryption process as shown in the previous slide. The data and MIC are encrypted in the CCMP MPDU.

[0029] 1.4. GCMP Encapsulation and Decapsulation

[0069] The GCM Protocol (GCMP) provides data confidentiality, authentication, integrity, and replay protection in IEEE 802.11 networks.

[0030]

[0070] The GCMP encapsulation and decapsulation process is shown in Figures 8 and 9. During these processes, an AAD and a nonce (whose formats are shown in Figures 4, 5 and 10) are constructed for GCM encryption and decryption in IEEE 802.11be.

[0031]

[0071] When a STA encrypts an MPDU using GCMP, the STA increments the packet number (PN) to obtain a new PN for the MPDU, so that the PN for the MPDU is unique.

[0032]

[0072] When a STA encrypts an MPDU using GCMP, the MPDU is encapsulated as a GCMP MPDU, thereby adding a GCMP header.

[0033]

[0073] When a STA decodes a GCMP MPDU, it extracts the PN from the GCMP header of the GCMP MPDU. The STA MUST maintain a separate set of replay counters for each PTKSA, GTKSA, and protocol version value. For each PTKSA, GTKSA, and protocol version value, the receiver MUST maintain a separate replay counter for each TID. The STA discards all replayed MPDUs received with a PN less than or equal to the value of the corresponding replay counter associated with the MPDU.

[0034] 1.5.GCMP MPDU Format

[0075] Figure 11 shows the format of GCMP MPDU. Compared with the normal MPDU format in IEEE802.11, a GCMP header is added between the MAC header and the frame body (data). Meanwhile, a MIC field is added between the data and FCS. The GCMP header and MIC are constructed during the GCMP encryption process as shown before. The data is encrypted in the CCMP MPDU.

[0035] 1.6.SCS

[0077] An example of an SCS setup defined in IEEE 802.11be (draft P802.11be_D1.1) is shown in Figure 12. The interaction model of the STAs can be the same as that defined in the IEEE 802.11 standard.

[0036]

[0078] The non-AP STA decides to initiate an SCS setup procedure towards the AP. The station management entity (SME) of the non-AP STA sends an MLME-SCS.request message to the MAC sublayer management entity (MLME) of the non-AP STA. When the MLME of the non-AP STA receives the MLME-SCS.request message, it collects the information in the MLME-SCS.request message and sends an SCS request frame to the AP. The MLME of the AP receives the frame and generates an MLME-SCS.indication message to the SME of the AP.

[0037]

[0079] Then, the SME of the AP sends an MLME-SCS.response message including the SCS setup result to the MLME of the AP. Then, the MLME of the AP sends an SCS response frame to the non-AP STA. The MLME of the non-AP STA receives the frame and sends an MLME-SCS.confirm message to the SME of the non-AP STA. Then, the non-AP knows whether the SCS setup is successful or not.

[0038]

[0080] 13 shows the format of an SCS request frame having fields of Frame Control, Duration, Address 1 to Address 3, Sequence Control, Action, and FCS. The Action field includes subfields of Category, Robust Action Dialog Token, and SCS Descriptor List, as shown.

[0039]

[0081] The SCS Descriptor List field can carry multiple SCS Descriptor elements, having subfields for Element ID, Length, SCSID, Request Type, Intra-Access Category Priority element (optional), TCLAS element (optional), TCLAS Processing element (optional), TSPEC element (optional), and optional subelements, as shown in FIG. 16.

[0040]

[0082] The format of the SCS Response frame is shown in Figure 14. The SCS Status List field can carry multiple SCS Status fields.

[0041]

[0083] Figure 15 shows the format of the SCS status field shown in Figure 14. In each SCS status field, the status subfield indicates the SCS setup result (e.g., accepted, rejected, rejected with reason, terminated, etc.) of the SCS indicated in the SCSID field.

[0042]

[0084] Figure 16 shows an SCS Descriptor element with fields for Element ID, Length, SCSID, Request Type, Intra-Access Category Priority element (optional), zero or more Traffic Classification (TCLAS) elements, TCLAS Processing element, optional Traffic Specification (TSPEC) element, and optional sub-elements. Note that in IEEE 802.11be, the TSPEC element is replaced by the QoS Characteristics element.

[0043] 2. Problem Statement

[0086] When a receiving STA maintains a receive reordering buffer for HT Immediate Block Ack agreement for a TA / TID, the traffic of the TA / TID includes latency-sensitive traffic and normal traffic. And the sequence numbers of MSDUs or A-MSDUs of the same TA / TID are not assigned in the order of the MSDUs or A-MSDUs with the longest expiration time. For example, the MSDUs or A-MSDUs of the latency-sensitive traffic with the early expiration time are assigned higher sequence numbers than the MSDUs or A-MSDUs of the normal traffic or the MSDUs or A-MSDUs of the latency-sensitive traffic with the late expiration time. Note that the MSDUs or A-MSDUs of the normal traffic may not have an expiration time. This may occur when the MSDUs or A-MSDUs of the latency-sensitive traffic arrive at the MAC layer of the transmitting STA after the MSDUs or A-MSDUs of the normal traffic or the MSDUs or A-MSDUs of the latency-sensitive traffic with the late expiration time have been transmitted but failed to communicate.

[0044]

[0087] For a latency-sensitive traffic MSDU or A-MSDU with an expiration time that is received by the receiving STA and stored in the receive reordering buffer, the latency-sensitive traffic MSDU or A-MSDU must be passed to the next MAC process before the expiration time expires. However, the latency-sensitive traffic MSDU or A-MSDU cannot be passed to the next MAC process if it is not the first MSDU or A-MSDU in the receive reordering buffer or if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer. That is, if the latency-sensitive traffic MSDU or A-MSDU cannot become the first MSDU or A-MSDU in the receive reordering buffer before the expiration time, the latency-sensitive traffic MSDU or A-MSDU cannot be passed to the next MAC process and the data in the latency-sensitive traffic MSDU or A-MSDU will be invalid.

[0045] 3. Contribution of this Disclosure

[0089] By utilizing the teachings of the present disclosure, a transmitting STA negotiates or indicates an expiration time for an MSDU or A-MSDU that it sends to a receiving STA.

[0046]

[0090] By utilizing the described radio protocol elements, the receiving STA shall pass an MSDU or A-MSDU in the receive reordering buffer that has an expiration time prior to the expiration time of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer, to the next MAC process. Thus, the present disclosure provides a mechanism that can increase the percentage of latency-sensitive traffic packets that are communicated before their expiration time expires.

[0047] 4. Hardware and Network Topology 4.1. Communication Station (STA and MLD) Hardware

[0093] FIG. 17 illustrates an example embodiment 10 of STA hardware configured to execute the protocol of the present disclosure. An external I / O connection 14 is preferably coupled to an internal bus 16 of the circuitry 12, on which a CPU 18 and a memory (e.g., RAM) 20 are connected to execute a program(s) implementing the described communication protocol. The host machine contains at least one modem 22 for supporting communications, which is coupled to at least one RF module 24, 28, each of which is connected to one or more antennas 29, 26a, 26b, 26c, ..., 26n. An RF module containing multiple antennas (e.g., an antenna array) allows beamforming to be performed during transmission and reception. In this manner, the STA can transmit signals using a set of multiple beam patterns.

[0048]

[0094] The bus 14 allows connecting various devices to the CPU, e.g., sensors, actuators, etc. On the processor 18, instructions are executed from the memory 20 for executing programs implementing a communication protocol, which allows the STA to perform the functions of an Access Point (AP) station or a normal station (non-AP STA). It is also understood that the programming is configured to operate in different modes (TXOP owner, TXOP sharing participant, source, intermediate, destination, first AP, other AP, station associated with first AP, station associated with other AP, coordinator, coordinatee, AP in OBSS, STA in OBSS, etc.) depending on what role it is performing in the current communication context.

[0049]

[0095] Thus, the illustrated STA HW is configured to include at least one modem and associated RF circuitry to provide communication in at least one band. It should be understood that the present disclosure may be configured to include multiple modems 22, each coupled to any number of RF circuits. In general, the more RF circuits used, the greater the coverage of the antenna beam direction. It should be understood that the number of RF circuits and antennas utilized is determined by the hardware constraints of a particular device. Some RF circuits and antennas may be disabled when the STA determines that it does not need to communicate with neighboring STAs. In at least one embodiment, the RF circuitry is connected to multiple antennas, including frequency converters and array antenna controllers, that are controlled to perform beamforming for transmission and reception. In this manner, the STA may transmit signals using a set of multiple beam patterns, with each beam pattern direction being considered an antenna sector.

[0050]

[0096] It should further be understood that multiple instances of station hardware such as that shown in this figure may be combined into a multi-link device (MLD), which typically has a processor and memory for coordinating activity, but may share these resources since a separate CPU and memory is not always required for each STA in the MLD.

[0051]

[0097] FIG. 18 shows an example embodiment 40 of a multi-link device (MLD) hardware configuration. Note that a "soft AP MLD" is an MLD consisting of one or more associated STAs operating as an AP. The soft AP MLD should support multiple radio operation, e.g., 2.4 GHz, 5 GHz, and 6 GHz. Among the multiple radios, the basic link set is a link pair that satisfies simultaneous transmit / receive (STR) mode, e.g., basic link set (2.4 GHz and 5 GHz), basic link set (2.4 GHz and 6 GHz).

[0052]

[0098] A conditional link is a link that forms a non-simultaneous transmit / receive (NSTR) link pair that includes some basic links. For example, these link pairs can include a 6 GHz link as a conditional link corresponding to the 5 GHz link when the 5 GHz is the basic link, and the 5 GHz link is a conditional link corresponding to the 6 GHz link when the 6 GHz is the basic link. Soft APs are used in different scenarios, including Wi-Fi hotspots and tethering.

[0053]

[0099] A number of STAs are associated with the MLD, each of which operates on a different frequency link. The MLD has external I / O access to applications that connect to an MLD management entity 48 having a CPU 62 and memory (e.g., RAM) 64 to run programs that implement communication protocols at the MLD level. The MLD distributes tasks to each of the associated stations (here illustrated as STA 1 42, STA 2 44, ..., STA N 46) to which the MLD is connected, and can collect information from each associated station and share the information among the associated STAs.

[0054]

[0100] In at least one embodiment, each STA of the MLD has its own CPU 50 and memory (RAM) 52, which are coupled through a bus 58 to at least one modem 54, which is connected to at least one RF circuit 56, which has one or more antennas. In this example, the RF circuit has multiple antennas 60a, 60b, 60c, ..., 60n, e.g., an antenna array. The modem cooperates with the RF circuit and associated antennas to transmit / receive data frames to / from neighboring STAs. In at least one implementation, the RF module includes a frequency converter, an array antenna controller, and other circuitry for interfacing with the antennas.

[0055]

[0101] It should be understood that each STA in an MLD does not necessarily require its own processor and memory, as they may share resources with each other and / or with an MLD management entity, depending on the particular MLD implementation. It should be understood that the above MLD illustration is provided by way of example and not limitation, but the present disclosure can work with a wide range of MLD implementations.

[0056] 4.2. STA Topology Example

[0103] 19 shows an example STA topology 70 considered in the embodiment of the present disclosure. This figure is provided to aid in the explanation of the techniques involved to improve understanding of the proposed technology. It should be understood that the present disclosure is in no way limited to this example topology, as the protocol can be utilized for communication between WLAN STAs and MLDs of any desired topology.

[0057]

[0104] A Multi-Link Device (MLD) is a device that has more than one associated STA and has one Medium Access Control (MAC) Service Access Point (SAP) for a Logical Link Control (LLC) that contains one MAC data service. If an AP is associated with an MLD, the MLD is an AP MLD. If a non-AP STA is associated with an MLD, the MLD is a non-AP MLD.

[0058]

[0105] As shown, the scenario is illustrated with multiple stations, here two STAs within range of each other, such as in an enclosed area, such as a conference room 72, that may have one or more openings 74 (e.g., doors and / or windows). One of these STAs is an Access Point (AP), as AP1 76, and the other is a non-AP STA, as STA1 78, that associates with AP1. All STAs use Carrier Sense Multiple Access with Collision Avoidance (CSMA / CA) for random channel access. In some cases, STA1 and / or AP1 may be associated with different MLDs.

[0059] 5. Receive reordering buffer control for latency-sensitive traffic

[0107] The current (per TA / TID) receive reordering buffer control passes an MSDU or A-MSDU (of the same TA / TID) to the next MAC process in ascending order of the MSDU or A-MSDU sequence number. Therefore, the current receive reordering buffer control will not pass an MSDU or A-MSDU to the next MAC process if the receive reordering buffer is waiting for another MSDU or A-MSDU with a lower sequence number. This can result in an MSDU or A-MSDU of latency-sensitive traffic getting stuck in the receive reordering buffer and missing its expiration time if it is not the MSDU or A-MSDU with the lowest sequence number expected to be received in the receive reordering buffer.

[0060]

[0108] The MSDU or A-MSDU having the lowest sequence number expected to be received in the receive reordering buffer is designated as the first MSDU or A-MSDU in the receive reordering buffer.

[0061]

[0109] The proposed technique proposes to add an additional rule to the receive reordering buffer control for latency sensitive traffic so that the MSDU or A-MSDU of the latency sensitive traffic can be passed to the next MAC process before the expiration time of the latency sensitive traffic.

[0062]

[0110] In the first step, the STA needs to determine (know) the expiration time of each MSDU or A-MSDU in the receive reordering buffer control for latency sensitive traffic.

[0063]

[0111] (a) The expiration time may consist of a predefined duration (or lifetime) that the MSDU or A-MSDU can be stored in the receive reordering buffer. This may be the time from when the MSDU or A-MSDU arrives at the MAC layer of the receiving STA or from when the MSDU or A-MSDU arrives at the receive reordering buffer of the receiving STA. The expiration time may be determined by prior negotiation between the sending and receiving STAs.

[0064]

[0112] (b) The expiration time may be indicated in the MAC header of the MPDU carrying the MSDU or A-MSDU of the latency sensitive traffic. In at least one embodiment / mode / option, the expiration time may be set to an absolute time (e.g., TSF time) or a relative time (e.g., a lifetime expressed in a particular time unit (e.g., seconds, milliseconds, microseconds, etc.)).

[0065]

[0113] (c) The MSDUs or A-MSDUs of normal traffic may also have expiration times similar to the MSDUs or A-MSDUs of latency sensitive traffic. If the MSDU or A-MSDU of normal traffic in the receive reordering buffer is not the MSDU or A-MSDU with the smallest sequence number expected to be received in the receive reordering buffer, it may also be passed to the next MAC process.

[0066]

[0114] In a second step, the STA shall ensure that each MSDU or A-MSDU of latency sensitive traffic in its receive reordering buffer is passed to the next MAC process before its expiration time.

[0067]

[0115] (a) If an MSDU or A-MSDU of latency-sensitive traffic is the first MSDU or A-MSDU in the receive reordering buffer, it is passed immediately to the next MAC process. This is the same as the current rule in IEEE 802.11.

[0068]

[0116] (b) An MSDU or A-MSDU of the latency-sensitive traffic is passed to the next MAC process at the expiration time, even if it is not the first MSDU or A-MSDU in the receive reordering buffer. Alternatively, an MSDU or A-MSDU of the latency-sensitive traffic can be passed to the next MAC process at a certain time period before the expiration time, if it is not the first MSDU or A-MSDU in the receive reordering buffer.

[0069]

[0117] It should be noted that in the present disclosure, the first MPDU or A-MPDU in the receive reordering buffer can be replaced by an MSDU or A-MSDU whose sequence number is equal to the WinStartB parameter of the receive reordering buffer. In some cases, the sequence number of the first MSDU or A-MSDU in the receive reordering buffer may be greater than the WinStartB parameter of the receive reordering buffer because there is a delay in updating the WinStartB parameter according to the first MSDU or A-MSDU in the receive reordering buffer.

[0070]

[0118] Note that MSDUs within the same A-MSDU may need to have the same or similar expiration times, so that the expiration time of an A-MSDU can be set to the earliest expiration time of the MSDUs within the A-MSDU.

[0071] 6. Flow Diagram 6.1. Transmission of MSDU / A-MSDU containing latency-sensitive information

[0121] 20 illustrates an example embodiment 110 in which a transmitting STA transmits an MSDU or A-MSDU that includes latency sensitive information. At block 112, the transmitting STA will transmit an MSDU or A-MSDU that includes the latency sensitive information including an expiration time. The transmitting STA then encapsulates the MSDU or A-MSDU of the latency sensitive traffic in an MPDU that includes the latency sensitive information, such as an indication of the latency sensitive traffic, an expiration time, and an SCSID (if applicable), at block 114. In at least one embodiment, the latency sensitive information can be carried by the MAC header of the MPDU in other communication structures.

[0072]

[0122] An example is shown in Figure 22. Hereby, the latency sensitive information is carried by a new field, denoted as LL control field in the MAC header. Alternatively, the latency sensitive information as shown in Figure 21 can also be carried by the HT control field or the QoS control field in the MAC header.

[0073]

[0123] In at least one embodiment / mode / option, the Frame Type field in the Frame Control field of the MAC header may be set to a value to indicate that the MPDU carries latency sensitive traffic.

[0074]

[0124] The STA may then transmit or retransmit the MPDUs and A-MPDUs carrying latency-sensitive traffic first when there are other MPDUs and A-MPDUs under the same sequence control (or the same BA agreement) that need to be transmitted or retransmitted, block 116. Note that the other MPDUs and A-MPDUs may have lower sequence numbers than the MPDUs and A-MPDUs carrying latency-sensitive traffic.

[0075]

[0125] For example, a STA may transmit MPDUs and A-MPDUs carrying latency sensitive traffic first when there are other MPDUs and A-MPDUs under the same sequence control that require retransmission. Note that the other MPDUs and A-MPDUs may have lower sequence numbers than the MPDUs and A-MPDUs carrying the latency sensitive traffic.

[0076]

[0126] If there is an MPDU or A-MPDU carrying latency-sensitive traffic with a lower sequence number that requires retransmission, in at least one embodiment / mode / option, the STA may have to retransmit that MPDU or A-MPDU first.

[0077]

[0127] In at least one embodiment / mode / option, a STA must transmit MPDUs and A-MPDUs carrying latency-sensitive traffic under the same sequence control to obtain increasing sequence number subfield values.

[0078] 6.2. The receiver passes the MSDU / A-MSDU in the receive reordering buffer

[0129] This section describes the receiving STA passing the MSDUs or A-MSDUs of latency sensitive traffic in the receive reordering buffer to the next MAC process.

[0079]

[0130] FIG. 21 illustrates an example embodiment 150 in which a receiving STA passes an MSDU or A-MSDU of latency sensitive traffic to the next MAC process in the receive reordering buffer.

[0080]

[0131] The receiving STA receives 152 an MPDU or A-MPDU of latency sensitive traffic having an expiration time. The expiration time may be indicated in the MAC header of the MPDU as described in Figure 20. In at least one embodiment / mode / option, the expiration time is pre-determined by prior negotiation, such as SCS negotiation using a TSPEC element that includes an MSDU expiration / lifetime as shown in Figure 29.

[0081]

[0132] The receiving STA then stores the MSDUs or A-MSDUs of the latency sensitive traffic carried by the MPDUs or A-MPDUs in a receive reordering buffer (for the corresponding TA / TID) (154).

[0082]

[0133] In check 156, it is determined whether the MSDU or A-MSDU of the latency sensitive traffic is the first MSDU or A-MSDU in the receive reordering buffer. If the condition is not met, check 158 is performed, in which the STA checks whether the expiration time of the MSDU or A-MSDU of the latency sensitive traffic has been reached (or is about to be reached). If this condition is not met, execution returns to check 156.

[0083]

[0134] Otherwise, if the conditions of check 156 or 158 are met, then in block 160 the receiving STA passes the MSDU or A-MSDU immediately to the next MAC process.

[0084]

[0135] It should be noted that if the conditions in checks 156 and 158 are not met, the STA continues these checks and retains the MSDU or A-MSDU of the latency-sensitive traffic in the receive reordering buffer until it becomes the first MSDU or A-MSDU in the receive reordering buffer or until the expiration time of the MSDU or A-MSDU of the latency-sensitive traffic is reached.

[0085]

[0136] Note that if the first MSDU or A-MSDU in the receive reordering buffer consists of latency sensitive traffic and is not received before the expiration time, WinStartB should be incremented by (at least) 1.

[0086] 7.Frame Format 7.1.MPDU with LL control field

[0139] FIG. 22 illustrates an example embodiment 180 of an MPDU (frame) including an LL control field, with the following fields:

[0087]

[0140] The Frame Control field indicates the type of frame and can be used to indicate that the MPDU is for latency sensitive traffic. For example, the Type and Subtype fields of the Frame Control field can be set to a value that indicates that the MPDU is for latency sensitive traffic and / or a value that indicates the presence of the LL Control field. The Duration field contains NAV information used for CSMA / CA channel access. The Receiver Address (RA) field contains the address of the receiver of the frame. The Transmitter Address (TA) field contains the address of the STA that transmitted the frame. The Sequence Control field contains the fragment number and sequence number of the frame. The QoS Control field and the HT Control field can utilize those fields as defined in IEEE 802.11.

[0088]

[0141] The LL control field carries latency sensitive information for the MSDU or A-MSDU of the latency sensitive traffic carried in the data field and has the following subfields:

[0089]

[0142] The Latency Sensitive Indication subfield is set to indicate that the MSDU or A-MSDU carried in the data field is latency sensitive traffic or normal traffic that is considered not latency sensitive. In at least one embodiment, this subfield may be implemented using a one-bit indication. When this field is set to a first state (e.g., "1"), this indicates that the data field carries latency sensitive traffic. Conversely, when this field is set to a second state (e.g., "0"), the data field carries normal traffic.

[0090]

[0143] The TID subfield is set to indicate the TID of the MSDU or A-MSDU carried in the data field. The receiving STA must store the MSDU or A-MSDU in the data field in the TA / TID receive reordering buffer, so that the TA is indicated in the TA field and the TID is indicated in the TID field. Note that the TID field can also be indicated in the QoS control field.

[0091]

[0144] The SCSID subfield is set to indicate the SCS to which the MSDU or A-MSDU carried in the data field belongs. The receiving STA may be aware of latency-sensitive information such as expiration time and TID of the MSDU or A-MSDU according to the QoS characteristics, parameters, and requirements of the corresponding SCS.

[0092]

[0145] The Previous SN of the same SCS subfield is set by the transmitting STA to the sequence number of the previous MSDU or A-MSDU of the same SCS traffic stream as indicated in the SCSID field sent by the transmitting STA. If the sequence number of the previous MSDU or A-MSDU of the same SCS traffic stream is less than the sequence number of the first MSDU or A-MSDU in the receiving STA's receive reordering buffer (or the WinStartB parameter), or if the corresponding previous MSDU or A-MSDU of the same SCS traffic stream has been successfully received and passed to the next MAC layer, the receiving STA may immediately pass the MSDU or A-MSDU carried by the MPDU to the next MAC process (after being stored in the receive reordering buffer).

[0093]

[0146] When a receiving STA passes an MSDU or A-MSDU of latency-sensitive traffic that is not the first MSDU or A-MSDU in its receive reordering buffer to the next MAC process, in at least one embodiment / mode / option, the WinStartB parameter of the receive reordering buffer is either unchanged or set to the sequence number of the MSDU or A-MSDU of the latency-sensitive traffic + 1. Note that this can be pre-configured by the network or negotiated between the STAs. If the MSDU or A-MSDU indicates that the SN indicated in the [Previous SN in Same SCS] field has expired, the receiving STA can update the WinStartB parameter of the receive reordering buffer to the [Previous SN in Same SCS] field + 1.

[0094]

[0147] The Previous SN of Latency Sensitive Traffic subfield is set by the transmitting STA to the sequence number of the previous MSDU or A-MSDU of the latency sensitive traffic of the same TID as that sent by the transmitting STA (e.g., the MSDU or A-MSDU before the Latency Sensitive Indication field is set to "1"). If the sequence number of the previous MSDU or A-MSDU of the latency sensitive traffic is smaller than the sequence number (or WinStartB parameter) of the first MSDU or A-MSDU in the receiving STA's receive reordering buffer, or if the corresponding previous MSDU or A-MSDU of the same SCS traffic stream was successfully received and passed to the next MAC layer, the receiving STA may immediately pass the MSDU or A-MSDU carried by the MPDU to the next MAC process (after being stored in the receive reordering buffer).

[0095]

[0148] When a receiving STA passes an MSDU or A-MSDU of latency sensitive traffic that is not the first MSDU or A-MSDU in its receive reordering buffer to the next MAC process, in at least one embodiment / mode / option, the WinStartB parameter of the receive reordering buffer is either unchanged or set to the sequence number of the MSDU or A-MSDU of the latency sensitive traffic + 1. Note that this can be pre-configured by the network or negotiated between the STAs. If an MSDU or A-MSDU with a SN equal to the [SN before latency sensitive traffic] field expires, the receiving STA can update the WinStartB parameter of the receive reordering buffer to the [SN before latency sensitive traffic] field + 1.

[0096]

[0149] The expiration subfield is set by the transmitting STA to indicate how long the MSDU or A-MSDU can be stored in the receiving STA's receive reordering buffer. The receiving STA must pass the MSDU or A-MSDU to the next MAC process before the expiration time is reached. The expiration time can be indicated in various ways, for example as an absolute time (such as the TSF time or the LSB of the TSF time) or as a relative time (such as a time in a selected time unit (e.g., seconds, milliseconds, or microseconds)). If the expiration time is set to a relative time, it is the time since the MSDU or A-MSDU arrived at the receiving STA's receive reordering buffer (or MAC layer).

[0097]

[0150] Note that the LL control field can only contain either the [Previous SN for Same SCS] field or the [Previous SN for Latency Sensitive Traffic] field. In at least one embodiment / mode / option, these two fields contain only a few LSB bits of the SN. In at least one embodiment / mode / option, the LL control field can be a new variant of the HT control field or the QoS control field.

[0098] 8. Communication example 8.1. Example 1

[0153] Figure 23 illustrates an example embodiment 210 in which a receiving STA passes an MSDU or A-MSDU of latency sensitive traffic that is not the first MSDU or A-MSDU in the receive reordering buffer. The network topology is as shown in Figure 19. AP1 76 is the transmitting STA and STA1 78 is the receiving STA. In this figure, it can be seen that AP1 and STA1 have established a BA agreement for TID=6.

[0099]

[0154] After BO 212, AP1 gets channel access and transmits a PPDU 213 (packet) with a preamble 214a and carrying MPDU1 214b and MPDU2 214c. MPDU1 carries an MSDU (or A-MSDU) of normal traffic with sequence number=x. MPDU2 carries an MSDU (or A-MSDU) of latency sensitive traffic with sequence number=x+1. In this example, the expiration time of the MSDU of latency sensitive traffic is 3 ms. This means that the receiving STA passes the MSDU of latency sensitive traffic to the next MAC process within 3 ms after receiving and storing the MSDU of latency sensitive traffic in the receive reordering buffer.

[0100]

[0155] Immediately after receiving the PPDU from AP1, STA1 sends BA218 to report that MPDU1 (i.e., MSDU with SN=x) was not received, but MPDU2 (i.e., MSDU with SN=x+1) was received successfully. STA1 stores the latency-sensitive traffic MSDU with SN=x+1 in the receive reordering buffer of AP1 / TID=6, but does not pass it to the next MAC process, because the first MSDU in the receive reordering buffer of AP1 / TID=6 is the MSDU with SN=x.

[0101]

[0156] AP1 then contends again for the channel for retransmission of the MSDU with SN=x (i.e., a second backoff, denoted as BO, as shown in the figure) (220). However, before AP1 gains channel access for the retransmission, the MSDU of the latency-sensitive traffic with SN=x+1 expires (216) (i.e., the expiration time of the MSDU with SN=x+1 is reached). Thus, even though the MSDU with SN=x+1 is not the first MSDU or A-MSDU in the receive reordering buffer of AP1 / TID=6, the receiving STA passes it to the next MAC process (222).

[0102]

[0157] In at least one embodiment / mode / option, the expiration time of the MSDU or A-MSDU in MPDU2 may be set to the value of AP1's TSF time (or the LSB of the TSF time), or may be set using other time units (e.g., seconds, milliseconds, or microseconds), such as by sending an integer value "x" for any of these selected time units.

[0103]

[0158] In at least one embodiment / mode / option, after STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the MSDU with SN=x is still the first MSDU or A-MSDU in the receive reordering buffer of the receiving STA AP1 / TID=6, as shown in FIG. 30. Alternatively, after STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the sequence number of the first MSDU or A-MSDU in the receive reordering buffer of the receiving STA AP1 / TID=6 should be set to x+2.

[0104] 8.2. Example 6

[0160] Figure 24 shows another example embodiment 310 in which a receiving STA passes an MSDU or A-MSDU of latency sensitive traffic that is not the first MSDU or A-MSDU in the receive reordering buffer. The TID may be used for either normal traffic or latency sensitive traffic. As shown, TID=6 may be used only for latency sensitive traffic. The network topology is as shown in Figure 19. AP1 76 is the sending STA and STA1 78 is the receiving STA. In this figure, it can be seen that AP1 and STA1 have established BA agreement for TID=6.

[0105]

[0161] After backoff 212, AP1 gets channel access and transmits a PPDU (packet) 313 with a preamble 314a and carrying MPDU1 314b and MPDU2 314c. MPDU1 carries the MSDU (or A-MSDU) of the latency sensitive traffic with sequence number=x. MPDU2 carries the MSDU (or A-MSDU) of the latency sensitive traffic with sequence number=x+1. In this example, the expiration time of the MSDU of the latency sensitive traffic is set to 3 ms, as shown as intervals 316 and 318. This means that the receiving STA passes the MSDU of the latency sensitive traffic to the next MAC process within 3 ms after receiving and storing the MSDU of the latency sensitive traffic in the receive reordering buffer. It should also be noted that the expiration time of the MSDU of the latency sensitive traffic can be different, such as MPDU1 expiration=1 ms and MPDU2 expiration=2 ms.

[0106]

[0162] Immediately after receiving the PPDU from AP1, STA1 sends BA320 to report that MPDU1 (i.e., MSDU with SN=x) has not been received, but MPDU2 (i.e., MSDU with SN=x+1) has been successfully received. STA1 stores the latency-sensitive traffic MSDU with SN=x+1 in the receive reordering buffer of AP1 / TID=6, but does not pass it to the next MAC process, because the first MSDU in the receive reordering buffer of AP1 / TID=6 is the MSDU with SN=x.

[0107]

[0163] AP1 then re-contends (BO) for the channel in this second backoff for retransmission of the MSDU with SN=x (322). However, before AP1 gains channel access for the retransmission, the MSDU for latency-sensitive traffic with SN=x+1 expires (318) (i.e., the expiration time of the MSDU with SN=x+1 is reached). Although the MSDU with SN=x+1 is not the first MSDU or A-MSDU in the receive reordering buffer of AP1 / TID=6, the receiving STA passes it to the next MAC process (323).

[0108]

[0164] In at least one embodiment / mode / option, the expiration time of the MSDU or A-MSDU in MPDU2 is set to the value of AP1's TSF time (or the LSB of the TSF time), or is set using other time units (e.g., seconds, milliseconds, or microseconds), such as by sending an integer value "x" for any of these selected time units.

[0109]

[0165] After STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the MSDU with SN=x may still be the first MSDU or A-MSDU in the receive reordering buffer of AP1 / TID=6 of the receiving STA, as shown in Figure 22. Alternatively, after STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the sequence number of the first MSDU or A-MSDU in the receive reordering buffer of AP1 / TID=6 of the receiving STA should be set to x+2.

[0110] 8.3. Example 2

[0167] 25 illustrates an example embodiment 410 in which a receiving STA passes an MSDU or A-MSDU of latency sensitive traffic a certain period before the expiration time. The network topology used is as shown and described in FIG.

[0111]

[0168] This example is similar to the example of Figure 23, except that this example shows STA1 passing the MSDU of latency sensitive traffic with SN=x+1 to the next MAC process before the MSDU expiration period 412 (i.e., a predetermined time as shown in the figure). This period can be determined in advance or by prior negotiation between AP1 and STA1.

[0112]

[0169] Thus, the MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 for AP1 / TID6, but STA1 passes the latency sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process before the predetermined time 414. Then, at the end of the predetermined time 412, the latency sensitive traffic MSDU or A-MSDU with SN=x+1 expires, as shown at 416.

[0113] 8.4. Example 3

[0171] 26 illustrates an example embodiment 510 of a predefined MSDU expiration for latency sensitive traffic. The network topology is as described in FIG.

[0114]

[0172] AP1 76 is the sending STA and STA1 78 is the receiving STA. In this example, AP1 and STA1 establish a BA agreement for TID=6.

[0115]

[0173] As shown in the figure, STA1 and AP1 perform an SCS setup process 514 by exchanging SCS setup request and response frames to establish an SCS for SCSID=2. This is shown as STA1 sending an SCS setup request 516 and AP1 responding with an SCS setup response 518 after a backoff (BO) 512. During the SCS setup procedure, STA1 and AP1 also determine the expiration time of the MSDUs and A-MSDUs for the SCS for SCSID=2. It should be noted that the expiration time field can be added to the TSPEC or QoS characteristic elements in the SCS setup request / response frames as shown in FIG. 29.

[0116]

[0174] Next, similar to FIG. 23, after AP1 contends (BO) (520) and gets channel access, AP1 transmits PPDU 521 with preamble 522a, carrying MPDU1 522b and MPDU2 522c. MPDU1 carries MSDU (or A-MSDU) of normal traffic with sequence number=x. MPDU2 carries MSDU (or A-MSDU) of latency sensitive traffic with sequence number=x+1, which is also latency sensitive traffic belonging to SCS with SCSID=2. According to the SCS setup, the expiration time 524 of MSDU with SN=x+1 is pre-determined. The receiving STA will pass the MSDU of latency sensitive traffic from MSDU with SN=x+1 to the next MAC process before the expiration time of SCS with SCSID=2 is reached.

[0117]

[0175] Immediately after receiving the PPDU from AP1, STA1 sends BA526 to report that MPDU1 (i.e., MSDU with SN=x) was not received, but MPDU2 (i.e., MSDU with SN=x+1) was received successfully. STA1 stores the latency-sensitive traffic MSDU with SN=x+1 in the receive reordering buffer of AP1 / TID=6, but does not pass it to the next MAC process, because the first MSDU in the receive reordering buffer of AP1 / TID=6 is the MSDU with SN=x.

[0118]

[0176] In at least one embodiment / mode / option, the expiration time of the MSDU or A-MSDU in MPDU2 is set to a value based on AP1's TSF time (or the LSB of the TSF time), or is set using other time units (e.g., seconds, milliseconds, or microseconds), such as by sending an integer value "x" for any of these selected time units.

[0119]

[0177] As shown, AP1 again contends for the channel (528), during which an expiration occurs (524), and the MSDU or A-MSDU is passed to the next MAC process (530). After STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the MSDU with SN=x may still be the first MSDU or A-MSDU in the receive reordering buffer of the receiving STA, AP1 / TID=6.

[0120]

[0178] Alternatively, after STA1 passes the MSDU or A-MSDU with SN=x+1 to the next MAC process, the sequence number of the first MSDU or A-MSDU in the receive reordering buffer of the receiving STA AP1 / TID=6 should be set to x+2.

[0121] 8.5. Example 5

[0180] 27 and 28 show an example embodiment 610 in which a transmitting STA transmits an MSDU or A-MSDU carrying latency sensitive traffic with a large SN earlier than an MSDU or A-MSDU carrying normal traffic with a smaller SN. This example also shows that if a receiving STA receives an MSDU and an A-MSDU carrying latency sensitive traffic (or carrying latency sensitive traffic of the same SCS traffic stream) in order, the receiving STA may pass the MSDU or A-MSDU of the latency sensitive traffic immediately after receiving it. Note that the received MSDU or A-MSDU of the latency sensitive traffic (or carrying latency sensitive traffic of the same SCS traffic stream, respectively) may not be the first MSDU or A-MSDU in the receive reordering buffer. The network topology is that shown in FIG. 19.

[0122]

[0181] An MSDU or A-MSDU carrying latency-sensitive traffic of a TID (or of an SCS traffic stream) is indicated as being received in order when the previous MSDU or A-MSDU carrying latency-sensitive traffic of the same TID (or of the same SCS traffic stream, respectively) has been successfully received and passed to the next MAC process or has a smaller SN than WinStartB (i.e., when the previous MSDU or A-MSDU has been successfully received by the receiver or dropped by the transmitter).

[0123]

[0182] In FIG. 27, AP1 76 is a transmitting STA and STA1 78 is a receiving STA. AP1 and STA1 are shown to have established a BA agreement for TID=6. AP1 contends for channel access (BO) (612), wins channel access, and transmits a PPDU 613 having a preamble 614a and carrying MPDU1 614b, MPDU2 614c, and MPDU3 614d. MPDU1 carries an MSDU (or A-MSDU) of normal traffic with sequence number=x. MPDU2 and MPDU3 carry two MSDUs (or A-MSDUs) of latency sensitive traffic with sequence numbers=x+1 and x+2, respectively. The expiration time of the MSDUs of latency sensitive traffic is illustrated as 3 ms as an example, but not limited thereto. This indicates that the receiving STA passes the latency sensitive traffic MSDU to the next MAC process within 3 ms of receiving and storing the latency sensitive traffic MSDU in the receive reordering buffer. MPDU2 indicates that the previous MSDU or A-MSDU of the latency sensitive traffic with TID6 (or the previous MSDU or A-MSDU of the latency sensitive traffic with the same SCS) has SN=x-2. MPDU3 indicates that the previous MSDU or A-MSDU of the latency sensitive traffic with TID6 (or the previous MSDU or A-MSDU of the latency sensitive traffic with the same SCS) is MPDU3.

[0124]

[0183] 28, as shown, STA1 transmits BA616 immediately after receiving the PPDU from AP1 to report that MPDU1 (i.e., MSDU with SN=x) and MPDU3 (i.e., MSDU with SN=x+2) were not received, but MPDU2 (i.e., MSDU with SN=x+1) was received successfully. STA1 stores the latency sensitive traffic MSDU with SN=x+1 in the receive reordering buffer of AP1 / TID=6.

[0125]

[0184] Although the SN of the first MSDU or A-MSDU in the receive reordering buffer of AP1 / TID=6 in STA1 is x, STA1 immediately passes the MSDU with SN=x+1 to the next MAC process (617) because the previous MSDU or A-MSDU of the latency-sensitive traffic of TID6 (or the previous MSDU or A-MSDU of the latency-sensitive traffic of the same SCS) has SN=x-2, which is smaller than WinStartB. That is, the MSDU with SN=x+1 is received in order. Therefore, STA1 immediately passes the MSDU with SN=x+1 to the next MAC process.

[0126]

[0185] Note that in at least one embodiment / mode / option, STA1 can keep WinStartB=x in the receive reordering buffer of AP1 / TID=6 even if an MSDU with SN=x+1 is passed to the next MAC process. In at least one embodiment / mode / option, STA1 can set WinStartB=x+2 instead.

[0127]

[0186] Since MPDU3 carries latency sensitive traffic, but MPDU1 carries only normal traffic, AP1 decides to retransmit MPDU3 first, as shown by preamble 618a and MPDU3 618b, and STA1 responds with BA 620 indicating that MPDU3 was successfully received. The MSDU with SN=x+2 is received in order, since the previous MSDU or A-MSDU carrying latency sensitive traffic of the same TID (or of the same SCS traffic stream, respectively) was successfully received and passed to the next MAC process (622) (i.e., the MSDU with SN=x+1). Therefore, STA1 passes the MSDU with SN=x+1 to the next MAC process immediately.

[0128]

[0187] As shown, the second PPDU carries only MPDU 3. Note that in at least one embodiment / mode / option, MPDU 1 may be carried in the second PPDU and transmitted after MPDU 3. That is, MPDU 3 is the first MPDU and MPDU 1 is the second MPDU in the second PPDU.

[0129]

[0188] As shown in the figure, the first PPDU carries MPDU1, MPDU2, and MPDU3. MPDU2 and MPDU3 may be the first and second MPDUs in the first PPDU, and MPDU1 may be the last MPDU. The order of MPDUs in the same SCS traffic stream may still have to be in ascending SN order.

[0130] 9. Additional Examples and Elements 9.1. TSPEC elements containing EHT attributes

[0191] Figure 29 illustrates an example embodiment 650 of a TSPEC element including an MSDU expiration / lifetime field. As shown, it consists of two parts. The first part is the TSPEC field, which can be the same as the TSPEC element defined in IEEE 802.11. The second part is the EHT attribute, whose presence can be indicated by setting the reserved bit of the original TSPEC element to "1".

[0131]

[0192] The MSDU expiration / lifetime field is included in the EHT attribute. A STA sets this field to specify the MSDU expiration for TSPEC-based traffic. When a receiving STA receives a TSPEC-based MSDU or A-MSDU and stores it in the receive reordering buffer, it must pass the MSDU or A-MSDU to the next MAC process before the MSDU expires (or a specific period before the MSDU expiration). The MSDU expiration can be either an absolute or relative time.

[0132]

[0193] When using an absolute time such as the TSF time, the time value represents the time at which a receiving STA of a TSPEC-based MSDU or A-MSDU must pass the TSPEC-based MSDU or A-MSDU to the next MAC process.

[0133]

[0194] When using a relative time such as a lifetime (e.g., 3 ms), the time value represents the time that the receiving STA of the TSPEC-based MSDU or A-MSDU can store the TSPEC-based MSDU or A-MSDU in its receive reordering buffer after receiving the TSPEC-based MSDU or A-MSDU, after which the receiving STA must pass the TSPEC-based MSDU or A-MSDU to the next MAC process.

[0134]

[0195] A Replay Counter Needed subfield is also in the EHT attribute. A STA sets this field to indicate whether a separate CCMP / GCMP replay counter needs to be maintained by the receiving STA of a TSPEC-based traffic stream. In at least one embodiment, this field may be a one-bit indication when set to a first state (e.g., "1") that the receiving STA of a TSPEC-based traffic stream should maintain a separate CCMP / GCMP replay counter for the TSPEC-based traffic stream. The TSPEC-based traffic stream uses only the CCMP / GCMP replay counter for the TSPEC-based traffic stream for replay detection. Otherwise, the receiving STA of a TSPEC-based traffic stream does not maintain a separate CCMP / GCMP replay counter for the TSPEC-based traffic stream. Note that this field is reserved when CCMP / GCMP is not used to protect the TSPEC-based traffic stream. Note that the replay counter required by the TSPEC element here also needs to be subject to the RSN capabilities of the receiver of this traffic stream.

[0135]

[0196] In at least one embodiment / mode / option, an MSDU expiration / lifetime field and a required replay counter field are added to the QoS characteristic element as defined in IEEE 802.11be [draft P802.11be D1.3]. In the QoS characteristic element, the two new fields can be used to replace the TSPEC element with the EHT attribute, as shown in Figure 29. Note also that a TSPEC element that contains an EHT attribute can contain new elements.

[0136] 9.2. CCMP / GCMP for Latency-Sensitive Traffic

[0198] When CCMP / GCMP (CCMP or GCMP) is used to protect data for latency sensitive traffic, the transmitting STA assigns a packet number (PN) to each MPDU when it encrypts the MPDU into a CCMP / GCMP MPDU for transmission. When a CCMP / GCMP MPDU is received by a receiving STA, replay detection is performed based on the PN of the CCMP / GCMP MPDU. If the PN of the CCMP / GCMP MPDU is less than the current replay counter value of the CCMP / GCMP MPDU, the CCMP / GCMP MPDU is discarded.

[0137]

[0199] When receive reordering buffer control for latency sensitive traffic is used with CCMP / GCMP, an MPDU or A-MSDU of the latency sensitive traffic that is not the first MPDU or A-MSDU in the receive reordering buffer can be passed to the next MAC process, which can be CCMP / GCMP decapsulation and replay detection. If the first MSDU or A-MSDU in the receive reordering buffer and the MSDU or A-MSDU of the latency sensitive traffic use the same replay counter for CCMP / GCMP replay detection, the first MPDU or A-MSDU in the receive reordering buffer is discarded due to replay detection because the PN of the first MPDU or A-MSDU is smaller than the MSDU or A-MSDU of the latency sensitive traffic.

[0138]

[0200] To avoid discarding MSDUs or A-MSDUs in the above cases, the receiving STA in at least one embodiment / mode / option may maintain separate replay counters for latency-sensitive and normal traffic. For example, the receiving STA maintains a separate replay counter for each TID of normal traffic and a separate replay counter for each TID of latency-sensitive traffic. In at least one embodiment / mode / option, the receiving STA maintains a separate replay counter for the SCS.

[0139] 9.3.CCMP / GCMP MPDUs containing LL control fields

[0202] 30 illustrates an example embodiment 870 of a CCMP / GCMP MPDU (CCMP MPDU or GCMP MPDU) that includes an LL control field. The MAC header may be the same as the MAC header of an MPDU that includes an LL control field, as shown in FIG.

[0140]

[0203] If the MPDU is a CCMP MPDU, then the MPDU includes a CCMP header that can be constructed and decoded as shown in FIGS.

[0141]

[0204] If the MPDU is a GCMP MPDU, then the MPDU includes a GCMP header that can be constructed and decoded as shown in FIGS.

[0142]

[0205] The data of the CCMP MPDU can be encrypted and decrypted as shown in Figures 2 to 6 or Figure 31. Thus, the SCSID affects the encryption and decryption procedures.

[0143]

[0206] The data in the CCMP MPDU can be encrypted and decrypted as shown in Figures 8 to 10 or 31. This allows the UP and SCSID to influence the encryption and decryption procedure. Note that the Message Integrity Check (MIC) in the GCMP MPDU is encrypted and the MIC in the CCMP is not encrypted.

[0144] 9.4. Example 4

[0208] 31 illustrates an example embodiment 710 in which a receiving STA maintains a separate replay counter for the SCS established with the sending STA. The network topology is the same as that shown in FIG.

[0145]

[0209] AP1 76 is the transmitting STA and STA1 78 is the receiving STA. In this figure, AP1 and STA1 have established a BA agreement for TID=6 and CCMP / GCMP is used to protect the transmission.

[0146]

[0210] As shown, STA1 and AP1 perform SCS setup negotiation 714 by exchanging SCS setup request and response frames to establish DL SCS with SCSID=2. STA1 contends for a channel in BO 712 as shown, and upon obtaining the channel, sends an SCS setup request 716 to which AP1 responds with an SCS response 718. During this SCS setup procedure, STA1 and AP1 also decide that STA1 will start maintaining a separate replay counter for the SCS with SCSID=2 (719). Note that the TSPEC element in the SCS setup request / response frame can have an EHT attribute field as shown in FIG.

[0147]

[0211] Next, similar to Fig. 23, AP1 contends for the channel at BO 720 and gets channel access. AP1 transmits PPDU 721 with preamble 722a and carrying CCMP / GCMP MPDU1 722b and CCMP / GCMP MPDU2 722c. CCMP / GCMP MPDU1 carries the MSDU (or A-MSDU) of normal traffic with SN=x and PN=y. CCMP / GCMP MPDU2 carries the MSDU (or A-MSDU) of latency sensitive traffic with SN=x+1 and PN=y+1, which is also the latency sensitive traffic belonging to SCS with SCSID=2.

[0148]

[0212] After STA1 receives the PPDU from AP1, it immediately sends BA 724 to report that CCMP / GCMP MPDU1 (i.e., the MSDU with SN=x) was not received, but CCMP / GCMP MPDU2 (i.e., the MSDU with SN=x+1) was received successfully. STA1 stores the latency-sensitive traffic MSDU with SN=x+1 in the receive reordering buffer of AP1 / TID=6 and immediately passes it to the next MAC process, e.g., CCMP / GCMP decoding and replay detection (726).

[0149]

[0213] CCMP / GCMP then decodes CCMP / GCMP MPDU2 and performs replay detection. Because the replay counter of CCMP / GCMP MPDU2 (i.e., the replay counter of SCSID=2) is separate from the replay counter of TID=6 (i.e., the replay counter of TID=2), CCMP / GCMP MPDU1 is not discarded when it is later received, and replay detection is performed using the replay counter of TID=2. Therefore, STA1 may not update the parameters of the receive reordering buffer of AP1 / TID6 (e.g., WinStartB) and may continue to wait for the reception of CCMP / GCMP MPDU1 from AP1.

[0150] 9.5. CCMP / GCMP encapsulates / decapsulates MPDUs containing LL control fields

[0215] CCMP / GCMP encapsulation and decapsulation of CCMP / GCMP MPDUs containing LL control fields

[0151]

[0216] 32 and 33 show example embodiments 810, 910, respectively, of a CCMP / GCMP encapsulation and decapsulation procedure for a CCMP / GCMP MPDU that includes a LL control field.

[0152]

[0217] Compared with the procedures shown in Figures 2 to 6 and 30, the AAD construction can take into account the LL control field (i.e., the LC field in Figure 34). The nonce construction can take into account the SCSID as shown in Figure 35.

[0153]

[0218] In Figure 32, encapsulation 810 is shown receiving a cleartext MPDU 812 which is parsed (813), and the following information elements: MLD MAC Address, RK, PN, and Key ID 814. The PN is shown to be incremented (822) and passed to a nonce construction 818 and a CCMP header construction 824 which outputs to an aggregation block 826.

[0154]

[0219] A MAC header is obtained from the plaintext MPDU 812 and sent to an aggregation block 826. The MAC header and the MLD MAC address are input to an AAD construction block 816 which outputs to a CCM / GCM encryption block 820. A2, priority and SCSID, along with the MLD MAC address and incremented PN, are input to a nonce construction block 818 whose output is sent to a CCM / GCM encryption block 820. The data extracted from the plaintext MPDU and a time key (TK) are sent to the CCM / GCM encryption block 820. The output from the CCM / GCM encryption block 820 is recognized as the data and MIC along with other inputs as described above to an aggregation block 826 which outputs an encrypted MPDU 828.

[0155]

[0220] In FIG. 33, the decapsulation 910 is shown receiving the encrypted MPDU 912 to a parser / demultiplexer 913 while additional element information 914 of the MLD MAC address, key and replay counter is received.

[0156]

[0221] The MAC header is extracted from the encrypted MPDU and sent to the aggregation block 922. The MAC header is received in the AAD construction block 916 which outputs, together with the received MLD MAC address information, to the CCM / GCM decode block 920. The information A2, priority, SCSID, PN is extracted from the encrypted MPDU along with the MLD MAC address which is directed to the nonce construction block 918 which outputs to the CCM / GCM decode block 920. The information element key is received directly in the CCM / GCM decode block 920. The output of the CCM / GCM decode block 920 is the data which is directed to the aggregation block 922. The replay check block 924 receives the replay counter and PN information as well as the output of the aggregation block 922. The replay check block 924 outputs the plaintext MPDU 926.

[0157]

[0222] Figure 34 illustrates an example embodiment 950 of AAD construction for a PV0 MPDU including a LL control field with subfields FC, A1-A3, SC, A4, QC, and LC, note that this differs from Figure 4 by the addition of the LC subfield.

[0158]

[0223] Figure 35 illustrates an example embodiment 970 of a nonce field for an MPDU that includes a LL control field with a nonce flag, a STA MAC / MLD address identified by A2, a PN, and a SCSID subfield. Note that this example differs from Figure 5 by the addition of the SCSID subfield.

[0159]

[0224] If the encapsulation and decapsulation is for a GCMP MPDU that contains a LL control field, the nonce construction does not need to take into account the priority and SCSID, and there is no nonce flag in the nonce field in Figure 35.

[0160] 10. General Scope of the Embodiments

[0226] Embodiments of the technology may be described herein with reference to flow diagrams of methods and systems according to embodiments of the technology, and / or procedures, algorithms, steps, operations, formulas, or other computational expressions, which may also be implemented as computer program products. In this regard, each block or step of the flowchart, and combinations of blocks (and / or steps) of the flowchart, and any procedures, algorithms, steps, operations, formulas, or computational expressions, may be implemented by various means, such as hardware, firmware, and / or software that includes one or more computer program instructions embodied in the form of computer readable program code. As will be appreciated, any such computer program instructions may be executed by one or more computer processors, including, but not limited to, a general purpose computer or a special purpose computer, or other programmable processing device to produce a machine, such that the computer program instructions executing on the computer processor(s) or other programmable processing device produce means for implementing the specified function(s).

[0161]

[0227] Thus, the blocks of the flowcharts and procedures, algorithms, steps, operations, formulas, or computational expressions described herein support combinations of means for performing a particular function(s), combinations of steps for performing a particular function(s), and computer program instructions for performing a particular function(s) as embodied in computer readable program code logic means. It will also be understood that each block of the flowcharts and any procedures, algorithms, steps, operations, formulas, or computational expressions described herein, and combinations thereof, can also be implemented by a dedicated hardware-based computer system that performs the particular function(s) or step(s), or a combination of dedicated hardware and computer readable program code.

[0162]

[0228] Moreover, these computer program instructions, embodied in computer readable program code or the like, may be stored in one or more computer readable memories or memory devices capable of directing a computer processor or other programmable processing device to function in a particular manner, such that the instructions stored in these computer readable memories or memory devices produce an article of manufacture including instruction means for implementing the functions specified in the flowchart(s). The computer program instructions may be executed by the computer processor or other programmable processing device to generate a computer-implemented process by causing a series of operational steps to be performed on the computer processor or other programmable processing device, such that the instructions executing on the computer processor or other programmable processing device provide steps for implementing the functions specified in the flowchart(s) block(s), procedure(s), algorithm(s), step(s), operation(s), mathematical formula(s), or computational expression(s).

[0163]

[0229] Additionally, the terms "program" or "program executable" as used herein will be understood to mean one or more instructions executable by one or more computer processors to perform one or more functions described herein. The instructions may be embodied in software, firmware, or a combination of software and firmware. The instructions may be stored locally on a non-transitory medium of the device or remotely, such as on a server, or all or a portion of the instructions may be stored locally or remotely. Remotely stored instructions may be downloaded (pushed) to the device upon user initiation or automatically based on one or more factors.

[0164]

[0230] Furthermore, as used herein, the terms processor, hardware processor, computer processor, central processing unit (CPU), and computer are used synonymously to indicate a device capable of executing instructions and communicating with input / output interfaces and / or peripheral devices, and it will be understood that the terms processor, hardware processor, computer processor, CPU, and computer are intended to include single or multiple devices, single-core devices and multi-core devices, and variations thereof.

[0165]

[0231] From the description herein, it will be understood that the present disclosure includes multiple implementations of the techniques, including but not limited to the following.

[0166]

[0232] An apparatus for wireless communication in a network, the apparatus comprising: (a) a wireless communication circuit, the wireless communication circuit operating as a wireless station (STA) that is a separate STA or as a STA in a multi-link device (MLD), as a normal STA or an access point (AP) STA, to wirelessly communicate with other wireless stations (STAs) using a carrier sense multiple access with collision avoidance (CSMA / CA) mechanism on a wireless local area network (WLAN); (b) a processor coupled to the wireless communication circuit, operating on the WLAN and performing transmission of frames between a medium access control (MAC) layer of an IEEE 802.11 network; and (c) a non-transitory memory storing instructions executable by the processor to communicate with other STAs, and (d) the instructions being stored in a non-transitory memory. and (d)(iii) the receiving STA passes the MSDU or A-MSDU to a next MAC process before the expiration of the MSDU or A-MSDU.

[0167]

[0233] 1. A method for performing wireless communication in a network, the method comprising: (a) operating a wireless communication circuit as a wireless station (STA) that is a separate STA or as an STA in a multi-link device (MLD), the wireless communication circuit operating as a normal STA or an access point (AP) STA to wirelessly communicate with other wireless stations (STAs) using a carrier sense multiple access / collision avoidance (CSMA / CA) mechanism on a wireless local area network (WLAN); (b) a STA operating as a receiving STA successfully receives at least one medium access control (MAC) service data unit (MSDU) or aggregated MSDU (A-MSDU) having an expiration time from another STA operating as a transmitting STA; (c) the receiving STA stores the MSDU or A-MSDU having an expiration time in a receive reordering buffer of a corresponding high throughput (HT) immediate block acknowledgment (Ack) agreement; and (d) the receiving STA passes the MSDU or A-MSDU to a next MAC process before the expiration time of the MSDU or A-MSDU.

[0168]

[0234] A wireless communication system / apparatus for transmitting frames between MAC layers of an IEEE 802.11 network, in which (a) a receiving STA normally receives an MSDU or A-MSDU with an expiration time from a transmitting STA, (b) the receiving STA stores the MSDU or A-MSDU with an expiration time in a receive reordering buffer of a corresponding HT Immediate Block Ack agreement, and (c) the receiving STA passes the MSDU or A-MSDU to a next MAC process before the expiration time of the MSDU or A-MSDU.

[0169]

[0235] An apparatus, method, or system of any of the preceding or following implementations, wherein prior to transmission, a negotiation is performed between the receiving STA and the transmitting STA to determine an expiration time of an MSDU or A-MSDU of a traffic stream.

[0170]

[0236] The apparatus, method, or system of any of the preceding or following implementations, wherein the negotiation is performed within a traffic stream (TS) or a stream classification service (SCS).

[0171]

[0237] The apparatus, method, or system of any of the preceding or following implementations, wherein the MSDU or A-MSDU having an expiration time is traffic in an existing traffic stream (TS) or stream classification service (SCS).

[0172]

[0238] 13. An apparatus, method, or system of any of the preceding or following implementations, wherein the expiration time of each of the MSDUs or A-MSDUs is embedded by the transmitting STA into a corresponding MPDU for reception by the receiving STA.

[0173]

[0239] An apparatus, method, or system implementing any of the above or following, wherein the expiration time of the MSDU or A-MSDU is expressed in conventional time units and indicates the time that the MSDU or A-MSDU can be stored in a receive reordering buffer of the receiving STA after arriving at the MAC layer of the receiving STA.

[0174]

[0240] An apparatus, method, or system implementing any of the preceding or following, wherein the expiration time of the MSDU or A-MSDU is expressed as a Timing Synchronization Function (TSF) time at which the MSDU or A-MSDU expires.

[0175]

[0241] An apparatus, method, or system implementing any of the preceding or following, wherein the expiration time of the MSDU or A-MSDU is set to the latency limit of a traffic specification (TSPEC) element or a quality of service (QoS) characteristic element of the MSDU or A-MSDU.

[0176]

[0242] An apparatus, method, or system of any of the above or following implementations, wherein the expiration time of the MSDU or A-MSDU can be set to an MSDU lifetime value of the MSDU or A-MSDU, indicating the time that the MSDU or A-MSDU can be stored in the receive reordering buffer of the receiving STA once it is received by the MAC layer of the receiving STA.

[0177]

[0243] An apparatus, method, or system of any of the above or following implementations, wherein the expiration time of the MSDU or A-MSDU can be set to the remaining time of the MSDU lifetime or the latency limit of a traffic specification (TSPEC) element or quality of service (QoS) characteristic element of the MSDU or A-MSDU, indicating the time since the MSDU or A-MSDU was transmitted by the transmitting STA or received by the receiving STA.

[0178]

[0244] An apparatus, method, or system of any of the above or following implementations, wherein the receiving STA can store MSDUs and A-MSDUs that include an expiration date and MSDUs or A-MSDUs that do not include an expiration date in the same receive reordering buffer.

[0179]

[0245] The receiving STA stores MSDUs and A-MSDUs having different expiration times in the same receive reordering buffer.

[0180]

[0246] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process upon the expiration date of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0181]

[0247] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process upon the expiration date of the MSDU or A-MSDU, even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0182]

[0248] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process within a certain period prior to the expiration date of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0183]

[0249] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process within a specific period prior to the expiration date of the MSDU or A-MSDU, even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0184]

[0250] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA is not allowed to pass the MSDU or A-MSDU to the next MAC process before the expiration date of the MSDU or A-MSDU if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0185]

[0251] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA is not allowed to pass the MSDU or A-MSDU to the next MAC process before the expiration date of the MSDU or A-MSDU if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0186]

[0252] The receiving STA passes the MSDU or A-MSDU having an expiration time to the next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer.

[0187]

[0253] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process immediately after the MSDU or A-MSDU in the receiving reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU with an expiration time in the receiving reordering buffer and other expected MSDUs or A-MSDUs in the receiving reordering buffer do not have an expiration time.

[0188]

[0254] An apparatus, method, or system implementing any of the above or following, wherein the receiving STA passes the MSDU or A-MSDU to the next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU of a traffic stream in the receive reordering buffer.

[0189]

[0255] An apparatus, method, or system implementing any of the preceding or following, wherein a transmitting STA and a receiving STA perform a prior negotiation on an expiration time of an MSDU or A-MSDU of a traffic stream, such as a TS or SCS traffic stream.

[0190]

[0256] An apparatus, method, or system implementing any of the above or the following, wherein the MSDU or A-MSDU having an expiration time can be traffic of an existing TS or SCS traffic stream only.

[0191]

[0257] An apparatus, method, or system implementing any of the preceding or following, wherein a transmitting STA embeds an expiration time of an MSDU or A-MSDU in a corresponding MPDU when transmitting the corresponding MPDU to a receiving STA.

[0192]

[0258] The expiration time of an MSDU or A-MSDU is the time, in units of seconds, milliseconds, microseconds, etc., that the MSDU or A-MSDU can be stored in the receive reordering buffer of the receiving STA after arriving at the MAC layer of the receiving STA, in an apparatus, method, or system that implements any of the above or following.

[0193]

[0259] An apparatus, method, or system implementing any of the preceding or following, wherein the expiration time of an MSDU or A-MSDU is set to the TSF time at which the MSDU or A-MSDU expires.

[0194]

[0260] An apparatus, method, or system implementing any of the preceding or following, wherein the expiration time of an MSDU or A-MSDU is set to the latency limit of a TSPEC element (or a QoS characteristic element) of the MSDU or A-MSDU.

[0195]

[0261] An apparatus, method, or system that implements any of the above or following, wherein the expiration time of the MSDU or A-MSDU is set to the MSDU lifetime of the MSDU or A-MSDU, which indicates the time that the MSDU or A-MSDU can be stored in the receive reordering buffer of the receiving STA after it is received by the receiving STA (at its MAC layer).

[0196]

[0262] An apparatus, method, or system implementing any of the above or following, wherein the expiration time of an MSDU or A-MSDU is set to the remaining time of the MSDU lifetime (or latency limit) of the TSPEC element (or QoS characteristic element) of the MSDU or A-MSDU from the time the MSDU or A-MSDU is transmitted by the transmitting STA (or received by the receiving STA).

[0197]

[0263] An apparatus, method, or system implementing any of the above or following, wherein a receiving STA stores MSDUs and A-MSDUs that include an expiration time and MSDUs or A-MSDUs that do not include an expiration time in the same receive reordering buffer.

[0198]

[0264] An apparatus, method, or system implementing any of the preceding or following, wherein a receiving STA stores MSDUs and A-MSDUs having different expiration times in the same receive reordering buffer.

[0199]

[0265] An apparatus, method, or system that implements any of the above or following, in which the receiving STA passes the MSDU or A-MSDU to the next MAC process upon the expiration date of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0200]

[0266] An apparatus, method, or system that implements any of the above or the following, in which the receiving STA passes the MSDU or A-MSDU to the next MAC process upon the expiration date of the MSDU or A-MSDU, even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0201]

[0267] An apparatus, method, or system that implements any of the above or following, in which a receiving STA passes an MSDU or A-MSDU to the next MAC process a specific time (e.g., a few milliseconds) before the expiration date of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0202]

[0268] An apparatus, method, or system that implements any of the above or following, in which a receiving STA passes an MSDU or A-MSDU to the next MAC process a specific time (e.g., a few milliseconds) before the expiration date of the MSDU or A-MSDU, even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0203]

[0269] An apparatus, method, or system implementing any of the above or following, wherein a receiving STA is not permitted to pass an MSDU or A-MSDU to a next MAC process before the expiration date of the MSDU or A-MSDU if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

[0204]

[0270] An apparatus, method, or system implementing any of the above or following, wherein a receiving STA is not allowed to pass an MSDU or A-MSDU to the next MAC process before the expiration date of the MSDU or A-MSDU if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

[0205]

[0271] An apparatus, method, or system implementing any of the above or the following, wherein the receiving STA passes an MSDU or A-MSDU having an expiration time to the next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer.

[0206]

[0272] An apparatus, method, or system implementing any of the above or following, in which the receiving STA passes the MSDU or A-MSDU to the next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU with an expiration time in the receive reordering buffer and other expected MSDUs or A-MSDUs in the receive reordering buffer do not have an expiration time.

[0207]

[0273] An apparatus, method, or system that implements any of the above or following, in which the receiving STA passes the MSDU or A-MSDU to the next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU of a traffic stream (such as a TS or SCS traffic stream) in the receive reordering buffer.

[0208]

[0274] As used herein, the term "implementation" is intended to include, but is not limited to, an embodiment, example, or other form of implementing the techniques described herein.

[0209]

[0275] As used herein, the singular words "a," "an," and "the" may include plural references unless the context clearly dictates otherwise. Reference to an item in the singular does not mean "one and only one" unless expressly stated otherwise, but rather means "one or more."

[0210]

[0276] Phrasal constructs within this disclosure such as "A, B and / or C" refer to any combination of items A, B, and C, where either A, B, or C can be present. Phrasal constructs such as "at least one of" followed by a group of listed elements indicate that at least one of the group elements is present, and, where applicable, includes any possible combinations of the listed elements.

[0211]

[0277] Reference herein to "an embodiment," "at least one embodiment," or similar embodiment terminology indicates that a particular feature, structure, or characteristic described in connection with the described embodiment is included in at least one embodiment of the present disclosure. Thus, these various embodiment phrases do not necessarily all refer to the same embodiment, or to a specific embodiment that differs from all other embodiments described. The embodiment phrase should be interpreted to mean that the particular features, structures, or characteristics of a given embodiment can be combined in any suitable manner into one or more embodiments of the disclosed devices, systems, or methods.

[0212]

[0278] As used herein, the term "set" refers to a collection of one or more objects. Thus, for example, a set of objects can include a single object or multiple objects.

[0213]

[0279] Relative terms such as first and second, top and bottom, upper and lower, left and right, etc. may be used only to distinguish one entity or action from another, and do not necessarily require or imply any such actual relationship or ordering between such entities or actions.

[0214]

[0280] The terms "comprises," "comprising," "has," "having," "includes," "including," "contains," "containing," or any other variations of these terms, are intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus that comprises, includes, contains, or has a list of elements may include other elements not specifically listed or inherent to such process, method, article, or apparatus, rather than including only those elements. An element introduced by "comprises...a," "has...a," "includes...a," or "contains...a" does not, in the absence of further constraints, exclude the presence of additional identical elements within the process, method, article, or apparatus that comprises, includes, contains, or has that element.

[0215]

[0281] As used herein, the terms "approximately", "approximate", "substantially", "essentially" and "about" or any other version of these terms are used to describe and explain slight variations. When used in relation to events or circumstances, these terms can mean that these events or circumstances will definitely occur and that these events or circumstances are highly likely to occur. When used in relation to a numerical value, these terms can mean a variation range of ±10% or less, such as ±5% or less, ±4% or less, ±3% or less, ±2% or less, ±1% or less, ±0.5% or less, ±0.1% or less, or ±0.05% or less of the numerical value. For example, being "substantially" aligned can mean an angle variation range of ±10% or less, such as ±5° or less, ±4° or less, ±3° or less, ±2° or less, ±1° or less, ±0.5° or less, ±0.1° or less, or ±0.05° or less.

[0216]

[0282] In addition, amounts, ratios, and other numerical values ​​may be expressed in range format in this specification. Such range formats are used as a shorthand for convenience, and include numerical values ​​explicitly specified as the limits of the range, but should be understood to flexibly include all individual numerical values ​​or subranges within the range as if each of these numerical values ​​and subranges were explicitly set forth. For example, a ratio within the range of about 1 to about 200 should be understood to include the explicitly recited limits of about 1 and about 200, but also include individual ratios such as about 2, about 3, about 4, and subranges such as about 10 to about 50, about 20 to about 100, etc.

[0217]

[0283] The term "coupled," as used herein, is defined as connected, although not necessarily directly, and not necessarily mechanically connected. A device or structure that is "configured" in a particular way is configured in at least that way, but may also be configured in other ways not recited.

[0218]

[0284] Benefits, advantages, solutions to problems, and any element(s) that may result in or make more evident any benefit, advantage, or solution should not be construed as a critical, necessary, or essential feature or element of the technology described herein or any or all of the claims.

[0219]

[0285] Moreover, in the above disclosure, various features may be grouped together in various embodiments for brevity of the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Inventive subject matter may be embodied in less than all features of a single disclosed embodiment.

[0220]

[0286] The Abstract of the Disclosure is presented to allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.

[0221]

[0287] It is understood that some jurisdictions have a practice of requiring the deletion of one or more portions of the present disclosure after filing. Therefore, the reader should refer to the application as of its filing date for the original content of the disclosure. The deletion of any of the disclosure content should not be construed as an abandonment, forfeiture, or public disclosure of any subject matter of the application as originally filed.

[0222]

[0288] The following claims are hereby incorporated into this disclosure, with each claim standing on its own as separately claimed subject matter.

[0223]

[0289] Although the description herein contains many details, these should not be construed as limiting the scope of the disclosure, but merely as exemplifying some of the presently preferred embodiments, and therefore the scope of the disclosure will be understood to fully embrace other embodiments that may become apparent to those skilled in the art.

[0224]

[0290] All structural and functional equivalents of the elements of the embodiments of the present disclosure known to those skilled in the art are expressly incorporated herein by reference and are intended to be included in the scope of the claims. Moreover, no elements, components, or method steps of the present disclosure are intended to be publicly disclosed, regardless of whether they are explicitly recited in the claims. No claim element herein should be construed as a "means-plus-function" element unless the element is expressly recited using the phrase "means for". No claim element herein should be construed as a "step-plus-function" element unless the element is expressly recited using the phrase "step for". [Explanation of symbols]

[0225] 10 Example of embodiment 12 Circuits 14 External I / O connections / buses 16 Internal Bus 18 CPUs / Processors 20 Memory 22 Modem 24,28 RF Module 26a, 26b, 26c, ... 26n, 29 Antenna 40 Example of embodiment 42 ST 1 44STA2 46 STATION 48 MLD Management Entity 50 CPU 52 Memory (RAM) 54 Modem 56 RF circuit 58 Bus 60a, 60b, 60c, ..., 60n antennas 62 CPU 64 Memory (RAM) 72 Conference Room 74 Opening 76 AP1 78STA1 110 Example of embodiment 112 The STA will transmit the latency-sensitive traffic MSDU or A-MSDU that contains the expiration time. 114 The STA encapsulates the MSDU or A-MSDU of the latency sensitive traffic into an MPDU or A-MPDU that contains the latency sensitive information (e.g., latency sensitive traffic indication, expiration time, SCSID). 116 STAs may transmit MPDUs and A-MPDUs carrying latency sensitive traffic first when there are other MPDUs and A-MPDUs under the same sequence control that require (re)transmission. 150 Example of embodiment 152 STA receives an MPDU of latency-sensitive traffic (i.e., an MPDU that contains latency-sensitive information) with an expiration time. 154 The STA stores the MSDUs or A-MSDUs of the latency-sensitive traffic carried by the MPDUs in a receive reordering buffer. 156 Is the MSDU or A-MSDU of the latency sensitive traffic the first MSDU or A-MSDU in the receive reordering buffer? 158 Has the MSDU or A-MSDU expiration time for latency sensitive traffic been reached? 160 The STA passes the MSDU or A-MSDU to the next MAC process. 180 Example of embodiment 210 Example of embodiment 212 BO 213 PPDU 214a Preamble 214b MPDU1 214c MPDU2 216 Expiration date = 3ms 218 BA 220 B.O. 222 The latency sensitive traffic MSDU or A-MSDU with SN=x+1 expires. Although the MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 of AP1 / TID6, STA1 passes the latency sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process. 310 Example of embodiment 313 PPDU 314a Preamble 314b MPDU1 314c MPDU2 316 MPDU1 expiration time = 3 ms 318 MPDU2 expiration time = 3 ms 320 BA 322 BO 323 Latency sensitive traffic MSDU or A-MSDU with SN=x+1 expires. Although the MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 of AP1 / TID6, STA1 passes the latency sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process. 410 Example of embodiment 412 Prescribed Time 414 The MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 of AP1 / TID6, but STA1 passes the latency-sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process before the expiration time. 416 Latency sensitive traffic MSDU or A-MSDU with SN=x+1 expires 510 Example of embodiment 512 BO 514 SCS Setup 516 SCS Setup Request 518 SCS Setup Response 520 BO 521 PPDU 522a Preamble 522b MPDU1 522c MPDU2 524 Expiration Date 526 BA 528 BO 530 Latency sensitive traffic MSDU or A-MSDU with SN=x+1 expires. Although the MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 of AP1 / TID6, STA1 passes the latency sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process. 610 Example of embodiment 612 BO 613 PPDU 614a Preamble 614b MPDU1 614c MPDU2 614d MPDU3 616 BA 617 The MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU in the receive reordering buffer of STA1 of AP1 / TID6, but STA1 passes the latency-sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process because the [Previous SN for same SCS] field / [Previous SN for latency-sensitive traffic] field is x-2, which is less than x. 618a Preamble 618b MPDU3 620 BA 622 STA1 passes the latency sensitive traffic MSDU or A-MSDU with SN=x+1 to the next MAC process because MPDU2 with SN=x+1 has been passed to the next MAC process. 650 Example of embodiment 710 Example of embodiment 712 BO 714 SCS Setup Negotiation 716 SCS Setup Request 718 SCS Setup Response 719 STA1 starts maintaining a separate set of replay counters for SCS with SCSID=2 when CCMP / GCMP is used. 720 BO 721 PPDU 722a Preamble 722b CCMP / GCMP MPDU1 722c CCMP / GCMP MPDU2 724 BA 726 If the MSDU or A-MSDU with SN=x is the first MSDU or A-MSDU of the SCS with SCSID=2 in the receive reordering buffer of STA1 with AP1 / TID6, STA1 shall pass the MSDU or A-MSDU of the latency-sensitive traffic with SN=x+1 to the next MAC process if the MSDU or A-MSDU with SN=x-3 is discarded in the receive reordering buffer of STA1 with AP1 / TID6. 810 Encapsulation 812 plaintext MPDU 813 Analysis 816 AAD Construction 818 Nonce Construction 820 CCM / GCM encryption 822 PN increments 824 CCMP Header Construction 826 Aggregation Blocks 828 Encrypted MPDU 870 Example of embodiment 910 Decapsulation 912 Encrypted MPDU 913 Parser / Demultiplexer 914 Additional Element Information 916 AAD Construction 918 Nonce Construction 920 CCM / GCM Decoding 922 Aggregation Blocks 924 Replay Check 926 Plaintext MPDU 950 Example of embodiment

Claims

1. 1. An apparatus for wireless communication in a network, the apparatus comprising: (a) a wireless communication circuit, the wireless communication circuit operating as a wireless station (STA) that is a separate STA or as a STA in a multi-link device (MLD), as a normal STA or as an access point (AP) STA, wirelessly communicating with other wireless stations (STAs) using a carrier sense multiple access / collision avoidance (CSMA / CA) mechanism on a wireless local area network (WLAN); (b) a processor coupled to the wireless communication circuitry and operating on the WLAN to perform transmission of frames between a medium access control (MAC) layer of an IEEE 802.11 network; (c) a non-transitory memory storing instructions executable by said processor for communicating with other STAs; Equipped with (d) the instructions, when executed by the processor, perform steps of a wireless communication protocol for the wireless communication circuit, the steps comprising: (i) a STA acting as a receiving STA successfully receives at least one Medium Access Control (MAC) Service Data Unit (MSDU) or Aggregated MSDU (A-MSDU) having an expiration time from another STA acting as a transmitting STA; (ii) the receiving STA stores the MSDU or A-MSDU having an expiration time in a receive reordering buffer of a corresponding high throughput (HT) immediate block acknowledgment (Ack) agreement; (iii) the receiving STA passes the MSDU or A-MSDU to a next MAC process before the expiration of the MSDU or A-MSDU; Including, An apparatus comprising:

2. The apparatus of claim 1, characterized in that, prior to transmission, a negotiation is performed between the receiving STA and the transmitting STA to determine an expiration time of an MSDU or A-MSDU of a traffic stream.

3. 3. The device of claim 2, wherein the negotiation is performed within a traffic stream (TS) or a stream classification service (SCS).

4. The apparatus of claim 1, wherein the MSDU or A-MSDU having an expiration time is traffic in an existing Traffic Stream (TS) or Stream Classification Service (SCS).

5. 2. The apparatus of claim 1, wherein an expiration time of each of the MSDUs or A-MSDUs is embedded by the transmitting STA into a corresponding MPDU for reception by the receiving STA.

6. The apparatus of claim 1, characterized in that the expiration time of the MSDU or A-MSDU is expressed in conventional time units and indicates the time that the MSDU or A-MSDU can be stored in a receive reordering buffer of the receiving STA after arriving at the MAC layer of the receiving STA.

7. 2. The apparatus of claim 1, wherein the expiration time of the MSDU or A-MSDU is expressed as a Timing Synchronization Function (TSF) time at which the MSDU or A-MSDU expires.

8. 2. The apparatus of claim 1, wherein the expiration time of the MSDU or A-MSDU is set to a latency limit of a traffic specification (TSPEC) element or a quality of service (QoS) characteristic element of the MSDU or A-MSDU.

9. The apparatus of claim 1, characterized in that the expiration time of the MSDU or A-MSDU can be set to an MSDU lifetime value of the MSDU or A-MSDU, indicating the time that the MSDU or A-MSDU can be stored in the receive reordering buffer of the receiving STA once it is received by a MAC layer of the receiving STA.

10. The apparatus of claim 1, characterized in that the expiration time of the MSDU or A-MSDU can be set to the remaining time of the MSDU lifetime or the latency limit of the traffic specification (TSPEC) element or quality of service (QoS) characteristic element of the MSDU or A-MSDU, indicating the time since the MSDU or A-MSDU was transmitted by the transmitting STA or received by the receiving STA.

11. The apparatus of claim 1, wherein the receiving STA is capable of storing MSDUs and A-MSDUs that include an expiration time and MSDUs or A-MSDUs that do not include an expiration time in the same receive reordering buffer.

12. The apparatus of claim 1, wherein the receiving STA stores MSDUs and A-MSDUs having different expiration times in the same receive reordering buffer.

13. The apparatus of claim 1, characterized in that the receiving STA passes the MSDU or A-MSDU to a next MAC process upon the expiration time of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receiving reordering buffer.

14. The apparatus of claim 1, characterized in that the receiving STA passes the MSDU or A-MSDU to a next MAC process upon the expiration time of the MSDU or A-MSDU even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receiving reordering buffer.

15. The apparatus of claim 1, characterized in that the receiving STA passes the MSDU or A-MSDU to a next MAC process within a certain period prior to the expiration date of the MSDU or A-MSDU, even if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receiving reordering buffer.

16. The apparatus of claim 1, characterized in that the receiving STA passes the MSDU or A-MSDU to a next MAC process at a specific period prior to the expiration date of the MSDU or A-MSDU even if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receiving reordering buffer.

17. 2. The apparatus of claim 1, wherein the receiving STA is not allowed to pass the MSDU or A-MSDU to a next MAC process before the expiration date of the MSDU or A-MSDU if the MSDU or A-MSDU is not the first MSDU or A-MSDU in the receive reordering buffer.

18. 2. The apparatus of claim 1, wherein the receiving STA is not allowed to pass the MSDU or A-MSDU to a next MAC process before the expiration date of the MSDU or A-MSDU if the sequence number of the MSDU or A-MSDU is not equal to the WinStartB parameter of the receive reordering buffer.

19. The apparatus of claim 1, wherein the receiving STA passes the MSDU or A-MSDU having an expiration time to a next MAC process immediately after the MSDU or A-MSDU in the receive reordering buffer.

20. 2. The apparatus of claim 1, wherein the receiving STA passes the MSDU or A-MSDU to a next MAC process immediately after the MSDU or A-MSDU in the receiving reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU with an expiration time in the receiving reordering buffer and other expected MSDUs or A-MSDUs in the receiving reordering buffer do not have an expiration time.

21. 2. The apparatus of claim 1, wherein the receiving STA passes the MSDU or A-MSDU to a next MAC process immediately after the MSDU or A-MSDU in the receiving reordering buffer if the MSDU or A-MSDU is the first MSDU or A-MSDU of a traffic stream in the receiving reordering buffer.

22. 1. A method for performing wireless communication in a network, comprising: (a) operating a wireless communication circuit as a wireless station (STA) that is a separate STA or as a STA in a multi-link device (MLD), the wireless communication circuit operating as a normal STA or an access point (AP) STA to wirelessly communicate with other wireless stations (STAs) using a carrier sense multiple access / collision avoidance (CSMA / CA) mechanism on a wireless local area network (WLAN); (b) a STA acting as a receiving STA successfully receiving at least one Medium Access Control (MAC) Service Data Unit (MSDU) or Aggregated MSDU (A-MSDU) having an expiration time from another STA acting as a transmitting STA; (c) the receiving STA stores the MSDU or A-MSDU having an expiration time in a receive reordering buffer of a corresponding high throughput (HT) immediate block acknowledgment (Ack) agreement; (d) the receiving STA passes the MSDU or A-MSDU to a next MAC process before the expiration of the MSDU or A-MSDU; The method according to claim 1, further comprising:

Citation Information

Patent Citations

  • Block Acknowledgement with Out-of-Order Packets

    US20190097952A1

  • Techniques for efficient reordering of data packets in multipath scenarios

    US20200403928A1