This disclosure relates generally to throughput and efficiency in wireless communications systems. Embodiments of this disclosure relate to methods and apparatuses for Overlapping Basic Service Set (OBSS) preamble detection (PD) threshold adaptation.
Wireless local area network (WLAN) technology allows devices to access the internet in the 2.4 GHz, 5 GHz, 6 GHz or 60 GHz frequency bands. WLANs are based on the Institute of Electrical and Electronic Engineers (IEEE) 802.11 standards. The IEEE 802.11 family of standards aim to increase speed and reliability and to extend the operating range of wireless networks.
The IEEE 802.11ax amendment introduces Basic Service Set (BSS) Coloring as a scheme to allow early detection of Overlapping BSS (OBSS) transmission and Spatial Reuse (SR) through an adaptive Clear Channel Assessment (CCA) threshold with Transmission Power Control (TPC) to increase spectral efficiency in dense Wi-Fi deployments. In SR, an STA can transmit in parallel (e.g., simultaneously, although not necessarily synchronously) to other physical layer protocol data units (PPDUs) being transmitted from OBSSs. This is accomplished, in part, by using different CCA thresholds for the BSS medium and the OBSS medium. Specifically, the CCA thresholds used for OBSS packet detection are higher than the CCA thresholds used for BSS packet detection. This enhances channel access and increases transmission opportunities for STAs in a dense network (e.g., that has many APs).
Earlier IEEE 802.11ax amendments have relied on fixed CCA thresholds (e.g., fixed CCA thresholds associated with BSS medium, other fixed CCA thresholds associated with OBSS medium) based on whether an 802.11 preamble has been detected or not to determine if the medium is IDLE or not. For example, for a particular medium (e.g., OBSS medium or BSS medium), the IEEE 802.11ax amendment specifies use two separate CCA thresholds when listening to the medium to determine whether or not it is IDLE.
The IEEE 802.11ax specification defines the PD threshold as −82 dBm and the ED threshold as −62 dBm for a 20 MHz channel, with a 3 dB increment for every doubling of channel bandwidth.
Illustratively, these CCA thresholds are used for sensing a particular medium (e.g., OBSS medium or BSS medium) in the following manner.
BSS Coloring allows the node to identify the current transmission, based on the BSS color in the PHY header of the incoming transmission, as an inter-BSS or intra-BSS transmission. The STA can then adjust the PD threshold for the inter-BSS transmission and transmit over the ongoing transmission. This mode of operation is called Overlapping Basic Service Set-Packet Detect (OBSS_PD) based SR. If the node ignores the inter-BSS transmission based on OBSS_PD based SR, the spec dictates that the node reduce the transmit power based on the OBSS_PD threshold chosen.
Embodiments of the present disclosure provide methods and apparatuses for OBSS PD threshold adaptation based on environmental context and feedback.
In one embodiment, a method of wireless communication performed by a station (STA) is provided, including the steps of: determining whether the STA changed an overlapping basic service set (OBSS) packet detection (PD) threshold for spatial reuse (SR); obtaining, based on determining that the STA changed the OBSS PD threshold for SR, feedback information for performance indicators associated with the STA; and updating the OBSS PD threshold for SR based on the feedback information.
In another embodiment, a STA is provided, comprising a processor and a transceiver operably coupled to the processor. The processor is configured to determine whether the STA changed an OBSS PD threshold for SR. The transceiver is configured to obtain, based on a determination that the STA changed the OBSS PD threshold for SR, feedback information for performance indicators associated with the STA. The processor is further configured to update the OBSS PD threshold for SR based on the feedback information.
In yet another embodiment, an access point (AP) is provided, comprising a processor and a transceiver operably coupled to the processor. The processor is configured to determine whether a STA associated with the AP changed an OBSS PD threshold for SR. The transceiver is configured to obtain, based on a determination that the STA changed the OBSS PD threshold for SR, feedback information for performance indicators associated with the STA. The processor is further configured to update the OBSS PD threshold for SR based on the feedback information.
Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions, and claims.
Before undertaking the DETAILED DESCRIPTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, whether or not those elements are in physical contact with one another. The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both direct and indirect communication. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrase “associated with,” as well as derivatives thereof, means to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, have a relationship to or with, or the like. The term “controller” means any device, system or part thereof that controls at least one operation. Such a controller may be implemented in hardware or a combination of hardware and software and/or firmware. The functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. The phrase “at least one of,” when used with a list of items, means that different combinations of one or more of the listed items may be used, and only one item in the list may be needed. For example, “at least one of: A, B, and C” includes any of the following combinations: A, B, C, A and B, A and C, B and C, and A and B and C. As used herein, such terms as “1st” and “2nd,” or “first” and “second” may be used to simply distinguish a corresponding component from another and does not limit the components in other aspect (e.g., importance or order). It is to be understood that if an element (e.g., a first element) is referred to, with or without the term “operatively” or “communicatively”, as “coupled with,” “coupled to,” “connected with,” or “connected to” another element (e.g., a second element), it means that the element may be coupled with the other element directly (e.g., wiredly), wirelessly, or via a third element.
As used herein, the term “module” may include a unit implemented in hardware, software, or firmware, and may interchangeably be used with other terms, for example, “logic,” “logic block,” “part,” or “circuitry”. A module may be a single integral component, or a minimum unit or part thereof, adapted to perform one or more functions. For example, according to an embodiment, the module may be implemented in a form of an application-specific integrated circuit (ASIC).
Moreover, various functions described below can be implemented or supported by one or more computer programs, each of which is formed from computer readable program code and embodied in a computer readable medium. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof adapted for implementation in a suitable computer readable program code. The phrase “computer readable program code” includes any type of computer code, including source code, object code, and executable code. The phrase “computer readable medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory. A “non-transitory” computer readable medium excludes wired, wireless, optical, or other communication links that transport transitory electrical or other signals. A non-transitory computer readable medium includes media where data can be permanently stored and media where data can be stored and later overwritten, such as a rewritable optical disc or an erasable memory device.
Definitions for other certain words and phrases are provided throughout this patent document. Those of ordinary skill in the art should understand that in many if not most instances, such definitions apply to prior as well as future uses of such defined words and phrases.
For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:
Embodiments of the present disclosure recognize that the IEEE 802.11ax standard provides a new mode of operation, OBSS PD, which allows a STA (or AP) to transmit over inter-BSS PPDUs by reducing its transmission power to avoid adding interference to the inter-BSS PPDUs. This is done so that efficient re-utilization of spectrum is achieved while limiting inter-BSS interference. The standard does not dictate how this threshold is chosen and leaves this up to implementation.
Embodiments of the present disclosure further recognize that there are challenges when selecting the OBSS PD threshold for any given STA. For example, setting the OBSS PD threshold too low when close to the AP can lead to a lower throughput due to inefficient spectrum utilization. At the same time, setting the OBSS PD threshold too high when far from the AP can lead to lower throughput due to low modulation and coding scheme (MCS), high retransmission rate, or high packet failure, due to reduced signal-and-interference to noise ratio (SINR) from lowering the transmission power.
Accordingly, embodiments of the present disclosure provide methods and apparatuses for OBSS PD threshold adaptation based on environmental context and feedback. Embodiments of the present disclosure also provide methods and apparatuses for enabling (or triggering) and disabling OBSS PD threshold adaptation.
For simplicity, embodiments of the present disclosure discuss OBSS PD as performed by a STA (i.e., a non-AP STA), however it is understood that an AP (i.e., an AP STA) can also perform OBSS PD. It is also understood that non-AP STAs and AP STAs are both IEEE 802.11 node devices (or nodes), which may also be referred to as WI-FI node devices (or nodes). Accordingly, discussion herein below of actions performed by a STA may be performed by any appropriate IEEE 802.11 node.
The wireless network 100 includes access points (APs) 101 and 103. The APs 101 and 103 communicate with at least one network 130, such as the Internet, a proprietary Internet Protocol (IP) network, or other data network. The AP 101 provides wireless access to the network 130 for a plurality of stations (STAs) 111-114 within a coverage area 120 of the AP 101. The APs 101-103 may communicate with each other and with the STAs 111-114 using WI-FI or other WLAN communication techniques. The STAs 111-114 may communicate with each other using peer-to-peer protocols, such as Tunneled Direct Link Setup (TDLS).
Depending on the network type, other well-known terms may be used instead of “access point” or “AP,” such as “router” or “gateway.” For the sake of convenience, the term “AP” is used in this disclosure to refer to network infrastructure components that provide wireless access to remote terminals. In WLAN, given that the AP also contends for the wireless channel, the AP may also be referred to as a STA. Also, depending on the network type, other well-known terms may be used instead of “station” or “STA,” such as “mobile station,” “subscriber station,” “remote terminal,” “user equipment,” “wireless terminal,” or “user device.” For the sake of convenience, the terms “station” and “STA” are used in this disclosure to refer to remote wireless equipment that wirelessly accesses an AP or contends for a wireless channel in a WLAN, whether the STA is a mobile device (such as a mobile telephone or smartphone) or is normally considered a stationary device (such as a desktop computer, AP, media player, stationary sensor, television, etc.).
Dotted lines show the approximate extents of the coverage areas 120 and 125, which are shown as approximately circular for the purposes of illustration and explanation only. It should be clearly understood that the coverage areas associated with APs, such as the coverage areas 120 and 125, may have other shapes, including irregular shapes, depending upon the configuration of the APs and variations in the radio environment associated with natural and man-made obstructions.
As described in more detail below, one or more of the APs may include circuitry and/or programming for facilitating OBSS PD threshold adaptation based on environmental context and feedback. Although
The AP 101 includes multiple antennas 204a-204n and multiple transceivers 209a-209n. The AP 101 also includes a controller/processor 224, a memory 229, and a backhaul or network interface 234. The transceivers 209a-209n receive, from the antennas 204a-204n, incoming radio frequency (RF) signals, such as signals transmitted by STAs 111-114 in the network 100. The transceivers 209a-209n down-convert the incoming RF signals to generate IF or baseband signals. The IF or baseband signals are processed by receive (RX) processing circuitry in the transceivers 209a-209n and/or controller/processor 224, which generates processed baseband signals by filtering, decoding, and/or digitizing the baseband or IF signals. The controller/processor 224 may further process the baseband signals.
Transmit (TX) processing circuitry in the transceivers 209a-209n and/or controller/processor 224 receives analog or digital data (such as voice data, web data, e-mail, or interactive video game data) from the controller/processor 224. The TX processing circuitry encodes, multiplexes, and/or digitizes the outgoing baseband data to generate processed baseband or IF signals. The transceivers 209a-209n up-converts the baseband or IF signals to RF signals that are transmitted via the antennas 204a-204n.
The controller/processor 224 can include one or more processors or other processing devices that control the overall operation of the AP 101. For example, the controller/processor 224 could control the reception of forward channel signals and the transmission of reverse channel signals by the transceivers 209a-209n in accordance with well-known principles. The controller/processor 224 could support additional functions as well, such as more advanced wireless communication functions. For instance, the controller/processor 224 could support beam forming or directional routing operations in which outgoing signals from multiple antennas 204a-204n are weighted differently to effectively steer the outgoing signals in a desired direction. The controller/processor 224 could also support OFDMA operations in which outgoing signals are assigned to different subsets of subcarriers for different recipients (e.g., different STAs 111-114). Any of a wide variety of other functions could be supported in the AP 101 by the controller/processor 224 including facilitating OBSS PD threshold adaptation based on environmental context and feedback. In some embodiments, the controller/processor 224 includes at least one microprocessor or microcontroller. The controller/processor 224 is also capable of executing programs and other processes resident in the memory 229, such as an OS. The controller/processor 224 can move data into or out of the memory 229 as required by an executing process.
The controller/processor 224 is also coupled to the backhaul or network interface 234. The backhaul or network interface 234 allows the AP 101 to communicate with other devices or systems over a backhaul connection or over a network. The interface 234 could support communications over any suitable wired or wireless connection(s). For example, the interface 234 could allow the AP 101 to communicate over a wired or wireless local area network or over a wired or wireless connection to a larger network (such as the Internet). The interface 234 includes any suitable structure supporting communications over a wired or wireless connection, such as an Ethernet or RF transceiver. The memory 229 is coupled to the controller/processor 224. Part of the memory 229 could include a RAM, and another part of the memory 229 could include a Flash memory or other ROM.
As described in more detail below, the AP 101 may include circuitry and/or programming for facilitating OBSS PD threshold adaptation based on environmental context and feedback. Although
The STA 111 includes antenna(s) 205, transceiver(s) 210, a microphone 220, a speaker 230, a processor 240, an input/output (I/O) interface (IF) 245, an input 250, a display 255, and a memory 260. The memory 260 includes an operating system (OS) 261 and one or more applications 262.
The transceiver(s) 210 receives from the antenna(s) 205, an incoming RF signal (e.g., transmitted by an AP 101 of the network 100). The transceiver(s) 210 down-converts the incoming RF signal to generate an intermediate frequency (IF) or baseband signal. The IF or baseband signal is processed by RX processing circuitry in the transceiver(s) 210 and/or processor 240, which generates a processed baseband signal by filtering, decoding, and/or digitizing the baseband or IF signal. The RX processing circuitry sends the processed baseband signal to the speaker 230 (such as for voice data) or is processed by the processor 240 (such as for web browsing data).
TX processing circuitry in the transceiver(s) 210 and/or processor 240 receives analog or digital voice data from the microphone 220 or other outgoing baseband data (such as web data, e-mail, or interactive video game data) from the processor 240. The TX processing circuitry encodes, multiplexes, and/or digitizes the outgoing baseband data to generate a processed baseband or IF signal. The transceiver(s) 210 up-converts the baseband or IF signal to an RF signal that is transmitted via the antenna(s) 205.
The processor 240 can include one or more processors and execute the basic OS program 261 stored in the memory 260 in order to control the overall operation of the STA 111. In one such operation, the processor 240 controls the reception of forward channel signals and the transmission of reverse channel signals by the transceiver(s) 210 in accordance with well-known principles. The processor 240 can also include processing circuitry configured to facilitate OBSS PD threshold adaptation based on environmental context and feedback. In some embodiments, the processor 240 includes at least one microprocessor or microcontroller.
The processor 240 is also capable of executing other processes and programs resident in the memory 260, such as operations for facilitating OBSS PD threshold adaptation based on environmental context and feedback. The processor 240 can move data into or out of the memory 260 as required by an executing process. In some embodiments, the processor 240 is configured to execute a plurality of applications 262, such as applications for facilitating OBSS PD threshold adaptation based on environmental context and feedback. The processor 240 can operate the plurality of applications 262 based on the OS program 261 or in response to a signal received from an AP. The processor 240 is also coupled to the I/O interface 245, which provides STA 111 with the ability to connect to other devices such as laptop computers and handheld computers. The I/O interface 245 is the communication path between these accessories and the processor 240.
The processor 240 is also coupled to the input 250, which includes for example, a touchscreen, keypad, etc., and the display 255. The operator of the STA 111 can use the input 250 to enter data into the STA 111. The display 255 may be a liquid crystal display, light emitting diode display, or other display capable of rendering text and/or at least limited graphics, such as from web sites. The memory 260 is coupled to the processor 240. Part of the memory 260 could include a random-access memory (RAM), and another part of the memory 260 could include a Flash memory or other read-only memory (ROM).
Although
A solution for optimizing the selected OBSS PD threshold is to consider a STA's link and traffic status along with other environment status (for example, the strength of the OBSS transmission, the distance from any interfering STA/AP and the STA of interest, and the number of overheard OBSSs). Considering all of these factors, a STA can optimize the selection of its OBSS PD threshold within the range allowed by the AP. In addition to the environment, the impact that the selection of the OBSS PD threshold has on the data communication as a feedback mechanism to provide a closed loop approach is considered.
Accordingly, embodiments of the present disclosure describe a feedback based OBSS PD adaptation operating mode, in which the STA performing OBSS PD adaptation will choose an OBSS PD threshold based on the impact of the choice to operation of key performance indicators (KPIs) relevant to the STA. This information is acquired when the STA is performing data communication.
Furthermore, embodiments of the present disclosure describe a combination OBSS PD adaptation operating mode, in which the STA performing OBSS PD adaptation will utilize both a context based operating mode, in which the STA performing OBSS PD adaptation will choose an OBSS threshold based on information about the environment the STA is operating in, in combination with a feedback based OBSS PD adaptation mode to choose an appropriate OBSS PD threshold.
In addition, embodiments of the present disclosure describe a trigger condition to initiate the algorithm when required and remain inactive when the OBSS PD operation provides no gain.
The STA is serving traffic for a latency-sensitive application, e.g., a Video Call or Mobile Gaming. This information can either be provided by the application, inferred from observing the foreground or most active application on the STA, inferred from certain peripherals being active on the device used by the application, or through the means of a network service detector classifying traffic on the STA. This information can be gathered from the operating system of the STA based on observing the application ID, foreground application trigger, active application triggers, and application process statistics. OBSS PD adaptation is enabled if a latency-sensitive application is performing data communication.
The throughput generated by an application is greater than the throughput currently served by the STA, which can lead to saturation. Such saturation can be eased by creating more TXOPs (e.g., by using a more aggressive OBSS PD threshold).
The traffic identifier on the MAC Header of traffic generated by an application is marked with a User Priority higher than 3, i.e., the traffic is labelled as belonging to the Voice or Video access category as specified by the 802.11e amendment.
The IETF differentiated services class in the IP header of traffic generated by an application is labeled Expedited Forwarding, Assured Forwarding, or Voice Admit, or the Class Selector of the traffic is labeled above CS3.
The channel utilization of the BSS AP and OBSS AP are above a certain threshold. The channel utilization can be extracted from the BSS Load element of the beacon of the OBSS or BSS AP. As an exemplary value, OBSS PD adaptation operation can be initiated when the channel utilization is above 33% for the AP (at which point the channel may be considered congested).
The ratio of the time the receiver was in the CCA_BUSY state (i.e., sensing the channel as busy) to the time the radio was on is above a certain threshold. As an exemplary value, the OBSS PD adaptation operation can be initiated when the ratio of time the receiver was in CCA_BUSY to the radio being on is above 0.33 (i.e., the receiver detected the channel as occupied 33% of the time that the radio was on).
Each of the context based adaptation and feedback based adaptation modules can be run independently by disabling the other one. In case of the combination adaptation, both the context based adaptation and feedback based adaptation modules can be enabled at the summing junction prior to the Adaptive OBSS PD Algorithm block.
Upon receiving the trigger to initiate OBSS PD adaptation, the STA can either begin measuring the network context related information or use existing context related information that is measured periodically to quickly start the adaptation. The network context can be defined as one or more of the following measurements/observations:
The RSSI of the AP to which the STA is associated. This is periodically recorded from the beacon that the AP broadcasts. The higher the BSS AP RSSI, the higher the OBSS PD threshold can be set. For example, the value of the OBSS PD threshold can be set in the following way: if the sensed RSSI from the AP is X dB, then the OBSS PD threshold can be set as X−S−Δ dB, where S is the worst-case scenario SINR and Δ is the power difference between the AP and STA.
The RSSIs of surrounding OBSS APs. This is periodically passively scanned from any beacons received by the STA from OBSS APs, or it can be actively solicited by sending out a probe request. The higher the OBSS RSSIs, the higher the OBSS PD threshold needs to be set to transmit over OBSS PPDUs. For example, the value of the OBSS PD threshold can be set in the following way: if all of the OBSS RSSI transmissions are above Y dB, and Y∈(−82, −62], then setting an OBSS PD threshold below Y dB will provide no gain. Therefore, the OBSS PD threshold value should be set above Y dB.
The weighted or unweighted average (or mean) of OBSS RSSI transmissions. For any preamble that is decoded by the STA of any transmission in the OBSS channel, the RSSI is categorized based on belonging to that respective OBSS. In an unweighted average, the average is calculated over all OBSS RSSIs that are encountered. In a weighted average, the average is calculated per OBSS, then a global average is calculated by providing individual weights to each respective OBSS subject to the number of PPDUs it has transmitted. This can simply be the number of PPDUs transmitted from a particular OBSS divided by all OBSS PPDUs. This can allow setting the OBSS PD threshold based on the number of OBSS PPDUs that can be transmitted over rather than the overall OBSS RSSI. To calculate the average OBSS RSSI, the STA can set a time window for averaging to a fixed time interval or N Target Beacon Transmission Times (TBTTs). As an example, the average can be calculated every 500 ms in one embodiment, and in 5 TBTTs in another. The OBSS PD threshold can be set to the calculated average value.
The Channel Utilization of the BSS AP. This field can be found in the BSS Beacon in the BSS Load element. If the Channel Utilization of the BSS AP is low, then the OBSS PD threshold can be lowered or the OBSS PD SR operation can be disabled. If there are not many transmissions in the medium to transmit over, then enabling OBSS PD provides minimal gain so it can be disabled. As an example, if the channel utilization is below 25%, then OBSS PD SR can be disabled.
The Channel Utilization of the OBSS APs. This field can be found in the BSS Beacon in the BSS Load element. If the Channel Utilization of the OBSS APs is low, then the OBSS PD threshold can be lowered or the OBSS PD operation can be disabled. Similar to the above metric, if the channel utilization by all OBSS APs is low, then the gain provided by OBSS PD is minimal. If the OBSS APs also sense that the channel is under occupied, then OBSS PD SR can be disabled. As an example, if the OBSS AP channel utilization is below 25%, then OBSS PD can be disabled.
The OBSS PD threshold applied at the BSS AP and other BSS STAs. The BSS can broadcast a suggested OBSS PD threshold to all of the associated STAs and also provide feedback in terms of what is currently utilized by the AP. This can be used as an initial OBSS PD threshold value to be adjusted based on separate context information. This value is obtained from the Spatial Reuse Parameter Set element in the OBSS PD Margin field and is subtracted from the Beacon RSSI to set the OBSS PD value.
The distance to the BSS AP. This can be found by using WI-FI fine time measurements round-trip time (RTT), WI-FI CSI-based localization, or other wireless localization technologies employed by the AP (e.g., BLUETOOTH, ultra-wideband, etc.). The farther away the BSS AP is from the STA, the lower the OBSS PD threshold will need to be set. As the STA moves further away from the AP, the received power of transmissions from the STA to the AP will also decrease and this can decrease the SINR, causing low transmit speeds and packet failures. The STA can then create a mapping from distance to power using the path loss model. The path loss value can then be used as a reference to set the OBSS PD threshold to maintain required SINR similar to the way that the RSSI of the BSS AP can be used.
The distance to the OBSS AP. This can be requested from the OBSS AP in a similar manner as it can be requested from the BSS AP. The farther away the OBSS AP is from the STA, the lower the OBSS PD threshold can be set. Similar to the above, using a path loss model, the received signal from the OBSS APs participating in RTT can be mapped using the obtained distance. Then the path loss value can be used as a reference to calculate the OBSS PD threshold similar to the way that the RSSIs of OBSS APs can be used.
The number of PPDUs with the PSR_AND_NON_SRG_OBSS_PD_PROHIBITED bit set. This can be taken as an absolute value or as a relative value in comparison to the total number of PPDUs observed (i.e., a ratio of the two numbers). If the absolute value or ratio is high, the chances of successfully performing SR may decrease and the operation can be disabled.
In one embodiment, the OBSS PD threshold is set as:
where OBSSRSSI can represent any one of, or a combination of: the average of the OBSS RSSI received from all OBSS APs, the unweighted average of all OBSS transmissions overheard by the STA, the weighted average of all OBSS transmissions overheard by the STA, the OBSS RSSI of the AP that has a high channel utilization (or the highest channel utilization), the OBSS RSSI of the AP closest to the STA, and the OBSS RSSI of the APs that have the least number of PPDUs with the PSR_AND_NON_SRG_OBSS_PD_PROHIBITED bit set. The STA can create an interrupt based on any changes to these measurements and if any one of them changes, the context-based PD threshold adaptation can repeat again and adapt the OBSS PD threshold.
In the feedback based OBSS PD adaptation, the impact that changing the OBSS PD threshold has on measurements directly related to the STA performing the adaptation are measured. These measurements can be taken as control parameters or rewards for any feedback or reinforcement learning based algorithms that can be used to adapt the OBSS PD threshold. The feedback measurements can be defined as:
The throughput of the STA since the last OBSS PD adaptation/algorithm start. These can be measured periodically or can be aligned with any deterministic interrupt schedule e.g., N number of beacons. The higher the throughput the better. A higher throughput enables faster responsiveness for the application.
The throughput when OBSS PD was not applied in the previous time window, an exemplary value of which is 1 second. In any of the periodic updates, the OBSS PD operation can be disabled or the OBSS PD threshold can be set to OBSSPDMIN and the throughput during that period can be evaluated. This measurement can be used as a reference for the feedback/reward that uses throughput to see how the throughput varies as compared to when no OBSS PD based spatial reuse is used. The higher the reference value, the better. A higher reference value signifies that the current system is able to perform better without OBSS PD.
The number of total PPDUs transmitted. This measurement can also be used as a normal metric, or a reference metric compared to when no OBSS PD based spatial reuse is used. The higher the value, the better. The greater number of PPDUs transmitted indicates a higher channel access rate for the node.
The number of Spatial Reuse PPDUs. This is the number of PPDUs that are sent using the OBSS PD based SR. The higher the count, the better. A higher count of Spatial Reuse PPDUs signals that OBSS PD is enabling additional channel access and providing gain.
The ratio of SR PPDUs to Total PPDUs. This is a number used to find how effective spatial reuse is. The ratio shows that a significant of channel access is provided due to SR. The higher the ratio, the better. A higher ratio indicates that the amount of channel access done using OBSS PD is a significant portion and working as expected.
The Success/Failure of Total PPDUs. This is defined as the number of PPDUs that have been successfully received at the destination/failed to reach the destination. In this measurement, the higher the success/the lower the failure, the better. A lower failure rate signifies that the channel access is efficient and may not be retried multiple times to transmit a single PPDU.
The Success/Failure of SR PPDUs. This is defined as the number of SR PPDUs that have been successfully received at the destination/failed to reach the destination. In this measurement, the higher the success/the lower the failure, the better. A lower failure rate signifies that the channel access using OBSS PD is efficient and an apt OBSS PD threshold may be utilized in various embodiments.
The MCS applied during SR PPDU. This is defined as the modulation scheme used during the OBSS PD channel access. The higher MCS used, the better. The MCS here can be the most used MCS, the average MCS or the most recently used MCS during OBSS PD based channel access. A higher MCS allows higher throughput per channel access or less time to transmit a fixed amount of data. Higher MCS during OBSS PD signifies that the threshold chosen is optimal for channel access.
The MCS applied during non-SR PPDU. This is defined as the modulation scheme used during the non OBSS PD based channel access. This value can be used to compare the MCS applied during SR PPDU to see if the channel access does contribute significantly to the overall throughput or not. The higher the ratio, the better. The MCS values used here can be the most used, average MCS or most recently used MCS. A higher MCS during non-OBSS PD based channel access signifies that the OBSS PD may not be providing significant gain and can be switched off.
The feedback value/reward value chosen from these measurements can be either one or any combination of these values. Once the feedback/reward has been chosen, an algorithm that maximizes or minimizes the measurements to reach the optimal OBSS PD value can be used.
In one embodiment, a reinforcement learning approach can be used to maximize the reward value. An example of that can be using the Multi Armed Bandit approach. In this approach, the problem can be formulated as:
The MAB algorithm used in this context can be any of the algorithms from the MAB family to perform the OBSS PD adaptation. The specific algorithm to use can be determined at the discretion of the implementation but the underlying steps used would be the same.
In one embodiment, the Upper Confidence Bound (UCB) algorithm can be used to adapt to the optimal OBSS PD threshold. In the UCB algorithm, the arm Kt chosen at time instance t is under the following conditions:
where, k are all the arms available to the MAB, Qt(k) is the sample mean of the reward till time t, c is the confidence factor or upper bound hyperparameter of the algorithm, and Nt(k) is the count of times the arm k has been used till time t. The sample mean is calculated as
where, R is the reward received at time t+1 for choosing arm k.
In alternate embodiments, the MAB algorithm can be replaced with Thompson Sampling, Epsilon Greedy, Gaussian Process UCB or other algorithms.
In case of non-stationary scenarios, the sample mean can be replaced with an exponentially weighted average mean which can accommodate for changes in the environment by accommodating for the latest reward in one embodiment. In an alternate embodiment, the sample mean can be calculated over a finite time horizon instead of infinitely by storing a time-based queue in which the rewards observed beyond some time horizon are no longer used in the sample mean calculation.
The context-based adaptation and the feedback-based adaptation can work standalone, but they can also be used coherently to exploit each other's information and provide additional gain and balance.
The OBSS PD Threshold that the context module chooses can be used as the initial arm for exploration using the feedback module in one embodiment. If the context module generates multiple OBSS PD Thresholds, then those can be chosen as the initial set of arms to explore. Here the definition of the arm is similar to that described herein, the threshold chosen in dB for channel access using OBSS PD.
In one embodiment, the context module can reduce the search space for the feedback module by providing information of the number of arms to iterate over. In this case, the MAB algorithm will use the arms that are close to the observed OBSS RSSI values instead of all the possible OBSS PD threshold values.
where OBSSRSSI′ is the set of values observed by the STA that lie between the maximum and minimum allowed OBSS PD values. In this case the number of arms can be reduced by setting the search space of all possible arms k to
In case of some scenarios where OBSS PD adaptation does not provide any gain to not using OBSS PD or the reward becomes negative when compared to the OBSSPDMIN arm, the OBSS PD adaptation can be disabled. This can happen due to very low SINR when using OBSS PD due to reduced transmission power, or not enough PPDUs in the environment to transmit over. The context module can provide this information to the algorithm module and disable the adaptation.
As illustrated in
In one embodiment, the feedback information is associated with at least one of a throughput of the STA, a number of physical layer protocol data units (PPDUs), a number of SR PPDUs, and a modulation coding scheme (MCS).
In one embodiment, the feedback information comprises control parameters or rewards used to adapt the OBSS PD threshold for SR.
In one embodiment, a multi-armed bandit procedure is used to maximize a reward value used to adapt the OBSS PD threshold for SR.
In one embodiment, an upper confidence bound procedure is used to maximize a reward value used for the updating of the OBSS PD threshold for SR.
In one embodiment, a Thompson Sampling, Epsilon Greedy, or Gaussian Process Upper Confidence Bound procedure is used to maximize a reward value used to adapt the OBSS PD threshold for SR.
In one embodiment, the STA obtains, based on transmissions from nodes in at least one of a basic service set (BSS) or an overlapping BSS (OBSS), network context information for a network environment around an access point (AP) associated with the STA; and updates the OBSS PD threshold for SR based on both the network context information and the feedback information.
The above flowchart illustrates an example method that can be implemented in accordance with the principles of the present disclosure and various changes could be made to the methods illustrated in the flowchart. For example, while shown as a series of steps, various steps could overlap, occur in parallel, occur in a different order, or occur multiple times. In another example, steps may be omitted or replaced by other steps.
Although the present disclosure has been described with an exemplary embodiment, various changes and modifications may be suggested to one skilled in the art. It is intended that the present disclosure encompass such changes and modifications as fall within the scope of the appended claims. None of the description in this application should be read as implying that any particular element, step, or function is an essential element that must be included in the claims scope. The scope of patented subject matter is defined by the claims.
This application claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Patent Application No. 63/445,636 filed on Feb. 14, 2023, which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63445636 | Feb 2023 | US |