Spatial reuse for high-priority services
By selective application of space reuse in latency sensitive and high-priority business scenarios, SRs in throughput improvement in large-scale wireless deployments are solved, and more efficient channel access and spectrum utilization are achieved.
Patent Information
- Application Number
- CN202111250425.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-04-02
- Filing Date
- 2021-10-26
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2041-10-26
AI Technical Summary
In large-scale wireless deployments, space reuse (SR) has only marginal advantages or no advantages in improving network throughput, and may lead to an increase in interference-noise ratio in dense environments, affecting service performance.
By selectively applying spatial reuse, channel access delay is reduced only in delay-sensitive and high-priority service scenarios, and preamble detection threshold and transmission power are dynamically adjusted to achieve OBSS packet detection and channel coexistence.
It effectively reduces channel access delay, improves the spectrum efficiency and network throughput of high-priority services, avoids unnecessary interference, and improves system-level throughput.
Smart Images

Figure CN115209552B_ABST
Abstract
Description
Background Art
[0001] The explosive growth and proliferation of wireless electronic devices has led to increasing challenges in trying to accommodate an increasing number of users on wireless communication channels. For example, high levels of interference introduced by a large number of users can degrade the level of network performance expected by users. To address these challenges, IEEE 802.11 networks have continued to evolve. These challenges have been addressed to some extent by introducing spatial reuse (SR) and basic service set (BSS) color schemes in the IEEE 802.11ax and IEEE 802.11ah implementations, respectively. These schemes are designed to improve network throughput and spectral efficiency in dense environments. BRIEF DESCRIPTION OF THE DRAWINGS
[0002] According to one or more various embodiments, the present disclosure is described in detail with reference to the following drawings. These drawings are provided for illustration purposes only and merely depict typical or example embodiments.
[0003] Figure 1 Illustrated are examples of wireless network deployments that may be implemented for an organization such as an enterprise, educational institution, government entity, healthcare facility, or other organization.
[0004] Figure 2 An example of a spatial reuse scenario is illustrated.
[0005] Figure 3 Illustrated are example operations for applying selective spatial reuse to enhance channel access, according to one embodiment.
[0006] Figure 4 Illustrated are example spatial reuse thresholds and the effects of their application at a transmitter according to one embodiment.
[0007] Figure 5 is a block diagram of an example computing component or device for selective spatial reuse according to one embodiment.
[0008] Figure 6 are example computing components that can be used to implement various features of the embodiments described in this disclosure.
[0009] The drawings are not exhaustive and do not limit the disclosure to the precise forms disclosed. DETAILED DESCRIPTION
[0010] As noted above, certain schemes are aimed at improving network throughput and spectral efficiency in dense environments, one of which is frequency or spatial reuse (SR). This SR feature allows two or more devices in different adjacent basic service sets (BSSs) present in the same frequency channel to transmit simultaneously if certain conditions are met. These conditions are described by using different CCA (clear channel assessment) levels for inter-BSS frames and intra-BSS frames on the same channel. The distinction between inter-BSS frames and intra-BSS frames is given by a color parameter embedded in the packet by the corresponding BSS. Depending on the CCA threshold for inter-BSS frames versus intra-BSS frames, one access point (AP) or device may defer media access to another AP or device depending on the BSS from which the packet originates.
[0011] In particular, the introduction of SR aims to improve system-level throughput by allowing overlapping BSS (OBSS) traffic to overlap with another BSS in time and frequency, essentially by reducing the time to access the channel medium. One of the methods to achieve this is OBSS Packet Detection (OBSS_PD). SR based on OBSS_PD is achieved by manipulating the preamble detection threshold and the transmit power, such as the effective isotropic radiated power (EIRP) of AP and non-AP stations (STAs) throughout the BSS. SR relies on the fact that if there is a high signal-to-noise ratio (SNR) between two entities at a given EIRP, the receiver can withstand some interference caused by simultaneous transmissions in the vicinity and can receive and decode packets at the same time. This also involves not causing interference in turn, and this is achieved by dynamically changing the EIRP. However, simulation results and actual experiments seem to indicate that SR has only marginal advantages (or no advantages at all) in terms of throughput in large wireless deployments.
[0012] Embodiments of the present disclosure solve this problem by avoiding indiscriminately enabling or applying SR for / across all service categories. Instead, various embodiments of the present disclosure reduce channel access latency by selectively applying SR for delay-sensitive and high-priority services that may not be throughput-intensive but may require deterministic access to the channel. In some embodiments, a radio frequency (RF) signal may be detected on a channel used by an AP or client device. It may be determined whether the energy of the RF signal relative to the SR energy level threshold permits transmission by another (e.g., a neighboring AP) on the channel used at the same time. If yes, frames may be transmitted as long as other neighboring APs are associated with a BSS color different from the BSS color of the AP, and as long as the frame to be transmitted belongs to a high priority / low latency service access category. It should be understood that although the embodiments are described in the context of WLAN / 802.11 service access categories, such as video (VI) and voice (VO) services, embodiments of the present disclosure may also be applied / applied to work in other contexts, i.e., for any currently known (or future known) delay-sensitive or high priority services.
[0013] Before describing the embodiments of the disclosed systems and methods in detail, it is useful to discuss certain terms used herein. As used herein, the term "receive sensitivity" may refer to a power threshold below which a device such as a STA cannot detect any energy that may / may not be a WLAN signal. As used herein, the term "CCA threshold" may refer to an energy threshold above which a device will not transmit (multiple) packets. As discussed herein, before transmitting a packet, a device such as a STA performs CCA to detect energy on a channel (if any). As used herein, the term "OBSS_PD" may refer to a threshold above which an OBSS transmission is detected. It should be understood that a packet includes a preamble transmitted at the beginning of each frame. That is, SR introduces the concept of an OBSS-PD threshold into CCA signal detection (CCA+SD, also referred to as preamble detection). In the OBSS context, each BSS will use a unique BSS color, wherein SR allows STAs in each BSS to use a less sensitive preamble detection threshold for OBSS frames during their normal CCA_SD checks. Thus, even though there may be OBSS frames making the channel busy, an 802.11ax STA supporting SR may transmit if it is not very loud and there is still a significant SNR. As used herein, the term "ED threshold" may refer to an energy detection threshold used to detect any other type(s) of RF transmissions during CCA. In other words, the ED threshold refers to the ability of a receiver to detect non-Wi-Fi / WLAN energy on a channel.
[0014] Before describing in detail embodiments of the disclosed systems and methods, it is also useful to describe an example network infrastructure in which these systems and methods may be implemented in various applications. Figure 1 An example of a network configuration 100 that may be implemented for an organization such as an enterprise, educational institution, government entity, medical institution, or other organization is illustrated. The figure illustrates an example of a configuration implemented with an organization having multiple users (or at least multiple client devices 110) and possibly multiple physical or geographic sites 102, 132, 142. The network configuration 100 may include a primary site 102 in communication with a network 120. The network configuration 100 may also include one or more remote sites 132, 142 in communication with the network 120.
[0015] The primary site 102 may include a primary network, which may be, for example, an office network, a home network, or other network facility. The primary site 102 network may be a private network, such as a network that may include security and access controls to limit access to authorized users of the private network. Authorized users may include, for example, employees of a company at the primary site 102, residents of a residence, customers of a business, and the like.
[0016] In the illustrated example, the master site 102 includes a controller 104 that communicates with a network 120. The controller 104 can provide communication with the network 120 for the master site 102, although it may not be the only point of communication with the network 120 for the master site 102. A single controller 104 is illustrated, although the master site may include multiple controllers and / or multiple points of communication with the network 120. In some embodiments, the controller 104 communicates with the network 120 through a router (not shown). In other embodiments, the controller 104 provides router functionality to devices in the master site 102.
[0017] The controller 104 may be operable to configure and manage network devices, such as at the primary site 102, and may also manage network devices at remote sites 132, 134. The controller 104 may be operable to configure and / or manage switches, routers, access points, and / or client devices connected to the network. The controller 104 may itself be an access point, or provide the functionality of an access point.
[0018] The controller 104 can communicate with one or more switches 108 and / or wireless access points (APs) 106a-c. The switches 108 and wireless APs 106a-c provide network connectivity to various client devices 110a-j. Using the connection to the switches 108 or APs 106a-c, the client devices 110a-j can access network resources, including the (primary site 102) network and other devices on the network 120.
[0019] Examples of client devices may include: desktop computers, laptop computers, servers, network servers, authentication servers, Authentication Authorization Accounting (AAA) servers, Domain Name System (DNS) servers, Dynamic Host Configuration Protocol (DHCP) servers, Internet Protocol (IP) servers, Virtual Private Network (VPN) servers, network policy servers, mainframes, tablet computers, e-readers, netbook computers, televisions and similar displays (e.g., smart TVs), content receivers, set-top boxes, personal digital assistants (PDAs), mobile phones, smart phones, smart terminals, dumb terminals, virtual terminals, video game consoles, virtual assistants, Internet of Things (IOT) devices, etc.
[0020] Within the primary site 102, a switch 108 is included as an example of an access point for wired client devices 110i-j to a network established in the primary site 102. The client devices 110i-j can connect to the switch 108 and, through the switch 108, can access other devices within the network configuration 100. The client devices 110i-j can also be able to access the network 120 through the switch 108. The client devices 110i-j can communicate with the switch 108 through a wired 112 connection. In the illustrated example, the switch 108 communicates with the controller 104 through a wired 112 connection, although the connection can also be wireless.
[0021] Wireless APs 106a-c are included as another example of access points for client devices 110a-h to the network established in the main site 102. Each of the APs 106a-c can be a combination of hardware, software, and / or firmware configured to provide wireless network connectivity to the wireless client devices 110a-h. In the illustrated example, the APs 106a-c can be managed and configured by the controller 104. The APs 106a-c communicate with the controller 104 and the network via a connection 112, which can be a wired or wireless interface.
[0022] The network configuration 100 may include one or more remote sites 132. The remote sites 132 may be located in a different physical or geographic location than the primary site 102. In some cases, the remote sites 132 may be located in the same geographic location or possibly the same building as the primary site 102, but lack direct connectivity to the network located within the primary site 102. Instead, the remote sites 132 may utilize connectivity through a different network (e.g., network 120). Figure 1The site 132 illustrated in the figure can be, for example, a satellite office, another floor or suite in a building, etc. The remote site 132 can include a gateway device 134 for communicating with the network 120. The gateway device 134 can be a router, a digital-to-analog modem, a cable modem, a digital subscriber line (DSL) modem, or some other network device configured to communicate with the network 120. The remote site 132 can also include a switch 138 and / or an AP 136 that communicates with the gateway device 134 through a wired or wireless connection. The switch 138 and the AP 136 provide connectivity to the network for various client devices 140a-d.
[0023] In various embodiments, the remote site 132 may communicate directly with the primary site 102 such that client devices 140a-d at the remote site 132 access network resources at the primary site 102 as if the client devices 140a-d were located at the primary site 102. In such embodiments, the remote site 132 is managed by the controller 104 at the primary site 102, and the controller 104 provides the necessary connectivity, security, and accessibility that enables the remote site 132 to communicate with the primary site 102. Once connected to the primary site 102, the remote site 132 may function as part of a private network provided by the primary site 102.
[0024] In various embodiments, the network configuration 100 may include one or more smaller remote sites 142 that include only one gateway device 144 for communicating with the network 120 and a wireless AP 146, and various client devices 150a-b access the network 120 through the wireless AP 146. Such a remote site 142 may represent, for example, the home of an individual employee or a temporary remote office. The remote site 142 may also communicate with the main site 102 so that the client devices 150a-b at the remote site 142 access the network resources at the main site 102, as if these client devices 150a-b were located at the main site 102. The remote site 142 may be managed by the controller 104 at the main site 102 to make this transparency possible. Once connected to the main site 102, the remote site 142 may be used as part of the private network provided by the main site 102.
[0025] The network 120 may be a public or private network, such as the Internet, or other communication network for allowing connectivity between the various sites 102, 130 to 142 and access to the servers 160a-b. The network 120 may include third-party telecommunication lines, such as telephone lines, broadcast coaxial cables, fiber optic cables, satellite communications, cellular communications, etc. The network 120 may include any number of intermediate network devices, such as switches, routers, gateways, servers, and / or controllers, which are not directly part of the network configuration 100, but facilitate communication between the various parts of the network configuration 100 and between the network configuration 100 and other network-connected entities. The network 120 may include various content servers 160a-b. The content servers 160a-b may include various providers of multimedia downloadable and / or streaming content (including audio, video, graphics, and / or text content), or any combination thereof. Examples of content servers 160a-b include, for example, network servers, streaming broadcast and video providers, and cable and satellite television providers. Client devices 110aj, 140a-d, 150a-b may request and access multimedia content provided by content servers 160a-b.
[0026] Despite Figure 1 In the example of FIG. 10 , 10 client devices 110 a-j or stations (STAs) are shown at the master site 102, but in various applications, the network may include a smaller or larger number of STAs. In fact, some implementations may include a significantly larger number of STAs. For example, various wireless networks may include hundreds, thousands, or even tens of thousands of STAs that communicate with their respective APs simultaneously. As noted above, various IEEE 802.11 networks may implement so-called BSS coloring to increase network capacity in such dense environments. This may allow for improvements and frequency reuse between network devices.
[0027] Figure 2 The diagram shows an example network 100 ( Figure 1 Examples of intra-BSS communications that may cause inter-BSS / OBSS interference in the context of Figure 2In the example of FIG. 1 , client device 110C (associated with AP 106B) may be transmitting data on a particular channel (e.g., channel 36), while client device 110D (associated with AP 106C) may also be operating on channel 36. Because client devices 110C and 110D are geographically close / adjacent to each other, they may be able to hear (detect) each other's transmissions above the PD threshold despite belonging to different BSSs. Because the respective PD thresholds of client devices 110C / 110D are triggered by each other's energy, client devices 110C / 110D will compete with each other. Therefore, client devices 110C / 110D will take turns accessing channel 36, and each client device will get approximately half of the available bandwidth (and throughput) of channel 36, but they will not necessarily interfere with each other. That is, the energy of client device 110C is not considered interference by AP 106C because it is too far away, while the energy of client device 110D is not enough to be heard by AP 106B, but client devices 110C / 110D are close enough to cause interference and are therefore blocked by the CCA function from transmitting simultaneously on channel 36. It should be understood that the above is only an example, and inter-BSS / OBSS interference may occur, for example, between two APs, or between an AP and a client device.
[0028] However, with SR, client devices 110C / 110D can coordinate with each other and can be allowed to transmit data simultaneously with a high probability of success because AP 106B cannot hear client device 110D and AP 106C cannot hear client device 110C. Therefore, neither AP 106B / 106C will be interfered with by the other's communication. Coordination comes from the identification of whether a packet belongs to one BSS / BSSID or another BSS / BSSID (on a packet-by-packet basis). This determination can be achieved using BSS coloring. It should be understood that "color" is an index number, such as from 1 to 63, assigned to each AP along with the channel assignment, whether this is manually, automatically determined, or automatically determined and assigned externally. When APs share the same channel and are in the same vicinity, they should have different BSS colors. When two BSSs operating on the same channel have the same BSS color, a condition known as a color conflict occurs and can be detected by client devices. The client device may then alert the AP with which it is associated, prompting the AP to announce the BSS color change (via beaconing).
[0029] In the case of BSS coloring, the client 110C / 110D can determine whether a frame / packet is an inter-BSS frame or an intra-BSS frame by examining the BSS color field contained in the PHY header of the frame. For all intra-BSS frames, the default PD threshold (-82dBm) will still be used to minimize potential interference between devices in the same BSS, but in the case of inter-BSS frames, OBSS-PD allows a more aggressive maximum PD threshold (higher than -82 and more advantageous) to be used to create more parallel transmissions, which translates into more opportunities to exploit SR. The ability to quickly determine the BSS color from the preamble allows a client device receiving an inter-BSS packet to discard it without demodulating the entire packet.
[0030] OBSS-PD spatial reuse allows adjustment of the PD threshold between a minimum of -82dBm and a maximum of -62dBm, modifying the signal detection threshold window to take advantage of SR opportunities. The amount of adjustment allowed will be determined by the transmit power used. Reducing transmit power reduces the likelihood of interference and supports more aggressive PD values. Lower power may reduce data rates, but (for appropriate services, such as high priority / low latency services) the increased transmit opportunities will reduce latency.
[0031] As noted above, in large wireless deployments, SR has only marginal benefits (or no benefits at all) for throughput. Studies have shown that SR does not improve throughput for most APs in such deployments. This can be attributed to the low signal-to-interference-and-noise ratio (SINR) from the OBSS, which increases the number of failed transmissions, which in turn causes the modulation and coding scheme (MCS) rate to be reduced. This effect is cumulative and starts to affect latency-sensitive services as more time is spent on the medium. Therefore, SR is often disabled by default in wireless deployments.
[0032] Figure 3 The diagram illustrates example operations that may be performed by a client device or an AP to selectively apply SR functionality. Typically, upon detecting a signal in a channel / medium, the AP or client device attempts to determine whether the signal is a WLAN signal or some random electromagnetic airborne signal that can be ignored, and compares the power of the signal against different SR-related thresholds to determine how to handle or process the signal.
[0033] At operation 300, upon receiving / detecting a signal on, for example, an operating channel of the AP, the AP may compare the power of the signal to an energy detection (ED) threshold, in this example (also in FIG. Figure 5(shown in the figure) The ED threshold may be -62dBm. It should be understood that if any detected signal is above the -62dBm threshold, the AP does not transmit anything. In this case, the CCA state is set to the "busy" state to prevent the AP from transmitting any data / frames / packets on the channel.
[0034] If the power of the detected signal is not greater than the ED threshold, then at operation 302, another check is performed to determine whether the power of the received signal is greater than the CCA threshold, which in this example ( Figure 4 ) The CCA threshold may be -82dBm. If the power of the detected signal is not greater than the CCA threshold, then whatever the signal is, it is weak enough to assume / assume the channel is idle. Therefore, the CCA state may be set to idle and the AP may begin transmitting data that may be queued. These two operations (300 / 302) may be considered a listen-and-wait method.
[0035] On the other hand, if the power of the received WLAN signal is greater than the CCA threshold, it is determined whether the data queued for transmission at the AP is a high priority or delay-sensitive (multiple) frames / packets. As noted above, one embodiment disclosed herein uses a service example belonging to a voice (VO) or video (VI) service access category as a symbol of high priority or delay-sensitive services. However, embodiments are not necessarily limited to these two specific service types. If the queued data does not correspond to a high priority or delay-sensitive service type, the CCA state can be set to busy, effectively prohibiting the AP from transmitting the queued data. As noted above, according to an embodiment, SR is only utilized for high priority or delay-sensitive services because the use of SR results in a reduction in channel / media access time for such services. When the queued data does not correspond to high priority or delay-sensitive services, the use of SR does not produce any significant advantage (for non-delay-sensitive services, there is no need to reduce the channel / media access time-such services can withstand the delay in accessing the operating channel / media of the AP).
[0036] Another aspect of SR discussed above is the coordinated and simultaneous transmission of data on the same channel (between two OBSSs). That is, the SR function should only be used when the APs transmitting data simultaneously on the same channel are located in different BSSs, that is, they are associated with different BSSIDs. Therefore, at operation 306, a check can be performed to determine whether the BSS color associated / indicated in the detected signal is the same as the BSS color of the AP (detecting the signal). It should be noted that the BSS color can be determined based on the preamble of the detected signal without decoding the payload / entire packet. If yes, the CCA state can be set to busy, thereby preventing the AP from transmitting any data to avoid color overlap / conflict at the AP. That is, if the AP is allowed to transmit when another transmission (detected signal) with the same BSS color occurs, the AP transmission will interfere or conflict with the detected signal. In other words, allowing the AP to transmit will interfere with communications in its own BSS. If no, the detected signal and the data queued for AP transmission will not cause a conflict, and the AP can potentially start transmitting its queued data. It should be noted that in some embodiments, the order of operations can vary. For example, in one embodiment, operation 306 (check for self BSS color match) may occur before operation 304 (check for queued frame type).
[0037] At operation 308 (if the BSS color of the detected signal is different from the color of the AP), a check may be performed to determine if the power of the detected signal is greater than the OBSS_PD threshold (in this example, Figure 5, which may be -72dBm as shown in ). If the power of the detected signal exceeds the OBSS_PD threshold, the CCA state may be set to busy, at which point the AP is prevented from transmitting its queued data. As described above, the OBSS_PD threshold may vary, but in general, the OBSS_PD threshold is set at a power that limits how closely the APs can operate in a given space to ensure interference-free access to the same channel / media. If the power of the detected signal does not exceed the OBSS_PD threshold, the CCA state may be set to idle, and the AP may be allowed to transmit its queued frames (which correspond to a high priority / delay-sensitive service access category or service type). It should be understood that whether the AP's queued data is actually transmitted may depend on the continuous enhanced distributed channel access (EDCA) backoff associated with the channel access priority, which is based on the access category (VO, VI, background (BK), and best effort (BE)). Again, this consideration applies to high priority / delay-sensitive services in the context of these known service access categories. When the selective SR disclosed herein is applied to other types of high priority / delay-sensitive traffic, a similar mechanism may not be needed / used (or a different mechanism may be used).
[0038] As noted above, embodiments of the present disclosure apply to client devices as well as APs. It should therefore be understood that a client device, with respect to the signals it hears, may perform the same operations as those discussed above to determine whether it can transmit queued data / frames on a channel in the context of an SR.
[0039] Figure 4 The resulting effect of the selective SR application method discussed above is illustrated. Figure 4Different thresholds that may be applied at a transmitter (of an AP or client device) are illustrated. In this example, the thresholds are as follows: an ED threshold of -62 dBm; an OBSS_PD threshold of -72 dBm; a CCA threshold of -82 dBm; and a receive sensitivity threshold of -92 dBm. It should be understood that the receive sensitivity threshold refers to a signal strength / power below which a device is generally unable to detect a WLAN signal. In particular, when the power of the detected signal is above the receive sensitivity threshold (indicated by arrow 400), the transmitter (of the AP or client device) may continue to transmit data. Between the CCA threshold and the OBSS_PD threshold (indicated by arrow 402), only high priority / delay-sensitive frames may be transmitted (i.e., a result of a finer granularity / selective application of SR according to various embodiments). In essence, such a boundary of the OBSS_PD and CCA thresholds makes a transmitter with VO / VI or other high priority / delay-sensitive frames queued less likely to be blocked by non-VO traffic sent in an adjacent OBSS, i.e., allowing a greater probability of accessing the channel / media. Above the OBSS_PD threshold (indicated by arrow 404), all frames are blocked from transmission.
[0040] It should be understood that the above thresholds / checks act as filters. It should be understood that more filters (together with the queued high priority / delay sensitive frames) can be applied to make the embodiment more flexible (or robust). Such filters / thresholds can include, for example, a certain threshold number of high priority / delay sensitive frames, a certain specified size of high priority / delay sensitive frames, certain PHY layer parameters (e.g., modulation and coding scheme (MCS), number of spatial streams (SS), guard interval (GI), etc.) for transmitting high priority / delay sensitive frames. For example, if a lower MCS rate is expected to be applied to the queued high priority / delay sensitive frame, it is more likely to be successfully transmitted.
[0041] Figure 5 5 is an example computing component 500 according to one embodiment of the disclosed technology that can be used to implement various features of the elected merge leader. The computing component 500 can be, for example, a server computer, a controller, or any other similar computing component capable of processing data. Figure 5 In an example implementation of , computing component 500 includes a hardware processor 502 and a machine-readable storage medium 504. In some embodiments, computing component 500 may be an AP or a client device ( Figure 1 and Figure 2 )'s processor embodiment.
[0042] The hardware processor 502 may be one or more central processing units (CPUs), semiconductor-based microprocessors, and / or other hardware devices suitable for retrieving and executing instructions stored in the machine-readable storage medium 504. The hardware processor 502 may fetch, decode, and execute instructions such as instructions 506-508 to control a process or operation for selectively applying or utilizing SR. As an alternative or in addition to retrieving and executing instructions, the hardware processor 502 may include one or more electronic circuits including functional electronic components for executing one or more instructions, such as a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or other electronic circuits.
[0043] A machine-readable storage medium, such as machine-readable storage medium 504, may be any electrical, magnetic, optical, or other physical storage device that contains or stores executable instructions. Thus, machine-readable storage medium 504 may be, for example, a random access memory (RAM), a non-volatile RAM (NVRAM), an electrically erasable programmable read-only memory (EEPROM), a storage device, an optical disk, and the like. In some embodiments, machine-readable storage medium 504 may be a non-transitory storage medium, where the term "non-transitory" does not encompass transient propagating signals. As described in detail below, machine-readable storage medium 504 may be encoded with executable instructions, such as instructions 506-508.
[0044] Hardware processor 502 may execute instructions 506 to detect an RF signal present on a channel in use by a transmitter. As noted above, the transmitter may be an AP transmitter or a client device transmitter. The transmitter attempts to determine whether the detected signal is a WLAN signal or some other (irrelevant electromagnetic) signal that is not of concern.
[0045] The hardware processor 502 may execute instructions 508 for: if the energy / power level of the RF signal permits the transmitter to transmit a frame while a neighboring transmitter is in use relative to some SR energy level related threshold, then when the neighboring transmitter is associated with a different BSS and when the frame is associated with at least one of a high priority / low latency / latency sensitive type of traffic, allowing the transmission of the frame (queued for transmission by the transmitter). That is, the conventional use of SR may be enhanced / adapted to be used only when the frame to be transmitted by the transmitter will benefit from faster access to the channel / media on which the transmitter is operating. It should be understood that, as described in the present disclosure, BSSs may be distinguished based on BSS color assignments. However, another identifier / characteristic may be used as a basis for determining whether a transmission is from a different BSS (or a different grouping that may be based on frequency or spatial reuse).
[0046] Figure 6A block diagram of an example computer system 600 is depicted in which various embodiments described herein may be implemented. The computer system 600 includes a bus 602 or other communication mechanism for communicating information, one or more hardware processors 604 coupled to the bus 602 for processing information. The hardware processor(s) 604 may be, for example, one or more general purpose microprocessors.
[0047] The computer system 600 also includes a main memory 606, such as a random access memory (RAM), cache, and / or other dynamic storage device, coupled to the bus 602 for storing instructions and information to be executed by the processor 604. The main memory 606 may also be used to store temporary variables or other intermediate information during execution of instructions to be executed by the processor 604. These instructions, when stored in a storage medium accessible to the processor 604, render the computer system 600 a special-purpose machine customized to perform the operations specified in the instructions.
[0048] The computer system 600 also includes a read only memory (ROM) 608 or other static storage device coupled to the bus 602 for storing static information and instructions for the processor 604. A storage device 610, such as a magnetic disk, optical disk, or USB thumb drive (flash drive), etc., is provided and coupled to the bus 602 for storing information and instructions.
[0049] The computer system 600 may be coupled to a display 612, such as a liquid crystal display (LCD) (or touch screen), via the bus 602 for displaying information to a computer user. An input device 614, including alphanumeric and other keys, is coupled to the bus 602 for communicating information and command selections to the processor 604. Another type of user input device is a cursor control 616, such as a mouse, trackball, or cursor direction keys, for communicating direction information and command selections to the processor 604 and for controlling cursor movement on the display 612. In some embodiments, the same direction information and command selections as cursor control may be achieved via receiving touches on a touch screen without a cursor.
[0050] The computing system 600 may include a user interface module for implementing a GUI, which may be stored in a mass storage device as executable software code executed by the computing device(s). As examples, this module and other modules may include components such as software components, object-oriented software components, class components, and task components, procedures, functions, properties, programs, subroutines, program code segments, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.
[0051] In general, as used herein, the terms "component", "engine", "system", "database", "data repository", etc. may refer to logic embodied in hardware or firmware, or to a set of software instructions written in a programming language, which may have entry points and exit points, such as, for example, Java, C, or C++. Software components may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language (such as, for example, BASIC, Perl, or Python). It should be understood that software components may be called from other components or from themselves, and / or may be dispatched in response to detected events or interrupts. Software components configured for execution on a computing device may be provided on a computer-readable medium, such as a compressed disk, a digital video disk, a flash drive, a magnetic disk, or any other tangible medium, or as a digital download (and may be initially stored in a compressed or installable format that requires installation, decompression, or decryption before execution). Such software code may be stored in part or in whole on a memory device of an executing computing device for execution by the computing device. Software instructions may be embedded in firmware such as an EPROM. It should also be appreciated that hardware components may be comprised of connected logic units, such as gates and flip-flops, and / or may be comprised of programmable units, such as programmable gate arrays or processors.
[0052] The computer system 600 may implement the techniques described herein using custom hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic that, in combination with the computer system, makes the computer system 600 a special purpose machine or programs it as a special purpose machine. According to one embodiment, the techniques herein are performed by the computer system 600 in response to the processor(s) 604 executing one or more sequences of one or more instructions contained in the main memory 606. Such instructions may be read into the main memory 606 from another storage medium such as the storage device 610. Execution of the sequences of instructions contained in the main memory 606 causes the processor(s) 604 to perform the process steps described herein. In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions.
[0053] As used herein, the term "non-transitory media" and similar terms refer to any medium that stores data and / or instructions that cause a machine to operate in a particular manner. Such non-transitory media may include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as storage device 610. Volatile media include dynamic memory, such as main memory 606. Common forms of non-transitory media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tapes or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a pattern of holes, RAM, PROMs and EPROMs, FLASH-EPROMs, NVRAMs, any other memory chips or cassettes and network versions thereof.
[0054] Non-transitory media are distinct from transmission media but can be used in conjunction with transmission media. Transmission media participate in the transfer of information between non-transitory media. For example, transmission media include coaxial cables, copper wire, and optical fiber, including the wires that make up bus 602. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.
[0055] Computer system 600 also includes a communication interface 618 coupled to bus 602. Network interface 618 provides bidirectional data communication coupled to one or more network links connected to one or more local area networks. For example, communication interface 618 can be an integrated services digital network (ISDN) card, a cable modem, a satellite modem, or a modem for providing a data communication connection to a telephone line of a corresponding type. As another example, network interface 618 can be a local area network (LAN) card to provide a data communication connection to a compatible LAN (or a WAN component communicating with a WAN). Wireless links can also be implemented. In any such implementation, network interface 618 sends and receives electrical, electromagnetic or optical signals carrying digital data streams representing various types of information.
[0056] A network link typically provides data communication to other data devices through one or more networks. For example, a network link may provide a connection to a host computer or data equipment operated by an Internet Service Provider (ISP) through a local area network. The ISP, in turn, provides data communication services through the global packet data communication network now commonly referred to as the "Internet." Both local area networks and the Internet use electrical, electromagnetic, or optical signals that carry digital data streams. The signals through the various networks and the signals on the network link and through the communication interface 618 are all example forms of transmission media that carry digital data to and from the computer system 600.
[0057] Computer system 600 can send messages and receive data, including program code, through the network(s), network links and communication interface 618. In the Internet example, a server can send the requested code for an application through the Internet, an ISP, a local area network and communication interface 618.
[0058] The received code may be executed by processor 604 as it is received, and / or stored in storage device 610 or other non-volatile storage for later execution.
[0059] Each of the processes, methods, and algorithms described in the foregoing sections may be embodied in a code component executed by one or more computer systems or computer processors including computer hardware, and fully or partially automated by it. One or more computer systems or computer processors may also be operable to support the execution of related operations in a "cloud computing" environment or operate as "software as a service" (SaaS). The processes and algorithms may be implemented in part or in whole in a dedicated circuit. The various features and processes described above may be used independently of each other, or may be combined in various ways. Different combinations and sub-combinations are intended to fall within the scope of the present disclosure, and certain methods or process blocks may be omitted in some implementations. The methods and processes described herein are also not limited to any particular order, and the blocks or states associated therewith may be executed in other appropriate orders, or may be executed in parallel, or in some other manner. Blocks or states may be added to or removed from the disclosed example embodiments. The performance of certain operations or processes may be distributed between computer systems or computer processors, which may reside in a single machine or be deployed on several machines.
[0060] As used herein, any form of hardware, software or its combination can be utilized to realize circuit.For example, one or more processors, controllers, ASIC, PLA, PAL, CPLD, FPGA, logic components, software routines or other mechanisms can be realized to form circuit.In implementation, various circuits described herein can be implemented as discrete circuits, or described functions and features can be partially or completely shared between one or more circuits.Although various features or functional elements can be described or claimed individually as separate circuits, these features and functionality can be shared between one or more common circuits, and such description should not require or imply that separate circuits are needed to realize these features or functionality.In the case where the circuit is implemented in whole or in part using software, such software can be implemented as operating together with a computing or processing system that can perform the functionality described therein, such as computer system 600.
[0061] As used herein, the term "or" may be interpreted as inclusive or exclusive. In addition, descriptions of resources, operations, or structures in the singular should not be interpreted as excluding the plural. Unless otherwise specifically stated, or otherwise understood in the context of use, conditional language, particularly such as "can," "may," "could," or "might," is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements, and / or steps.
[0062] The terms and phrases used in this document and their variations, unless otherwise expressly stated, should be interpreted as open-ended and non-restrictive. As an example of the foregoing, the term "including" should be interpreted to mean "including but not limited to" and the like. The term "example" is used to provide an illustrative example of the item in question, rather than an exhaustive or restrictive list thereof. The term "one" or "an" should be interpreted to mean "at least one", "one or more", and the like. In some cases, the presence of broad words and phrases such as "one or more", "at least", "but not limited to" or other similar phrases should not be interpreted to mean that a narrower situation is intended or required where there may be no such broad phrases.
Claims
1. A non-transitory machine-readable storage medium having instructions stored thereon, the instructions being executable by a hardware processor of a computing component, the instructions, when executed by the hardware processor, causing the hardware processor to perform the following: detecting a radio frequency (RF) signal present on a channel in use by a transmitter; determining whether the energy level of the RF signal is not greater than an energy detection ED threshold; Based on determining that the energy level of the RF signal is not greater than the ED threshold, determining whether the energy level of the RF signal is greater than a clear channel access CCA threshold; determining, based on determining that the energy level of the RF signal is greater than the CCA threshold, whether a frame to be transmitted by the transmitter on the channel is associated with at least one of a high priority traffic type and a low latency traffic type; In response to determining that the frame is associated with at least one of a high priority traffic type and a low latency traffic type, determining whether the RF signal is associated with a BSS different from a basic service set (BSS) of the transmitter, and determining whether the energy level of the RF signal is greater than an Overlapping BSS Packet Detection (OBSS) PD threshold; as well as Responsive to determining that the RF signal is associated with a different BSS and determining that the energy level of the RF signal is not greater than the OBSS PD threshold, transmission of the frame is permitted.
2. The non-transitory machine-readable storage medium of claim 1, wherein the instructions further cause the hardware processor to: in response to determining that the energy level of the RF signal is greater than the ED threshold, set a CCA state of the computing component to a busy state.
3. The non-transitory machine-readable storage medium of claim 2, wherein the instructions further cause the hardware processor to: in response to determining that the energy level of the RF signal is not greater than the ED threshold and determining that the energy level of the RF signal is not greater than the CCA threshold, set the CCA state of the computing component to an idle state.
4. The non-transitory machine-readable storage medium of claim 3, wherein the instructions further cause the hardware processor to: in response to determining that the frame is not associated with at least one of a high priority traffic type and a low latency traffic type, set the CCA state to a busy state.
5. The non-transitory machine-readable storage medium of claim 4, wherein the instructions further cause the hardware processor to: in response to determining that the RF signal is associated with a BSS that is the same as a BSS of the transmitter, set the CCA state to a busy state. 6 . The non-transitory machine-readable storage medium of claim 5 , wherein the instructions further cause the hardware processor to: in response to determining that the RF signal is greater than the OBSS PD threshold, set the CCA state to a busy state. 7 . The non-transitory machine-readable storage medium of claim 6 , wherein the instructions further cause the hardware processor to: in response to determining that the RF signal is not greater than the OBSS PD threshold, set the CCA state to an idle state.
8. A non-temporary machine-readable storage medium according to claim 1, wherein the instructions further cause the hardware processor to: allow transmission of the frame when a neighboring transmitter is associated with a basic service set (BSS) different from the basic service set (BSS) of the transmitter, and when the frame meets high priority and low latency service-related requirements in addition to being associated with at least one of high priority and low latency service types.
9. A non-temporary machine-readable storage medium according to claim 8, wherein the high priority and low latency service-related requirements include at least one of the following: a threshold number of frames including high priority service types and low latency service types, a threshold size of frames including high priority service types and low latency service types, and the use of physical layer parameters for transmitting the frames.
10. The non-transitory machine-readable storage medium of claim 1, wherein the computing component comprises one of: a computing component of an access point or a computing component of a client device.
11. The non-transitory machine-readable storage medium of claim 1, wherein instructions further cause the hardware processor to adjust the OBSS PD threshold based on a transmit power for the frame.
12. A network device comprising: processor; as well as a memory unit operatively connected to the processor and comprising computer code which, when executed, causes the processor to: detecting a radio frequency (RF) signal present on a channel in use by a first transmitter; determining whether the energy level of the RF signal is not greater than an energy detection ED threshold; Based on determining that the energy level of the RF signal is not greater than the ED threshold, determining whether the energy level of the RF signal is greater than a clear channel access CCA threshold; identifying, based on determining that the energy level of the RF signal is greater than the CCA threshold, that a frame to be transmitted by the first transmitter on the channel is associated with at least one of a high priority traffic type and a low latency traffic type; After determining that the frame is associated with at least one of a high priority traffic type and a low latency traffic type, determining whether the energy level of the RF signal is greater than an Overlapping BSS Packet Detection (OBSS) PD threshold; as well as After determining that the energy level of the RF signal is not greater than the overlapping BSS packet detection OBSS PD threshold, and determining that the adjacent network device operates in an overlapping basic service set OBSS associated with a BSS color different from the basic service set BSS color of the network device, permitting the first transmitter to transmit frames on the channel simultaneously with the RF signal from the second transmitter of the adjacent network device.
13. The network device of claim 12, wherein the computer code, when executed, further causes the processor to set a CCA state of the first transmitter to idle to permit the transmission of the frame. The network device of claim 13 , wherein the CCA threshold is lower than the OBSS PD threshold. 15 . The network device according to claim 12 , wherein the network device comprises one of the following: a wireless local area network (WLAN) access point or a WLAN client device.
16. The network device according to claim 12, wherein the at least one of the high priority service type and the low latency service type comprises a voice (VO) service type or a video (VI) service type.
17. The network device of claim 16, wherein the computer code further causes the processor to inhibit the transmission of the frame upon determining that the energy level of the RF signal exceeds the ED threshold.
18. A network device according to claim 12, wherein the computer code also causes the processor to compare the energy level of the RF signal with a received signal sensitivity threshold, and wherein the computer code also causes the processor to permit the transmission of all queued frames after determining that the energy level of the RF signal exceeds the received signal sensitivity threshold and determining that the energy level of the RF signal is not greater than the CCA threshold, and the all queued frames include frames that are not associated with at least one of the high priority service type and the low latency service type.
Citation Information
Patent Citations
Wireless communication method and wireless communication terminal in high-density environment including overlapped basic service set
CN108141889A
Techniques of improving EDCA mechanism in spatial reuse
CN110024338A