Wireless network load balancing
By introducing centralized or semi-distributed load balancing technology into wireless mesh networks, the load information and load balancing requests of each AP are coordinated, and the problems of load imbalance and non-convergent load balancing in wireless mesh networks are solved, and the network throughput and service quality are improved.
Patent Information
- Application Number
- CN202380064172.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-09-15
- Filing Date
- 2023-08-22
- Publication Date
- 2025-04-25
AI Technical Summary
In wireless mesh networks, the prior art is difficult to effectively coordinate load balancing between different access points (APs), resulting in possible load imbalance and non-converging back and forth load balancing actions in the network.
By introducing centralized or semi-distributed load balancing technology into the mesh network, direct communication between central controllers or APs is used to collect load information of each AP, identify the most congested frequency band and AP, and send load balancing requests to the relevant APs to achieve dynamic load adjustment.
It effectively prevents load imbalance in the network, avoids non-converging load balancing actions, and improves the overall throughput and service quality of the network.
Smart Images

Figure CN119896016A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of U.S. non-provisional patent application No. 17 / 932,622, entitled “WIRELESS NETWORK LOAD BALANCING” and filed on September 15, 2022, which is expressly incorporated herein by reference in its entirety. Technical Field
[0003] The present disclosure relates generally to wireless communications, and more particularly to addressing techniques for load balancing network nodes in wireless networks. Background Art
[0004] A wireless local area network (WLAN) may be formed by one or more wireless nodes, such as wireless access points (APs), that provide a shared wireless communication medium for use by multiple client devices, also referred to as wireless stations (STAs). The basic building block of a WLAN that complies with the Institute of Electrical and Electronics Engineers (IEEE) 802.11 family of standards is a basic service set (BSS) managed by an AP. Each BSS is identified by a basic service set identifier (BSSID) announced by the AP.
[0005] The network nodes can be used to form a wireless mesh network. One characteristic of a mesh network is that there are usually multiple paths through the network that a given user or client can take to reach an access point. An example of a mesh network is an access mesh network that complies with the 802.11 standard. If a collection of geographically close clients is equipped with 802.11 cards, they can communicate with other clients in a series of hops until they reach the AP of the mesh network. Typically, the AP is connected to a fixed network using a point-to-point link such as an optical fiber, a copper loop, or via another wireless transmission. Due to latency and system complexity, the number of wireless router hops is usually kept at a certain maximum value, such as six. This limits the coverage area of the wireless mesh network to "clusters" or adjacent communities, which are connected to the fixed network via access points. Additional access points can be added to reduce the number of hops between the client and the AP, and thus reduce latency and the amount of bandwidth occupied on the mesh network. Summary of the invention
[0006] The systems, methods, and devices of the disclosure each have several innovative aspects, no single one of which is solely responsible for the desirable attributes disclosed herein.
[0007] One example aspect includes a method for wireless communications by a network node, comprising: obtaining load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the set. The method also includes identifying a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the method also includes: outputting for transmission to the first wireless device: load information from each wireless device in the set of wireless devices other than the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0008] Another example aspect includes an apparatus for wireless communication by a network node, comprising a memory and a processor coupled to the memory. The processor is configured to obtain load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the set. The processor is further configured to identify a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the processor is further configured to output the following for transmission to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0009] Another example aspect includes an apparatus for wireless communication by a network node, comprising: a component for obtaining load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the set. The apparatus also includes a component for identifying a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the apparatus also includes a component for outputting the following for transmission to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0010] Another example aspect includes a computer-readable medium including stored instructions for wireless communication by a network node, wherein the instructions are executable by a processor to obtain load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the set. The instructions are further executable to identify a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the instructions are further executable to output the following for transmission to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0011] One example aspect includes a method for wireless communications by a network node, comprising: receiving load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device. The method also includes identifying a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the method also includes sending to the first wireless device: load information from each wireless device in the set of wireless devices other than the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0012] Another example aspect includes an apparatus for wireless communication by a network node, comprising a memory and a processor coupled to the memory. The processor is configured to receive load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device. The processor is further configured to identify a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the processor is further configured to send to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0013] Another example aspect includes an apparatus for wireless communication by a network node, comprising: a component for receiving load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device. The apparatus also includes a component for identifying a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the apparatus also includes a component for sending the following to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0014] Another example aspect includes a computer-readable medium including stored instructions for wireless communication by a network node, wherein the instructions are executable by a processor to receive load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device. The instructions are further executable to identify a first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. Additionally, the instructions are further executable to send to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0015] One example aspect includes a method of wireless communication by a network node, comprising: obtaining load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available to the first wireless device. The method also includes balancing communications associated with the network node based on the load information.
[0016] Another example aspect includes an apparatus for wireless communications by a network node, comprising a memory and a processor coupled to the memory. The processor is configured to obtain load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for use by the first wireless device. The processor is further configured to balance communications associated with the network node based on the load information.
[0017] Another example aspect includes an apparatus for wireless communications by a network node, comprising: means for obtaining load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for use by the first wireless device. The apparatus also includes means for balancing communications associated with the network node based on the load information.
[0018] Another example aspect includes a computer-readable medium including stored instructions for wireless communications by a network node, wherein the instructions are executable by a processor to obtain load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available to the first wireless device. The instructions are further executable to balance communications associated with the network node based on the load information.
[0019] After reading the following specific embodiments, these and other aspects of the present invention will become more fully understood. After reviewing the following description of specific, exemplary embodiments of the present invention in conjunction with the accompanying drawings, other aspects, features and embodiments of the present invention will become apparent to those of ordinary skill in the art. Although the various features of the present invention can be discussed for certain embodiments and accompanying drawings below, all embodiments of the present invention may include one or more of the advantageous features discussed herein. In other words, although one or more embodiments may be discussed as having certain advantageous features, one or more of these features may also be used according to the various embodiments of the present invention discussed herein. In a similar manner, although the exemplary embodiments may be discussed below as device, system or method embodiments, it should be understood that these exemplary embodiments can be implemented in various devices, systems and methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The details of one or more aspects of the subject matter described in the present disclosure are set forth in the accompanying drawings and the following description. However, the accompanying drawings illustrate only some typical aspects of the present disclosure and are therefore not to be considered as limiting its scope. Other features, aspects, and advantages will become apparent from the specification, drawings, and claims.
[0021] Figure 1 is a pictorial diagram illustrating an example wireless communication network.
[0022] Figure 2 is a diagram illustrating the hardware aspects of an access point (AP) and two stations.
[0023] Figure 3 is a diagram conceptually illustrating a mesh network including a plurality of AP MLDs.
[0024] Figure 4 is a conceptual illustration used by Figure 3 A block diagram of the available transmission time for each frequency band used by each AP.
[0025] Figure 5 is a diagram conceptually illustrating a mesh network including a plurality of AP MLDs.
[0026] Figure 6is a block diagram of an example of an apparatus having components configured to perform a method of wireless communications by a network node.
[0027] Figure 7 is a flow chart of an example of a method of a method of wireless communications by a network node.
[0028] Figure 8 yes Figure 7 Flowcharts of additional aspects of the method.
[0029] Fig. 9 yes Figure 7 Flowcharts of additional aspects of the method.
[0030] Fig.10 is a block diagram of an example of an apparatus having components configured to perform a method of wireless communications by a network node.
[0031] Fig.11 is a flow chart of an example of a method of a method of wireless communications by a network node.
[0032] Fig.12 is a block diagram of an example of an apparatus having components configured to perform a method of wireless communications by a network node.
[0033] Fig.13 is a flow chart of an example of a method of a method of wireless communications by a network node.
[0034] Fig.14 yes Fig.13 Flowcharts of additional aspects of the method.
[0035] Fig.15 yes Fig.13 Flowcharts of additional aspects of the method.
[0036] Fig.16 yes Fig.13 Flowcharts of additional aspects of the method. DETAILED DESCRIPTION
[0037] The following description is directed to certain specific examples in order to describe the innovative aspects of the present disclosure. However, one of ordinary skill in the art will readily recognize that the teachings herein can be applied in a variety of different ways. Some or all of the examples described may be implemented in a manner that is capable of being implemented in accordance with the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard, the IEEE 802.15 standard, the Bluetooth Special Interest Group (SIG), or the like. The described implementations may be implemented in any device, system, or network capable of transmitting and receiving radio frequency (RF) signals in accordance with one or more of the Long Term Evolution (LTE), 3G, 4G, or 5G (New Radio (NR)) standards, or the like released by the 3rd Generation Partnership Project (3GPP). The described implementations may be implemented in any device, system, or network capable of transmitting and receiving RF signals in accordance with one or more of the following technologies or techniques: code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single carrier FDMA (SC-FDMA), single user (SU) multiple input multiple output (MIMO), and multi-user (MU) MIMO. The described implementations may also be implemented using other wireless communication protocols or RF signals suitable for use in one or more of a wireless personal area network (WPAN), a wireless local area network (WLAN), a wireless wide area network (WWAN), or an Internet of Things (IOT) network.
[0038] Aspects of the present disclosure relate to a joint access point (AP) multi-link device (MLD) configured for multi-link operation (MLO). Specifically, load balancing is performed among AP MLDs in a mesh network in coordinated Wi-Fi AP operation.
[0039] Certain aspects relate to centralized load balancing techniques. Here, all AP MLDs report their available transmission time information (e.g., load information) of all their MLO links to a centralized controller for a mesh network. The controller can calculate load balancing based on the load information and send a request to perform load balancing to one or more APs based on the calculation.
[0040] Certain aspects relate to semi-distributed load balancing techniques. Here, all AP MLDs report their load information of all their MLO links to a controller, and the controller identifies all AP MLDs with N-hop most congested tuples (e.g., N is set to 2 by default). The controller can then transmit available transmit time statistics of all MLO links of 1-hop overlapping AP MLDs of those N-hop most congested tuples to those most congested AP MLDs.
[0041] Certain aspects relate to fully distributed load balancing techniques. Here, each AP MLD of the mesh network can send its load information of all its MLO links to all AP MLDs within N hops (eg, N is set to 2 by default). The AP MLD with the most congested tuple of N hops can perform a load balancing routine.
[0042] Figure 11 is a network diagram illustrating an example wireless communication network 100. According to some aspects, the wireless communication network 100 may be an example of a wireless local area network (WLAN) such as a Wi-Fi network (and will be referred to as the wireless communication network 100 hereinafter). For example, the wireless communication network 100 may be a network implementing at least one of the IEEE 802.11 family of wireless communication protocol standards (such as the standards defined by the IEEE 802.11-2016 specification or its revisions, including but not limited to 802.11ay, 802.11ax, 802.11az, 802.11ba, and 802.11be). The wireless communication network 100 may include numerous wireless communication devices, such as an access point (AP) 102 and a plurality of stations (STAs) 104. Although only one AP 102 is shown, the wireless communication network 100 may also include a plurality of APs 102 (e.g., a plurality of APs as part of an AP multi-link device (MLD)).
[0043] Certain aspects of the present disclosure may relate to multi-link (MLD) communication between wireless MLDs. Each MLD may have a unique media access control (MAC) address, which is also referred to as a MAC service access point (MAC-SAP) endpoint. An example of an MLD device is an AP MLD 102, which includes multiple APs that are each capable of communicating on multiple communication links and establishing a basic service set (BSS) on multiple communication links. Another example of an MLD device is a STA MLD 104, which includes multiple STAs that can communicate with other devices (such as AP MLD 102) on multiple communication links. The STA MLD 104 may have a media access control physical layer (MAC-PHY) instance for each of the multiple communication links, and the MAC address of each MAC-PHY instance may be the same or different.
[0044] Each of the STAs 104 may also be referred to as a mobile station (MS), a mobile device, a mobile handset, a wireless handset, an access terminal (AT), a user equipment (UE), a subscriber station (SS), a non-AP MLD or a subscriber unit, etc. The STAs 104 may represent a variety of devices, such as mobile phones, personal digital assistants (PDAs), other handheld devices, netbooks, notebook computers, tablet computers, laptops, display devices (e.g., TVs, computer monitors, navigation systems, etc.), music or other audio or stereo equipment, remote control devices (“remote controls”), printers, kitchen or other home appliances, remote control keys (e.g., for passive keyless entry and start (PKES) systems), etc.
[0045] A single AP 102 and the associated set of STAs 104 may be referred to as a basic service set (BSS), which is managed by the corresponding AP 102 . Figure 1 Additionally shown is an example coverage area 108 of the AP 102, which may represent a basic service area (BSA) of the wireless communication network 100. The BSS may be identified to users by a service set identifier (SSID) and may also be identified to other devices by a basic service set identifier (BSSID), which may be a medium access control (MAC) address of the AP 102. The AP 102 periodically broadcasts a beacon frame including the BSSID to enable any STA 104 within the wireless range of the AP 102 to "associate" or re-associate with the AP 102 to establish or maintain a corresponding communication link 106 (hereinafter also referred to as a "Wi-Fi link") with the AP 102. For example, the beacon may include an identification of a primary channel used by the corresponding AP 102 and a timing synchronization function for establishing or maintaining timing synchronization with the AP 102. The AP 102 may provide access to external networks to various STAs 104 in the WLAN via the corresponding communication links 106.
[0046] To establish a communication link 106 with AP 102, each of STAs 104 is configured to perform passive or active scanning operations ("scans") on frequency channels in one or more frequency bands (eg, 2.4 GHz, 5 GHz, 6 GHz, or 60 GHz bands). To perform a passive scan, the STA 104 listens for beacons transmitted by the corresponding AP 102 at periodic time intervals, referred to as target beacon transmission times (TBTTs), measured in time units (TUs), where one TU may be equal to 1024 microseconds (μs). To perform an active scan, the STA 104 generates probe requests and sequentially transmits them on each channel to be scanned, and listens for probe responses from the AP 102. Each STA 104 may be configured to identify or select an AP 102 to associate with based on the scan information obtained through passive or active scanning, and perform authentication and association operations to establish a communication link 106 with the selected AP 102. The AP 102 assigns an association identifier (AID) to the STA 104 at the end of the association operation, and the AP 102 uses the association identifier (AID) to track the STA 104.
[0047] As wireless networks become more and more common, STA 104 may have the opportunity to select one of many BSSs within the range of the STA or to select among multiple APs 102 that together form an extended service set (ESS) (including multiple connected BSSs). Extended network stations associated with the wireless communication network 100 may be connected to a wired or wireless distribution system that allows multiple APs 102 to be connected in such an ESS. Therefore, STA 104 may be covered by more than one AP 102 and may be associated with different APs 102 at different times for different transmissions. Additionally, after associating with an AP 102, STA 104 may also be configured to periodically scan its surroundings to find a more appropriate AP 102 to associate with. For example, a STA 104 that is moving relative to its associated AP 102 may perform a "roaming" scan to find another AP 102 with a more desirable network characteristic (such as a larger received signal strength indicator (RSSI) or a reduced traffic load).
[0048] In some cases, STA 104 may form a network without AP 102 or other equipment other than STA 104 itself. An example of such a network is an ad hoc network (or wireless ad hoc network). An ad hoc network may alternatively be referred to as a mesh network or a peer-to-peer (P2P) network. In some cases, an ad hoc network may be implemented within a larger wireless network (such as a wireless communication network 100). In such a specific implementation, although STA 104 may be able to communicate with each other through AP 102 using communication link 106, STA 104 may also communicate directly with each other via direct wireless link 110. Additionally, two STA 104 may communicate via direct communication link 110, regardless of whether the two STA 104 are associated with the same AP 102 and served by the same AP. In such an ad hoc system, one or more STA 104 may assume the role played by AP 102 in the BSS. Such STA 104 may be referred to as a group owner (GO) and may coordinate transmission within the ad hoc network. Examples of the direct wireless link 110 include a Wi-Fi direct connection, a connection established by using a Wi-Fi Tunnel Direct Link Setup (TDLS) link, and other P2P group connections.
[0049] Each of the frequency bands may include multiple sub-channels or frequency channels. For example, PPDUs that comply with IEEE 802.11n, 802.11ac, 802.11ax, and 802.11be standard revisions may be sent on 2.4 GHz, 5 GHz, or 6 GHz frequency bands, each of which is divided into multiple 20 MHz channels. Thus, these PPDUs are sent on a physical channel with a minimum bandwidth of 20 MHz, but larger channels may be formed through channel bonding. For example, a PPDU may be sent on a physical channel with a bandwidth of 40 MHz, 80 MHz, 160 MHz, or 320 MHz by bonding multiple 20 MHz channels together.
[0050] Each PPDU is a composite structure including a PHY preamble and a payload in the form of a PHY service data unit (PSDU). The information provided in the preamble can be used by the receiving device to decode subsequent data in the PSDU. In an instance where the PPDU is sent on a bound channel, the preamble field can be copied and sent in each component channel of a plurality of component channels. The PHY preamble may include both a legacy part (or "legacy preamble") and a non-legacy part (or "non-legacy preamble"). Legacy preambles can be used for other purposes such as packet detection, automatic gain control, and channel estimation. Legacy preambles can also be used to maintain compatibility with legacy devices. The format, decoding, and information provided therein of the non-legacy part of the preamble are based on the specific IEEE 802.11 protocol to be used to send the payload.
[0051] Figure 2 A block diagram of an AP 102 and two STAs 104a and 104x in a BSS is illustrated. The AP 102 is equipped with Nt antennas 224a to 224t. The STA 120m is equipped with Nut,m antennas 252ma to 252mu, and the STA 120x is equipped with Nut,x antennas 252xa to 252xu. The AP 102 is a transmitting entity for the downlink and a receiving entity for the uplink. Each STA 104 is a transmitting entity for the uplink and a receiving entity for the downlink. As used herein, a "transmitting entity" is an independently operated device or equipment capable of sending data via a wireless channel, and a "receiving entity" is an independently operated device or equipment capable of receiving data via a wireless channel. In the following description, the subscript "dn" represents a downlink, the subscript "up" represents an uplink, and N up user terminals are selected to transmit simultaneously on the uplink, N dn user terminals are selected to transmit simultaneously on the downlink, N up May or may not be equal to N dn , N up and Ndn It may be a static value, or can be changed for each scheduling interval.At the access point and user terminal, beam steering or some other spatial processing technique may be used.
[0052] On the uplink, at each STA 104 selected for uplink transmission, a transmit (TX) data processor 288 receives traffic data from a data source 286 and control data from a controller 280. The TX data processor 288 processes (e.g., encodes, interleaves, and modulates) the traffic data for the user terminal based on a coding and modulation scheme associated with the rate selected for the user terminal, and provides a data symbol stream. The TX spatial processor 290 performs spatial processing on the data symbol stream and provides Nut,m transmit symbol streams for Nut,m antennas. Each transmitter unit (TMTR) 254 receives and processes (e.g., converts to analog signals, amplifies, filters, and upconverts) a respective transmit symbol stream to generate an uplink signal. Nut,m transmitter units 254 provide Nut,m uplink signals for transmission from Nut,m antennas 252 to the AP 102.
[0053] Scheduling N up STAs are used to transmit simultaneously on the uplink. Each of these STAs performs spatial processing on its data symbol stream and sends its set of transmit symbol streams to AP 102 on the uplink.
[0054] At AP 102, Nap antennas 224a through 224ap are connected from all N up STAs receive uplink signals transmitted on the uplink. Each antenna 224 provides a received signal to a respective receiver unit (RCVR) 222. Each receiver unit 222 performs processing complementary to that performed by transmitter unit 254 and provides a received symbol stream. RX spatial processor 240 performs receiver spatial processing on Nap received symbol streams from Nap receiver units 222 and provides N up The RX data processor 242 processes (e.g., demodulates, deinterleaves, and decodes) the recovered uplink data symbol streams to obtain decoded data. The decoded data of each user terminal may be provided to a data sink 244 for storage and / or to a controller 230 for further processing.
[0055] On the downlink, at AP 102, TX data processor 210 receives N data packets scheduled for downlink transmission from data source 208. dn The TX data processor 210 processes (e.g., encodes, interleaves, and modulates) the traffic data of each STA based on the rate selected for the STA. The TX data processor 210 processes (e.g., encodes, interleaves, and modulates) the traffic data of each STA based on the rate selected for the STA. dn STA provides N dn TX spatial processor 220 processes N dn The STAs 220 and 221 perform spatial processing (e.g., pre-decoding or beamforming as described in the present disclosure) on the downlink data symbol streams and provide Nap transmit symbol streams for the Nap antennas. Each transmitter unit 222 receives and processes a respective transmit symbol stream to generate a downlink signal. The Nap transmitter units 222 provide Nap downlink signals for transmission from the Nap antennas 224 to the STAs.
[0056] At each STA 120, Nut,m antennas 252 receive Nap downlink signals from the AP 102. Each receiver unit 254 processes the received signal from the associated antenna 252 and provides a received symbol stream. The RX spatial processor 260 performs receiver spatial processing on the Nut,m received symbol streams from the Nut,m receiver units 254 and provides a recovered downlink data symbol stream for the STA. The receiver spatial processing is performed according to CCMI, MMSE, or some other technique. The RX data processor 270 processes (e.g., demodulates, deinterleaves, and decodes) the recovered downlink data symbol stream to obtain decoded data for the STA.
[0057] At each STA 120, a channel estimator 278 estimates the downlink channel response and provides a downlink channel estimate, which may include a channel gain estimate, an SNR estimate, a noise variance, etc. Similarly, a channel estimator 228 estimates the uplink channel response and provides an uplink channel estimate. The controller 280 for each STA typically uses the downlink channel response matrix H for the user terminal. dn,m The controller 230 is based on the effective uplink channel response matrix H up,effTo derive the spatial filter matrix for the access point. The controller 280 for each STA can transmit feedback information (e.g., downlink and / or uplink eigenvectors, eigenvalues, SNR estimates, etc.) to the access point. The controllers 230 and 280 also control the operation of various processing units at the AP 102 and STA 104, respectively.
[0058] Devices (e.g., AP 102 and STA 104) can use wireless signaling to create an ad-hoc network (e.g., a mesh network) to exchange information about the WAN / WLAN mobile environment. A mesh network may include multiple APs 102 joined together to connect one or more clients or STAs 104 to a WAN such as the Internet. One or more APs 102 may include a wired backhaul connection to the WAN.
[0059] A mesh network may be created by establishing radio links between multiple APs 102. The radio links may be implemented with any suitable wireless protocol, including by way of example IEEE 802.11 (Wi-Fi), IEEE 802.20 (Wi-Max), Bluetooth, Ultra Wideband (UWB), or any other wireless protocol with any suitable underlying air interface. Examples of air interfaces include Orthogonal Frequency Division Multiple Access (OFDMA), Wideband Code Division Multiple Access (W-CDMA), and the like. In addition, the various concepts disclosed throughout this disclosure may be extended wide area networks employing various wireless protocols, including by way of example CDMA2000, Global System for Mobile Communications (GSM), Ultra Mobile Broadband (UMB), Enhanced Data Rates for GSM Evolution (EDGE), and the like. The specific wireless protocol used for any mesh network will vary depending on the specific application and the overall design constraints imposed on the entire system.
[0060] Load balancing among MLO links in a mesh network is critical to improving the overall throughput and quality of service (QoS) of communications. In standalone AP MLO operation, an AP MLD can independently make effective load balancing decisions by monitoring the traffic load between its MLO links and moving traffic from one MLO link to another as needed.
[0061] However, in a Wi-Fi mesh network, the load balancing actions of one AP MLD may cause additional load imbalance on a different AP MLD. This problem may be exacerbated if two APs share the same channel because neither AP can consider the traffic load of the other AP due to their different OBSS activities at different locations. Therefore, the coordination of load balancing actions performed by an AP MLD in a mesh network among other AP MLDs can prevent load imbalance within the mesh network and prevent non-convergent back-and-forth load balancing actions.
[0062] Various aspects of the present disclosure relate to several solutions for coordinating load balancing among different AP MLDs. In some examples, these solutions allow AP MLDs to maintain and run their own load balancing routines, prevent additional load imbalances from being caused among other AP MLDs in the same mesh network, and prevent non-convergent back-and-forth load balancing actions.
[0063] Example Centralized Architecture Load Balancing Solution
[0064] Figure 3 is a conceptual example of including multiple AP MLDs (eg, Figure 1 and Figure 2 102a, a second AP 102b, a third AP 102c, and a fourth AP 102d. Figure 3 Additionally shown is an example coverage area 308 of the AP 102, which may represent the BSA of the AP 102. As illustrated, the first AP 102a is in communication (e.g., backhaul, dedicated line, and / or wireless communication) with a central controller (e.g., a server) configured for centralized load balancing of the mesh network 300. Although the central controller 310 is illustrated as being remote from the first AP 102a, other embodiments may include a central controller integrated into the first AP 102a (e.g., implemented as software and / or hardware of the first AP 102a). Each AP 102 may be able to communicate directly with each other via a direct wireless link 312 (e.g., an MLO link).
[0065] In some examples, the central controller 310 may collect load information for each AP MLD 102 of each wireless link from all APs 102. The central controller may identify a global most congested tuple (e.g., AP MLD and associated frequency band). That is, the tuple may identify a specific AP 102 and a frequency band that is most congested for communications associated with the specific AP 102 relative to other frequency bands and APs 102 in the mesh network 300. Each AP 102 in the mesh network may share one or more frequency bands for their communications. For example, each AP 102 may use the same three frequency bands (e.g., B1, B2, and B3) as other APs 102 in the mesh network 300 for communications in each BSA.
[0066] In some examples, each of the APs 102 may report their load information to the controller 310 (e.g., via wireless communication with the controller, via routing through the first AP 102a, etc.). Thus, each AP 102 may have a direct or indirect connection with the controller 310. The load information may indicate the transmit time available for each AP 102 for each frequency band used by each AP 102 (e.g., available time and / or frequency resources for wireless communication).
[0067] Figure 4 is a conceptual illustration of the Figure 3 4 is a block diagram of available transmission time (e.g., load information) for each frequency band used by each AP 102. For example, a first graph 400 illustrates available transmission time for a first AP 102a, a second graph 410 illustrates available transmission time for a second AP 102b, a third graph 420 illustrates available transmission time for a third AP 102c, and a fourth graph 430 illustrates available transmission time for a fourth AP 102d. Here, the shaded area of each frequency band indicates resources available for communication on the corresponding frequency band (e.g., B1, B2, B3) by the corresponding AP, while the unshaded area indicates the amount of the frequency band used by the corresponding AP. Thus, using the specific frequency resources associated with each frequency band, each frequency band has a limited amount of resources available for a given time period.
[0068] exist Figure 3 and Figure 4, each AP 102 may provide their respective load information to the controller 310. In some examples, the APs 102 may send their respective load information periodically (e.g., where each AP 102 sends its respective load information simultaneously) and / or sporadically (e.g., event-triggered), either of which may be (pre-)configured by the controller 310. In another example, the controller 310 may send a request for load information from each AP MLD 102 to each AP MLD 102 of the mesh network 300.
[0069] Thus, the controller 310 may receive load information from each AP MLD 102 of the mesh network 300, wherein the load information indicates resource availability for each frequency band available for each of the APs. For example, the load information may indicate a percentage of transmission time available for servicing traffic on a particular frequency band used by the corresponding AP 102 for communication (e.g., the first AP 102a has 75% available resources on B1, 40% available resources on B2, and 90% available resources on B3).
[0070] The controller may then identify the particular MLO band and the corresponding AP associated with the particular band based on the band having the highest traffic level (e.g., used / scheduled transmission time) among the bands available for APs in the mesh network 300. That is, the controller 310 may determine the highest traffic tuple globally throughout the mesh network 300. As illustrated, the controller 310 may identify the second AP 102b as the BSS of the most congested band (e.g., B1). For example, a tuple identifying an AP and a band may be generated as (AP2, B1).
[0071] In some cases, the controller 310 may then determine a subset of APs within the mesh network for load balancing purposes. In a first example, the controller may determine that a subset of APs of the mesh network have a BSS (OBSS) that overlaps with the AP identified in the tuple (e.g., the second AP 102b). Figure 3, the APs with OBSS include the first AP 102a and the third AP 102c, but do not include the fourth AP 102d. In the second example, the controller 310 may determine the subset of APs based on the number of hops (e.g., N) from the AP identified in the tuple (e.g., the second AP 102b). Here, "hop" may refer to the number of direct communication links required to reach the AP from the AP identified in the tuple. In this example, if N=1, the subset of APs may include the first AP 102a and the third AP 102c, because there is only one direct communication link between the second AP 102b and each of the first AP 102a and the third AP 102c. If N=2, the subset of APs may include the first AP 102a, the third AP 102c, and the fourth AP 102d.
[0072] The controller 310 may then determine which frequency band has the least amount of traffic from the perspective of the APs identified in the tuple, and then determine which AP in the subset of APs has the most available resources for that frequency band. In this example, the second AP 102b has the same amount of resources available for communication in both B2 and B3. Therefore, the controller 310 may determine which of B2 or B3 has the most resources (e.g., the least traffic congestion) from the perspective of the first AP 102a and the third AP 102c. Figure 4 In the example illustrated in , the controller 310 may determine (eg, from the perspective of the first AP 102a) that B3 has the most available transmission time.
[0073] Therefore, based on the determination, the controller 310 may send to the second AP 102b one or more of the following: load information from each wireless device in the subset of wireless devices (except the load information of the second AP 102b), and a request for the second AP 102b to perform load balancing based on the load information of the subset of wireless devices. The second AP 102b may receive the request and the load information and perform load balancing based on the information.
[0074] In some examples, the request may include an indication of the frequency band within the subset of APs (e.g., B3) that has the most transmit time. In this example, the second AP 102b may receive the request and perform load balancing by moving communications from B1 to B3. The process may be repeated.
[0075] This prevents the second AP 102b from moving traffic to both B2 and B3, thereby preventing interference between the first AP 102a, the second AP 102b, and the third AP 102c, because load balancing takes into account the available frequency band resources of each of these APs.
[0076] Example Semi-Distributed Load Balancing Solution
[0077] exist Figure 3 and Figure 4 , each AP 102 may provide their respective load information to the controller 310. In some examples, the APs 102 may send their respective load information periodically (e.g., where each AP 102 sends its respective load information simultaneously) and / or sporadically (e.g., event-triggered), either of which may be (pre-)configured by the controller 310. In another example, the controller 310 may send a request for load information from each AP MLD 102 to each AP MLD 102 of the mesh network 300.
[0078] The controller 310 may collect load information for each MLO link (e.g., link 312) used by each AP MLD 102. The controller 310 may then identify all N-hop most congested tuples (AP MLD, band). That is, the controller 310 may consider each AP 310 of the mesh network 300 individually, and then group certain APs in the AP 102 based on each AP MLD in the group being less than or equal to N direct hops or links away from a particular AP MLD. For example, for each AP 102 in the mesh network 300, the controller 310 may group the AP 102 with all other APs that are less than or equal to N direct hops away (e.g., N=1 hop is one MLO link between two APs, and N=2 is two MLO links between two APs). Therefore, certain APs (e.g., the first AP 102a and the third AP 102c) may be part of 2 different groups (e.g., a group formed around the second AP 102b and another group formed around the fourth AP 102d).
[0079] The controller 310 may then determine, for each group, which tuple (eg, frequency band and AP) has the highest traffic for that AP. Figure 4 , where N=2, the resulting tuple is the same as the example described above for the centralized architecture load balancing solution. However, when N=1, the controller 310 may determine the local most congested tuples as B1 for the second AP 102b and B3 for the fourth AP 102d. The controller 310 may then provide load information of each AP in the corresponding group (e.g., less than all APs in the mesh network) to the AP with the highest traffic congestion and associated with the tuple determined for each group. In the N=1 example, the controller 310 may: (i) provide load information from the first AP 102a and the third AP 102c to the second AP 102b, and (ii) provide load information from the first AP 102a and the third AP 102c to the fourth AP 102d.
[0080] The controller 310 may then request all APs with the highest traffic congestion in each group (e.g., the APs identified in the tuple determined for each group) to perform load balancing using the load information of the other APs in the corresponding group. For load balancing, the second AP 102b may identify the frequency band with the maximum available transmission time among the first AP 102a, the second AP 102b, and the third AP 102c (e.g., the first group). Here, the first AP 102a load information indicates that B3 has the most available transmission time. Therefore, the second AP 102b may move a portion of its traffic from B1 to B3. Similarly, the fourth AP 102d may identify B2 as having the maximum available transmission time among the fourth AP 102d, the second AP 102b, and the third AP 102c (e.g., the second group). Therefore, the fourth AP 102d may move a portion of its traffic from B3 to B2. It should be noted that in the aforementioned example for each group, the AP may move traffic from its most congested frequency band to the frequency band with the least congestion of the group.
[0081] As noted, the process of the semi-distributed load balancing solution may be performed periodically and / or event driven. For example, if a threshold condition is met (e.g., the band reaches a pre-configured congestion level for the AP), the AP may request the controller 310 to initiate load balancing among the AP group in the mesh network 300.
[0082] Example Semi-Distributed Load Balancing Solution
[0083] Figure 5 is a conceptual example of including multiple AP MLDs (eg, Figure 1 and Figure 2 102a, a second AP 102b, a third AP 102c, and a fourth AP 102d. Figure 5 Similar to Figure 3 , however, it should be noted that Figure 5 The example omits the central controller (e.g. Figure 3 Each AP 102 may be able to communicate directly with each other via a direct wireless link 512 (e.g., an MLO link). The directional wireless link 512 may be similar to Figure 3 The directional wireless link 312 operates in a manner similar to that of the embodiment of the present invention.
[0084] exist Figure 5In the example illustrated in , each AP 102 may be configured to send its load information to all neighboring APs (e.g., APs within N hops of the sending AP) in the mesh network 500. Each neighboring AP may further propagate the load information received from other APs to its neighbors. One AP 102 may determine that one of the frequency bands it uses has the highest traffic congestion relative to other APs based on the received load information of other APs. The AP 102 with the highest traffic congestion may perform load balancing, while the remaining APs refrain from performing load balancing.
[0085] As with the above example, this process may be repeated periodically (e.g., once every minute or more) and / or may be triggered by an event-driven process (e.g., if the resources available on a frequency band drop below a threshold for a particular AP). AP 102 may be triggered to transmit its own load information upon receiving load information from another AP. AP 102 may be further triggered to compare its own load information with the received load information to determine whether it has a higher level of traffic congestion on one or more of its frequency bands relative to another AP.
[0086] In some examples, an AP may wait for a duration before determining whether it has the highest traffic congestion. The duration may be configured to provide sufficient time for load information to travel to the AP from other APs in the mesh network 300 that may be multiple (N>1) hops away.
[0087] When N=1 and using Figure 4 and Figure 5 As an example, the frequency band B1 used by the second AP 102b meets the threshold congestion level. Therefore, the second AP 102b may send its load information to the first AP 102a and the third AP 102c. In response to receiving the load information from the second AP 102b, both the first AP 102a and the third AP 102c may send their load information to the second AP 102b. However, in some examples, if the load information of the first AP 102a and the third AP 102c has not changed since the last time it was provided to the second AP 102b, the first AP and the third AP may not send their load information to the second AP 102b. In such an example, if no response is received from the first AP 102a and / or the third AP 102c within the time window, the second AP 102b may assume that the load information is the same.
[0088] Since N=1, the first AP 102a and the third AP 102c may not send the load information of the second AP 102b to the fourth AP 102d. However, if N>1, the first AP 102a and the third AP 102c may send their load information and the load information of the second AP 102b to the fourth AP 102d. The second AP 102b may wait for a duration (e.g., a preconfigured time window) before it determines whether it has the most congested band or performs load balancing. The duration may provide the second AP 102b with sufficient time to collect load information from all APs within N hops of the second AP 102b.
[0089] In the case of N=2, the second AP 102a may send load information to the first AP 102a and the third AP 102c. The first AP 102a and the third AP 102c may then send their own load information (e.g., if the AP has changed since they last transmitted the load information) as well as the load information from the second AP 102b and the fourth AP 102d. The first AP 102a, the third AP 102c, and the fourth AP 102d (e.g., via the first AP 102a and / or the third AP 102c) may transmit the information to the second AP 102b if their respective load information has changed since the last time they transmitted their load information. The second AP 102b may perform load balancing when it has the most congested band after it waits for a time window to receive load information from other APs. During the time window, other APs may notify the second AP 102b that it is not the most congested, which will prevent the second AP 102b from performing load balancing.
[0090] refer to Figure 6 and Figure 7 In one aspect, the network node 600 may perform the method 700 of wireless communication by, for example, executing the load balancing component 615 via the processor 605 and / or the memory 610. The network node may be implemented as a central controller (e.g., Figure 3 Controller 310).
[0091] At block 702, the method 700 includes obtaining load information from each wireless device in a set of wireless devices, the load information indicating resource availability for each frequency band available for each wireless device in the set. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the obtaining component 620 may be configured to or may include means for obtaining load information from each wireless device in a set of wireless devices, the load information indicating resource availability for each frequency band available for each wireless device in the set.
[0092] For example, obtaining at block 702 may include receiving load information from a plurality of APs within the mesh network. Also, for example, obtaining at block 702 may be performed such that the network node 600 may determine which of the plurality of APs communicates on a frequency band having the most congestion.
[0093] At block 704, method 700 includes identifying a first frequency band and a first wireless device associated with the first frequency band in the set of wireless devices based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. For example, in an aspect, network node 600, processor 605, memory 610, load balancing component 615, and / or identification component 625 may be configured to or may include means for identifying a first frequency band and a first wireless device associated with the first frequency band in the set of wireless devices based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices.
[0094] For example, the identification at block 704 may include determining a tuple indicating an AP and a frequency band having the highest traffic level (e.g., the AP and a frequency band used by the AP). Also, for example, the identification at block 704 may be performed to determine which of a plurality of APs in the mesh network has the most congested frequency band, and which of a plurality of frequency bands used by the AP is the most congested.
[0095] At block 706, the method 700 includes outputting for transmission to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the output component 630 may be configured to or may include means for outputting for transmission to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0096] For example, the output at block 706 may include an indication to the AP with the highest congestion to perform load balancing while taking into account load balancing information of other APs in the mesh network.
[0097] refer to Figure 8In an alternative or additional aspect, at block 802, the method 700 may further include outputting a request for load information from each wireless device for transmission to each wireless device in the set of wireless devices. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the output component 830 may be configured to or may include means for outputting a request for load information from each wireless device for transmission to each wireless device in the set of wireless devices.
[0098] For example, the output at block 802 may include sending a request to each AP (or at least N-hop APs) in the mesh network to provide load information to the central controller. Such a request transmission may trigger the APs to send their load information to the controller.
[0099] In an alternative or additional aspect, the first frequency band is identified based on the first frequency band having a highest traffic level relative to other frequency bands available to each wireless device in a set of wireless devices, and wherein the first wireless device is identified based on the traffic of the first frequency band associated with the first wireless device.
[0100] refer to Fig. 9 In an alternative or additional aspect where the set of wireless devices is a first set of wireless devices and the load information is the first load information, at block 902, the method 700 may also include obtaining second load information from each wireless device in the second set of wireless devices, the second load information indicating resource availability for each frequency band available for each wireless device in the second set of wireless devices. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the obtaining component 640 may be configured to or may include means for obtaining second load information from each wireless device in the second set of wireless devices, the load information indicating resource availability for each frequency band available for each wireless device in the second set of wireless devices.
[0101] For example, the obtaining at block 902 may collect load information from a subset of APs in the mesh network. For example, the controller may group the APs and collect load information from different groups.
[0102] In this optional aspect, at block 904, the method 700 may further include identifying the second frequency band and the second wireless device associated with the second frequency band based on the second frequency band having the highest traffic level among the frequency bands of the second set of available wireless devices. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the identification component 645 may be configured to or may include means for identifying the second frequency band and the second wireless device associated with the second frequency band based on the second frequency band having the highest traffic level among the frequency bands of the second set of available wireless devices.
[0103] For example, the identification at block 904 may identify a plurality of tuples, wherein each tuple of the plurality of tuples is associated with a different set of APs.
[0104] In this optional aspect, at block 906, the method 700 may further include outputting for transmission to the second wireless device: second load information from each wireless device in the second set of wireless devices except the second wireless device, and a request for the second wireless device to perform load balancing based on the second load information. For example, in an aspect, the network node 600, the processor 605, the memory 610, the load balancing component 615, and / or the output component 630 may be configured to or may include means for outputting for transmission to the second wireless device: second load information from each wireless device in the second set of wireless devices except the second wireless device, and a request for the second wireless device to perform load balancing based on the second load information.
[0105] For example, the output at block 1106 may determine the tuple associated with each group of APs, and then send the load information of the APs of each group to the APs associated with the tuple of the group. In this way, the AP with the highest congestion in each group may use the load balancing information from each AP in the group to perform load balancing within the group.
[0106] In an alternative or additional aspect, a first set of wireless devices includes a first wireless device and one or more additional wireless devices that are less than or equal to N hops apart, wherein a second set of wireless devices includes a second wireless device and one or more additional wireless devices that are less than or equal to N hops apart, and wherein the first wireless device is greater than N hops apart from the second wireless device.
[0107] refer to Fig.10 and Fig.11 In another aspect, the network node 1001 may perform the method 1100 of wireless communication by, for example, executing the load balancing component 1016 via the processor 1006 and / or the memory 1011 .
[0108] At block 1102, the method 1100 includes receiving load information from each wireless device in the set of wireless devices, the load information indicating resource availability for each frequency band available to each wireless device. For example, in an aspect, the network node 1001, the processor 1006, the memory 1011, the load balancing component 1016, and / or the receiving component 1020 may be configured to or may include means for receiving load information from each wireless device in the set of wireless devices, the load information indicating resource availability for each frequency band available to each wireless device.
[0109] For example, receiving at block 1302 may include receiving load information from one or more APs in the mesh network. For example, if an AP has a congestion level that falls below a certain threshold, the AP may send its load information to its neighboring APs. In some examples, receiving the load information may trigger a network node (e.g., another AP in the mesh network) to pass the load information along with its own load information to the other AP. In some examples, the load information is received from a centralized controller.
[0110] At block 1104, method 1100 includes identifying a first frequency band and a first wireless device associated with the first frequency band in the set of wireless devices based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices. For example, in an aspect, network node 1001, processor 1006, memory 1011, load balancing component 1016, and / or identification component 1025 may be configured to or may include means for identifying a first frequency band and a first wireless device associated with the first frequency band in the set of wireless devices based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices.
[0111] For example, the identifying at block 1104 may include determining a tuple associated with an AP having the highest congestion in the mesh network based on the received load information.
[0112] At block 1106, the method 1100 includes sending to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information. For example, in an aspect, the network node 1001, the processor 1006, the memory 1011, the load balancing component 1016, and / or the sending component 1030 may be configured to or may include means for sending to the first wireless device: load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0113] refer to Fig.12 and Fig.13In another aspect, the network node 1202 can perform the method 1300 of wireless communication by, for example, executing the load balancing component 1217 via the processor 1207 and / or the memory 1212. In this example, the network node 1202 can be implemented as an AP of a mesh network (e.g., Figure 1 AP 102).
[0114] At block 1302, the method 1300 includes obtaining load information from a first wireless device in the set of wireless devices, the load information indicating resource availability for each frequency band available to the first wireless device. For example, in an aspect, the network node 1202, the processor 1207, the memory 1212, the load balancing component 1217, and / or the obtaining component 1220 may be configured to or may include means for obtaining load information from a first wireless device in the set of wireless devices, the load information indicating resource availability for each frequency band available to the first wireless device.
[0115] At block 1304, method 1300 includes balancing communications associated with the network node based on the load information. For example, in one aspect, network node 1202, processor 1207, memory 1212, load balancing component 1217, and / or balancing component 1225 may be configured as or may include components for balancing communications associated with the network node based on the load information.
[0116] refer to Fig.14 In aspects where the load information is an alternative or additional aspect to the first load information, at block 1402, the method 1300 may also include obtaining a request for second load information from a second wireless device, the second load information indicating resource availability for each frequency band available for the network node. For example, in an aspect, the network node 1202, the processor 1207, the memory 1212, the load balancing component 1217, and / or the obtaining component 1220 may be configured to or may include means for obtaining a request for second load information from a second wireless device, the second load information indicating resource availability for each frequency band available for the network node.
[0117] In this optional aspect, at block 1404, the method 1300 may further include outputting the second load information for transmission to the second wireless device. For example, in an aspect, the network node 1202, the processor 1207, the memory 1212, the load balancing component 1217, and / or the output component 1235 may be configured to or may include means for outputting the second load information for transmission to the second wireless device.
[0118] In an alternative or additional aspect, the network node is separated from the first wireless device by less than or equal to N hops.
[0119] In this optional aspect, wherein the first load information is obtained from the second wireless device, at block 1406, the method 1300 may further include obtaining, from the second wireless device, a request for the network node to perform load balancing based on the first load information. For example, in an aspect, the network node 1202, the processor 1207, the memory 1212, the load balancing component 1217, and / or the component 1220 may be configured to or may include means for obtaining, from the second wireless device, a request for the network node to perform load balancing based on the first load information.
[0120] In this optional aspect, at block 1408, the balancing of the communications at block 1304 is further based on the request.
[0121] refer to Fig.15 , in an aspect where the load information is an alternative or additional aspect to the first load information, at block 1502, the method 1300 may also include outputting second load information indicating resource availability for each frequency band available for use with the network node for transmission to one or more wireless devices including the first wireless device, wherein outputting the second load information is at least one of event-triggered or periodic. For example, in an aspect, the network node 1202, the processor 1207, the memory 1212, the load balancing component 1217, and / or the output component 1235 may be configured to or may include means for outputting second load information indicating resource availability for each frequency band available for use with the network node for transmission to one or more wireless devices including the first wireless device, wherein outputting the second load information is at least one of event-triggered or periodic.
[0122] In an alternative or additional aspect, outputting the second load information is triggered by satisfying a threshold condition of resource availability of at least one frequency band available to the network node or by obtaining the first load information.
[0123] In an alternative or additional aspect, the network node is less than or equal to N hops away from the one or more wireless devices.
[0124] In an alternative or additional aspect, the balanced communication is further based on second load information indicating that resource availability of the network node in a frequency band is reduced relative to resource availability of the first wireless device in the same frequency band.
[0125] refer to Fig.16In an alternative or additional aspect, at block 1602, method 1300 may further include receiving load information, wherein the network node is configured as a second wireless device. For example, in an aspect, network node 1202, processor 1207, memory 1212, load balancing component 1217, and / or receiving component 1240 may be configured as or may include means for receiving load information, wherein the network node is configured as a second network device.
[0126] Although the foregoing disclosure discusses illustrative aspects and / or embodiments, it should be noted that various changes and modifications may be made herein without departing from the described aspects and / or embodiments as defined by the appended claims. Furthermore, although elements of the described aspects and / or embodiments are described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Additionally, all or part of any aspect and / or embodiment may be used with all or part of any other aspect and / or embodiment unless otherwise stated.
[0127] Example aspects
[0128] Embodiment 1 is a method for wireless communication by a network node, the method comprising: obtaining load information from each wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the set; identifying the first frequency band and a first wireless device associated with the first frequency band in the set of wireless devices based on the first frequency band having the highest service level among the frequency bands in the set of wireless devices; and outputting the following for transmission to the first wireless device: the load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0129] Embodiment 2 is a method according to embodiment 1, further comprising: outputting a request for the load information from each wireless device for transmission to each wireless device in the set of wireless devices.
[0130] Embodiment 3 is a method according to any one of embodiments 1 and 2, wherein the first frequency band is identified based on that the first frequency band has a highest service level relative to other frequency bands available for each wireless device in the set of wireless devices, and wherein the first wireless device is identified based on the service of the first frequency band associated with the first wireless device.
[0131] Embodiment 4 is a method according to any one of Embodiments 1 to 3, wherein the set of wireless devices is a first set of wireless devices, wherein the load information is first load information, and further comprising: obtaining second load information from each wireless device in a second set of wireless devices, the load information indicating resource availability of each frequency band available for each wireless device in the second set of wireless devices; identifying the second frequency band and a second wireless device associated with the second frequency band based on the second frequency band having the highest traffic level among the frequency bands in the second set of wireless devices available for use; and outputting the following for transmission to the second wireless device: the second load information from each wireless device in the second set of wireless devices except the second wireless device, and a request for the second wireless device to perform load balancing based on the second load information.
[0132] Embodiment 5 is a method according to embodiment 4, wherein the first set of wireless devices includes the first wireless device and one or more additional wireless devices that are less than or equal to N hops apart, wherein the second set of wireless devices includes the second wireless device and one or more additional wireless devices that are less than or equal to N hops apart, and wherein the first wireless device is greater than N hops away from the second wireless device.
[0133] Embodiment 6 is a method for wireless communication by a network node, the method comprising: obtaining load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for use by the first wireless device; and balancing communications associated with the network node based on the obtained load information.
[0134] Embodiment 7 is a method according to embodiment 6, wherein the load information is first load information, and further includes: obtaining a request for second load information from a second wireless device, the second load information indicating resource availability for each frequency band available for the network node; and outputting the second load information for sending to the second wireless device.
[0135] Embodiment 8 is a method according to embodiment 7, wherein the network node is separated from the first wireless device by less than or equal to N hops.
[0136] Embodiment 9 is a method according to embodiment 7, wherein the first load information is obtained from the second wireless device, and further comprises: obtaining from the second wireless device a request for the network node to perform load balancing based on the first load information; and wherein balanced communication is further based on the request.
[0137] Embodiment 10 is a method according to any one of embodiments 6 to 9, wherein the load information is first load information, and further includes: outputting second load information for sending to one or more wireless devices including the first wireless device, the second load information indicating resource availability for each frequency band available for the network node, wherein outputting the second load information is at least one of event-triggered or periodic.
[0138] Embodiment 11 is a method according to embodiment 10, wherein outputting the second load information is triggered by satisfying a threshold condition of resource availability of at least one frequency band available for use by the network node or by obtaining the first load information.
[0139] Embodiment 12 is a method according to embodiment 10, wherein the network node is separated from the one or more wireless devices by less than or equal to N hops.
[0140] Embodiment 13 is a method according to embodiment 10, wherein balanced communication is further based on the second load information, wherein the second load information indicates that resource availability of the network node in a certain frequency band is reduced relative to resource availability of the first wireless device in the same frequency band.
[0141] Embodiment 14 is a method according to any one of embodiments 6 to 13, further comprising: receiving the load information, wherein the network node is configured as a second wireless device.
[0142] Embodiment 15 is a network node, comprising: a transceiver; a memory, the memory comprising instructions; and one or more processors, the one or more processors being configured to execute the instructions so that the network node performs a method according to any one of embodiments 1 to 5, wherein the transceiver is configured to: receive load information from each wireless device; and send to the first wireless device: the load information from each wireless device in the set of wireless devices except the first wireless device, and a request for the first wireless device to perform load balancing based on the load information.
[0143] Embodiment 16 is a network node, comprising: a transceiver; a memory comprising instructions; and one or more processors, wherein the one or more processors are configured to execute the instructions and cause the network node to perform a method according to any one of embodiments 6 to 14, wherein the transceiver is configured to: receive load information from a first wireless device in a set of wireless devices, the load information indicating resource availability of each frequency band available for use by the first wireless device.
[0144] Embodiment 17 is a device for wireless communication, the device comprising: a component for executing the method according to any one of embodiments 1 to 5.
[0145] Embodiment 18 is a device for wireless communication, the device comprising: a component for executing the method according to any one of Embodiments 6 to 14.
[0146] Embodiment 19 is a non-transitory computer-readable medium, which includes instructions, which when executed by a device, cause the device to perform the method according to any one of embodiments 1 to 5.
[0147] Embodiment 20 is a non-transitory computer-readable medium, which includes instructions, which when executed by a device, cause the device to perform the method according to any one of embodiments 6 to 14.
[0148] Embodiment 21 is a device for wireless communication, the device comprising: a memory, the memory comprising instructions; and one or more processors, the one or more processors being configured to execute the instructions so that the device performs a method according to any one of Embodiments 1 to 5.
[0149] Embodiment 22 is a device for wireless communication, the device comprising: a memory, the memory comprising instructions; and one or more processors, the one or more processors being configured to execute the instructions so that the device performs a method according to any one of Embodiments 6 to 14.
[0150] Additional considerations
[0151] The foregoing description provides an example of a technology for increasing the privacy of a local area network (LAN) device in a communication system. The foregoing description is provided to enable any person skilled in the art to practice the various aspects described herein. The examples discussed herein do not limit the scope, applicability, or aspects set forth in the claims. Various modifications to these aspects will be apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. For example, without departing from the scope of the present disclosure, the functions and arrangements of the elements discussed may be changed. Various examples may omit, replace, or add various procedures or components as appropriate. For example, the described method may be performed in a different order than described, and various steps may be added, omitted, or combined. In addition, the features described with respect to some examples may be combined in some other examples. For example, any number of aspects set forth herein may be used to implement a device or practice a method. In addition, the scope of the present disclosure is intended to cover such devices or methods practiced using other structures, functionality, or structures and functionality other than the various aspects of the present disclosure set forth herein or different from the various aspects of the present disclosure set forth herein. It should be understood that any aspect of the disclosure disclosed herein may be embodied by one or more elements of a claim.
[0152] The various illustrative logic blocks, modules, and circuits described in conjunction with the present disclosure may be implemented or executed using a general purpose processor, a DSP, an ASIC, a field programmable gate array (FPGA) or other programmable logic device (PLD), discrete gate or transistor logic, discrete hardware components, or any combination thereof, designed to perform the functions described herein. Although a general purpose processor may be a microprocessor, in an alternative, the processor may be any commercially available processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, a system on a chip (SoC), or any other such configuration.
[0153] If implemented in hardware, an example hardware configuration may include a processing system in a wireless node. The processing system may be implemented using a bus architecture. Depending on the specific application and overall design constraints of the processing system, the bus may include any number of interconnecting buses and bridges. The bus may link various circuits together, including a processor, a machine-readable medium, and a bus interface. The bus interface may be used to connect a network adapter, etc., to the processing system via the bus. The network adapter may be used to implement signal processing functions at the PHY layer. In user equipment (see Figure 1), a user interface (e.g., a keypad, display, mouse, joystick, touch screen, biometric sensor, proximity sensor, light emitting element, and others) may also be connected to the bus. The bus may also link various other circuits, such as timing sources, peripherals, voltage regulators, power management circuits, and the like, which are well known in the art and therefore will not be described further. The processor may be implemented using one or more general purpose processors and / or special purpose processors. Examples include microprocessors, microcontrollers, DSP processors, and other circuits that can execute software. Those skilled in the art will recognize how best to implement the described functionality of the processing system depending on the specific application and the overall design constraints imposed on the entire system.
[0154] If implemented in software, the function may be stored as one or more instructions or codes on a computer-readable medium or sent via a computer-readable medium. Software should be broadly interpreted as meaning instructions, data, or any combination thereof, whether referred to as software, firmware, middleware, microcode, hardware description language, or other. Computer-readable media include both computer storage media and communication media, including any medium that facilitates the transfer of computer programs from one place to another. The processor may be responsible for managing the bus and general processing, including executing software modules stored on a machine-readable storage medium. A computer-readable storage medium may be coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. In an alternative, the storage medium may be integral with the processor. By way of example, a machine-readable medium may include a transmission line, a carrier modulated by data, and / or a computer-readable storage medium having instructions stored thereon that is separated from a wireless node, all of which may be accessed by a processor through a bus interface. Alternatively or in addition, a machine-readable medium or any part thereof may be integrated into a processor, such as in the case of having a cache and / or a general register stack. By way of example, examples of machine-readable storage media may include RAM (random access memory), flash memory, ROM (read only memory), PROM (programmable read only memory), EPROM (erasable programmable read only memory), EEPROM (electrically erasable programmable read only memory), registers, magnetic disks, optical disks, hard drives, or any other suitable storage media, or any combination thereof. The machine-readable medium may be embodied in a computer program product.
[0155] A software module may include a single instruction, perhaps multiple instructions, and may be distributed over several different code segments, between different programs, and across multiple storage media. A computer-readable medium may include multiple software modules. A software module includes instructions that, when executed by a device such as a processor, cause a processing system to perform various functions. A software module may include a sending module and a receiving module. Each software module may reside in a single storage device or may be distributed across multiple storage devices. By way of example, when a triggering event occurs, a software module may be loaded from a hard drive into a RAM. During the execution of a software module, a processor may load some of the instructions into a cache to increase access speed. One or more cache lines may then be loaded into a general register stack for execution by the processor. When the functionality of a software module is mentioned below, it will be understood that such functionality is implemented by a processor when executing instructions from the software module.
[0156] As used herein, a phrase referring to "at least one of" a list of items refers to any combination of those items (including single members). For example, "at least one of a, b, or c" is intended to cover a, b, c, ab, ac, bc, and abc, as well as any combination with multiple identical elements (e.g., aa, aaa, aab, aac, abb, acc, bb, bbb, bbc, cc, and ccc, or any other ordering of a, b, and c).
[0157] As used herein, the terms "identifying" and / or "determining" (or any variations thereof, such as "identify" and "determine") may encompass a wide variety of actions. For example, "identifying" and / or "determining" may include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database, or another data structure), ascertaining, and the like. Furthermore, "identifying" and / or "determining" may include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory), and the like. Furthermore, "identifying" and / or "determining" may include resolving, selecting, choosing, establishing, and the like.
[0158] The method disclosed herein includes one or more steps or actions for implementing the method. The steps and / or actions of the method can be interchangeable with each other without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and / or use of specific steps and / or actions can be modified without departing from the scope of the claims. In addition, the various operations of the method described above can be performed by any suitable component capable of performing the corresponding function. The component may include various hardware and / or software components and / or modules, including but not limited to circuits, application specific integrated circuits (ASICs) or processors. Typically, in the case of operations illustrated in the accompanying drawings, those operations may have corresponding corresponding components with similar numbers plus functional components.
[0159] The following claims are not intended to be limited to the various aspects shown herein, but should be given the full scope consistent with the language of the claims. Within the claims, unless specifically stated otherwise, reference to an element in the singular form is not intended to mean "one and only one", but "one or more". Unless specifically stated otherwise, the term "some" refers to one or more. No claim element should be interpreted according to the provisions of 35 U.S.C. § 112 (f), unless the phrase "parts for..." is used to expressly record the element, or in the case of a method claim, the phrase "step for..." is used to record the element. All structural and functional equivalents of the elements of the various aspects described throughout the present disclosure that are known or will be known later to a person of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, regardless of whether such disclosure is explicitly stated in the claims, anything disclosed herein is not intended to be disclosed to the public.
Claims
1. An apparatus configured for wireless communication, the apparatus comprising: a memory including instructions; and one or more processors configured to execute the instructions and cause the apparatus to: obtaining, from each wireless device in a set of wireless devices, load information indicating resource availability of each frequency band available to each wireless device in the set; identifying the first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices; as well as Output the following for transmission to the first wireless device: the load information from each wireless device in the set of wireless devices except the first wireless device, and A request is made to the first wireless device to perform load balancing based on the load information.
2. The apparatus of claim 1 , wherein the one or more processors are further configured to cause the apparatus to: A request for the load information from each wireless device is output for transmission to each wireless device in the set of wireless devices.
3. An apparatus according to claim 1, wherein the first frequency band is identified based on that the first frequency band has a highest service level relative to other frequency bands available for each wireless device in the set of wireless devices, and wherein the first wireless device is identified based on the service of the first frequency band associated with the first wireless device.
4. The apparatus of claim 1 , wherein the set of wireless devices is a first set of wireless devices, wherein the load information is first load information, and wherein the one or more processors are further configured to cause the apparatus to: obtaining second load information from each wireless device in a second set of wireless devices, the load information indicating resource availability of each frequency band available for use by each wireless device in the second set of wireless devices; identifying the second frequency band and a second wireless device associated with the second frequency band based on the second frequency band having a highest traffic level among the second set of frequency bands available to the wireless device; as well as Output the following for transmission to the second wireless device: the second load information from each wireless device in the second set of wireless devices except the second wireless device, and A request is made to the second wireless device to perform load balancing based on the second load information.
5. The apparatus of claim 4, wherein the first set of wireless devices comprises the first wireless device and one or more additional wireless devices that are separated by less than or equal to N hops, wherein the second set of wireless devices comprises the second wireless device and one or more additional wireless devices that are separated by less than or equal to N hops, and wherein the first wireless device is separated from the second wireless device by more than N hops.
6. A network node, comprising: Transceiver; a memory including instructions; and one or more processors configured to execute the instructions and cause the network node to: receiving load information from each wireless device in the set of wireless devices, the load information indicating resource availability of each frequency band available to each wireless device; identifying the first frequency band and a first wireless device in the set of wireless devices associated with the first frequency band based on the first frequency band having a highest traffic level among the frequency bands available for the set of wireless devices; as well as Sending to the first wireless device: the load information from each wireless device in the set of wireless devices except the first wireless device, and A request is made to the first wireless device to perform load balancing based on the load information.
7. The network node of claim 6, wherein the one or more processors are further configured to cause the network node to: A request for the load information from each wireless device is sent to each wireless device in the set of wireless devices.
8. A network node according to claim 6, wherein the first frequency band is identified based on that the first frequency band has a highest service level relative to other frequency bands available for each wireless device in the set of wireless devices, and wherein the first wireless device is identified based on the service of the first frequency band associated with the first wireless device.
9. The network node of claim 6, wherein the set of wireless devices is a first set of wireless devices, wherein the load information is first load information, and wherein the one or more processors are further configured to cause the network node to: receiving second load information from each wireless device in a second set of wireless devices, the load information indicating resource availability of each frequency band available for use by each wireless device in the second set of wireless devices; identifying the second frequency band and a second wireless device associated with the second frequency band based on the second frequency band having a highest traffic level among the second set of frequency bands available to the wireless device; as well as Sending to the second wireless device: the second load information from each wireless device in the second set of wireless devices except the second wireless device, and A request is made to the second wireless device to perform load balancing based on the second load information.
10. The network node of claim 9, wherein the first set of wireless devices comprises the first wireless device and one or more additional wireless devices that are separated by less than or equal to N hops, wherein the second set of wireless devices comprises the second wireless device and one or more additional wireless devices that are separated by less than or equal to N hops, and wherein the first wireless device is separated from the second wireless device by more than N hops.
11. An apparatus configured for wireless communication, the apparatus comprising: a memory including instructions; and one or more processors configured to execute the instructions and cause the apparatus to: obtaining, from a first wireless device in the set of wireless devices, load information indicating resource availability of each frequency band available to the first wireless device; and Communications associated with the device are load balanced based on the obtained load information.
12. The apparatus of claim 11, wherein the load information is first load information, and wherein the one or more processors are further configured to cause the apparatus to: obtaining, from a second wireless device, a request for second load information indicating resource availability of each frequency band available for use by the apparatus; and The second load information is output for transmission to the second wireless device.
13. The apparatus of claim 12, wherein the apparatus is separated from the first wireless device by less than or equal to N hops.
14. The apparatus of claim 12, wherein the first load information is obtained from the second wireless device, and wherein the one or more processors are further configured to cause the apparatus to: A request is obtained from the second wireless device for the apparatus to load balance based on the first load information, wherein the load balancing of the communications is further based on the request.
15. The apparatus of claim 11, wherein the load information is first load information, and wherein the one or more processors are further configured to cause the apparatus to: Second load information is output for transmission to one or more wireless devices including the first wireless device, the second load information indicating resource availability of each frequency band available for use by the apparatus, wherein outputting the second load information is at least one of event-triggered or periodic.
16. The apparatus according to claim 15, wherein outputting the second load information is triggered by: satisfying a threshold condition of resource availability of at least one frequency band available to the apparatus, or The first load information is obtained.
17. The apparatus of claim 15, wherein the apparatus is separated from the one or more wireless devices by less than or equal to N hops.
18. The apparatus of claim 15, wherein the load balancing is further based on the second load information indicating that resource availability of the apparatus in a frequency band is reduced relative to resource availability of the first wireless device in the same frequency band.
19. The apparatus according to claim 11, further comprising: A transceiver, the transceiver being configured to: The load information is received, wherein the apparatus is configured as a second wireless device.