Coordinated access point transmissions
Through coordinated access point transmission technology, access points receive scheduling information and allocate time or frequency resources for transmission opportunities, solving the problem of low efficiency of access points and sites competing for wireless media in wireless LANs, achieving more efficient resource utilization and throughput fairness.
Patent Information
- Application Number
- CN202510843145.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2021-02-18
- Filing Date
- 2021-02-22
- Publication Date
- 2025-08-01
AI Technical Summary
In existing wireless LANs, access points and sites are inefficient when competing for transmission opportunities for wireless media, resulting in increased waiting time and reduced throughput fairness.
By receiving scheduling information, coordinated allocation of time or frequency resources for transmission opportunities, coordinated access point transmission is realized, allowing multiple access points to share transmission opportunities, reducing latency and improving throughput fairness.
It effectively reduces the waiting time for access points to compete for transmission opportunities, and improves the throughput fairness and efficiency of wireless LANs.
Smart Images

Figure CN120417049A_ABST
Abstract
Description
[0001] This application is a divisional application of a patent application with an international filing date of February 22, 2021, an international application number of PCT / US2021 / 019098, a Chinese national filing date of February 22, 2021, an application number of 202180018084.X, and an invention title of "Coordinated Access Point Transmissions".
[0002] Priority Information
[0003] This patent application claims the priority of U.S. Non - Provisional Patent Application No. 17 / 249,070, filed on February 18, 2021, by Sun et al. and titled "COORDINATED ACCESS POINT TRANSMISSIONS", which claims the priority of U.S. Provisional Patent Application No. 62 / 986,561, filed on March 6, 2020, by Sun et al. and titled "COORDINATED ACCESS POINT TRANSMISSIONS". Both of these applications are assigned to the assignee of this application and are hereby incorporated by reference in their entirety. Technical Field
[0004] This disclosure generally relates to wireless communication, and more particularly to coordinated AP time - division multiple access and orthogonal frequency - division multiple access techniques for sharing resources of transmission opportunities.
[0005] Description of Related Art
[0006] A wireless local area network (WLAN) can be formed by one or more access points (APs) that provide a shared wireless communication medium for use by several client devices (also referred to as stations (STAs)). The basic building block of a WLAN that follows the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard family is a basic service set (BSS) managed by an AP. Each BSS is identified by a basic service set identifier (BSSID) announced by the AP. The AP periodically broadcasts beacon frames so that any STA within the wireless range of the AP can establish or maintain a communication link with the WLAN.
[0007] Access techniques in a WLAN environment typically involve contention. An AP or STA that desires to transmit or receive data must contend for access to the wireless medium and win the contention before obtaining a transmission opportunity (TXOP). However, conventional access techniques may inefficiently use the time or frequency resources of the TXOP, which can lead to increased latency and reduced throughput fairness.
[0008] Summary
[0009] The systems, methods, and devices of the present disclosure each have several innovative aspects, none of which are solely responsible for the desired attributes disclosed herein.
[0010] One innovative aspect of the subject matter described in the present disclosure can be implemented in a method for wireless communication by a first wireless station in a first basic service set (BSS) associated with a first wireless access point. The method includes: receiving a first packet from the first wireless access point, the first packet including scheduling information for a transmission opportunity obtained by a second wireless access point associated with a second BSS, the scheduling information indicating multiple portions of the transmission opportunity, the scheduling information including multiple access point identifiers associated with multiple wireless access points, the scheduling information further indicating which one or more of the portions of the transmission opportunity are assigned to each respective wireless access point of the multiple wireless access points for communication with their respective BSSs. The method further includes determining that the scheduling information includes a first access point identifier associated with the first wireless access point. The method additionally includes receiving a trigger frame from the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point. The method further includes: in response to receiving the trigger frame, based on determining that the scheduling information includes the first access point identifier, transmitting data to the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point.
[0011] In some implementations, each of the multiple portions of the transmission opportunity includes a set of time resources that do not overlap any time resources of any other of the multiple portions. In some other implementations, each of the multiple portions of the transmission opportunity includes a set of frequency resources that do not overlap any frequency resources of any other of the multiple portions.
[0012] In some implementations, the method further includes receiving a second packet from the second wireless access point before receiving the first packet, the second packet including the scheduling information and a duration field indicating the duration of the transmission opportunity; determining that the scheduling information includes the first access point identifier; and suppressing an update of an inter-BSS network allocation vector based on determining that the scheduling information includes the first access point identifier, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on suppressing the update of the inter-BSS network allocation vector. In some such implementations, the method further includes updating an intra-BSS network allocation vector for the first BSS based on the duration based on determining that the scheduling information includes the first access point identifier, the intra-BSS network allocation vector permitting the first wireless station to transmit data to the first wireless access point only in response to receiving the trigger frame from the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point.
[0013] In some implementations, the method further includes determining that the first packet or the trigger frame indicates that carrier sensing is not required for transmitting data to the first wireless access point in a portion of the transmission opportunity that is allocated to the first wireless access point in response to receiving the trigger frame; and ignoring the inter-BSS network allocation vector in one or more portions of the transmission opportunity that are allocated to the first wireless access point based on determining that the scheduling information includes the first access point identifier and determining that carrier sensing is not required, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on ignoring the inter-BSS network allocation vector.
[0014] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and the method further includes: suppressing updating any network allocation vector based on the duration based on determining that the scheduling information includes the first access point identifier, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on not updating any network allocation vector.
[0015] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and the method further includes: updating the intra-BSS network allocation vector for the first BSS based on the duration and suppressing updating the inter-BSS network allocation vector based on determining that the scheduling information includes the first access point identifier, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on updating the intra-BSS network allocation vector and suppressing updating the inter-BSS network allocation vector.
[0016] In some implementations, the method further includes updating the intra-BSS network allocation vector based on the duration indicated in a second packet in response to detecting the second packet from the first wireless access point or from another wireless station in the first BSS during the transmission opportunity.
[0017] In some implementations, the method further includes suppressing updating the inter-BSS network allocation vector in response to detecting a second packet during the transmission opportunity, the second packet being from another wireless access point associated with the access point identifier included in the scheduling information or from a wireless station in a BSS associated with another wireless access point associated with the access point identifier included in the scheduling information. In some such implementations, the method further includes updating the intra-BSS network allocation vector based on the duration indicated in the second packet in response to detecting the second packet. In some other such implementations, the method further includes suppressing updating the intra-BSS network allocation vector in response to detecting the second packet.
[0018] Another innovative aspect of the subject matter described in this disclosure can be implemented in a wireless communication device. The wireless communication device includes at least one modem, at least one processor communicatively coupled to the at least one modem, and at least one memory communicatively coupled to the at least one processor and storing computer-readable code that, when executed by the at least one processor in conjunction with the at least one modem, is configured to: operate in a first basic service set (BSS) associated with a first wireless access point. The code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: receive a first packet from the first wireless access point, the first packet including scheduling information for a transmission opportunity obtained by a second wireless access point associated with a second BSS, the scheduling information indicating multiple portions of the transmission opportunity, the scheduling information including multiple access point identifiers associated with multiple wireless access points, the scheduling information further indicating which one or more of the portions of the transmission opportunity are assigned to each respective wireless access point of the multiple wireless access points for communication with its respective BSS. The code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: determine that the scheduling information includes a first access point identifier associated with the first wireless access point. The code is additionally configured, when executed by the at least one processor in conjunction with the at least one modem, to: receive a trigger frame from the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point. The code is further configured, when executed by the at least one processor in conjunction with the at least one modem, to: in response to receiving the trigger frame, based on determining that the scheduling information includes the first access point identifier, transmit data to the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point.
[0019] In some implementations, each of the multiple portions of the transmission opportunity includes a set of time resources that do not overlap any time resources of any other of the multiple portions. In some other implementations, each of the multiple portions of the transmission opportunity includes a set of frequency resources that do not overlap any frequency resources of any other of the multiple portions.
[0020] In some implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: receive a second packet from a second wireless access point before receiving the first packet, the second packet including the scheduling information and a duration field indicating the duration of the transmission opportunity; determine that the scheduling information includes a first access point identifier; and suppress updating the inter-BSS network allocation vector based on determining that the scheduling information includes the first access point identifier, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on suppressing updating the inter-BSS network allocation vector. In some such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the intra-BSS network allocation vector for a first BSS based on the duration, based on determining that the scheduling information includes the first access point identifier, the intra-BSS network allocation vector permitting the first wireless station to transmit data to the first wireless access point only in response to receiving a trigger frame from the first wireless access point in a portion of the transmission opportunity that is allocated to the first wireless access point.
[0021] In some implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: determine that the scheduling information in the first packet includes a first access point identifier; determine that the second packet or the trigger frame indicates that carrier sensing is not required for transmitting data to the first wireless access point in a portion of the transmission opportunity that is allocated to the first wireless access point in response to receiving the trigger frame; and ignore the inter-BSS network allocation vector in one or more portions of the transmission opportunity that are allocated to the first wireless access point based on determining that the scheduling information includes the first access point identifier and determining that carrier sensing is not required, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on ignoring the inter-BSS network allocation vector.
[0022] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and wherein the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating any network allocation vector based on the duration, based on determining that the scheduling information includes the first access point identifier, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on not updating any network allocation vector.
[0023] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the within-BSS network allocation vector for the first BSS based on the duration based on determining that the scheduling information includes a first access point identifier and suppress updating the inter-BSS network allocation vector, wherein transmitting data to the first wireless access point in response to the trigger frame is further based on updating the within-BSS network allocation vector and suppressing updating the inter-BSS network allocation vector.
[0024] In some implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the within-BSS network allocation vector based on the duration indicated in a second packet in response to detecting the second packet from the first wireless access point or from another wireless station in the first BSS during the transmission opportunity.
[0025] In some implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the inter-BSS network allocation vector in response to detecting a second packet during the transmission opportunity, the second packet being from another wireless access point associated with the access point identifier included in the scheduling information or from a wireless station in a BSS associated with another wireless access point associated with the access point identifier included in the scheduling information. In some such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the within-BSS network allocation vector based on the duration indicated in the second packet in response to detecting the second packet. In some other such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the within-BSS network allocation vector in response to detecting the second packet.
[0026] Another innovative aspect of the subject matter described in this disclosure can be implemented in a method for wireless communication by a first access point associated with a first basic service set (BSS). The method includes: receiving a first packet from a second wireless access point associated with a second BSS, the first packet including scheduling information for a transmission opportunity obtained by the second wireless access point, the scheduling information indicating multiple portions of the transmission opportunity, the scheduling information including multiple access point identifiers associated with multiple wireless access points, and the scheduling information further indicating which one or more of the portions of the transmission opportunity are assigned to each respective wireless access point of the multiple wireless access points for communication with their respective BSSs. The method further includes determining that the scheduling information includes a first access point identifier associated with the first wireless access point, the first access point identifier being associated with the portion of the multiple portions of the transmission opportunity that is assigned to the first wireless access point. The method additionally includes: in response to receiving the first packet and based on determining that the scheduling information includes the first access point identifier, transmitting a second packet to one or more wireless stations in the first BSS, the second packet including at least a portion of the scheduling information that includes the multiple access point identifiers and an indication of the portion of the transmission opportunity that is assigned to the first wireless access point. The method further includes: transmitting data to the one or more wireless stations in the first BSS or triggering transmission of data from the one or more wireless stations in the portion of the transmission opportunity that is assigned to the first wireless access point based on the scheduling information.
[0027] In some implementations, each of the multiple portions of the transmission opportunity includes a set of time resources that do not overlap any time resources of any other of the multiple portions. In some other implementations, each of the multiple portions of the transmission opportunity includes a set of frequency resources that do not overlap any frequency resources of any other of the multiple portions.
[0028] In some implementations, the second packet includes a duration field indicating the duration of the transmission opportunity. In some implementations, the first packet includes a trigger frame configured to trigger the first wireless access point to transmit the second packet based on including the first access point identifier.
[0029] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and the method further includes: suppressing an update to the inter-BSS network allocation vector based on determining that the scheduling information includes a first access point identifier, wherein transmitting data to or triggering transmission of data from the one or more wireless stations in the first BSS is further based on suppressing the update to the inter-BSS network allocation vector. In some implementations, the method further includes: updating the intra-BSS network allocation vector for the first BSS based on the duration based on determining that the scheduling information includes a first access point identifier. In some other such implementations, the method further includes suppressing an update to the intra-BSS network allocation vector for the first BSS based on determining that the scheduling information includes a first access point identifier.
[0030] In some implementations, the method further includes suppressing an update to the inter-BSS network allocation vector in response to detecting a third packet during the transmission opportunity, the third packet from a second wireless access point or another wireless access point associated with the access point identifier included in the scheduling information, or from a wireless station in a BSS associated with the second wireless access point or another wireless access point associated with the access point identifier included in the scheduling information. In some such implementations, the method further includes updating the intra-BSS network allocation vector based on the duration indicated in the third packet in response to detecting the third packet. In some other such implementations, the method further includes suppressing an update to the intra-BSS network allocation vector in response to detecting the third packet.
[0031] In some implementations, triggering transmission of data from the one or more wireless stations in the first BSS includes: transmitting a trigger frame to each of the one or more wireless stations in a portion of the transmission opportunity assigned to the first wireless access point, wherein the second packet or the trigger frame indicates that no carrier sensing is required for transmitting data to the first wireless access point in the portion of the transmission opportunity assigned to the first wireless access point in response to receiving the trigger frame.
[0032] Another innovative aspect of the subject matter described in this disclosure can be implemented in a wireless communication device. The wireless communication device includes at least one modem, at least one processor communicatively coupled to the at least one modem, and at least one memory communicatively coupled to the at least one processor and storing computer-readable code that, when executed by the at least one processor in conjunction with the at least one modem, is configured to: operate as a first wireless access point associated with a first basic service set (BSS). The code is further configured to, when executed by the at least one processor in conjunction with the at least one modem: receive a first packet from a second wireless access point associated with a second BSS, the first packet including scheduling information for a transmission opportunity obtained by the second wireless access point, the scheduling information indicating multiple portions of the transmission opportunity, the scheduling information including multiple access point identifiers associated with multiple wireless access points, and the scheduling information further indicating which one or more of the portions of the transmission opportunity are assigned to each respective wireless access point of the multiple wireless access points for communication with their respective BSSs. The code is further configured to, when executed by the at least one processor in conjunction with the at least one modem: determine that the scheduling information includes a first access point identifier associated with the first wireless access point, the first access point identifier being associated with the portion of the transmission opportunity assigned to the first wireless access point from the multiple portions of the transmission opportunity. The code is additionally configured to, in response to receiving the first packet and based on determining that the scheduling information includes the first access point identifier, transmit a second packet to one or more wireless stations in the first BSS, the second packet including at least a portion of the scheduling information, the at least a portion of the scheduling information including the multiple access point identifiers and an indication of the portion of the transmission opportunity assigned to the first wireless access point. The code is further configured to, when executed by the at least one processor in conjunction with the at least one modem: transmit data or trigger transmission of data from the one or more wireless stations in the first BSS in the portion of the transmission opportunity assigned to the first wireless access point based on the scheduling information.
[0033] In some implementations, each of the multiple portions of the transmission opportunity includes a set of time resources that do not overlap any time resources of any other of the multiple portions. In some other implementations, each of the multiple portions of the transmission opportunity includes a set of frequency resources that do not overlap any frequency resources of any other of the multiple portions.
[0034] In some implementations, the second packet includes a duration field indicating the duration of the transmission opportunity. In some implementations, the first packet includes a trigger frame configured to trigger the first wireless access point to transmit the second packet based on including the first access point identifier.
[0035] In some implementations, the first packet includes a duration field indicating the duration of the transmission opportunity, and the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the inter-BSS network allocation vector based on determining that the scheduling information includes a first access point identifier, wherein transmitting data to or triggering transmission of data from the one or more wireless stations in the first BSS is further based on suppressing updating the inter-BSS network allocation vector. In some such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the intra-BSS network allocation vector for the first BSS based on the duration based on determining that the scheduling information includes a first access point identifier. In some other such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the intra-BSS network allocation vector for the first BSS based on determining that the scheduling information includes a first access point identifier.
[0036] In some implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the inter-BSS network allocation vector in response to detecting a third packet during the transmission opportunity, the third packet from a second wireless access point or another wireless access point associated with the access point identifier included in the scheduling information, or from a wireless station in a BSS associated with the second wireless access point or another wireless access point associated with the access point identifier included in the scheduling information. In some such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: update the intra-BSS network allocation vector based on the duration indicated in the third packet in response to detecting the third packet. In some other such implementations, the code, when executed by the at least one processor in conjunction with the at least one modem, is further configured to: suppress updating the intra-BSS network allocation vector in response to detecting the third packet.
[0037] In some implementations, triggering transmission of data from the one or more wireless stations in the first BSS includes: transmitting a trigger frame to each of the one or more wireless stations in a portion of the transmission opportunity assigned to the first wireless access point, wherein the second packet or the trigger frame indicates that carrier sensing is not required for transmitting data to the first wireless access point in a portion of the transmission opportunity in response to receiving the trigger frame. Brief Description of the Drawings
[0039] Details of one or more implementations of the subject matter described in this disclosure are set forth in the accompanying drawings and the description below. However, the drawings illustrate only some typical aspects of this disclosure and are therefore not considered to limit its scope. Other features, aspects, and advantages will become apparent from the description, the drawings, and the claims.
[0040] Figure 1 A schematic diagram of an example wireless communication network is shown.
[0041] Figure 2A An example protocol data unit (PDU) that can be used for communication between an access point (AP) and one or more stations (STAs) is shown.
[0042] Figure 2B Shows Figure 2A Example fields in the PDU of
[0043] Figure 3A An example physical layer convergence protocol (PLCP) protocol data unit (PPDU) that can be used for communication between an AP and one or more STAs is shown.
[0044] Figure 3B Another example PPDU that can be used for communication between an AP and one or more STAs is shown.
[0045] Figure 4 A block diagram of an example wireless communication device is shown.
[0046] Figure 5A A block diagram of an example AP is shown.
[0047] Figure 5B A block diagram of an example STA is shown.
[0048] Figure 6 A flowchart showing an example process for coordinated wireless communication to support resource sharing according to some implementations is shown.
[0049] Figures 7A to 7D A timing diagram showing an example of a communication transmission to support resource sharing according to some implementations is shown.
[0050] Figure 8 A flowchart showing an example TXOP indication process for announcing the availability of time resources in a transmission opportunity (TXOP) is shown.
[0051] Figure 9 A flowchart showing an example process for coordinated wireless communication to support resource sharing according to some implementations is shown.
[0052] Figure 10A flowchart illustrating an example process for coordinated wireless communications supporting resource sharing according to some implementations is shown.
[0053] Figure 11 A block diagram is shown of an example wireless communication device supporting resource sharing in accordance with some implementations.
[0054] Figure 12 A block diagram is shown of an example wireless communication device supporting resource sharing in accordance with some implementations.
[0055] Like reference numbers and designations in the various drawings indicate like elements. Detailed description
[0057] The following description is directed to some specific implementations for the purpose of describing the innovative aspects of the present disclosure. However, one of ordinary skill in the art will readily recognize that the teachings herein can be applied in many different ways. The described implementations can be implemented in a manner that is capable of being implemented in accordance with the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, the IEEE 802.15 standard, the Bluetooth Special Interest Group (SIG), or any other standard defined by the Bluetooth Special Interest Group (SIG). The described implementations may be implemented in any device, system, or network capable of transmitting and receiving radio frequency (RF) signals in accordance with one or more of the Long Term Evolution (LTE), 3G, 4G, or 5G (New Radio (NR)) standards promulgated by the Third Generation Partnership Project (3GPP). The described implementations may be implemented in any device, system, or network capable of transmitting and receiving RF signals in accordance with one or more of the following technologies or techniques: code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA), single-user (SU) multiple-input multiple-output (MIMO), and multi-user (MU) MIMO. The described implementations may also be implemented using other wireless communication protocols or RF signals suitable for use in one or more of a wireless personal area network (WPAN), a wireless local area network (WLAN), a wireless wide area network (WWAN), or an Internet of Things (IoT) network.
[0058] Aspects generally relate to sharing resources of a shared wireless medium. Particular implementations more specifically relate to coordinated AP (CAP) TDMA (CAP-TDMA) or CAP OFDMA (CAP-OFDMA) techniques for sharing time or frequency resources of a transmission opportunity (TXOP). Particular implementations disclosed herein also relate to network allocation vector (NAV) rules for use by APs and STAs participating in CAP-TDMA or CAP-OFDMA transmissions. According to such techniques, an AP that wins contention for and obtains access to the wireless medium for the duration of a TXOP may share the AP's time or frequency resources with other selected APs. To share its time or frequency resources, the winning AP may divide the TXOP into multiple time segments or frequency segments, each time segment or frequency segment including corresponding time or frequency resources representing a portion of the TXOP, and allocate the time or frequency segments to the winning AP itself or to one or more of the selected APs.
[0059] Particular implementations of the subject matter described in this disclosure may be implemented to achieve one or more of the following potential advantages. In some implementations, the techniques described may be used to reduce latency, since the TXOP owner may share the TXOP with other APs, and as such, these other APs may not need to wait, as they would according to conventional CSMA / CA or EDCA techniques, to win contention for the TXOP to be able to transmit and receive data. Additionally or alternatively, some implementations may achieve improved throughput fairness. Various implementations may achieve these and other advantages without requiring the TXOP owner or other APs selected to participate in the TXOP to know STAs associated with other BSSs (OBSSs), without requiring a pre-assigned or dedicated master AP or a pre-assigned group of APs, and without requiring backhaul coordination between the APs participating in the TXOP.
[0060] Figure 1 A block diagram of an example wireless communication network 100 is shown. According to some aspects, the wireless communication network 100 may be an example of a wireless local area network (WLAN) (such as a Wi-Fi network) (and will be referred to hereinafter as WLAN 100). For example, the WLAN 100 may be a network that implements at least one of the IEEE 802.11 wireless communication protocol standards family (such as the standards defined by the IEEE 802.11-2016 specification or amendments thereto, including but not limited to 802.11ay, 802.11ax, 802.11az, 802.11ba, and 802.11be). The WLAN 100 may include a number of wireless communication devices, such as access points (APs) 102 and multiple stations (STAs) 104. Although only one AP 102 is shown, the WLAN network 100 may also include multiple APs 102.
[0061] Each STA 104 may also be referred to as a mobile station (MS), mobile device, mobile handset, wireless handset, access terminal (AT), user equipment (UE), subscriber station (SS), or subscriber unit, etc. The STA 104 may represent various devices, such as mobile phones, personal digital assistants (PDAs), other handheld devices, netbooks, netbook computers, tablet computers, laptop devices, display devices (e.g., TVs, computer monitors, navigation systems, etc.), music or other audio or stereo devices, remote control devices (“remote controls”), printers, kitchen or other household appliances, remote key fobs (e.g., for passive keyless entry and start (PKES) systems), etc.
[0062] A single AP 102 and the associated set of STAs 104 may be referred to as a basic service set (BSS), which is managed by the corresponding AP 102. Figure 1 An example coverage area 106 of the AP 102 is additionally shown, and this example coverage area 106 may represent the basic service area (BSA) of the WLAN 100. The BSS can be identified to users by a service set identifier (SSID), and can also be identified to other devices by a basic service set identifier (BSSID), and the BSSID can be the media access control (MAC) address of the AP 102. The AP 102 periodically broadcasts beacon frames (“beacons”) including the BSSID so that any STA 104 within the wireless range of the AP 102 can “associate” or re-associate with the AP 102 to establish a corresponding communication link 108 with the AP 102 (also hereinafter referred to as a “Wi-Fi link”) or maintain the communication link 108 with the AP 102. For example, the beacon may include an identification of the primary channel used by the corresponding AP 102 and a timing synchronization function for establishing or maintaining timing synchronization with the AP 102. The AP 102 can provide access to an external network to each STA 104 in the WLAN via the corresponding communication link 108.
[0063] To establish a communication link 108 with the AP 102, each STA 104 is configured to perform passive or active scanning operations ("scanning") on frequency channels in one or more frequency bands (e.g., 2.4 GHz, 5 GHz, 6 GHz, or 60 GHz bands). To perform passive scanning, the STA 104 listens for beacons transmitted by the corresponding AP 102 at periodic time intervals, known as the Target Beacon Transmission Time (TBTT) (measured in time units (TU), where one TU can be equal to 1024 microseconds (μs)). To perform active scanning, the STA 104 generates probe requests and sequentially transmits these probe requests on each channel to be scanned, and listens for probe responses from the AP 102. Each STA 104 can be configured to: identify or select the AP 102 to associate with based on the scanning information obtained through passive or active scanning, and perform authentication and association operations to establish a communication link 108 with the selected AP 102. The AP 102 assigns an Association Identifier (AID) to the STA 104 at the end of the association operation, and the AP 102 uses this AID to track the STA 104.
[0064] Since wireless networks are becoming increasingly common, the STA 104 may have the opportunity to choose among many BSSs within the range of the STA or among multiple AP 102s that together form an Extended Service Set (ESS) (including multiple connected BSSs). Extended network stations associated with the WLAN 100 can be connected to a wired or wireless distribution system that allows multiple AP 102s to be connected in such an ESS. Thus, the STA 104 can be covered by more than one AP 102 and can be associated with different AP 102s at different times for different transmissions. Additionally, after associating with the AP 102, the STA 104 can also be configured to periodically scan its surrounding environment to look for a more suitable AP 102 to associate with. For example, a STA 104 that is moving relative to its associated AP 102 can perform a "roaming" scan to look for another AP 102 with more favorable network characteristics, such as a greater Received Signal Strength Indicator (RSSI) or a reduced traffic load.
[0065] In some cases, STA 104 may form a network without an AP 102 or without other equipment other than STA 104 itself. An example of such a network is an ad hoc network (or wireless ad hoc network). An ad hoc network may alternatively be referred to as a mesh network or a peer-to-peer (P2P) network. In some cases, an ad hoc network may be implemented within a larger wireless network such as WLAN 100. In such an implementation, although STA 104 may be able to communicate with each other through AP102 using communication link 108, STA 104 may also communicate directly with each other via direct wireless link 110. Additionally, two STA 1's 04 may communicate via direct communication link 110 regardless of whether the two STA 104 are associated with and served by the same AP 102. In such an ad hoc system, one or more STA 104 may assume the role played by AP 102 in a BSS. Such a STA 104 may be referred to as a group owner (GO) and may coordinate transmissions within the ad hoc network. Examples of direct wireless link 110 include Wi-Fi Direct connections, connections established by using Wi-Fi Tunneled Direct Link Setup (TDLS) links, and other P2P group connections.
[0066] AP 102 and STA 104 may operate and communicate (via respective communication links 108) according to the IEEE 802.11 family of wireless communication protocol standards (such as the standards defined by the IEEE 802.11-2016 specification or its amendments, including but not limited to 802.11ay, 802.11ax, 802.11az, 802.11ba, and 802.11be). These standards define the WLAN radio and baseband protocols for the PHY and Media Access Control (MAC) layers. AP 102 and STA 104 transmit and receive wireless communications (also referred to hereinafter as "Wi-Fi communications") to and from each other in the form of PHY protocol data units (PPDUs) (or Physical Layer Convergence Protocol (PLCP) PPDUs). AP 102 and STA 104 in WLAN 100 may transmit PPDUs in unlicensed spectrum, which may be part of a spectrum that includes bands traditionally used by Wi-Fi technology (such as the 2.4 GHz band, 5 GHz band, 60 GHz band, 3.6 GHz band, and 900 MHz band). Some implementations of AP 102 and STA 104 described herein may also communicate in other bands (such as the 6 GHz band) that support both licensed and unlicensed communications. AP102 and STA 104 may also be configured to communicate on other bands (such as shared licensed bands) where multiple operators may have licenses to operate in one or more of the same or overlapping bands.
[0067] Each frequency band may include multiple sub-bands or frequency channels. For example, PPDUs compliant with the IEEE 802.11n, 802.11ac, 802.11ax, and 802.11be standard amendments may be transmitted in the 2.4 GHz, 5 GHz, or 6 GHz frequency bands, where each frequency band is divided into multiple 20 MHz channels. Thus, these PPDUs are transmitted on physical channels with a minimum bandwidth of 20 MHz, but larger channels can be formed through channel bonding. For example, a PPDU may be transmitted on a physical channel having a bandwidth of 40 MHz, 80 MHz, 160 MHz, or 320 MHz by bonding multiple 20 MHz channels together.
[0068] Each PPDU is a composite structure including a PHY preamble and a payload in the form of a PHY service data unit (PSDU). The information provided in the preamble can be used by the receiving device to decode the subsequent data in the PSDU. In instances where the PPDU is transmitted on a bonded channel, the preamble field may be replicated and transmitted in each of the multiple component channels. The PHY preamble may include both a legacy portion (or "legacy preamble") and a non-legacy portion (or "non-legacy preamble"). The legacy preamble can be used for packet detection, automatic gain control, and channel estimation, among other uses. The legacy preamble is generally also used to maintain compatibility with legacy devices. The format, decoding, and information provided in the non-legacy portion of the preamble are based on the specific IEEE 802.11 protocol to be used for transmitting the payload.
[0069] Figure 2A An example protocol data unit (PDU) 200 that can be used for wireless communication between an AP 102 and one or more STAs 104 is shown. For example, PDU 200 may be configured as a PPDU. As shown, PDU 200 includes a PHY preamble 202 and a PHY payload 204. For example, preamble 202 may include a legacy portion that itself includes a legacy short training field (L-STF) 206 that may consist of two BPSK symbols, a legacy long training field (L-LTF) 208 that may consist of two BPSK symbols, and a legacy signal field (L-SIG) 210 that may consist of two BPSK symbols. The legacy portion of preamble 202 may be configured according to the IEEE 802.11a wireless communication protocol standard. Preamble 202 may also include a non-legacy portion that includes one or more non-legacy fields 212 compliant with an IEEE wireless communication protocol (such as IEEE 802.11ac, 802.11ax, 802.11be, or a later wireless communication protocol).
[0070] The L-STF 206 generally enables the receiving device to perform coarse timing and frequency tracking as well as automatic gain control (AGC). The L-LTF 208 generally enables the receiving device to perform fine timing and frequency tracking and also enables an initial estimation of the wireless channel. The L-SIG 210 generally enables the receiving device to determine the duration of the PDU and use the determined duration to avoid transmission over the PDU. For example, the L-STF 206, L-LTF 208, and L-SIG 210 may be modulated according to a binary phase shift keying (BPSK) modulation scheme. The payload 204 may be modulated according to a BPSK modulation scheme, a quadrature BPSK (Q-BPSK) modulation scheme, a quadrature amplitude modulation (QAM) modulation scheme, or another suitable modulation scheme. The payload 204 may include a PSDU that contains a data field (DATA) 214, which in turn may carry higher layer data in the form of, for example, a media access control (MAC) protocol data unit (MPDU) or an aggregated MPDU (A-MPDU).
[0071] Figure 2B shows Figure 2A an example L-SIG 210 in the PDU 200. The L-SIG 210 includes a data rate field 222, a reserved (R) bit 224, a length field 226, a parity (P) bit 228, and a tail field 230. The data rate field 222 indicates the data rate (note that the data rate indicated in the data rate field 212 may not be the actual data rate of the data carried in the payload 204). The length field 226 indicates the packet length, for example, in symbols or bytes. The parity bit 228 may be used to detect bit errors. The tail field 230 includes tail bits that may be used by the receiving device to terminate the operation of a decoder (e.g., a Viterbi decoder). The receiving device may use the data rate and length indicated in the data rate field 222 and the length field 226 to determine the packet duration, for example, in microseconds (μs) or other time units.
[0072] Figure 3A shows an example PPDU 300 that can be used for wireless communication between an AP and one or more STAs. The PPDU 300 may be used for SU, OFDMA, or MU-MIMO transmissions. The PPDU 300 may be formatted as a high-efficiency (HE) WLAN PPDU according to the IEEE 802.11ax amendment to the IEEE 802.11 wireless communication protocol standard. The PPDU 300 includes a PHY preamble that includes a legacy portion 302 and a non-legacy portion 304. The PPDU 300 may further include a PHY payload 306 (e.g., in the form of a PSDU that includes a data field 324) after the preamble.
[0073] The legacy portion 302 of the preamble includes an L-STF 308, an L-LTF 310, and an L-SIG 312. The non-legacy portion 304 includes a repetition of the L-SIG (RL-SIG) 314, a first HE signal field (HE-SIG-A) 316, an HE short training field (HE-STF) 320, and one or more HE long training fields (or symbols) (HE-LTF) 322. For OFDMA or MU-MIMO communications, the second portion 304 further includes a second HE signal field (HE-SIG-B) 318 that is encoded separately from the HE-SIG-A 316. The HE-STF 320 can be used for timing and frequency tracking and AGC, and the HE-LTF 322 can be used for more refined channel estimation. Similar to the L-STF 308, L-LTF 310, and L-SIG 312, in instances involving the use of bonded channels, the information in the RL-SIG 314 and HE-SIG-A 316 can be replicated and transmitted in each component 20 MHz channel. In contrast, the content in the HE-SIG-B 318 can be unique for each 20 MHz channel and the target specific STA 104.
[0074] The RL-SIG 314 can indicate to the HE-compliant STA 104 that the PPDU 300 is an HE PPDU. The AP 102 can use the HE-SIG-A 316 to identify multiple STAs 104 and inform the multiple STAs 104 that the AP has scheduled UL or DL resources for them. For example, the HE-SIG-A 316 can include a resource allocation subfield that indicates the resource allocation for the identified STAs 104. The HE-SIG-A 316 can be decoded by each HE-compliant STA 104 served by the AP 102. For MU transmissions, the HE-SIG-A 316 further includes information that can be used by each identified STA 104 to decode the associated HE-SIG-B 318. For example, the HE-SIG-A 316 can indicate the frame format (including the location and length of the HE-SIG-B 318), the available channel bandwidth, and the modulation and coding scheme (MCS), among other examples. The HE-SIG-A 316 can also include HE WLAN signaling information that can be used by STAs 104 other than the identified STAs 104.
[0075] The HE-SIG-B 318 can carry STA-dependent scheduling information, such as, for example, an MCS value that is STA-dependent (or "user-dependent") and RU allocation information that is STA-dependent. In the context of DL MU-OFDMA, such information enables the corresponding STA 104 to identify and decode the corresponding resource units (RUs) in the associated data field 324. Each HE-SIG-B 318 includes a common field and at least one STA-dependent field. The common field can indicate the RU allocation for multiple STAs 104 (including RU assignments in the frequency domain), indicate which RUs are allocated for MU-MIMO transmission and which RUs correspond to MU-OFDMA transmission, and the number of users in the allocation and other examples. The common field can be encoded with common bits, CRC bits, and tail bits. The user-dependent field is assigned to a specific STA 104 and can be used to schedule a specific RU and indicate the scheduling to other WLAN devices. Each user-dependent field can include a plurality of user block fields. Each user block field can include two user fields that contain information for two corresponding STAs to decode the corresponding RU payloads in the data field 324.
[0076] Figure 3B Another example PPDU 350 that can be used for wireless communication between an AP and one or more STAs is shown. The PPDU 350 can be used for SU, OFDMA, or MU-MIMO transmission. The PPDU 350 can be formatted as an extremely high throughput (EHT) WLAN PPDU according to the IEEE 802.11be amendment to the IEEE 802.11 wireless communication protocol standard, or it can be formatted as a PPDU of any future (post-EHT) version that follows a new wireless communication protocol (following a future IEEE 802.11 wireless communication protocol standard or other wireless communication standards). The PPDU 350 includes a PHY preamble that includes a legacy portion 352 and a non-legacy portion 354. The PPDU 350 can further include a PHY payload 356 (e.g., in the form of a PSDU that includes a data field 374) after the preamble.
[0077] The legacy portion 352 of the preamble includes an L-STF 358, an L-LTF 360, and an L-SIG 362. The non-legacy portion 354 of the preamble includes an RL-SIG 364 and a plurality of wireless communication protocol version-related signal fields following the RL-SIG 364. For example, the non-legacy portion 354 may include a common signal field 366 (referred to herein as "U-SIG 366") and an EHT signal field 368 (referred to herein as "EHT-SIG 368"). One or both of the U-SIG 366 and the EHT-SIG 368 may be configured to carry version-related information for other wireless communication protocol versions other than EHT and carry such version-related information. The non-legacy portion 354 further includes an additional short training field 370 (referred to herein as "EHT-STF 370", but may also be configured to carry version-related information for other wireless communication protocol versions other than EHT and carry such version-related information) and one or more additional long training fields 372 (referred to herein as "EHT-LTF 372", but they may be configured to carry version-related information for other wireless communication protocol versions other than EHT and carry such version-related information). The EHT-STF 370 may be used for timing and frequency tracking and AGC, and the EHT-LTF 372 may be used for more refined channel estimation. Similar to the L-STF 358, the L-LTF 360, and the L-SIG 362, in instances involving the use of bonded channels, the information in the U-SIG 366 and the EHT-SIG 368 may be replicated and transmitted in each component 20 MHz channel. In some implementations, the EHT-SIG 368 may additionally or alternatively carry information different from the information carried in the primary 20 MHz channel in one or more non-primary 20 MHz channels.
[0078] The EHT-SIG 368 may include one or more jointly encoded symbols and may be encoded in a block different from the block in which the U-SIG 366 is encoded. The EHT-SIG 368 may be used by the AP to identify multiple STAs 104 and notify the multiple STAs 104 that the AP has scheduled UL or DL resources for them. The EHT-SIG 368 may be decoded by each compatible STA 104 served by the AP 102. The EHT-SIG 368 may generally be used by the receiving device to interpret the bits in the data field 374. For example, the EHT-SIG 368 may include RU allocation information, spatial stream configuration information, and per-user signaling information (such as MCS) and other examples. The EHT-SIG 368 may further include a cyclic redundancy check (CRC) (e.g., 4 bits) and a tail (e.g., 6 bits) that may be used for a binary convolutional code (BCC). In some implementations, the EHT-SIG 368 may include one or more code blocks each containing a CRC and a tail. In some aspects, each code block may be encoded separately.
[0079] The EHT-SIG 368 may carry STA-specific scheduling information, such as, for example, user-specific MCS values and user-specific RU allocation information. The EHT-SIG 368 may generally be used by the receiving device to interpret the bits in the data field 374. In the context of DL MU-OFDMA, such information enables the corresponding STA 104 to identify and decode the corresponding RU in the associated data field 374. Each EHT-SIG 368 may include a common field and at least one user-specific field. The common field may indicate the RU distribution for multiple STAs 104, indicate the RU assignment in the frequency domain, indicate which RUs are allocated for MU-MIMO transmission and which RUs correspond to MU-OFDMA transmission, and the number of users in the assignment and other examples. The common field may be encoded with common bits, CRC bits, and tail bits. The user-specific field is assigned to a specific STA 104 and may be used to schedule a specific RU and indicate the scheduling to other WLAN devices. Each user-specific field may include a plurality of user block fields. Each user block field may include, for example, two user fields that contain information for two corresponding STAs to decode their respective RU payloads.
[0080] The presence of RL-SIG 364 and U-SIG 366 may indicate to an EHT or future version-compatible STA 104 that the PPDU 350 is an EHT PPDU or any future (post-EHT) version of a PPDU that follows a new wireless communication protocol (following future IEEE 802.11 wireless communication protocol standards). For example, U-SIG 366 may be used by a receiving device to interpret bits in one or more of the EHT-SIG 368 or the data field 374.
[0081] As described above, the AP 102 and STA 104 may support multi-user (MU) communication; that is, concurrent transmission from one device to each of multiple devices (e.g., multiple simultaneous downlink (DL) communications from the AP 102 to the respective STAs 104), or concurrent transmission from multiple devices to a single device (e.g., multiple simultaneous uplink (UL) transmissions from the respective STAs 104 to the AP 102). To support MU transmission, the AP 102 and STA 104 may utilize multi-user multiple-input multiple-output (MU-MIMO) and multi-user orthogonal frequency division multiple access (MU-OFDMA) techniques.
[0082] In a MU-OFDMA scheme, the available spectrum of a wireless channel may be divided into multiple resource units (RUs), each including multiple frequency subcarriers (also referred to as "tones"). Different RUs may be allocated or assigned by the AP 102 to different STAs 104 at a particular time. The size and distribution of the RUs may be referred to as RU allocation. In some implementations, RUs may be allocated in 2 MHz increments, and thus, the smallest RU may include 26 tones comprising 24 data tones and 2 pilot tones. Thus, in a 20 MHz channel, up to 9 RUs (such as 2 MHz, 26-tone RUs) may be allocated (since some tones are reserved for other purposes). Similarly, in a 160 MHz channel, up to 74 RUs may be allocated. Larger RUs of 52 tones, 106 tones, 242 tones, 484 tones, and 996 tones may also be allocated. Adjacent RUs may be separated by null subcarriers (such as the DC subcarrier), e.g., to reduce interference between adjacent RUs, reduce receiver DC offset, and avoid transmit center frequency leakage.
[0083] For UL MU transmission, the AP 102 may transmit a trigger frame to initiate and synchronize UL MU-OFDMA or UL MU-MIMO transmissions from multiple STAs 104 to the AP 102. Such a trigger frame can thus enable multiple STAs 104 to concurrently send UL traffic to the AP 102 in time. The trigger frame can address one or more STAs 104 by means of a corresponding association identifier (AID), and one or more resource units (RUs) can be assigned to each AID (and thus to each STA 104), which can be used to send UL traffic to the AP 102. The AP may also specify one or more random access (RA) RUs that unscheduled STAs 104 can contend for.
[0084] Access to the shared wireless medium is generally controlled by the distributed coordination function (DCF). With DCF, there is generally no centralized master device that allocates the time and frequency resources of the shared wireless medium. Instead, before a wireless communication device (such as the AP 102 or an STA 104) is permitted to transmit data, the wireless communication device must wait for a specific time and then contend for access to the wireless medium. In some implementations, the wireless communication device may be configured to implement DCF by using carrier sense multiple access with collision avoidance (CSMA / CA) techniques and timing intervals. Before transmitting data, the wireless communication device may perform a clear channel assessment (CCA) and determine that the appropriate wireless channel is idle. CCA includes physical (PHY-level) carrier sensing and virtual (MAC-level) carrier sensing. Physical carrier sensing is accomplished via measurement of the received signal strength of a valid frame, which is then compared with a threshold to determine whether the channel is busy. For example, if the received signal strength of the detected preamble is higher than the threshold, the medium is considered busy. Physical carrier sensing also includes energy detection. Energy detection involves measuring the total energy received by the wireless communication device regardless of whether the received signal represents a valid frame. If the detected total energy is higher than the threshold, the medium is considered busy. Virtual carrier sensing is accomplished via use of the network allocation vector (NAV), which is an indicator of the time when the medium will next likely become idle. The NAV is reset each time a valid frame not addressed to the wireless communication device is received. The NAV effectively serves as the time duration that must elapse before the wireless communication device can contend for access, even in the absence of detected symbols or even if the detected energy is below the relevant threshold.
[0085] As described above, DCF is implemented by using time intervals. These time intervals include slot time (or "slot interval") and inter-frame space (IFS). Slot time is the basic timing unit and can be determined based on one or more of the transmit-receive turnaround time, channel sensing time, propagation delay, and MAC processing time. The measurement of channel sensing is performed for each slot. All transmissions can start at the slot boundary. There are different variants of IFS, including short IFS (SIFS), distributed IFS (DIFS), extended IFS (EIFS), and arbitration IFS (AIFS). For example, DIFS can be defined as the sum of SIFS and twice the slot time. The values of slot time and IFS can be provided by appropriate standard specifications, such as a standard in the IEEE 802.11 wireless communication protocol standard family (such as the standard defined by the IEEE 802.11-2016 specification or its amendments, including but not limited to 802.11ay, 802.11ax, 802.11az, 802.11ba, and 802.11be).
[0086] When the NAV reaches 0, the wireless communication device performs physical carrier sensing. If the channel remains idle within the appropriate IFS (e.g., DIFS), the wireless communication device initiates a backoff timer, which represents the time duration for which the device must sense the medium as idle before being allowed to transmit. Each time the medium is sensed as idle during the corresponding slot interval, the backoff timer is decremented by one slot. If the channel remains idle until the backoff timer expires, the wireless communication device becomes the holder (or "owner") of a transmission opportunity (TXOP) and can start transmitting. TXOP is the time duration during which the wireless communication device can transmit frames on the channel after it has won the contention for the wireless medium. On the other hand, if one or more carrier sensing mechanisms indicate that the channel is busy, the MAC controller in the wireless communication device will not permit transmission.
[0087] Each time a wireless communication device generates a new PPDU for transmission in a new TXOP, the wireless communication device randomly selects a new backoff timer duration. The available distribution of numbers that can be randomly selected for the backoff timer is referred to as the contention window (CW). When the backoff timer expires, if the wireless communication device transmits a PPDU but the medium is still busy, there may be a collision. Additionally, if there is too much additional energy on the wireless channel, resulting in a poor signal-to-noise ratio (SNR), the communication may be corrupted or otherwise not successfully received. In such instances, the wireless communication device may not receive an acknowledgment communication for the transmitted PDU within a timeout interval. The MAC may then exponentially increase the CW (e.g., double it) and randomly select a new backoff timer duration from the CW before each retransmission attempt of the PPDU. Before each retransmission attempt, the wireless communication device may wait for the duration of the DIFS and, if the medium remains idle, proceed to initiate a new backoff timer. There are different CWs and TXOP durations for each of the following four access categories (ACs): voice (AC_VO), video (AC_VI), background (AC_BK), and best effort (AC_BE). This enables prioritization of specific types of traffic in the network.
[0088] Figure 4 A block diagram of an example wireless communication device 400 is shown. In some implementations, the wireless communication device 400 can be an example of a device for a STA (such as one of the STAs 104 described above with reference to Figure 1 as described). In some implementations, the wireless communication device 400 can be an example of a device for an AP (such as the AP 102 described above with reference to Figure 1 as described). The wireless communication device 400 is capable of transmitting and receiving wireless communications, for example, in the form of wireless packets. For example, the wireless communication device can be configured to: transmit and receive physical layer convergence protocol (PLCP) protocol data units (PPDUs) and media access control (MAC) protocol data units (MPDUs) in the form of packets that comply with the IEEE 802.11 wireless communication protocol standard (such as the standard defined by the IEEE 802.11-2016 specification or its amendments, including but not limited to 802.11ay, 802.11ax, 802.11az, 802.11ba, and 802.11be).
[0089] The wireless communication device 400 can be or can include a chip, a system-on-chip (SoC), a chipset, a package, or a device that includes one or more modems 402 (e.g., a Wi-Fi (compliant with IEEE 802.11) modem). In some implementations, one or more modems 402 (collectively referred to as "modems 402") additionally include a WWAN modem (e.g., a 3GPP 4G LTE or 5G compliant modem). In some implementations, the wireless communication device 400 also includes one or more processors, processing blocks, or processing elements 404 (collectively referred to as "processors 404") coupled to the modem 402. In some implementations, the wireless communication device 400 additionally includes one or more radios 406 (collectively referred to as "radios 406") coupled to the modem 402. In some implementations, the wireless communication device 400 further includes one or more memory blocks or elements 408 (collectively referred to as "memory 408") coupled to the processor 404 or the modem 402.
[0090] The modem 402 can include intelligent hardware blocks or devices (such as, for example, an application specific integrated circuit (ASIC)). The modem 402 is generally configured to implement the PHY layer and, in some implementations, also implement a part of the MAC layer (e.g., the hardware part of the MAC layer). For example, the modem 402 is configured to modulate packets and output the modulated packets to the radio 406 for transmission over the wireless medium. Similarly, the modem 402 is configured to obtain the modulated packets received by the radio 406 and demodulate these packets to provide demodulated packets. In addition to the modulator and demodulator, the modem 402 may further include digital signal processing (DSP) circuitry, automatic gain control (AGC) circuitry, encoders, decoders, multiplexers, and demultiplexers. For example, when in the transmission mode, the data obtained from the processor 404 can be provided to an encoder that encodes the data to provide encoded bits. Subsequently, the encoded bits can be mapped to several (N SS number) spatial streams for spatial multiplexing or several (N STSspace-time streams for space-time block coding (STBC). The coded bits in each stream may then be mapped (using the selected MCS) to points in a modulation constellation to provide modulated symbols. The modulated symbols in the corresponding spatial or space-time stream may be multiplexed, transformed via an inverse fast Fourier transform (IFFT) block, and then provided to the DSP circuitry (e.g., for Tx windowing and filtering). The digital signal may then be provided to a digital-to-analog converter (DAC). The resulting analog signal may then be provided to an upconverter and ultimately to radio 406. In implementations involving beamforming, the modulated symbols in the corresponding spatial stream are precoded via a steering matrix before being provided to the IFFT block.
[0091] When in the receive mode, the DSP circuitry is configured to acquire a signal including the modulated symbols received from radio 404, e.g., by detecting the presence of the signal and estimating an initial timing and frequency offset. The DSP circuitry is further configured to digitally condition the signal, e.g., using channel (narrowband) filtering and analog impairment conditioning (such as correcting I / Q imbalance), and by applying digital gain to ultimately obtain a narrowband signal. Subsequently, the output of the DSP circuitry may be fed to an AGC, which is configured to determine an appropriate gain using information extracted from the digital signal (e.g., in one or more received training fields). The output of the DSP circuitry is also coupled to a demultiplexer that demultiplexes the modulated symbols when multiple spatial or space-time streams are received. The demultiplexed symbols may be provided to a demodulator, which is configured to extract the symbols from the signal and, e.g., calculate the log-likelihood ratio (LLR) for each bit position of each subcarrier in each spatial stream. The demodulator is coupled to a decoder, which may be configured to process the LLRs to provide decoded bits. The coded bits may then be descrambled and provided to the MAC layer (processor 404) for processing, evaluation, or interpretation.
[0092] The radio 406 generally includes at least one radio frequency (RF) transmitter (or "transmitter chain") and at least one RF receiver (or "receiver chain"), which may be combined into one or more transceivers. For example, each of the RF transmitter and receiver may include various analog circuitry, including at least one power amplifier (PA) and at least one low noise amplifier (LNA), respectively. The RF transmitter and receiver may in turn be coupled to one or more antennas. For example, in some implementations, the wireless communication device 400 may include or be coupled to multiple transmit antennas (each having a corresponding transmit chain) and multiple receive antennas (each having a corresponding receive chain). The symbols output from the modem 402 are provided to the radio 406, which then transmits these symbols via the coupled antennas. Similarly, the symbols received via the antennas are acquired by the radio 406, which then provides these symbols to the modem 402.
[0093] The processor 404 may include intelligent hardware blocks or devices designed to perform the functions described herein, such as, by way of example, processing cores, processing blocks, central processing units (CPUs), microprocessors, microcontrollers, digital signal processors (DSPs), application specific integrated circuits (ASICs), programmable logic devices (PLDs) (such as field programmable gate arrays (FPGAs)), discrete gate or transistor logic, discrete hardware components, or any combination thereof. The processor 404 processes the information received through the radio 406 and the modem 402, and processes the information to be output through the modem 402 and the radio 406 for transmission through the wireless medium. For example, the processor 404 may implement the control plane and at least a portion of the MAC layer, which is configured to perform various operations related to the generation, transmission, reception, and processing of MPDUs, frames, or packets. In some implementations, the MAC layer is configured to: generate MPDUs to be provided to the PHY layer for encoding, and receive decoded information bits from the PHY layer for processing as MPDUs. The MAC layer may be further configured to allocate time and frequency resources, for example, for OFDMA, or other operations or techniques. In some implementations, the processor 404 may generally control the modem 402 to cause the modem to perform the various operations described above.
[0094] Memory 408 may include a tangible storage medium, such as random access memory (RAM) or read-only memory (ROM) or a combination thereof. Memory 408 may also store non-transitory processor or computer-executable software (SW) code containing instructions that, when executed by processor 404, cause the processor to perform the various operations for wireless communication described herein, including generation, transmission, reception, and interpretation of MPDUs, frames, or packets. For example, the various functions of the various components disclosed herein or the various blocks or steps of the methods, operations, processes, or algorithms disclosed herein may be implemented as one or more modules of one or more computer programs.
[0095] FIG. KKKA shows a block diagram of an example AP KKK02. For example, AP KKK02 may be an example implementation of AP102 described with reference to Figure 1 AP KKK02 includes a wireless communication device (WCD) KKK10 (although AP KKK02 itself may generally also be referred to as a wireless communication device, as used herein). For example, wireless communication device KKK10 may be an example implementation of wireless communication device 400 described with reference to Figure 4 AP KKK02 also includes a plurality of antennas KKK20 coupled to wireless communication device KKK10 to transmit and receive wireless communication. In some implementations, AP KKK02 additionally includes an application processor KKK30 coupled to wireless communication device KKK10, and a memory KKK40 coupled to application processor KKK30. AP KKK02 further includes at least one external network interface KKK50 that enables AP KKK02 to communicate with a core network or a backhaul network to obtain access to an external network including the Internet. For example, external network interface KKK50 may include one or both of a wired (e.g., Ethernet) network interface and a wireless network interface (such as a WWAN interface). Components among the foregoing components may communicate directly or indirectly with other components among these components over at least one bus. AP KKK02 further includes a housing that encloses wireless communication device KKK10, application processor KKK30, memory KKK40 and encloses at least portions of antennas KKK20 and external network interface KKK50.
[0096] FIG. KKKB shows a block diagram of an example STA KKK04. For example, STA KKK04 may be an example implementation of STA 104 described with reference to Figure 1 STA KKK04 includes a wireless communication device KKK15 (although STA KKK04 itself may generally also be referred to as a wireless communication device, as used herein). For example, wireless communication device KKK15 may be an example implementation of wireless communication device 400 described with reference to Figure 4Example implementation of the wireless communication device 400 described. The STA KKK04 also includes one or more antennas KKK25 coupled to the wireless communication device KKK15 to transmit and receive wireless communications. The STA KKK04 additionally includes an application processor KKK35 coupled to the wireless communication device KKK15, and a memory KKK45 coupled to the application processor KKK35. In some implementations, the STA KKK04 further includes a user interface (UI) KKK55 (such as a touch screen or a keyboard) and a display KKK65, which may be integrated with the UI KKK55 to form a touch screen display. In some implementations, the STA KKK04 may further include one or more sensors KKK75 (for example, such as one or more inertial sensors, accelerometers, temperature sensors, pressure sensors, or altitude sensors). Components among the foregoing components may communicate directly or indirectly with other components among these components over at least one bus. The STA KKK04 further includes a housing that encloses the wireless communication device KKK 15, the application processor KKK35, the memory KKK45, and encloses at least portions of the antenna KKK25, the UI KKK55, and the display KKK65.
[0097] Various aspects generally relate to sharing resources of a wireless medium. Particular implementations more specifically relate to coordinated AP (CAP) TDMA (CAP-TDMA) or CAP OFDMA (CAP-OFDMA) techniques for sharing time or frequency resources of a transmission opportunity (TXOP). Particular implementations disclosed herein also relate to NAV rules for use by APs and STAs participating in CAP-TDMA or CAP-OFDMA transmissions. According to such techniques, a coordinated AP that wins contention for and obtains access to the wireless medium for the duration of a TXOP may share the time or frequency resources of the coordinated AP with other selected APs. To share its time or frequency resources, the winning AP may divide the TXOP into multiple time segments or frequency segments, each time segment or frequency segment including corresponding time or frequency resources representing a portion of the TXOP, and allocate the time or frequency segments to itself or to one of the selected APs.
[0098] Specific implementations of the subject matter described in this disclosure can be implemented to achieve one or more of the following potential advantages. In some implementations, the described techniques can be used to reduce latency because a TXOP owner can share a TXOP with other APs, and as such, these other APs may not need to wait to win contention for the TXOP in order to be able to transmit and receive data, as they would under conventional CSMA / CA or EDCA techniques. Additionally or alternatively, some implementations can achieve improvements in throughput fairness. Various implementations can achieve these and other advantages without requiring the TXOP owner or other APs selected to participate in the TXOP to be aware of STAs associated with other BSSs (OBSSs), without requiring a pre-assigned or dedicated master AP or group of pre-assigned APs, and without requiring backhaul coordination between the APs participating in the TXOP.
[0099] Figure 6 A flow chart illustrating an example process 600 for coordinated wireless communication supporting resource sharing according to some implementations is shown. The operations of process 600 may be implemented by an AP or components thereof as described herein. For example, process 600 may be performed by a wireless communication device (such as the one described above with reference to FIG. Figure 4 In some implementations, process 600 may be performed by an AP (such as the wireless communication device 400 described above). Figure 1 and 5A 1 and 502 described herein).
[0100] In block 602, a wireless communication device (hereinafter referred to as a first AP or TXOP owner) obtains a TXOP for wireless communication via a wireless channel. The TXOP owner manages a BSS (hereinafter referred to as a first AP or TXOP owner) including one or more wireless STAs. Figure 6 6. The TXOP owner selects one or more other wireless APs to participate in the TXOP. In block 606, the first AP transmits a first packet including scheduling information for the TXOP to the one or more other wireless APs. The scheduling information indicates multiple parts of the TXOP. The scheduling information also includes multiple AP identifiers (APIDs) associated with the one or more wireless APs. The scheduling information further indicates which one or more parts of the transmission opportunity are allocated to each corresponding wireless AP in the one or more wireless APs for communication with their respective BSSs. In block 608, the TXOP owner transmits data to one or more wireless stations in its BSS or triggers data transmission from the one or more wireless stations in the part of the transmission opportunity allocated to itself by the TXOP owner.
[0101] In some implementations, each of the multiple portions of the transmission opportunity includes a set of time resources that do not overlap with any time resources of any other of the multiple portions. In such implementations, the scheduling information may include: an indication of the time resources among the multiple time resources of the TXOP that are associated with each portion of the TXOP. For example, the scheduling information may include an indication of the time segmentation of the TXOP (such as an indication of one or more time slots or sets of symbol periods associated with each portion of the TXOP), such as for multi-user (MU) coordinated access point (CAP) time division multiple access (CAP-TDMA). In some other implementations, each of the multiple portions of the transmission opportunity includes a set of frequency resources that do not overlap with any frequency resources of any other of the multiple portions. In such implementations, the scheduling information may include: an indication of the frequency resources among the multiple frequency resources of the TXOP that are associated with each portion of the TXOP. For example, the scheduling information may include: an indication of the bandwidth portion of the wireless channel (such as an indication of one or more sub-channels or resource units (RUs) associated with each portion of the TXOP), such as for MU CAP orthogonal frequency division multiple access (CAP-OFDMA).
[0102] Figures 7A to 7D A timing diagram illustrating an example of a communication transmission supporting resource sharing in accordance with some implementations is shown. For example, Figures 7A to 7D the timing diagram shown in Figure 6 may illustrate aspects of process 600 of Figures 7A to 7D In the example illustrated in Figures 7A to 7D the TXOP owner (AP1) obtains TXOP 702 (at block 602) and shares multiple time portions or segments 716 of the TXOP 702 with multiple other coordinated APs (AP2, AP3, and AP4). As further illustrated, in some implementations of process 600, TXOP 702 includes multiple phases or epochs, which include a scheduling allocation phase 706 and a data transmission phase 708 after the scheduling allocation phase 706. Although an example of a CAP TDMA implementation is illustrated, aspects of the present disclosure are also applicable to CAP OFDMA implementations.
[0103] In some implementations, to obtain the TXOP 702 (at block 602), the TXOP owner AP1 uses technologies such as CSMA / CA and Enhanced Distributed Channel Access (EDCA) to contend for access to the wireless medium on one or more sub-channels including the primary operating channel (e.g., the primary 20 MHz channel and one or more secondary 20 MHz, 40 MHz, 80 MHz, or 160 MHz channels). For a broadband wireless channel (such as a bonded channel formed by bonding the primary channel and one or more secondary channels), the TXOP 702 can be obtained at time t0. For example, the broadband wireless channel can be a 40 MHz, 80 MHz, 160 MHz, or 320 MHz channel.
[0104] In some implementations, to select one or more other coordinated APs to participate in the TXOP 702 (at block 604), the TXOP owner AP1 may optionally perform a TXOP availability indication process during a resource polling phase 704, during which the TXOP owner AP1 learns about the expectations or intentions of other APs to participate in the TXOP 702. For example, Figure 8 FIG. 800 is a flowchart illustrating an example TXOP indication process for announcing the availability of time resources in the TXOP 702. At block 802, at time t1, the TXOP owner AP1 transmits a packet (also referred to herein as a CAP Resource Polling (CRP) packet or frame) 710 to other wireless APs (e.g., other APs in the extended service set (ESS) of the TXOP owner AP1), which packet 710 indicates that the TXOP owner AP1 can share the time resources of the TXOP 702. For example, the TXOP owner AP1 may have previously learned about other neighboring APs in the vicinity of the TXOP owner AP1 based on information in beacons, other management frames, or other packets previously received from other APs (e.g., the previously received CRR 712 (described below)).
[0105] At block 804, after transmitting the CRP frame 710, the TXOP owner AP1 can receive a packet (also referred to herein as a CAP Resource Response (CRR) packet or frame) 712 from each of one or more candidate APs at time t2, which packet 712 indicates the expectation of the corresponding AP to participate in the TXOP 702. In Figure 7A the example illustrated, AP2, AP3, and AP4 are among the candidate APs, and they transmit the respective CRRs 7122, 7123, and 7124 to the TXOP owner AP1. Returning to reference process 600, based on the received CRR 712, the TXOP owner AP1 can then select one or more candidate APs among the candidate APs to participate in the TXOP 702 (at block 604).
[0106] In some implementations, CRP 710 includes at least one trigger frame that is configured to trigger the one or more candidate APs to transmit corresponding CRRs 712. To transmit CRP 710, the TXOP owner AP1 can transmit a PPDU that includes the same CRP trigger frame in each of a plurality of sub-channels of the wireless channel (e.g., in each of a plurality of 20 MHz channels). For example, CRP 710 can include a non-high throughput (non-HT) copy trigger frame in each 20 MHz channel. In this way, other APs do not need to operate on the same primary 20 MHz channel to receive and process CRP 710. In some implementations, the source address field and the BSSID field (e.g., in the MAC header) associated with CRP 710 are set to the MAC address of the TXOP owner AP1, while the destination address field (such as in the MAC header) associated with CRP 710 is set to the broadcast address.
[0107] Each copy trigger frame of CRP 710 can include an indication of the time, frequency, or spatial resources that can be used by each of the plurality of APs that can participate in TXOP 702 to transmit its respective CRR 712. For example, each trigger frame of CRP 710 can include: one or more user information fields for a candidate AP, the one or more user information fields including a respective indication of the time, frequency, or spatial resources that the candidate AP is to use to transmit CRR 712. In some implementations, each user information field can include the respective APID of the corresponding AP. For example, the APID can be the MAC address of the AP, the BSSID associated with the AP, or the BSS color associated with the AP. In some other implementations where the TXOP owner AP1 may not know some or all of the neighboring APs, CRP 710 can include an indication of the random access resources that can be used by the AP to transmit its corresponding CRR 712. Additionally or alternatively, in some implementations, CRP 710 can also include the operation channel information of the TXOP owner AP1 (such as an indication of the center frequency and system bandwidth) so that the corresponding candidate AP can unambiguously derive the frequency resources or spatial resources that are used to transmit its corresponding CRR 712.
[0108] The CRR 712 can be received from these candidate APs in a corresponding trigger-based PPDU using the frequency or spatial resources allocated by CRP 710 in response to CRP 710. For example, CRR 712 can be transmitted via MU OFDMA or MU MIMO techniques and can be received at time t4 after a SIFS duration following CRP 710.
[0109] In some implementations, the TXOP owner AP1 may transmit multiple CRPs 710 on a per-AP sequential basis, with each CRP 710 being transmitted to a corresponding one of these APs. An AP desiring to participate in the TXOP 702 may transmit a CRR 712 before transmitting the next CRP 710 to the next AP in response to receiving a corresponding one of the CRPs 710. For example, each CRP 710 may be a polling frame, and each CRR 712 may be a polling response frame. Such CRPs 710 and CRRs 712 may be transmitted as single-user (SU) transmissions. In some other implementations, the TXOP owner AP1 may transmit a single CRP 710 and subsequently transmit a poll to each AP on a per-AP sequential basis, which solicits a response CRR 712 from the corresponding AP before transmitting the poll to the next AP.
[0110] In some implementations, each of the CRRs 712 may include an indication of the buffer state of the corresponding candidate AP, or the duration or bandwidth of the time resources requested by the corresponding candidate AP. In some such implementations, the TXOP owner AP1 may select the candidate APs to participate in the TXOP 702 (at block 604) based on the indication of the buffer state or the desired time resource duration received in the CRRs 712.
[0111] Additionally or alternatively, in some implementations, the TXOP owner AP1 may already know the desire or willingness of other APs to participate in a TXOP owned (or to be owned in the future) by AP1 when AP1 obtains the current TXOP 702. For example, the TXOP owner AP1 may determine that other APs will participate in the current TXOP 702 based on information previously obtained as a result of a previous execution of the TXOP indication procedure 800 during the resource polling phase 704 of a previous TXOP or based on detecting other transmissions from other APs or their corresponding BSSs. For example, Figures 7B to 7D A timing diagram illustrating an example where the TXOP 702 does not include a resource polling phase 704 is shown. In some such implementations, the TXOP owner AP1 may select the candidate APs to participate in the TXOP 702 (at block 604) before or after obtaining the TXOP 702 (at block 602).
[0112] The TXOP owner AP1 may determine, together with the selection of the APs (at block 604), the amount of time resources to be allocated to each of the selected APs in the TXOP 702. In Figures 7A to 7DIn the example shown, the TXOP owner AP 1 divides the available time resources of the TXOP 702 into multiple time parts or segments 716 (also referred to herein as "TXOP segments 716"), each time part or segment including one or more time resources. For example, each time resource may represent a symbol, a time slot, or another time unit. In some implementations, the TXOP owner AP1 divides the TXOP into equal parts 716, where the number of equal parts 716 is equal to the number of APs sharing the TXOP 702. For example, the TXOP owner AP1 may divide the TXOP 702 into 4 equal parts 716, the TXOP owner AP1 has one part, and each of the selected APs (AP2, AP3, and AP4) has one part. In some other implementations or instances, the TXOP owner AP1 may divide the time resources into unequal parts 716. For example, as Figure 7A explained, the TXOP owner AP1 may select a longer part 7161 of the TXOP 702 for itself, the longer part 7161 including more time resources than the time resources in the other parts 7162, 7163, and 7164 for the respective APs (AP2, AP3, and AP4). In some implementations where the CRR 712 includes an indication of the buffer state or desired time resource duration, the TXOP owner AP1 may allocate time resources to the selected APs based on the corresponding buffer states or requested time resources of the selected APs.
[0113] After selecting the APs (AP2, AP3, and AP4) to participate in the TXOP 702 during the resource polling phase 704, the TXOP owner AP1 then grants, schedules, or otherwise actually allocates the TXOP segments 716 (such as indicating the allocation of the TXOP segments 716) to the selected APs in the scheduling allocation phase 706. For example, at time t3, the TXOP owner AP1 transmits a packet (referred to herein as a CAP scheduling announcement (CSA) packet or frame) 714, the packet 714 including an indication of the TXOP segment 716 allocated to each of the selected APs, the TXOP segment 716 including an indication of the associated time resources that can be used by the respective AP to transmit data to or receive data from one or more corresponding associated wireless STAs in the BSS of the AP during the subsequent data transmission phase 708 of the TXOP 702. For example, the CSA 714 may be transmitted at time t3 after the CRR 712 by a SIFS duration. In some other implementations, the inter-frame interval between the CRR 712 and the CSA 714 may be greater than the SIFS duration. In some implementations, for example, in implementations that do not include the resource polling phase 704 (such as in Figures 7B to 7DIn those implementations shown in [FIG. ], CSA 714 can occur after a random backoff. In some such implementations, the TXOP owner AP1 can reserve the wireless channel by exchanging RTS and CTS frames with the selected APs before the start of the scheduling allocation phase 706 or otherwise before transmitting CSA 714.
[0114] To transmit CSA 714, the TXOP owner AP1 can transmit a PPDU that includes the same CSA trigger frame in each of a plurality of sub-channels of the wireless channel (e.g., in each of a plurality of 20 MHz channels). For example, CSA 714 can include a non-HT duplicate trigger frame in each 20 MHz channel. In this way, the selected APs do not need to operate on the same primary 20 MHz channel to receive and process CSA 714. In some implementations, the source address field and the BSSID field (e.g., in the MAC header) associated with CSA 714 are set to the MAC address of the TXOP owner, while the destination address field (such as in the MAC header) associated with CSA 714 is set to the broadcast address.
[0115] Each duplicate trigger frame of CSA 714 can include an indication of the APID associated with the corresponding AP for each of the selected APs and an indication of the TXOP portion 716 assigned to the corresponding APID, and thus includes an indication of the TXOP portion 716 assigned to the corresponding AP. For example, each trigger frame of CSA 714 can include one or more user information fields for each of the selected APs. In some implementations, each user information field can include the APID of the corresponding AP among the selected APs. For example, the APID can be the MAC address of the AP, the BSSID associated with the AP, or the BSS color associated with the AP. Each user information field can include an indication of the corresponding TXOP portion 716 for the corresponding AP. For example, the user information field can include the start time of the corresponding allocated time resource, such as an indication of the symbol, time slot, or absolute or relative time at which these allocated time resources begin. The user information field can also include the duration of the corresponding allocated time resource (e.g., in symbols, time slots, or milliseconds (ms)).
[0116] Each user information field may further include an indication of frequency resources available for use by the corresponding selected AP during use of the corresponding allocated time resources. For example, the user information field may indicate: one or more subchannels (e.g., one or more 20 MHz channels) or one or more resource units (RUs) that the corresponding AP may use during the corresponding TXOP portion 716. In some implementations or instances, the TXOP owner AP1, and one or more of AP2, AP3, and AP4 may be configured to communicate simultaneously via both CAP TDMA and CAP OFDMA. In other implementations or instances, the CSA 714 may allocate all available frequency resources to each of the selected APs for use during the corresponding TXOP portion 716 of that selected AP. The CSA 714 may also include the operating channel information of the TXOP owner AP1 (such as an indication of the center frequency and system bandwidth) so that the corresponding selected AP can unambiguously deduce the frequency resources or spatial resources to be used in the data transmission phase 708.
[0117] As Figures 7A to 7D further shown, the scheduling allocation phase 706 may additionally include transmitting local scheduling frames 718. As shown, after receiving the CSA 714, the selected APs (AP2, AP3, and AP4) may each transmit packets (referred to herein as CAP scheduling forward (CSF) packets or frames) 7182, 7183, and 7184 to the associated wireless STAs in their respective BSSs at time t4. As Figure 7A further shown, in some implementations, the TXOP owner AP 1 may also transmit a CSF 7181. In some other implementations, such as in the example Figures 7B - 7D illustrated, the TXOP owner AP 1 may not transmit a CSF 718. Each of the CSFs 718 identifies the TXOP portion 716 allocated to the corresponding AP and its associated BSS and may indicate that the corresponding time resources are reserved for use by the corresponding BSS or otherwise allocated to the corresponding BSS.
[0118] In some implementations, CSA 714 includes at least one trigger frame that is configured to trigger the selected APs (AP2, AP3, and AP4) to transmit corresponding CSAs 7182, 7183, and 7184 to their associated BSSs at time t4 (e.g., at time t4 that is SIFS duration after CSA 714). In such implementations, the CSFs 718 transmitted by the selected APs (AP2, AP3, and AP4) can be trigger PPDUs. In such implementations, each of the CSFs 718 is equivalent to other frames. Additionally, each of the CSFs 718 transmitted by the selected APs (AP2, AP3, and AP4) (and also by the TXOP owner AP1 in some examples) can be transmitted simultaneously via some or all of the available frequency resources of the wireless channel. In this way, the CSFs 718 will not interfere with each other destructively, and the STAs that receive the CSFs 718 can correctly decode these CSFs 718. In some implementations, the source address field (e.g., in the MAC header) associated with each of the CSFs 718 is set to the same multicast address or other predefined address associated with the CAP TDMA transmission. STAs that support CAP TDMA can be configured such that when they receive a frame with that multicast address, they decode and parse the corresponding frame. In some implementations, the BSSID field (e.g., in the MAC header) associated with each of the CSFs 718 is set to the BSSID of the TXOP owner AP1. In some such implementations, the destination address field (e.g., in the MAC header) associated with each of the CSFs 718 is set to the same broadcast address.
[0119] In some implementations, each of the CSFs 718 transmitted by the selected APs (AP2, AP3, and AP4) (and in some examples also by the TXOP owner AP1) includes an indication of the APID associated with the corresponding AP for each of the selected APs and an indication of the TXOP portion 716 assigned to the corresponding APID, and thus includes an indication of the TXOP portion 716 assigned to the corresponding AP. For example, each CSF 718 may include one or more user information fields or information elements for the respective selected APs. In some implementations, each user information field or information element may include the APID of the corresponding AP among the selected APs. For example, the APID may be the MAC address of the AP, the BSSID associated with the AP, or the BSS color associated with the AP. Each user information field or information element may include an indication of the corresponding TXOP portion 716 for the corresponding AP. For example, the user information field or information element may include the start time of the respective allocated time resources, such as an indication of the symbol, time slot, or absolute or relative time at which these allocated time resources begin. The user information field or information element may also include the duration of the respective allocated time resources (e.g., in symbols, time slots, or ms).
[0120] Each user information field or information element may further include an indication of the frequency resources available for use by the corresponding selected AP when using the respective allocated time resources. For example, the user information field or information element may indicate one or more subchannels (e.g., one or more 20 MHz channels) or one or more RUs that the corresponding AP may use during the corresponding TXOP portion 716. In some implementations or instances, the TXOP owner AP1, and one or more of AP2, AP3, and AP4 may be configured to communicate simultaneously via CAP TDMA and CAP OFDMA. In other implementations or instances, the CSA 714 may allocate all available frequency resources to each of the selected APs for use during the respective TXOP portion 716 of that selected AP. The CSA 714 may also include the operating channel information of the TXOP owner AP1 (such as an indication of the center frequency and system bandwidth) so that the respective selected APs can unambiguously derive the frequency resources or spatial resources to be used in the data transmission phase 708.
[0121] Because the STAs associated with the selected AP may not be within the range of CSA 714 or may otherwise not be able to receive and process CSA 714, the use of CSA 718 can ensure that the STAs associated with the selected AP are informed of the allocated time (and frequency) resources for their respective BSSs. CSF 718 can also be used to reserve the wireless channel so that OBSS APs and STAs refrain from transmitting for the time duration indicated by CSF 718. In some examples, only during the respective TXOP portion 716 of the TXOP assigned to each of the selected APs (AP2, AP3, or AP4) in the TXOP portion 716 of the data transmission phase 716, the respective AP and the STAs in its BSS need to be awake to transmit or receive wireless communications. In such examples, each of the selected APs and the associated STAs can transition to or remain in a sleep or inactive state during the TXOP portion 716 of the other APs assigned to the APs (AP1, AP2, AP3, or AP4) because the selected AP and the associated STAs do not expect to transmit or receive wireless communications during the TXOP portion 716 of the other APs assigned to the selected AP and their associated BSSs and thus do not need to be awake.
[0122] After the scheduling allocation phase 706, the data transmission phase 708 can begin. As described above, in block 608, the TXOP owner AP1 and the selected APs (AP2, AP3, and AP4) can share the resources of TXOP 702 by dividing the data transmission phase 708 of TXOP 702 into multiple parts or time segments 716 to perform or enable downlink (DL) or uplink (UL) communications with their respective STAs. The CAP TDMA-compatible STAs within the BSSs associated with the selected APs can be configured to be in an active listening mode at least during the TXOP portion 716 assigned to their respective APs.
[0123] For example, as Figure 7A illustrated (and similarly in Figures 7B to 7D(As explained in [0000001]), during the data transfer phase 708, the TXOP owner AP1 can use the time resources allocated to itself and its BSS during the first TXOP part 7161 to start transmitting one or more data communications to or receiving one or more data communications from one or more STAs in its BSS at time t5. For example, the start of the data transfer phase 708 and the data communications therein can start after the transmission of the CSA 714 after a SIFS duration. In some examples, the TXOP owner AP1 can use multi-user (MU) orthogonal frequency division multiple access (OFDMA) or MU multiple-input multiple-output (MIMO) techniques to transmit downlink (DL) data communications (e.g., PPDUs) including data frames to multiple STAs. Additionally or alternatively, the TXOP owner AP1 can use single-user (SU) techniques to transmit data frames. In some such implementations where the TXOP owner AP1 transmits one or more DL data communications, the associated STAs can also use one or more time resources allocated to the TXOP owner AP1 and its BSS in the first TXOP part 7161 to respond with ACK frames (such as block ACK (BA)). Thus, the first TXOP part 7161 allocated to the TXOP owner AP1 may include not only time resources for transmitting DL communications but also sufficient time resources for the associated STAs to transmit ACKs, which can be transmitted after a SIFS duration upon receipt of the DL communications.
[0124] As a supplement or alternative to transmitting DL data communications, the TXOP owner AP1 can also receive one or more uplink (UL) data communications from one or more STAs in its BSS during the first TXOP part 7161. For example, the TXOP owner AP1 can transmit a trigger frame during the first TXOP part 7161, which triggers: UL data communications in the form of MU-PPDUs including multiple data frames from multiple STAs using one or more of MU-OFDMA or MU-MIMO, or UL data communications in the form of corresponding SU PPDUs sequentially from each of one or more single STAs. In some such implementations where the TXOP owner AP1 receives one or more UL data communications, the TXOP owner AP1 can also use one or more time resources allocated to the TXOP owner AP1 and its BSS in the first TXOP part 7161 to respond with ACK frames (such as BA). Thus, the first TXOP part 7161 allocated to the TXOP owner AP1 includes not only time resources for transmitting the trigger frame and receiving UL communications but also time resources for transmitting an ACK, which can be transmitted after a SIFS duration upon receipt of the UL communications.
[0125] In some implementations, before transmitting any communication to any of the associated STAs of the TXOP owner AP1, the TXOP owner AP1 may perform a CCA operation in the beginning portion of its allocated time resource. For example, in some implementations, the TXOP owner AP1 may perform an EDCA operation to determine whether the wireless medium is idle before transmitting any data, trigger, management, or control frame in the first TXOP portion 7161. If the TXOP owner AP1 senses that the wireless medium is idle, the TXOP owner AP1 may start transmitting the communication in the first TXOP portion 7161.
[0126] Similar to the TXOP owner AP1, a second AP (AP2) may use the time resource in the second TXOP portion 7162 allocated to the second AP (AP2) to start transmitting or receiving one or more data communications to or from one or more STAs in its BSS at time t6. Similarly, a third AP (AP3) may use the time resource in the third TXOP portion 7163 allocated to the third AP (AP3) to start transmitting or receiving one or more data communications to or from one or more STAs in its BSS at time t7. Similarly, a fourth AP (AP4) may use the time resource in the fourth TXOP portion 7164 allocated to the fourth AP (AP4) to start transmitting or receiving one or more data communications to or from one or more STAs in its BSS at time t8. STAs compatible with CAP TDMA may be configured to be in an active listening mode at least during the corresponding TXOP portion 716 and such that they can transmit and receive data communications, ACK frames, and trigger frames. In some implementations, there may be a guard (or "non - transmission") interval between adjacent TXOP portions 716 (e.g., for SIFS duration) to buffer and prevent interference that may be caused by overlapping communications that may be due to timing errors.
[0127] Also similar to the TXOP owner AP1, before transmitting any communication to any one of the associated STAs of each of the selected APs, each of the selected APs may perform a CCA operation at the beginning of its corresponding TXOP portion 716. For example, as described above with reference to the TXOP owner AP1, each of the selected APs may perform an EDCA operation to determine whether the wireless medium is idle before transmitting any data, trigger, management, or control frame during its allocated time resource.
[0128] Figure 7CA timing diagram is shown that illustrates an example in which the TXOP owner AP1 additionally transmits a single trigger frame 720 to the selected APs (AP2, AP3, and AP4). The trigger frame 720 can indicate the start of the data transmission phase 708. The trigger frame 720 can also time-synchronize the selected APs, which can ensure that all the APs (AP1, AP2, AP3, and AP4) transmit or receive their respective data communications to or from their respective STAs only within their allocated TXOP portions 716 (so that they do not interfere with each other). For example, in the example illustrated in Figure 7C at the start portion of the data transmission phase 708, after transmitting the CSA 714 and CSF 718, the TXOP owner AP1 transmits a trigger frame (referred to herein as a CAP TXOP Trigger (CTTRIG) frame) 720 to the selected APs at time t3. For example, the TXOP owner AP1 can transmit the trigger frame 720 after a SIFS duration following the CSF 718. In some such implementations, the data communication can start after a SIFS duration following the CTTRIG frame 720.
[0129] Figure 7D A timing diagram is shown that illustrates another example in which, as a supplement or replacement to transmitting a single trigger frame 720 at the start of the data transmission phase 708, the TXOP owner AP1 can transmit a respective trigger frame to the respective APs before or at the start of each TXOP portion 716 allocated to each of the selected APs. For example, after transmitting the CSA 714 and CSF 718, the first TXOP portion 7161 can start at time t3. As described above, during the first TXOP portion 7161, the TXOP owner AP1 transmits or receives data communications to or from the STAs in its BSS. To ensure that all the APs (AP1, AP2, AP3, and AP4) transmit or receive their respective data communications to or from their respective STAs only during the TXOP portions 716 allocated to them (so that they do not interfere with each other), the TXOP owner AP1 can transmit a respective trigger 722 to each of the selected APs (AP1, AP2, AP3, and AP4) before or at the start of the TXOP portion 716 allocated to the respective AP.
[0130] For example, in Figure 7DIn the implementation described, after using the time resources of the first TXOP portion 7161 to transmit data communications to or receive data communications from one or more STAs in the BSS of the TXOP owner AP1, the TXOP owner AP1 transmits a trigger 7222 to the second AP (AP2) at time t4 to indicate the start of the second TXOP portion 7162. For example, the trigger 7222 may trigger the second AP (AP2) to initiate a data communication or otherwise provide an indication to the second AP (AP2) of the start of the time resources allocated to the second AP (AP2). In some implementations, the TXOP owner AP1 transmits the trigger 7222 to the second AP (AP2) at the scheduled start of the second TXOP portion 7162. In some other implementations, the TXOP owner AP1 transmits the trigger 7222 to the second AP (AP2) after a SIFS duration (or other appropriate duration) after the TXOP owner AP1 and its BSS have completed their data communications (including any associated ACKs).
[0131] Similarly, at the scheduled start of the third TXOP portion 7163, or after a SIFS (or other) duration after the second AP (AP2) and its BSS have completed their data communications (including any associated ACKs), the TXOP owner AP1 transmits a trigger 7223 to the third AP (AP3) to trigger the third AP (AP3) to initiate a data communication or otherwise provide an indication to the third AP (AP3) of the start of the time resources allocated to the third AP (AP3). Similarly, at the scheduled start of the fourth TXOP portion 7164, or after a SIFS (or other) duration after the fourth AP (AP4) and its BSS have completed their data communications (including any associated ACKs), the TXOP owner AP1 transmits a trigger 7224 to the fourth AP (AP4) to trigger the fourth AP (AP4) to initiate a data communication or otherwise provide an indication to the fourth AP (AP4) of the start of the time resources allocated to the fourth AP (AP4).
[0132] To reduce overhead, trigger 722 can have a short duration and can include only limited information. In some implementations, each trigger 722 is a modified null data packet (NDP) or a modified clear to send (CTS) frame. In such implementations, the non-legacy signal field of the NDP (e.g., the EHT-SIG field) or the receiver address (RA) field of the CTS frame can indicate to the device that receives the NDP or CTS that the corresponding NDP or CTS is a trigger for CAP-TDMA communication. In some such implementations, for example, to further reduce overhead or complexity, the signal field can include an indication of an index corresponding to the respective TXOP portion 716 instead of an identifier of the respective AP or other identification or allocation information. For example, as described above, by receiving a scheduling assignment in CSA 714, each of the selected APs (AP2, AP3, and AP4) knows its associated allocated TXOP portion 716. Thus, when one of the selected APs receives a trigger 722 with a signal field that indicates an index associated with the TXOP portion 716 allocated to the corresponding AP and decodes it, that AP knows that its corresponding time resource has started and can initiate data communication.
[0133] As described above, trigger 722 can be transmitted according to a schedule determined in the scheduling assignment phase 706 in some examples, and thus, the selected APs can expect to receive the corresponding trigger 722 according to that schedule. However, even if an AP knows the start time of the associated TXOP portion 716, it may still wait to receive trigger 722 before transmitting a communication (such as a DL data communication or a trigger frame for triggering UL data communication from an associated STA). In some other examples, the use of trigger 722 also enables the TXOP owner AP1 to reclaim or otherwise utilize the remaining time resources not used by the selected APs (AP2, AP3, or AP4) in their respective TXOP portions 716. In some examples, the use of trigger 722 enables the TXOP owner AP1 to reallocate unused resources or to dynamically adjust the start time of the time resources allocated to the corresponding selected APs.
[0134] For example, the associated STAs of the third AP (AP3) and its BSS may have completed their data communication (and transmitted or received any associated ACK) before the scheduled end of the TXOP portion 7163 assigned to AP3 and its BSS. In some examples, the TXOP owner AP1 may fill the remaining time resources originally allocated for the TXOP portion 7163 with null data, for example, to maintain control of the channel by ensuring that no OBSS outside the selected AP hears the channel as clear and starts transmitting. However, in some other examples, in order not to waste the remaining time resources originally allocated for the TXOP portion 7163, the TXOP owner AP1 may use these remaining time resources for additional data communication with its BSS. In some other examples, the TXOP owner AP1 may reallocate the remaining time resources to another selected AP among the selected APs, and transmit a trigger 722 to the other selected AP to initiate data communication with the BSS of the other selected AP (and in some cases, even if the other selected AP is also allocated time resources in another portion of the TXOP portion 716). In some other examples, the TXOP owner AP1 may transmit the trigger 722 to AP4 earlier than the original scheduled start of the TXOP portion 7164 assigned to the next AP among the selected APs (e.g., the fourth AP (AP4)).
[0135] In some such dynamic implementations, the STAs in the selected APs (AP2, AP3, and AP4) and their associated BSSs may be configured to: remain awake throughout the duration of the data transmission phase 708 so that they can listen for the corresponding trigger 722 in the trigger 722 and perform an action in response to the trigger 722. In contrast, in the absence of dynamic allocation (or reallocation), the STAs in the selected APs (AP2, AP3, and AP4) and their associated BSSs may transition to or remain in a sleep or inactive state to reduce power consumption until the scheduled start of the time resources allocated to the corresponding AP.
[0136] In order for the TXOP owner AP1 to utilize any remaining unused time resources originally allocated to the selected AP (AP2, AP3, or AP4), the TXOP owner AP1 needs to identify instances in which the selected AP (AP2, AP3, or AP4) and its corresponding BSS have completed or otherwise terminated their transmissions. The TXOP owner AP1 can identify when one of the APs (AP2, AP3, or AP4) and its associated BSS has completed communication by decoding the preamble of the data communication transmitted by the corresponding AP. For example, the TXOP owner AP1 can determine the end of the data communication based on decoding the length and data rate fields in the legacy portion of the preamble, or based on decoding the TXOP duration field in a non-legacy signal field (such as the HE-SIG-A or EHT-SIG field).
[0137] As described above, before transmitting any communication to any of the associated STAs of the APs (AP1, AP2, AP3, and AP4), each of the APs (AP1, AP2, AP3, and AP4) can perform a CCA operation at the start of its corresponding TXOP portion 716. For example, each AP can perform an EDCA operation to determine whether the wireless medium is idle before transmitting any data, trigger, management, or control frames during its allocated TXOP portion 716. In some implementations, if one of the coordinated APs senses energy during its corresponding TXOP portion 716, the AP can defer transmission until it senses that the wireless channel is clear, at which point the AP can immediately initiate data communication with its BSS without contention. In some implementations, one or more parameters for carrier sensing can also be indicated in the trigger 722.
[0138] As described above, the TXOP owner AP1 can allocate all of the frequency resources of a wireless channel or a subset thereof to each of the selected APs for use during their respective TXOP portions 716. In some examples where the selected APs do not use all of the frequency resources of the full wireless channel (e.g., because the selected AP is allocated fewer frequency resources than all of the frequency resources, or because it otherwise determines to use only a subset of the frequency resources), there is a possibility that an OBSS AP or STA will contend for the unused frequency resources and determine that the wireless channel is clear. In some implementations, to mitigate the possibility of an OBSS device transmitting during a TXOP portion 716, each of the coordinated APs (AP1, AP2, AP3, and AP4) can transmit a CTS-to-Self frame at the start of its allocated time resource to reserve the medium. The CTS-to-Self frame can be replicated on each 20 MHz portion of the wireless channel. Additionally or alternatively, the TXOP owner AP1 can schedule or otherwise allocate the TXOP portions 716 such that they are in order of decreasing amounts of frequency resources. In other words, the coordinated AP that will perform data communication with the maximum bandwidth is the first AP. For example, assume that both of the coordinated APs (AP1 and AP2) want to transmit on an 80 MHz channel, AP3 wants to transmit on a 40 MHz channel, and AP4 wants to transmit on a 20 MHz channel. Such an ordering will minimize the chance of OBSS interference.
[0139] Figure 9 FIG. 900 is a flow diagram illustrating an example process 900 for supporting coordinated wireless communication for resource sharing according to some implementations. The operations of process 900 may be implemented by an AP or components thereof described herein. For example, process 900 may be performed by a wireless communication device such as the wireless communication device 400 described above with reference to Figure 4 In some implementations, process 900 may be performed by an AP such as one of the APs 102 and 502 described above with reference to Figure 1 and 5A respectively. The AP may manage a BSS that includes one or more wireless STAs.
[0140] In some implementations, at block 902, the wireless communication device receives a first packet from a wireless AP associated with another BSS. The first packet includes scheduling information for a TXOP obtained by the wireless AP associated with the other BSS. For example, the first packet may be a CSA, such as the CSA 714 described with reference to Figures 7A to 7D In some examples, the wireless communication device may be or may operate as the selected AP AP2 (and will be referred to below with reference to Figure 9The description is referred to as AP2), and the wireless AP associated with another BSS can be the TXOP owner AP1. Although process 900 is described from the perspective of AP2, the operations of process 900 are similarly performed by other selected APs (AP3 and AP4).
[0141] As described above, the scheduling information indicates multiple portions 716 of the TXOP 702. The scheduling information also includes a plurality of APIDs associated with the selected APs (AP2, AP3, and AP4, and in some examples also the TXOP owner AP1). The scheduling information further indicates which one or more portions 716 of the TXOP 702 are assigned to each respective wireless AP for communication with its respective BSS.
[0142] In block 904, AP2 determines that the scheduling information includes an APID associated with AP2 (hereinafter referred to as APID2), and APID2 is associated with the TXOP portion 7162 of the multiple portions 716 of the TXOP 702 that is assigned to AP2. In block 906, in response to receiving the CSA 714 and based on the determination that the scheduling information includes APID2, AP2 transmits a second packet to one or more wireless STAs in its BSS, the second packet including at least a portion of the scheduling information, and at least a portion of the scheduling message includes a plurality of APIDs and an indication of the TXOP portion 716 assigned to the respective AP. For example, the second packet can be a CSF, such as the CSF 7182 described with reference to Figures 7A to 7D In block 908, AP2 can transmit data to one or more wireless STAs in its BSS or trigger the transmission of data from the one or more wireless STAs in the TXOP portion 7162 assigned to AP2 based on the scheduling information.
[0143] As described above with reference to Figures 7A to 7D In some CAP TDMA implementations, each portion 716 of the multiple portions 716 of the TXOP 702 corresponds to a time segment including a set of time resources (such as non-overlapping time slots or symbols) that do not overlap with any time resources of any other of the multiple portions. In some other CAP OFDMA implementations, each portion of the multiple portions of the TXOP corresponds to a bandwidth segment including a set of frequency resources (such as non-overlapping subchannels or RUs) that do not overlap with any frequency resources of any other of the multiple portions.
[0144] In some implementations, each of the CSFs 718 includes a duration field indicating the duration of the TXOP 702. For example, the duration field can be the duration field in the L-SIG or the TXOP duration field in the MAC header. In some implementations, the CSA 714 includes a trigger frame configured to trigger the AP2 to transmit the CSF 7182 based on including the APID2.
[0145] In some implementations, the CSA 714 also includes a duration field indicating the duration of the TXOP 702. In some implementations, based on determining that the scheduling information includes the APID2, the AP2 suppresses updating the inter-BSS NAV. In such examples, transmitting data to or triggering transmission of data from one or more wireless stations in the BSS of the AP2 is further based on suppressing the update of the inter-BSS NAV. In some such implementations, based on determining that the scheduling information includes the APID2, the AP2 also updates the intra-BSS NAV for its BSS based on the duration. In some other such implementations, the AP2 suppresses updating the intra-BSS NAV.
[0146] In some implementations, in response to detecting a third packet (e.g., a data packet) during the TXOP 702, the AP2 suppresses updating the inter-BSS NAV, where the third packet is from the TXOP owner AP1 or another selected AP among the selected APs (AP 3 and AP 4) associated with the APID included in the scheduling information, or the third packet is from a STA in a BSS associated with another selected AP among the selected APs (AP 3 and AP 4) associated with the TXOP owner AP 1 or associated with the APID included in the scheduling information. In some such implementations, in response to detecting the third packet, the AP2 updates the intra-BSS NAV based on the duration indicated in the third packet. In some other such implementations, in response to detecting the third packet, the AP2 also suppresses updating the intra-BSS NAV.
[0147] For UL communication, triggering transmission of UL data from a wireless STA in the BSS of the AP2 includes: transmitting a trigger frame to the wireless station in the TXOP portion 7162 assigned to the AP2. In some other implementations in addition to those just described, the CSF 7182 or the trigger frame can indicate to the STAs in the BSS of the AP2 that carrier sensing is not required for transmitting data to the AP2 in the TXOP portion 7162 in response to receiving the trigger frame.
[0148] Figure 10 A flowchart illustrating an example process 1000 for coordinated wireless communication for supporting resource sharing according to some implementations is shown. The operations of the process 1000 can be implemented by a STA or its components as described herein. For example, the process 1000 can be implemented by a wireless communication device (such as those referred to aboveFigure 4 performed by the described wireless communication device 400). In some implementations, process 1000 may be performed by a STA (such as one of the STAs 104 and 504 described above with reference to Figure 1 and 5B respectively). The STA may be associated with a first wireless AP that manages a first BSS including one or more other wireless STAs.
[0149] In some implementations, at block 1002, the wireless communication device receives a first packet from the first wireless AP, the first packet including scheduling information for a TXOP obtained by a second wireless AP associated with a second BSS. For example, the first packet may be a CSF, such as the CSF 718 described with reference to Figures 7A to 7D The wireless communication device may be, or may operate as, a STA in a BSS associated with one of the selected APs (AP2, AP3, or AP4) (e.g., for illustrative purposes, AP2), and will be referred to as STA2 hereinafter with reference to the description of Figure 10 In such examples, the second wireless AP may be the TXOP-owning AP1. Although process 1000 is described from the perspective of a single STA2, the operations of process 1000 are similarly performed by STAs with CAP TDMA or OFDMA capabilities in other BSSs associated with the TXOP-owning AP1 or the selected APs (AP3 and AP4).
[0150] As described above, the scheduling information indicates multiple portions 716 of the TXOP 702. The scheduling information also includes multiple APIDs associated with the selected APs (AP2, AP3, and AP4, and in some examples also the TXOP-owning AP1). The scheduling information further indicates which one or more portions 716 of the TXOP 702 are assigned to each respective wireless AP for communication with the respective BSS of that wireless AP.
[0151] At block 1004, STA2 determines that the scheduling information includes the APID (APID2) associated with AP2. At block 1006, STA2 receives a trigger frame from AP2 in the portion 7162 of the TXOP 702 that is assigned to AP2. At block 1008, in response to receiving the trigger frame, STA2 transmits data to AP2 in the TXOP portion 7162 based on the determination that the scheduling information includes APID2.
[0152] As referred to above with reference to Figures 7A to 7DAs described, in some CAP TDMA implementations, each of the multiple portions 716 of TXOP 702 corresponds to a time segment that includes a set of time resources (such as non-overlapping time slots or symbols) that do not overlap with any time resources of any other of the multiple portions. In some other CAP OFDMA implementations, each of the multiple portions of the TXOP corresponds to a bandwidth segment that includes a set of frequency resources (such as non-overlapping subchannels or RUs) that do not overlap with any frequency resources of any other of the multiple portions.
[0153] In some implementations, process 1000 further includes receiving a second packet from the TXOP owner AP1 before receiving CSF 2182. For example, the second packet can be a CSA, such as the CSA 714 described with reference to Figures 7A to 7D As described above, CSA 714 also includes scheduling information and a duration field indicating the duration of TXOP 702. In some such implementations of process 1000, AP2 can determine that the scheduling information includes APID2 and suppress updating the inter-BSS NAV based on determining that the scheduling information includes APID2. In such examples, transmitting data to AP2 in response to a trigger frame is further based on suppressing updating the inter-BSS NAV. In some such implementations, based on determining that the scheduling information includes APID2, AP2 can update the intra-BSS NAV based on the duration. For example, as used herein, the intra-BSS NAV permits a wireless STA within the BSS associated with the AP to transmit data to the corresponding AP, but only in response to receiving a trigger frame from the corresponding AP in the TXOP portion 716 assigned to the corresponding AP.
[0154] In some other implementations, in response to determining that the scheduling information includes APID2, STA2 can determine that the CSA 714, CSF7182, or the trigger frame indicates that carrier sensing is not required for transmitting data to AP2 in TXOP portion 7162 in response to receiving a trigger frame in TXOP portion 7162. In some such implementations, based on determining that the scheduling information includes APID2 and determining that carrier sensing is not required, STA2 can ignore the inter-BSS NAV in TXOP portion 7162 and thus permit itself to transmit data to AP2 in response to the trigger frame.
[0155] In some implementations, CSF 718 includes a duration field indicating the duration of the TXOP, and based on determining that the scheduling information includes APID2, STA2 suppresses updating any NAV based on the duration. In such examples, transmitting data to AP2 in response to a trigger frame in TXOP portion 7162 is further based on not updating any NAV.
[0156] In some other implementations, based on determining that the scheduling information includes APID2, STA2 updates the NAV within the BSS based on this duration and suppresses updating the NAV between BSSs. In such examples, transmitting data to AP2 in response to a trigger frame is further based on updating the NAV within the BSS but suppressing updating the NAV between BSSs.
[0157] In some implementations, in response to detecting a second packet (e.g., a data packet) from AP2 or from another wireless STA in its BSS during TXOP 702, STA2 updates the NAV within the BSS based on the duration indicated in the second packet. Conversely, in some implementations, in response to detecting a second packet (e.g., a data packet) during TXOP 702, STA2 suppresses updating the NAV between BSSs, where the second packet is from another wireless AP associated with the APID included in the scheduling information, or from a wireless STA in a BSS associated with another wireless AP associated with the APID included in the scheduling information. In some such implementations, in response to detecting the second packet, STA2 may update only the NAV within the BSS based on the duration indicated in the second packet. In some other such implementations, in response to detecting the second packet, STA2 may suppress updating the NAV within the BSS.
[0158] Figure 11 A block diagram of an example wireless communication device 1100 that supports resource sharing in accordance with some implementations is shown. In some implementations, the wireless communication device 1100 is configured to perform one or more of the processes 600, 800, and 900 described above with reference to Figure 6 , [[ID= and respectively. The wireless communication device 1100 may be an example implementation of the wireless communication device 400 described above with reference to . For example, the wireless communication device 1100 may be a chip, SoC, chipset, package, or device that includes at least one processor and at least one modem (e.g., a Wi-Fi (IEEE 802.11) modem or a cellular modem). In some implementations, the wireless communication device 1100 may be a device used in an AP (such as one of the APs 102 or 502 described above with reference to and respectively). In some other implementations, the wireless communication device 1100 may be an AP that includes such a chip, SoC, chipset, package, or device and at least one transmitter, at least one receiver, and at least one antenna.
[0159] The wireless communication device 1100 includes: a channel access module 1102, a candidate selection module 1104, a resource allocation module 1106, and a transmit and receive (TX / RX) module 1108. Portions of one or more of the modules 1102, 1104, 1106, and 1108 may be implemented at least in part in hardware or firmware. For example, the channel access module 1102 and the TX / RX module 1108 may be implemented at least in part by a modem (such as modem 402). In some implementations, at least some of the modules 1102, 1104, 1106, and 1108 are implemented at least in part as software stored in a memory (such as memory 408). For example, portions of one or more of the modules 1102, 1104, 1106, and 1108 may be implemented as non-transitory instructions (or “code”) executable by a processor (such as processor 406) to perform the functions or operations of the corresponding module.
[0160] The channel access module 1102 is configured to obtain a TXOP for wireless communication via a wireless channel, the TXOP including a plurality of time and frequency resources. For example, the channel access module 1102 may be configured to perform block 602 of process 600 described with reference to and . In some implementations, to obtain a TXOP, the channel access module 1102 uses, for example, CSMA / CA and enhanced distributed channel access (EDCA) techniques to contend for access to the wireless medium on one or more channels (e.g., a primary 20 MHz channel and one or more secondary 20 MHz, 40 MHz, 80 MHz, or 160 MHz channels) including the primary operating channel. The channel access module 1102 is further configured to: determine whether to update and subsequently update the BSS-internal NAV or the BSS-inter NAV (e.g., by updating the BSS-internal NAV table or the BSS-inter NAV table) based on whether a scheduling allocation packet received from the TXOP owner AP includes the APID of the wireless communication device.
[0161] The candidate selection module 1104 is configured to select one or more other candidate APs to participate in the TXOP. For example, the candidate selection module 1104 may be configured to perform block 602 of process 600 described with reference to and Block 604 of the described process 600. In some examples, to facilitate selection, the TX / RX module 1108 is configured to transmit a CRP to other wireless APs (e.g., other APs in the ESS of the wireless communication device 1100), the CRP indicating the time or frequency resources of the TXOP that the TXOP owner AP1 can share. After transmitting the CRP, the TX / RX module 1108 may receive a CRR from each of one or more candidate APs, the CRR indicating the respective AP's desire to participate in the TXOP. For example, the TX / RX module 1108 may be configured to perform the processes described with reference to Blocks 802 and 804 of the described process 800.
[0162] The resource allocation module 1106 is configured to determine the amount of time or frequency resources in the TXOP to be allocated to each of the selected APs. In some implementations, the resource allocation module 1106 divides the available time resources of the TXOP into two or more time portions or segments, each time portion or segment including one or more time resources. For example, each time segment may represent several symbols, several time slots, several milliseconds, or another time unit. Additionally or alternatively, in some implementations, the resource allocation module 1106 divides the available frequency resources of the TXOP into two or more bandwidth portions or segments, each bandwidth portion or segment including associated frequency resources. For example, each bandwidth segment may represent one or more subchannels or one or more RUs, etc., and other examples. In some implementations or instances, the resource allocation module 1106 may divide the time or frequency resources into unequal portions, for example, based on buffer status, resource requests, or other factors.
[0163] The TX / RX module 1108 is configured to generate a packet (e.g., CSA 714) and transmit the packet to the selected APs, the packet including scheduling information for the TXOP. The scheduling information includes a plurality of APIDs associated with the selected APs. The scheduling information further indicates which one or more portions of the TXOP are allocated to each respective wireless AP for communication with the respective BSS of the wireless AP. The channel access module 1102 may update or suppress updating the inter-BSS NAV based on the scheduling information, as described above with reference to The processes described. In some implementations, after transmitting the packet, the TX / RX module 1108 may transmit another packet (e.g., CSF 718) to the associated STAs in the BSS of the wireless communication device 1100, the other packet including at least a portion of the scheduling information, the at least a portion of the scheduling information including, for example, at least the APID and an indication of the associated TXOP portion assigned to the APID (and thus allocated to the respective AP). For example, the TX / RX module 1108 may be configured to perform the processes described with reference to Blocks 606 of process 600 and block 906 of process 900 as described.
[0164] During the data transmission phase of a TXOP, if wireless communication device 1100 is the TXOP owner, the TX / RX module 1108 may transmit one or more DL data communications to one or more STAs in the BSS of wireless communication device 1100 in the portion of the TXOP that wireless communication device 1100 has allocated to itself, or receive one or more UL data communications from the one or more STAs. If wireless communication device 1100 is not the TXOP owner, the TX / RX module 1108 may transmit one or more DL data communications to one or more STAs in the BSS of wireless communication device 1100 in the portion of the TXOP that has been allocated to wireless communication device 1100 as indicated in the scheduling information, or receive one or more UL data communications from the one or more STAs. For example, the TX / RX module 1108 may use MU OFDMA, MU MIMO, or SU techniques to transmit or receive data communications including data frames to or from multiple STAs. For example, the TX / RX module 1108 may be configured to perform respectively with reference to Blocks 608 of process 600 and block 908 of process 900 as described.
[0165] During the data transmission phase, in response to detecting a packet from another AP or STA, the channel access module 1102 may update or suppress updating the inter-BSS NAV or intra-BSS NAV based on the scheduling information, as described above with reference to As described.
[0166] In some implementations, at the beginning portion of the data transmission phase, the TX / RX module 1108 transmits a CTTRIG frame to a selected AP to synchronize the selected AP with wireless communication device 1100 in time, as described with reference to As described. Additionally or alternatively, in some implementations, the TX / RX module 1108 is further configured to transmit a trigger before the TXOP portion assigned to each of the selected APs participating in the shared TXOP, as described with reference to As described. In some implementations, the TX / RX module 1108 is further configured to receive a CTTRIG frame from the TXOP owner to synchronize wireless communication device 1100 in time. Additionally or alternatively, in some implementations, the TX / RX module 1108 is further configured to receive a trigger before the TXOP portion allocated to wireless communication device 1100, as described with reference to As described.
[0167] The TX / RX module 1108 is further configured to receive a CRP from another AP (TXOP owner) that has obtained a TXOP, the CRP indicating multiple time resources of the TXOP that the TXOP owner can share. The TX / RX module 1108 is further configured to transmit a CRR to the TXOP owner indicating an expectation to participate in the TXOP. The TX / RX module 1108 is further configured to receive a CSA including scheduling information from the TXOP owner. For example, the TX / RX module 1108 may be configured to perform block 902 of process 900 described with reference to as described.
[0168] FIG. shows a block diagram of an example wireless communication device 1200 supporting resource sharing according to some implementations. In some implementations, the wireless communication device 1200 is configured to perform process 1000 described above with reference to as described. The wireless communication device 1200 may be an example implementation of the wireless communication device 400 described above with reference to as described. For example, the wireless communication device 1200 may be a chip, SoC, chipset, package, or device including at least one processor and at least one modem (e.g., a Wi-Fi (IEEE 802.11) modem or a cellular modem). In some implementations, the wireless communication device 1200 may be a device used in a STA (such as one of the STAs 104 or 504 respectively described above with reference to and as described). In some other implementations, the wireless communication device 1200 may be a STA including such a chip, SoC, chipset, package, or device and at least one transmitter, at least one receiver, and at least one antenna.
[0169] The wireless communication device 1200 includes a channel access module 1202 and a TX / RX module 1204. Portions of one or more of modules 1202 and 1204 may be implemented at least in part in hardware or firmware. For example, the channel access module 1202 and the TX / RX module 1208 may be implemented at least in part by a modem (such as modem 402). In some implementations, at least some of modules 1202 and 1204 may be implemented at least in part as software stored in a memory (such as memory 408). For example, portions of one or more of modules 1202 and 1204 may be implemented as non-transitory instructions (or “code”) executable by a processor (such as processor 406) to perform the functions or operations of the corresponding modules.
[0170] The TX / RX module 1204 is configured to receive a first packet (e.g., CSF 718) from a first wireless AP, the first packet including scheduling information of a TXOP obtained by a second wireless AP associated with a second BSS. The first wireless AP manages a first BSS including the wireless communication device 1200. The scheduling information includes a plurality of APIDs associated with the APs participating in the TXOP. The scheduling information further indicates which one or more portions of the TXOP are assigned to each respective wireless AP for communication with the respective BSS of the wireless AP. The channel access module 1102 may also update or suppress updating the inter-BSS NAV or the intra-BSS NAV based on the scheduling information, as described above with reference to as described. The channel access module 1202 is further configured to determine that the scheduling information includes a first access point identifier associated with the first wireless AP.
[0171] The TX / RX module 1202 is also configured to receive a trigger frame from the first wireless AP in a portion of the transmission opportunity that is assigned to the first wireless access point; and in response to receiving the trigger frame, determine whether to transmit data to the first wireless AP in the portion of the TXOP that is assigned to the first wireless AP based on a set of NAV rules and specifically based on determining that the scheduling information includes the first APID.
[0172] As used herein, "or" is intended to be interpreted in an inclusive sense, unless expressly indicated otherwise. For example, "a or b" can include only a, only b, or a combination of a and b. As used herein, a phrase that recites "at least one of" or "one or more of" a list of items refers to any combination of those items, including a single member. For example, "at least one of a, b, or c" is intended to cover the possibilities of only a, only b, only c, a combination of a and b, a combination of a and c, a combination of b and c, and a combination of a, b, and c.
[0173] The various illustrative components, logics, logic blocks, modules, circuits, operations, and algorithmic processes described in connection with the implementations disclosed herein may be implemented as electronic hardware, firmware, software, or any combination of hardware, firmware, or software, including the structures disclosed in this specification and their structural equivalents. This interchangeability of hardware, firmware, and software has been described generally in terms of their functionality and has been illustrated in the various illustrative components, blocks, modules, circuits, and processes described above. Whether such functionality is implemented in hardware, firmware, or software depends upon the particular application and design constraints imposed on the overall system.
[0174] Various modifications to the implementations described in this disclosure may be apparent to those of ordinary skill in the art, and the generic principles defined herein may be applied to other implementations without departing from the spirit or scope of the disclosure. Thus, the claims are not intended to be limited to the implementations shown herein, but rather should be accorded the broadest scope consistent with the disclosure, the principles disclosed herein, and the novel features.
[0175] In addition, various features described in this specification in the context of separate implementations may also be implemented in combination in a single implementation. Conversely, various features described in the context of a single implementation may also be implemented separately or in any suitable sub-combination in multiple implementations. Thus, although the features may have been described above as acting in a particular combination and even initially claimed as such, one or more features from the claimed combination may in some cases be removed from the combination, and the claimed combination may be directed to a sub-combination, or a variant of a sub-combination.
[0176] Similarly, although the operations are depicted in the drawings in a particular order, this should not be construed as requiring that such operations be performed in the particular order shown or in sequential order, or that all of the illustrated operations be performed to achieve the desired result. Additionally, the drawings may schematically depict one or more example processes in the form of a flowchart or a flow diagram. However, other operations not depicted may be incorporated into the example processes schematically illustrated. For example, one or more additional operations may be performed before, after, concurrently with, or between any of the illustrated operations. In some environments, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described above should not be construed as requiring such separation in all implementations, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.
Claims
1. A first wireless access point AP, comprising: At least one processor; And At least one memory coupled to the at least one processor and storing processor-readable code, the processor-readable code being configured such that when executed by the at least one processor, the first wireless AP: Obtains information indicating one or more AP identifiers associated with one or more wireless APs in a group of wireless APs, the group of wireless APs including at least the first wireless AP associated with a first AP identifier and a second wireless AP associated with a second AP identifier; Receives a first packet from a wireless communication device within a transmission opportunity of the second wireless AP, wherein the wireless communication device is the second wireless AP, another wireless AP in the group of wireless APs, or a wireless station STA associated with a wireless AP in the group of wireless APs; And Conveys data to a first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP associated with the first packet from the wireless communication device.
2. The first wireless AP according to claim 1, wherein in order to convey the data, the processor-readable code is further configured such that when executed by the at least one processor, the first wireless AP: Suppresses updating an inter-BSS network allocation vector associated with the first packet from the wireless communication device and suppresses updating an intra-BSS network allocation vector associated with the first packet; and Conveys the data to the first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP by performing contention-based media access associated with suppressing updating the inter-BSS network allocation vector and suppressing updating the intra-BSS network allocation vector.
3. The first wireless AP according to claim 1, wherein in order to convey the data, the processor-readable code is further configured such that when executed by the at least one processor, the first wireless AP: Conveys the data to the first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP without performing contention-based media access associated with the first packet from the wireless communication device.
4. The first wireless AP according to claim 1, wherein in order to receive the first packet, the processor-readable code is further configured such that when executed by the at least one processor, the first wireless AP: Detects the first packet within the transmission opportunity as a transmission by the wireless communication device.
5. The first wireless AP according to claim 1, wherein the information is received via a scheduling announcement frame, and wherein the information includes scheduling information associated with the transmission opportunity of the second wireless AP.
6. The first wireless AP according to claim 5, wherein the scheduling announcement frame is a trigger frame.
7. The first wireless AP as claimed in claim 5, wherein the processor-readable code, when executed by the at least one processor, is further configured to cause the first wireless AP to: Receive, within the transmission opportunity of the second wireless AP, a frame indicating an identifier associated with the first wireless AP, wherein communicating the data is associated with receiving the frame from the first wireless station.
8. The first wireless AP as claimed in claim 7, wherein the frame indicates the identifier via a receiver address field of the frame or a second field in the frame.
9. The first wireless AP as claimed in claim 7, wherein the frame is a trigger frame.
10. The first wireless AP as claimed in claim 5, wherein the scheduling information indicates one or more portions of the transmission opportunity allocated to each respective wireless AP in the group of wireless APs for communicating with a respective BSS in the respective wireless AP.
11. The first wireless AP as claimed in claim 10, wherein the one or more portions do not overlap in time or frequency, and wherein each portion of the transmission opportunity is allocated to a respective wireless AP in the group of wireless APs.
12. The first wireless AP as claimed in claim 10, wherein the processor-readable code, when executed by the at least one processor, is further configured to cause the first wireless AP to: Receive, via a frame from the second wireless AP, a field including an indication associated with a portion of the one or more portions of the transmission opportunity, wherein communicating the data is associated with receiving the frame.
13. The first wireless AP as claimed in claim 5, wherein the processor-readable code, when executed by the at least one processor, is further configured to cause the first wireless AP to: Detect a second packet from a second wireless communication device; Update a network allocation vector in association with detecting the second packet and according to a duration indicated in the second packet; And Suppress transmission within the duration indicated in the second packet in association with updating the network allocation vector.
14. The first wireless AP as claimed in claim 13, wherein a received signal strength of the second packet is higher than a threshold.
15. The first wireless AP as claimed in claim 1, wherein the information is received via a trigger frame and wherein the first packet is a data packet.
16. The first wireless AP as claimed in claim 1, wherein the first packet indicates sharing at least a portion of the transmission opportunity with the first wireless AP.
17. The first wireless AP as claimed in claim 1, wherein the processor-readable code, when executed by the at least one processor, is further configured to cause the first wireless AP to: Determine one or more spatial resources for communicating the data according to the information, wherein transmitting the data is based on the one or more spatial resources.
18. The first wireless AP as claimed in claim 1, wherein the first wireless AP is associated with a first basic service set (BSS), and the second wireless AP is associated with a second BSS.
19. The first wireless AP according to claim 1, wherein, for communicating the data, the processor-readable code, when executed by the at least one processor, is further configured to: transmit the data to a first wireless station; or receive the data from the first wireless station.
20. A method for wireless communication by a first wireless access point AP, comprising: obtaining information indicating one or more AP identifiers associated with one or more wireless APs in a group of wireless APs, the group of wireless APs including at least the first wireless AP associated with a first AP identifier and a second wireless AP associated with a second AP identifier; receiving a first packet from a wireless communication device within a transmission opportunity of the second wireless AP, wherein the wireless communication device is the second wireless AP, another wireless AP in the group of wireless APs, or a wireless station STA associated with a wireless AP in the group of wireless APs; and communicating data with a first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP associated with the first packet from the wireless communication device.
21. The method according to claim 20, wherein communicating the data further comprises: suppressing updating an inter-BSS network allocation vector associated with the first packet from the wireless communication device and suppressing updating an intra-BSS network allocation vector associated with the first packet; and communicating the data with the first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP by performing contention-based media access associated with suppressing updating the inter-BSS network allocation vector and suppressing updating the intra-BSS network allocation vector.
22. The method according to claim 20, wherein conveying the data further comprises: Communicating the data with the first wireless STA associated with the first wireless AP within the transmission opportunity of the second wireless AP without performing contention-based media access associated with the first packet from the wireless communication device.
23. The method according to claim 20, wherein receiving the first packet further comprises: Detecting the first packet within the transmission opportunity as a transmission by the wireless communication device.
24. The method according to claim 20, wherein the information is received via a scheduling announcement frame, and wherein the information includes scheduling information associated with the transmission opportunity of the second wireless AP.
25. The method according to claim 24, further comprising: Receiving, within the transmission opportunity of the second wireless AP, a frame indicating an identifier associated with the first wireless AP, wherein communicating the data with the first wireless station is associated with receiving the frame.
26. The method according to claim 24, wherein the scheduling information indicates one or more portions of the transmission opportunity allocated to each respective wireless AP in the group of wireless APs for communicating with a respective BSS in the respective wireless AP.
27. A wireless station, comprising: at least one processor; and at least one memory coupled to the at least one processor and storing processor-readable code that, when executed by the at least one processor, is configured to cause the wireless station to: operate in a first basic service set (BSS) associated with a first wireless access point (AP); receive a first packet from the first wireless AP, the first packet including scheduling information for a transmission opportunity for a second wireless AP associated with a second BSS, the scheduling information indicating one or more portions of the transmission opportunity, the scheduling information including one or more AP identifiers associated with one or more wireless APs, and the scheduling information further indicating which one or more portions of the transmission opportunity are assigned to each respective wireless AP of the one or more wireless APs for communication with its respective BSS; suppress updating an inter-BSS network allocation vector associated with the scheduling information and suppress updating an intra-BSS network allocation vector associated with the scheduling information, the scheduling information including a first AP identifier associated with the first wireless AP; and communicate data with the first wireless AP within a portion of the transmission opportunity assigned to the first wireless AP according to the scheduling information.
28. The wireless station of claim 27, wherein the processor-readable code, when executed by the at least one processor, is further configured to: receive a second packet from a wireless communication device associated with the one or more wireless APs; and update the intra-BSS network allocation vector associated with receiving the second packet, the intra-BSS network allocation vector permitting the wireless station to communicate with the first wireless AP only in association with receiving a trigger frame from the first wireless AP within the portion of the transmission opportunity assigned to the first wireless AP.
29. A method for wireless communication by a wireless station (STA), comprising: operating in a first basic service set (BSS) associated with a first wireless access point (AP); receiving a first packet from the first wireless AP, the first packet including scheduling information for a transmission opportunity for a second wireless AP associated with a second BSS, the scheduling information indicating one or more portions of the transmission opportunity, the scheduling information including one or more AP identifiers associated with one or more wireless APs, and the scheduling information further indicating which one or more portions of the transmission opportunity are assigned to each respective wireless AP of the one or more wireless APs for communication with its respective BSS; suppressing updating an inter-BSS network allocation vector associated with the scheduling information and suppressing updating an intra-BSS network allocation vector associated with the scheduling information, the scheduling information including a first AP identifier associated with the first wireless AP; and communicating data with the first wireless AP within a portion of the transmission opportunity assigned to the first wireless AP according to the scheduling information.
30. The method of claim 29, further comprising: Receiving a second packet from a wireless communication device associated with the one or more wireless APs; And Updating the network allocation vector within the BSS in association with receiving the second packet, the network allocation vector within the BSS permitting the wireless station to communicate with the first wireless AP only in association with receiving a trigger frame from the first wireless AP in the portion of the transmission opportunity that is allocated to the first wireless AP.