Opportunistic spatial reuse

By enabling and disabling space reuse based on channel utilization in wireless networks, the network performance degradation caused by media contention in large wireless deployments is solved, and the channel throughput and stable network performance is achieved.

CN115996389BActive Publication Date: 2025-06-24HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210423477.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-10-19
Filing Date
2022-04-21
Publication Date
2025-06-24
Estimated Expiration
2042-04-21

AI Technical Summary

Technical Problem

In large-scale wireless deployments, due to the widespread popularity of wireless electronic devices, media contention on wireless communication channels increases, thereby reducing network performance.

Method used

By enabling and disabling space reuse based on channel utilization in a wireless network, ensuring that space reuse is enabled when channel utilization reaches a threshold range, thereby increasing the total capacity of the channel.

Benefits of technology

Effectively utilize space reuse to improve the throughput of wireless channels while avoiding network performance degradation due to interference and packet loss, especially in applications that rely on real-time services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115996389B_ABST
    Figure CN115996389B_ABST
Patent Text Reader

Abstract

Opportunistic spatial reuse. Systems and methods for opportunistic spatial reuse are provided. In various embodiments, the disclosed systems and methods provide mechanisms for enabling and disabling spatial reuse in a wireless network appropriately based on the deployment of the wireless network. In some embodiments, spatial reuse can be enabled and disabled based on various factors such as channel utilization. In some embodiments, spatial reuse can be enabled and disabled appropriately for various traffic types in the wireless network. For example, spatial reuse can be enabled and disabled for downlink traffic (e.g., traffic from an access point to a client device), uplink traffic (e.g., traffic from a client device to an access point), multicast or broadcast traffic (e.g., traffic distributed to multiple receivers), or certain transmission modes (e.g., single-user beamforming transmission, dual-carrier modulation transmission).
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND OF THE INVENTION

[0001] Advances in computer technology have led to an increased integration of computer technology in various industries. For example, advances in wireless network technology have led to the widespread popularity of wireless electronic devices in various applications. While advances in wireless network technology have provided improvements to other technologies and industries, the increasing integration of wireless network technology in various industries has led to an increasing number of technical challenges for wireless network technology. For example, the widespread popularity of wireless electronic devices has led to an increasing number of technical challenges in attempting to accommodate an increasing number of users on a wireless communication channel. A large number of users on a wireless communication channel can result in a high level of interference, which can degrade the network performance of users on the wireless communication channel. The Institute of Electrical and Electronics Engineers (IEEE) has issued various standards (such as the 802.11 standards) to address the various technical challenges that arise in wireless network technology. However, as the use of wireless network technology continues to increase, wireless network technology continues to face technical challenges. BRIEF DESCRIPTION OF THE DRAWINGS

[0002] In accordance with one or more different embodiments, the present disclosure is described in detail with reference to the following drawings. These figures are provided for illustrative purposes only and depict typical or example embodiments.

[0003] Figure 1A Shows an example of a wireless network deployment that can be implemented for an organization such as an enterprise, educational institution, government entity, healthcare institution, or other organization;

[0004] Figure 1B Shows an example of a spatial reuse scenario;

[0005] Figure 2 Shows a block diagram of an example computing component or device associated with opportunistic spatial reuse;

[0006] Figure 3 Shows an example flowchart associated with opportunistic spatial reuse;

[0007] Figures 4A to 4D Shows an example flowchart associated with opportunistic spatial reuse; and

[0008] Figure 5 Is an example computing component that can be used to implement various features of the embodiments described in the present disclosure.

[0009] The drawings are not exhaustive and do not limit the present disclosure to the exact forms disclosed. DETAILED DESCRIPTION

[0010] Due in part to the widespread proliferation of wireless electronic devices, the increased density in wireless networks has created various technical challenges in wireless network deployment. For example, the increased density in wireless networks has brought challenges associated with increased medium contention between wireless networks. Medium contention can occur when access points (APs) and client devices associated with different wireless networks use the same communication channel for communication and are physically close enough to hear (e.g., detect) each other on the same channel. When APs and client devices associated with different wireless networks can hear each other on the same channel, the network performance of different wireless networks can be significantly degraded due to contention and collisions.

[0011] Various methods for improving wireless network technology aim to facilitate parallel transmissions on the same channel and increase throughput in wireless networks. For example, an Overlapping Basic Service Set (OBSS) can refer to a situation where multiple basic service sets associated with different wireless networks are provided over the same channel and connect APs and client devices that are physically close enough to hear each other physically. In such situations, a Basic Service Set (BSS) color scheme can be provided to distinguish between basic service sets transmitted on the same channel. Additionally, spatial reuse allows multiple devices associated with different BSSs on the same channel to transmit simultaneously if certain conditions, such as a Clear Channel Assessment (CCA) threshold, are met. Generally, spatial reuse involves distinguishing between inter-BSS frames and intra-BSS frames on the same channel based on their associated BSS colors. Depending on whether certain conditions (such as the CCA threshold) are met, an AP or a client device can defer access to another AP or another client device.

[0012] Various methods for spatial reuse aim to increase the total capacity of a channel by allowing simultaneous transmissions on the same channel. In one method, spatial reuse can adapt the CCA threshold and adjust the signal level threshold to allow OBSSs to transmit simultaneously. This method can involve manipulating the transmission power. In this method, spatial reuse relies on manipulating the transmission power to a level where the receiver can tolerate some interference caused by simultaneous transmissions. Thus, despite the interference, the receiver can receive and decode packets simultaneously. However, the advantages of this method and other spatial reuse methods are diminished in large-scale wireless deployments. In large-scale wireless deployments, due to the lower Signal-to-Interference-plus-Noise Ratio (SINR) caused by interference and lower transmission power, the use of spatial reuse may result in an increase in packet loss. The increase in packet loss leads to longer transmission times, thereby degrading the overall network performance. This degradation in network performance is particularly evident in various applications that rely on real-time traffic, such as voice applications, streaming applications, and gaming applications. Therefore, the use of spatial reuse in large-scale wireless deployments presents technical challenges that arise in the field of wireless network technology.

[0013] Accordingly, methods and systems for providing opportunistic spatial reuse are disclosed. In various embodiments, the disclosed methods and systems provide mechanisms for appropriately enabling and disabling spatial reuse in a wireless network based on the deployment of the wireless network. In some embodiments, spatial reuse can be enabled and disabled based on various factors such as channel utilization. An AP can use the same channel as the AP to determine the presence of at least one other AP. The AP can determine the channel utilization of the channel based on the traffic on the channel related to the channel capacity. If the channel utilization of the channel is within a threshold channel utilization range, the AP can enable spatial reuse. If the channel utilization of the channel is outside the threshold channel utilization range, the AP can disable spatial reuse. For example, a first AP can determine the presence of a second AP on the same channel as the first AP based on the BSS broadcast by the second AP. The first AP can also determine the channel utilization of the channel shared with the second AP. For example, the first AP can determine that the channel utilization of the channel is 50%. In this example, the threshold channel utilization range for enabling spatial reuse can range from 30% to 70%. Since the channel utilization of the channel is within the threshold channel utilization range for enabling spatial reuse, the first AP can enable spatial reuse. For example, the first AP can broadcast that spatial reuse is enabled for the channel. If the channel utilization of the channel exceeds the threshold channel utilization range or is below the threshold channel utilization range, the first AP can disable spatial reuse. For example, the first AP can broadcast that spatial reuse is disabled for the channel. By enabling and disabling spatial reuse based on channel utilization, spatial reuse can be advantageously utilized in a large wireless deployment while avoiding network performance degradation.

[0014] In some embodiments, spatial reuse can be appropriately enabled and disabled for various traffic types in a wireless network. For example, spatial reuse can be enabled and disabled for downlink traffic (e.g., traffic from an AP to a client device), for uplink traffic (e.g., traffic from a client device to an AP), for multicast or broadcast traffic (e.g., traffic distributed to multiple receivers), or for certain transmission modes (e.g., single-user beamforming transmission, dual-carrier modulation (DCM) transmission). Certain transmission modes can be considered robust because they are less susceptible to interference due to parallel transmissions and are more likely to maintain their integrity in the presence of interference. APs in a wireless network deployment can communicate with each other, e.g., using out-of-band frequencies, and enable spatial reuse for a specific traffic type. For example, APs in a wireless network can communicate with each other to enable spatial reuse for downlink traffic and disable spatial reuse for uplink traffic. To enable spatial reuse for downlink traffic, APs can communicate with each other to enable spatial reuse for traffic from the APs. To disable spatial reuse for uplink traffic, an AP can broadcast to client devices that spatial reuse is disabled. In this example, spatial reuse is disabled for uplink traffic because client devices operate as if spatial reuse is disabled and do not use spatial reuse during transmission. At the same time, spatial reuse is enabled for downlink traffic because APs operate as if spatial reuse is enabled and use spatial reuse during transmission. By enabling and disabling spatial reuse for certain traffic types in a wireless network, spatial reuse can be advantageously used in large wireless deployments for traffic associated with priority applications. Thus, as further described herein, the disclosed methods and systems for opportunistic spatial reuse provide improved wireless network performance in large wireless deployments.

[0015] Before describing embodiments of the disclosed systems and methods in detail, it may be useful to describe an example network installation in which these systems and methods can be implemented in various applications. Figure 1A An example of a network configuration 100 is shown that can be implemented for an organization such as an enterprise, educational institution, government entity, healthcare institution, or other organization. The figure shows an example of a configuration implemented using an organization with multiple users (or at least multiple client devices 110) and potentially multiple physical or geographical sites 102, 132, 142. Network configuration 100 can include a main site 102 that communicates with network 120. Network configuration 100 can also include one or more remote sites 132, 142 that communicate with network 120.

[0016] The primary site 102 may include a primary network, which may be, for example, an office network, a home network, or other network installations. The primary site 102 network may be a private network, such as a network that may include security and access controls to restrict 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 house, customers of a business, etc.

[0017] In the illustrated example, the primary site 102 includes a controller 104 that communicates with the network 120. The controller 104 may provide communication with the network 120 for the primary site 102, although it may not be the only point of communication between the primary site 102 and the network 120. A single controller 104 is shown, but the primary site may include multiple controllers and / or multiple communication points 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 the devices in the primary site 102.

[0018] 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 the 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 itself may be an access point or provide the functionality of an access point.

[0019] The controller 104 may communicate with one or more switches 108 and / or wireless access points (APs) 106a through AP 106c. The switches 108 and wireless APs 106a through AP 106c provide network connections to various client devices 110a through client device 110j. Using the connections to the switch 108 or APs 106a through AP 106c, the client devices 110a through client device 110j may access network resources, including the (primary site 102) network and other devices on the network 120.

[0020] 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), cell phones, smart phones, smart terminals, dumb terminals, virtual terminals, video game consoles, virtual assistants, Internet of Things (IoT) devices, etc.

[0021] Within the main site 102, a switch 108 is included as an example of an access point for a network established in the main site 102 for the wired client devices 110i to 110j. The client devices 110i to 110j can be connected to the switch 108 and, through the switch 108, can be able to access other devices within the network configuration 100. The client devices 110i to 110j can also be able to access the network 120 through the switch 108. The client devices 110i to 110j can communicate with the switch 108 through a wired 112 connection. In the example shown, the switch 108 communicates with the controller 104 through a wired 112 connection, although this connection can also be wireless.

[0022] Another example includes wireless APs 106a to 106c as access points for a network established in the main site 102 for the client devices 110a to 110h. Each of the APs 106a to 106c can be a combination of hardware, software, and / or firmware configured to provide a wireless network connection to the wireless client devices 110a to 110h. In the example shown, the APs 106a to 106c can be managed and configured by the controller 104. The APs 106a to 106c communicate with the controller 104 and the network through a connection 112 (which can be a wired or wireless interface).

[0023] The network configuration 100 can include one or more remote sites 132. The remote sites 132 can be located in a different physical or geographical location from the main site 102. In some cases, compared to the main site 102, the remote sites 132 can be located in the same geographical location or may be located in the same building but lack a direct connection to the network located within the main site 102. Instead, the remote sites 132 can utilize a connection on a different network (e.g., network 120). The sites 132 (such as Figure 1A the site shown) can be 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-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 communicate with the gateway device 134 through a wired or wireless connection. The switch 138 and the AP 136 provide connections to the network for various client devices 140a to 140d.

[0024] In various embodiments, the remote site 132 can communicate directly with the main site 102 such that client devices 140a through 140d at the remote site 132 access network resources at the main site 102 as if the client devices 140a through 140d were located at the main site 102. In such an embodiment, the remote site 132 is managed by the controller 104 at the main site 102, and the controller 104 provides the necessary connectivity, security, and accessibility that enables the remote site 132 to communicate with the main site 102. Once connected to the main site 102, the remote site 132 can be part of a private network provided by the main site 102.

[0025] In various embodiments, the network configuration 100 can include one or more smaller remote sites 142 that include only a gateway device 144 for communicating with the network 120 and a wireless AP 146 for various client devices 150a through 150b to access the network 120. Such a remote site 142 can represent, for example, the home of an individual employee or a temporary remote office. The remote site 142 can also communicate with the main site 102 such that client devices 150a through 150b at the remote site 142 access network resources at the main site 102 as if the client devices 150a through 150b were located at the main site 102. The remote site 142 can be managed by the controller 104 at the main site 102 to enable such transparency. Once connected to the main site 102, the remote site 142 can be used as part of a private network provided by the main site 102.

[0026] Network 120 can be a public or private network (such as, the Internet), or other communication networks for allowing connections between respective sites 102, 130 to 142 and access to servers 160a to 160b. Network 120 can include third-party telecommunications lines such as telephone lines, broadcast coaxial cables, fiber optic cables, satellite communications, cellular communications, etc. Network 120 can include any number of intermediate network devices such as switches, routers, gateways, servers, and / or controllers, which are not a direct part of network configuration 100 but facilitate communication between various parts of network configuration 100 and communication between network configuration 100 and other network-connected entities. Network 120 can include various content servers 160a to 160b. Content servers 160a to 160b can include various providers of multimedia downloadable and / or streamable content, including audio, video, graphics, and / or text content, or any combination thereof. Examples of content servers 160a to 160b include, for example, web servers, streaming radio and video providers, and cable and satellite TV providers. Client devices 110a to 110j, client devices 140a to 140d, and client devices 150a to 150b can request and access multimedia content provided by content servers 160a to 160b.

[0027] Although only 10 client devices 110a to 110j are shown at the main site 102 in the example of Figure 1A , in various applications, the network can include a much larger number of client devices. For example, various wireless networks (such as in a large wireless deployment) can include hundreds, thousands, or even tens of thousands of client devices, and the client devices may communicate with their respective APs simultaneously. In addition, since the number of available wireless channels for communication is limited, these client devices communicating with their respective APs may attempt to use the same wireless channel simultaneously. As described above, communicating using the same wireless channel may result in media contention because the client devices and APs may compete for the use of the wireless channel. If various wireless communication technologies (such as the spatial reuse technologies described herein) are not used in a manner suitable for wireless networks, network performance may degrade due to interference and packet loss. As further described herein, by appropriately enabling and disabling spatial reuse for wireless networks, network performance degradation due to interference and packet loss can be avoided. In addition, the use of opportunistic spatial reuse technologies described herein can increase the throughput of wireless channels, thereby improving overall performance.

[0028] Figure 1B is shown in Figure 1AExamples of Intra-BSS communication that may cause BSS / OBSS interference in the context of the example network 100 shown. In Figure 1B the example, client device 110c (associated with AP 106b) may transmit data on a particular channel, while client device 110d (associated with AP 106c) may also operate on the same channel. Because client devices 110c and 110d are physically close to each other, although they belong to different BSSs, they may be able to hear (e.g., detect) transmissions from each other above their Packet Detection (PD) thresholds. Since the respective PD thresholds of client device 110c and client device 110d are triggered by transmissions from each other, client device 110c and client device 110d contend with each other. Thus, client device 110c and client device 110d will take turns accessing the channel, where each client device obtains approximately half of the available bandwidth and throughput of the channel, but they do not necessarily interfere with each other. That is, the energy transmission from client device 110c is not considered to be interfered with by AP 106c because it is too far away, and the transmission power from client device 110d is not sufficient to be heard by AP 106b, but client device 110c and client device 110d are close enough to interfere and thus cannot transmit simultaneously on the channel. It should be understood that the above is only an example, and BSS / OBSS interference may also occur between other network devices, such as between two APs, or between an AP and a client device.

[0029] However, through spatial reuse, client device 110c and client device 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. Thus, neither AP 106b nor AP 106c is interfered with by the other. The coordination comes from identifying (on a per-packet basis) which packets belong to one BSS or the other BSS. This determination can be done using BSS coloring. It should be understood that "color" is an index number (e.g., from 1 to 63) assigned to individual APs along with channel assignments, either manually, through automatic determination, or through external automatic determination and assignment. When APs share the same channel and are in the same vicinity, they may have different BSS colors. When two BSSs operating on the same channel have the same BSS color, a situation called a color collision occurs.

[0030] In some cases, spatial reuse allows the PD threshold to be adjusted between a minimum of -82 dBm and a maximum of -62 dBm to modify the signal detection threshold window to exploit SR opportunities. The amount of adjustment allowed can be determined by the transmission power used. Reducing the transmission power can reduce the likelihood of interference. The lower transmission power may also reduce the data rate, which can be balanced by increased transmission opportunities. As described above, the advantages of spatial reuse are diminished in large wireless deployments. This may be attributed to the low signal-to-interference-plus-noise ratio (SINR) from interference and the lower transmission power. Therefore, to realize the advantages of spatial reuse in large wireless deployments, the disclosed methods and systems provide mechanisms for appropriately enabling and disabling spatial reuse in a wireless network based on the deployment of the wireless network.

[0031] Figure 2 An example computing component 200 that can be used to implement opportunistic spatial reuse in accordance with various embodiments is shown. The example computing component 200 can be, for example, an access point (AP), a server computer, a controller, or any other similar computing component capable of processing data. In Figure 2 an example implementation, the computing component 200 includes a hardware processor 202 and a machine-readable storage medium 204.

[0032] The hardware processor 202 can be one or more central processing units (CPUs), a semiconductor-based microprocessor, and / or other hardware devices suitable for retrieving and executing instructions stored in the machine-readable storage medium 204. The hardware processor 202 can fetch, decode, and execute instructions, such as instructions 206 through 212, to control processes or operations for opportunistic spatial reuse. As an alternative or addition to fetching and executing instructions, the hardware processor 202 can include one or more electronic circuits that include electronic components for performing the functions of one or more instructions, such as a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or other electronic circuits.

[0033] A machine-readable storage medium, such as the machine-readable storage medium 204, can be any electronic, magnetic, optical, or other physical storage device that contains or stores executable instructions. Thus, for example, the machine-readable storage medium 204 can be random access memory (RAM), non-volatile RAM (NVRAM), electrically erasable programmable read-only memory (EEPROM), a storage device, an optical disc, etc. In some embodiments, the machine-readable storage medium 204 can be a non-transitory storage medium, where the term "non-transitory" does not include transitory propagated signals. As described in detail below, the machine-readable storage medium 204 can be encoded with executable instructions, such as instructions 206 through 212.

[0034] The hardware processor 202 may execute instructions 206 to determine a second AP based on a basic service set (BSS) transmitted by the second AP on a channel shared with the first AP. In various embodiments, an AP periodically broadcasts a BSS that provides information for other devices within the vicinity of the AP (e.g., the basic service area) to connect to and communicate with the AP. The AP may broadcast its capabilities to other nearby devices. The device may connect to the AP and communicate with the AP based on the broadcast capabilities. For example, the AP may broadcast information about the wireless channel and the BSS color for communicating with the AP. In various embodiments, an AP may identify other APs in the vicinity of the AP based on the BSS broadcast by other APs. The AP may determine which channels the other APs are using for communication. In some cases, multiple APs may communicate using the same channel. As described above, if multiple APs communicate using the same channel, medium contention may occur. In such cases, the APs may coordinate with each other via wireless communication on the channel to enable and disable spatial reuse as appropriate. In some cases, the APs may communicate using an out-of-band frequency to coordinate the enabling and disabling of spatial reuse.

[0035] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP. The first AP in the wireless network may receive a beacon transmitted by the second AP. The beacon transmitted by the second AP may provide various information associated with the second AP. Based on the beacon, the first AP may determine that the second AP is operating on the same channel as the first AP. In this example, the first AP may also determine based on the beacon that the second AP has capabilities similar to the first AP (e.g., they are from the same product family). These similar capabilities may include: the ability to communicate using an out-of-band mechanism to coordinate the enabling and disabling of spatial reuse. The first AP may communicate with the second AP using the out-of-band mechanism to coordinate the enabling and disabling of spatial reuse as needed for the wireless network.

[0036] The hardware processor 202 may execute instructions 208 to determine one or more factors associated with a channel, where the one or more factors include channel utilization. In various embodiments, the AP may determine various factors associated with a wireless network. For example, these factors may include: the number of APs using the channel, the channel utilization of the channel, the traffic on the channel, the capacity of the channel, the type of traffic on the channel, the direction of traffic on the channel, and the transmission mode on the channel. The type of traffic on the channel may include, for example, video traffic, voice traffic, broadcast traffic, multicast traffic, etc. The direction of traffic on the channel may include, for example, uplink traffic, downlink traffic, etc. The transmission mode on the channel may include, for example, beamforming transmission, multi-user multiple-input multiple-output (MU-MIMO) transmission, dual-carrier modulation (DCM) transmission, etc. For example, the AP may measure the channel utilization of the channel based on the traffic on the channel and the channel capacity. The channel utilization may be a percentage, ratio, or fraction of the channel capacity being used. For example, if the traffic on the channel is half of the channel capacity, the channel utilization of the channel may be 50%. In some cases, the various factors associated with the wireless network may be determined based on information in a preamble or in a header associated with a data frame transmitted over the wireless network. For example, the data frame may have a high-efficiency signal (HE-SIG-A) field that includes various information associated with the data frame. In the HE-SIG-A field, the second bit, for example, may indicate whether the frame is an uplink transmission or a downlink transmission. The second bit may be set to 1 to indicate that the frame is an uplink transmission, or the second bit may be set to zero to indicate that the frame is a downlink transmission. The determination of whether to enable or disable spatial reuse for the channel may be based on these various factors.

[0037] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP. The first AP and the second AP may operate on the same channel in the wireless network. The first AP may measure the channel utilization of the channel based on the traffic on the channel and the channel capacity. For example, the first AP may measure the traffic facilitated by the first AP and the second AP in the wireless network. The first AP may determine the capacity of the channel based on, for example, the frequency band of the channel and the total throughput of the channel. Based on the traffic measured by the first AP and the channel capacity determined by the first AP, the channel utilization of the channel may be determined. In this example, the first AP may determine whether to enable or disable spatial reuse for the channel based on the channel utilization.

[0038] The hardware processor 202 may execute instructions 210 to determine a spatial reuse strategy based on one or more factors associated with a channel. In various embodiments, the spatial reuse strategy for enabling and disabling spatial reuse for a wireless network may be determined based on various factors associated with the wireless network. Generally, when there is only one AP using a channel on the wireless network, spatial reuse may be disabled for the channel. In some embodiments, the spatial reuse strategy may include: enabling and disabling spatial reuse for a channel based on the channel utilization of the channel. If the channel utilization is within a threshold channel utilization range, spatial reuse may be enabled for the channel. If the channel utilization is outside the threshold channel utilization range, spatial reuse may be disabled for the channel. In certain cases, enabling spatial reuse may contribute to channel utilization. In such cases, when the channel utilization falls within a first threshold channel utilization range associated with enabling spatial reuse, spatial reuse may be enabled. When the channel utilization for which spatial reuse is enabled is outside a second threshold channel utilization range associated with disabling spatial reuse, spatial reuse may be disabled. In certain cases, a delay timer may be used to add a delay between enabling spatial reuse and delaying spatial reuse. Adding a delay between the enabling and disabling of spatial reuse may provide hysteresis for the wireless network and suppress any cascading effects that may be caused by the enabling and disabling of spatial reuse. Spatial reuse may be enabled for a channel based on broadcasts from an AP on the channel to enable spatial reuse. Similarly, spatial reuse may be disabled for a channel based on broadcasts from an AP to disable spatial reuse.

[0039] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP operating on the same channel in the wireless network. The spatial reuse strategy may be implemented for the channel based on the channel utilization of the channel. The first AP may measure the channel utilization of the channel and determine that, for example, the channel utilization (e.g., 50%) is within a first threshold channel utilization range (e.g., 30% to 60%) for enabling spatial reuse. The first AP may enable spatial reuse for the channel by broadcasting to devices on the channel for which spatial reuse is enabled. In this example, the channel utilization may increase. The first AP may measure the channel utilization of the channel and determine that, for example, the channel utilization (e.g., 80%) is outside a second threshold channel utilization range (e.g., 30% to 70%) for disabling spatial reuse. The first AP may disable spatial reuse for the channel by broadcasting to devices on the channel for which spatial reuse is disabled. By enabling and disabling spatial reuse based on channel utilization, spatial reuse can be utilized to increase the throughput on the channel while avoiding situations where spatial reuse may cause a degradation in network performance.

[0040] In some embodiments, the spatial reuse strategy may include enabling and disabling spatial reuse for uplink traffic or downlink traffic. In certain cases, some traffic in a wireless network may have a higher priority than other traffic in the wireless network. For example, the download of flight information at an airport has a higher priority than other traffic, and downlink traffic may have a higher priority than uplink traffic. Whether a frame is sent on the uplink or the downlink can be identified in a preamble or a header associated with the frame. For example, the HE-SIG-A field of a frame contains bits that indicate whether the frame is sent on the uplink or the downlink. Spatial reuse can be used to transmit a frame based on whether the frame is identified as uplink traffic or downlink traffic. For a channel in a wireless network, spatial reuse can be enabled for uplink traffic by broadcasting to devices on the channel where spatial reuse is enabled. An AP on the channel can use spatial reuse from the AP to disable transmission, which blocks spatial reuse for downlink traffic. Similarly, for a channel in a wireless network, spatial reuse can be enabled for downlink traffic by broadcasting to devices on the channel where spatial reuse is disabled, thereby preventing spatial reuse for the uplink. An AP on the channel can use spatial reuse from the AP to enable transmission, which enables downlink spatial reuse.

[0041] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP operating on the same channel in the wireless network. A spatial reuse strategy can be implemented for the channel to enable spatial reuse for downlink traffic. The first AP can communicate with the second AP to enable spatial reuse for downlink traffic and disable spatial reuse for uplink traffic. The first AP and the second AP can broadcast to client devices on the channel where spatial reuse is disabled. Therefore, the client devices on the channel will not use spatial reuse for their transmissions, which blocks spatial reuse for uplink traffic. The first AP can communicate with the second AP to use spatial reuse for transmissions from the first AP and the second AP, which enables spatial reuse for downlink traffic. By enabling and disabling spatial reuse for uplink traffic or downlink traffic, spatial reuse can be used to increase the throughput on the channel for priority traffic while avoiding a degradation in network performance caused by spatial reuse for lower priority traffic.

[0042] In some embodiments, the spatial reuse policy may include enabling and disabling spatial reuse for multicast transmissions or broadcast transmissions. In certain cases, multicast transmissions or broadcast transmissions may be prioritized because if a multicast frame or a broadcast frame is dropped, multiple devices will be affected. Generally, multicast frames and broadcast frames are not identified within the frame. However, multicast frames and broadcast frames are typically transmitted during a specific time period (e.g., after a Delivery Traffic Indication Message (DTIM) beacon). In certain cases, by reserving the time period during which spatial reuse is disabled, the spatial reuse policy can protect multicast transmissions and broadcast transmissions from potential interference or packet loss caused by spatial reuse. Spatial reuse may be enabled for transmissions outside of the reserved time period. For example, APs on a shared channel may communicate to reserve a time period, such as after a DTIM beacon, to disable spatial reuse. During this time period, multicast transmissions and broadcast transmissions can be made without spatial reuse. Spatial reuse may be disabled during multicast transmissions and broadcast transmissions, e.g., by setting appropriate bits corresponding to spatial reuse in the multicast transmissions and broadcast transmissions (e.g., bits 15 to 18 in the HE-SIG-A field). Spatial reuse may be enabled after this time period and disabled again at subsequent time periods reserved for multicast transmissions and broadcast transmissions.

[0043] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP operating on the same channel in the wireless network. When spatial reuse is disabled, the spatial reuse policy may be implemented for the channel to reserve a time period for multicast transmissions. For example, this time period may follow a periodic DTIM beacon broadcast by the first AP and the second AP. According to the spatial reuse policy, the first AP and the second AP may disable spatial reuse during this time period. Transmissions during this time period (which typically include multicast transmissions) are sent with spatial reuse disabled. After this time period, the first AP and the second AP may enable (or re-enable) spatial reuse. Transmissions after this time period (which typically do not include multicast transmissions) are sent with spatial reuse enabled. The time period during which spatial reuse is disabled may be periodic, so that multicast transmissions sent at fixed intervals are sent without spatial reuse. By enabling and disabling spatial reuse for multicast transmissions or broadcast transmissions, spatial reuse can be used to increase the throughput on the channel while protecting multicast transmissions and broadcast transmissions from potential interference and packet loss that may be caused by spatial reuse.

[0044] In some embodiments, a spatial reuse strategy may include enabling and disabling spatial reuse for certain transmission modes. In certain cases, certain transmission modes (such as beamforming transmissions and dual-carrier modulation (DCM) transmissions) may be considered more robust and less susceptible to interference and packet loss that may be caused by spatial reuse. In these cases, spatial reuse may be enabled for transmissions involving such robust transmission modes. Generally, the transmission mode for a frame may be indicated in a preamble or header associated with the frame. Spatial reuse may be enabled for a frame based on the transmission mode indicated in the preamble or header associated with the frame.

[0045] For example, a wireless network (such as, Figure 1A the network configuration shown) may include a first AP and a second AP operating on the same channel in the wireless network. A spatial reuse strategy may be implemented for the channel to enable spatial reuse for DCM frames. According to the spatial reuse strategy, the first AP and the second AP may receive DCM frames and enable spatial reuse for the transmission of DCM frames. The first AP and the second AP may disable reuse for transmissions associated with other transmission modes. By enabling and disabling spatial reuse for certain transmission modes, spatial reuse can be utilized to increase throughput on the channel, to obtain a more robust traffic that is more resistant to interference and packet loss, while avoiding a degradation in network performance due to spatial reuse for less robust traffic that is less resistant to interference and packet loss.

[0046] The hardware processor 202 may execute the instructions 212 to transmit data frames based on the spatial reuse strategy. In various embodiments, a data frame may be transmitted in parallel with another data frame using spatial reuse, or a data frame may be transmitted in a case where spatial reuse is disabled. For example, as described with respect to Figure 1B the transmission in which spatial reuse is enabled may involve transmitting a first data frame in parallel with a second data frame. The second data frame may be transmitted at a reduced transmission power to reduce the likelihood of interference with the first data frame. To transmit a data frame in a case where spatial reuse is disabled, a device (such as an AP) waits for the channel to be idle (e.g., no other device is transmitting on the channel) to transmit the data frame.

[0047] Figure 3 An example process 300 associated with opportunistic spatial reuse is shown. The example process 300 may be associated with one or more functions performed, for example, by Figure 2 the example computing component 200. It should be understood that, unless otherwise specified, additional, fewer, or alternative steps may be performed in a similar or alternative order or in parallel based on the various features and embodiments discussed herein.

[0048] As Figure 3As shown, example process 300 depicts steps associated with enabling and disabling spatial reuse based on channel-based channel utilization. At step 302, example process 300 involves a scanning function. The scanning function can involve scanning channels for an access point (AP). As described herein, channels for an AP can be scanned based on, for example, a basic service set (BSS) transmitted by the AP. At step 312, example process 300 involves a channel utilization function. The channel utilization function can involve measuring traffic on a channel and determining the channel utilization of the channel based on the traffic and the channel capacity. At step 306, example process 300 involves determining multiple BSSs on the channel. If there are not multiple BSSs on the channel, example process 300 disables spatial reuse for the channel at step 304. If there are multiple BSSs on the channel, example process 300 determines at step 308 whether the channel utilization is within a range. For example, the range can be a threshold channel utilization range associated with enabling spatial reuse. If the channel utilization is within the range (and there are multiple BSSs on the channel), example process 300 enables spatial reuse for the channel at step 310. If the channel utilization is not within the range, example process 300 disables spatial reuse for the channel at step 304.

[0049] Figures 4A to 4D shows an example process associated with opportunistic spatial reuse. The example process can be associated with one or more functions performed by, for example, Figure 2 example computing component 200. It should be understood that, unless otherwise stated, additional, fewer, or alternative steps can be performed in a similar or alternative order or in parallel based on the various features and embodiments discussed herein.

[0050] Figure 4A shows an example process 400 associated with enabling spatial reuse for uplink traffic. As Figure 4AAs shown, example process 400 involves a first access point (AP) 402, a second AP 404, a first client device 406, and a second client device 408. At step 410, the first AP 402 broadcasts a basic service set (BSS) that allows the second AP 404 to determine that the first AP 402 is using the same channel as the second AP 404. The second AP 404 may also broadcast a BSS that allows the first AP 402 to determine that the second AP 404 is using the same channel as the first AP 402. At step 412, the second AP 404 communicates a spatial reuse policy with the first AP 402. In this example, the spatial reuse policy may involve enabling spatial reuse for uplink traffic and disabling spatial reuse for downlink traffic. To implement the spatial reuse policy, the first AP 402 and the second AP 404 will not use spatial reuse for transmissions from the first AP 402 and from the second AP 404. At step 414, the first AP 402 may broadcast to the first client device 406 (and other client devices associated with the first AP 402) that spatial reuse is enabled. At step 416, the second AP 404 may broadcast to the second client device 408 (and other client devices associated with the second AP 404) that spatial reuse is enabled. At step 418a, the first client device 406 may transmit a first data frame for which spatial reuse is enabled. At step 418b, the second client device 408 may transmit a second data frame for which spatial reuse is enabled in parallel with the first data frame.

[0051] Figure 4B Example process 420 associated with enabling spatial reuse for downlink traffic is shown. As Figure 4BAs shown, example process 420 involves a first AP 422, a second AP 424, a first client device 426, and a second client device 428. At step 430, the first AP 422 broadcasts a BSS that allows the second AP 424 to determine that the first AP 422 is using the same channel as the second AP 424. The second AP 424 may also broadcast a BSS that allows the first AP 422 to determine that the second AP 424 is using the same channel as the first AP 422. At step 432, the second AP 424 communicates a spatial reuse policy with the first AP 422. In this example, the spatial reuse policy may involve enabling spatial reuse for downlink traffic and disabling spatial reuse for uplink traffic. To implement the spatial reuse policy, the first AP 422 and the second AP 424 will use spatial reuse for transmissions from the first AP 422 and from the second AP 424. At step 434, the first AP 422 may broadcast to the first client device 426 (and other client devices associated with the first AP 422) that spatial reuse is disabled. At step 436, the second AP 424 may broadcast to the second client device 428 (and other client devices associated with the second AP 424) that spatial reuse is disabled. Thus, the first client device 426 and the second client device 428 will not use spatial reuse in their transmissions to the first AP 422 and the second AP 424. At step 438a, the first AP 422 may transmit a first data frame for which spatial reuse is enabled. At step 438b, the second AP 424 may transmit a second data frame for which spatial reuse is enabled in parallel with the first data frame.

[0052] Figure 4C Example process 450 associated with disabling spatial reuse for multicast traffic is shown. As Figure 4AAs shown, example process 450 involves a first AP 452, a second AP 454, a first client device 456, and a second client device 458. At step 460, the first AP 452 broadcasts a BSS that allows the second AP 454 to determine that the first AP 452 is using the same channel as the second AP 454. The second AP 454 may also broadcast a BSS that allows the first AP 452 to determine that the second AP 454 is using the same channel as the first AP 452. At step 462, the second AP 454 communicates a spatial reuse policy with the first AP 452. In this example, the spatial reuse policy may involve disabling spatial reuse for multicast traffic. To implement the spatial reuse policy, the first AP 452 and the second AP 454 disable spatial reuse for transmissions from the first AP 452 and from the second AP 454 for a time period associated with the time when multicast traffic is normally transmitted. At step 464a, prior to this time period, the first AP 452 may transmit a first data frame for which spatial reuse is enabled. At step 464b, the second AP 454 may transmit a second data frame for which spatial reuse is enabled in parallel with the first data frame. At step 468, the first AP 452 may disable spatial reuse and allow the channel to be idle for the transmission of multicast traffic without spatial reuse. At step 470, the second AP 454 may transmit a multicast frame to a multicast address received by the second client device 458.

[0053] Figure 4D Example process 480 associated with enabling spatial reuse for a transmission mode is shown. As Figure 4DAs shown, example process 480 involves a first AP 482, a second AP 484, a first client device 486, and a second client device 488. At step 490, the first AP 482 broadcasts a BSS that allows the second AP 484 to determine that the first AP 482 is using the same channel as the second AP 484. The second AP 484 can also broadcast a BSS that allows the first AP 482 to determine that the second AP 484 is using the same channel as the first AP 482. At step 492, the second AP 484 communicates a spatial reuse policy with the first AP 482. In this example, the spatial reuse policy can involve enabling spatial reuse for transmission modes such as beamforming transmissions. To implement the spatial reuse policy, the first AP 482 and the second AP 484 will enable spatial reuse for beamforming transmissions, which can be identified from the preamble or header of a frame. At step 494, the first AP 482 can receive a first data frame associated with a beamforming transmission. At step 496, the second AP 484 can receive a second data frame associated with a beamforming transmission. At step 498a, the first AP 482 can transmit the first data frame for which spatial reuse is enabled. At step 498b, the second AP 484 can transmit the second data frame for which spatial reuse is enabled in parallel with the first data frame. Spatial reuse can be enabled for data originating from an AP or a client device (or other network device). This example shows the first AP and the second AP for which spatial reuse is enabled transmitting the first data frame and the second data frame in parallel. In other examples, the first client device and the second client device for which spatial reuse is enabled can transmit data frames in parallel. Additionally, the AP and the client device for which spatial reuse is enabled can transmit data frames in parallel.

[0054] Figure 5 A block diagram depicts an example computer system 500 in which various embodiments described herein can be implemented. Computer system 500 includes a bus 502 or other communication mechanism for passing information, and one or more hardware processors 504 coupled to bus 502 for processing information. The (multiple) hardware processors 504 can be, for example, one or more general-purpose microprocessors.

[0055] Computer system 500 also includes a main memory 506 coupled to bus 502, such as a random access memory (RAM), a cache, and / or other dynamic storage devices, for storing information and instructions to be executed by processor 504. Memory 506 can also be used to store temporary variables or other intermediate information during execution of instructions to be executed by processor 504. Such instructions, when stored in a storage medium accessible to processor 504, cause computer system 500 to present a special-purpose machine customized to perform the operations specified in the instructions.

[0056] The computer system 500 also includes a read-only memory (ROM) 508 or other static storage device coupled to the bus 502 for storing static information and instructions for the processor 504. A storage device 510, such as a magnetic disk, an optical disk, or a USB thumb drive (flash drive), for storing information and instructions is provided and coupled to the bus 502.

[0057] The computer system 500 may be coupled via the bus 502 to a display 512, such as a liquid crystal display (LCD) (or a touch screen), for displaying information to a computer user. An input device 514, including alphanumeric keys and other keys, is coupled to the bus 502 for passing information and command selections to the processor 504. Another type of user input device is a cursor control 516, such as a mouse, a trackball, or cursor direction keys, for passing direction information and command selections to the processor 504 and for controlling cursor movement on the display 512. In some embodiments, the same direction information and command selections as for the cursor control may be implemented by receiving touches on a touch screen without a cursor.

[0058] The computing system 500 may include a user interface module to implement a GUI, which may be stored in a mass storage device as executable software code executed by one or more computing devices. By way of example, the module and other modules may include components such as software components, object-oriented software components, class components, and task components, processes, functions, attributes, procedures, subroutines, program code segments, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.

[0059] Generally, as used herein, terms such as "component", "engine", "system", "database", "data store", etc. may refer to logic embodied in hardware or firmware, or to a collection of software instructions, possibly having entry and exit points, written in a programming language such as 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 BASIC, Perl, or Python. It should be understood that software components may be called from other components or from themselves, and / or may be called in response to detected events or interrupts. Software components configured to execute on a computing device may be provided on a computer-readable medium, such as a compact disc, digital video disc, flash drive, magnetic disk, or any other tangible medium, or as a digital download (and may initially be stored in a compressed or installable format that requires installation, decompression, or decryption prior to execution). Such software code may be stored, in whole or in part, on the memory device of the executing computing device for execution by the computing device. Software instructions may be embedded in firmware, such as an EPROM. It will also be understood that hardware components may include connected logic units, such as gates and flip-flops, and / or may include programmable units, such as programmable gate arrays or processors.

[0060] Computer system 500 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, cause the computer system 500 to be or be programmed as a special-purpose machine. According to one embodiment, the techniques herein are performed by computer system 500 in response to one or more sequences of one or more instructions contained in main memory 506 being executed by (a) processor(s) 504. These instructions may be read into main memory 506 from another storage medium, such as storage device 510. Execution of the instruction sequences contained in main memory 506 causes (a) processor(s) 504 to perform the processing steps described herein. In an alternative embodiment, hardwired circuitry may be used in place of or in combination with software instructions.

[0061] As used herein, the term "non-transitory medium" and like 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 can include non-volatile media and / or volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 510. Volatile media includes dynamic memory, such as main memory 506. Common forms of non-transitory media include, for example, floppy disks, flexible disks, hard disks, solid state drives, magnetic tape, or any other magnetic data storage media, CD-ROM, any other optical data storage media, any physical media with hole patterns, RAM, PROM, and EPROM, FLASH-EPROM, NVRAM, any other memory chip or cartridge memory, and networked versions thereof.

[0062] Non-transitory media is different from transmission media but can be used in conjunction with transmission media. Transmission media participates in transferring information between non-transitory media. For example, transmission media includes coaxial cables, copper wire, and fiber optics, including the wires that make up bus 502. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave and infrared data communications.

[0063] Computer system 500 also includes a communication interface 518 coupled to bus 502. Network interface 518 provides two-way data communication coupling to one or more network links connected to one or more local networks. For example, communication interface 518 can be an Integrated Services Digital Network (ISDN) card, cable modem, satellite modem, or a modem for providing a data communication connection to a corresponding type of telephone line. As another example, network interface 518 can be a Local Area Network (LAN) card for providing a data communication connection to a compatible LAN (or a WAN component communicating with a WAN). A wireless link can also be implemented. In any such implementation, network interface 518 transmits and receives electrical, electromagnetic, or optical signals carrying digital data streams representing various types of information.

[0064] Network links typically provide data communication to other data devices through one or more networks. For example, a network link can provide a connection to a host or a data device operated by an Internet Service Provider (ISP) through a local 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 networks and the Internet use electrical, electromagnetic, or optical signals that carry digital data streams. Signals through various networks and signals through communication interface 518 on network links, which carry digital data into and out of computer system 500, are example forms of transmission media.

[0065] The computer system 500 can send messages and receive data, including program code, via one or more networks, network links, and communication interface 518. In an Internet example, a server can transmit requested code for an application via the Internet, an ISP, a local network, and communication interface 518.

[0066] The received code can be executed by the processor 504 upon receipt, and / or stored in the storage device 510 or other non-volatile storage means for later execution.

[0067] Each of the processes, methods, and algorithms described in the preceding sections can be embodied in code components executed by one or more computer systems or computer processors including computer hardware, and be fully or partially automated thereby. One or more computer systems or computer processors can also operate to support the execution of the relevant operations in a "cloud computing" environment or as "software as a service" (SaaS). The processes and algorithms can be implemented in part or in whole in dedicated circuitry. The various features and processes described above can be used independently of one another or can be combined in various ways. Different combinations and sub-combinations are intended to fall within the scope of this disclosure, and certain method or process blocks can 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 can be executed in other suitable orders, or can be executed in parallel, or in some other way. Blocks or states can be added to or removed from the disclosed example embodiments. The execution of certain operations or processes can be distributed among computer systems or computer processors, not only residing within a single machine but deployed across multiple machines.

[0068] As used herein, circuitry can be implemented using any form of hardware, software, or a combination thereof. For example, one or more processors, controllers, ASICs, PLAs, PALs, CPLDs, FPGAs, logic components, software routines, or other mechanisms can be implemented to form circuitry. In an implementation, the various circuits described herein can be implemented as discrete circuits, or the described functions and features can be partially or fully shared among one or more circuits. Even though the various features or elements of a function can be described or claimed separately as separate circuits, these features and functions can be shared among one or more common circuits, and such a description should not require or imply the need for separate circuits to implement these features or functions. Where the circuitry is implemented in whole or in part using software, such software can be implemented to operate with a computing or processing system (such as, computer system 800) capable of performing the functions described thereof.

[0069] As used herein, the term "or" may be construed to have either an inclusive or an exclusive meaning. Additionally, the description of a singular resource, operation, or structure should not be construed to exclude a plural. Unless otherwise expressly stated or otherwise understood in the context in which it is used, conditional language such as "can", "could", "may", or "might" generally is intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements, and / or steps.

[0070] Unless otherwise expressly stated, the terms and phrases used in this document and their variants should be construed as open-ended rather than limiting. Adjectives such as "conventional", "traditional", "normal", "standard", "known", and terms of similar import should not be construed to limit the item described to a given time period or to items available as of a given time, but should be understood to include conventional, traditional, normal, or standard technologies that may be available or known at any time now or in the future. In some instances, the presence of phrases such as "one or more", "at least", "but not limited to", or other similar phrases should not be understood to imply that a narrower case is intended or required where such broadening phrases may be absent.

Claims

1. A method, comprising: Determining, by a first access point AP, the second AP based on a basic service set BSS transmitted by a second AP on a channel shared with the first AP; Determining, by the first AP, one or more factors associated with the channel, wherein the one or more factors include channel utilization; Determining, by the first AP, a spatial reuse policy based on the one or more factors associated with the channel; And Transmitting, by the first AP, a data frame based on the spatial reuse policy; Wherein the spatial reuse policy involves at least one of the following: Enabling spatial reuse for downlink traffic, wherein spatial reuse is enabled for transmissions from the first AP and wherein spatial reuse is disabled for transmissions from client devices associated with the first AP; Enabling spatial reuse for uplink traffic, wherein spatial reuse is disabled for transmissions from the first AP and wherein spatial reuse is enabled for transmissions from client devices associated with the first AP; Disabling spatial reuse for multicast transmissions, wherein spatial reuse is disabled for a time period associated with the multicast transmission; Enabling spatial reuse based on a transmission mode, wherein spatial reuse is enabled based on a preamble associated with the data frame and wherein the preamble indicates the transmission mode associated with the data frame; and Wherein a delay is added between enabling the spatial reuse and disabling the spatial reuse.

2. The method according to claim 1, wherein the spatial reuse policy involves a threshold channel utilization range, wherein if the channel utilization is within the threshold channel utilization range, spatial reuse is enabled for the channel, and wherein if the channel utilization is outside the threshold channel utilization range, spatial reuse is disabled for the channel.

3. The method according to claim 1, wherein the channel utilization is based on the traffic volume on the channel and the capacity of the channel.

4. The method according to claim 1, wherein the spatial reuse policy is communicated between the first AP and the second AP based on an out-of-band mechanism.

5. A system, comprising: A processor; And A memory operatively connected to the processor and including computer code which, when executed, causes the system to: Determine the AP based on a basic service set BSS transmitted by an access point AP on a channel shared with the system; Determine one or more factors associated with the channel; Determine a spatial reuse policy based on the one or more factors associated with the channel, wherein the spatial reuse policy involves enabling spatial reuse for downlink traffic; And Communicate the spatial reuse policy with the AP; At least one of the following: Broadcast to client devices that spatial reuse is disabled for the channel, and Communicate with the AP that spatial reuse is enabled for transmissions from the AP; And Wherein a delay is added between enabling the spatial reuse and disabling the spatial reuse.

6. The system according to claim 5, wherein the spatial reuse policy involves a threshold channel utilization range, wherein if the channel utilization of the channel is within the threshold channel utilization range, spatial reuse is enabled for the channel, and wherein if the channel utilization is outside the threshold channel utilization range, spatial reuse is disabled for the channel.

7. The system according to claim 5, wherein the spatial reuse policy involves disabling spatial reuse for multicast transmissions, wherein spatial reuse is disabled for a period of time associated with the multicast transmission.

8. The system according to claim 5, wherein the spatial reuse policy involves enabling spatial reuse based on a transmission mode, wherein spatial reuse is enabled based on a preamble associated with a data frame, and wherein the preamble indicates the transmission mode associated with the data frame.

9. A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processor of a computing system, cause the computing system to: Determine the AP based on a basic service set BSS transmitted by an access point AP on a channel shared with the system; Determine one or more factors associated with the channel; Determine a spatial reuse policy based on the one or more factors associated with the channel, wherein the spatial reuse policy involves enabling spatial reuse for uplink traffic; And Communicate the spatial reuse policy to the AP; And At least one of the following: Broadcast to a client device that spatial reuse is enabled for the channel, and Communicate with the AP that spatial reuse is disabled for transmissions from the AP; And Wherein a delay is added between enabling the spatial reuse and disabling the spatial reuse.

10. The non-transitory computer-readable storage medium according to claim 9, wherein the spatial reuse policy involves a threshold channel utilization range, wherein if the channel utilization of the channel is within the threshold channel utilization range, spatial reuse is enabled for the channel, and wherein if the channel utilization is outside the threshold channel utilization range, spatial reuse is disabled for the channel.

11. The non-transitory computer-readable storage medium according to claim 9, wherein the spatial reuse policy involves disabling spatial reuse for multicast transmissions, wherein spatial reuse is disabled for a period of time associated with the multicast transmission.

12. The non-transitory computer-readable storage medium according to claim 9, wherein the spatial reuse policy involves enabling spatial reuse based on a transmission mode, wherein spatial reuse is enabled based on a preamble associated with a data frame, and wherein the preamble indicates the transmission mode associated with the data frame.

13. The method according to claim 1, further comprising: Broadcast to a client device that spatial reuse is enabled for the channel.

14. The system according to claim 5, wherein: Spatial reuse is enabled for transmissions from the AP; Spatial reuse is disabled for transmissions from a client device associated with the AP.

15. The non-transitory computer-readable storage medium according to claim 9, wherein Spatial reuse is disabled for transmissions from the AP; and Spatial reuse is enabled for transmissions from a client device associated with the AP.

Citation Information

Patent Citations

  • High efficiency wireless (HEW) access point (AP) coordination protocol

    CN105493583A

  • Dynamic forbiddance of wireless transmissions by overlapping basic service sets

    CN108353436A

  • Broadcast / multicast collision free frame transmission

    US20090213776A1