Smart Client Load Balancing

Executive Summary

Smart Client Load Balancing is an effective way to optimize per client performance in dense AP environments.


In the 802.11 world the Wi-Fi client decides which access point and band to connect and when to make the transition to a better one. There are no set standards for this decision making process so each Wi-Fi chip vendor and client manufacturer may use different algorithms. Most use the simplest approach of connecting to the AP/Band with the strongest signal and looking for a better AP only when the current signal strength falls below a set threshold. This method works in a traditional AP deployment model where APs are not close together but is sub-optimal in dense AP environments. In high-density user environments (Auditoriums, Lecture Halls, Conference Centers, Company meetings etc.) where APs are densely deployed to provide bandwidth to all clients, a client sees multiple APs with very good signal strength. Most clients will connect to the AP/band with the best signal strength resulting in a few heavily loaded APs.

An AP’s radio resources are shared amongst the clients associated to it. An AP with a large number of users will get a small percentage of the radio’s time. The more users, the less amount of radio time each client gets. Radio time can directly relate to client throughput and user experience. Users would have a better experience if they were connected to an AP with fewer associated clients even though they were connected at lower signal strength (lower data rate.) In a dense AP deployment, the signal strength and data rate reduction would be nominal. The example below shows conference hall with six APs. In the figure the dark shaded circles represent the excellent coverage area of the AP. The larger, lighter shaded circles represent the area covered by very good signal from the AP. When clients are left to their own devices, they will connect to the AP with the best signal strength. In this scenario APs 3 and 4 (the two APs in the middle) will have 80 associated clients each. The AP in the room’s perimeter will have approximately 12 clients each.

In the classic scenario where clients connect to the AP with the best signal strength (dark blue circle), APs 3 and 4 would both have approximately 80 clients associated, while the APs at the edges have approximately 12 each. To evenly distribute the client load we can modify the client’s AP selection criteria from selecting the AP with the best signal strength to selecting an AP based on 

1. Good signal strength (not the best) 

2. The current number client load AP

This will distribute overall client load more evenly with approximately 35 clients per AP. 

Even though some clients (~25 each on AP3 and AP4) will be connecting at a lower data rate when they move off of APs 3 and 4, the users will have a better experience because they are getting 1/35 of the radio’s time instead of 1/80 (as will every client on APs 3 and 4). The clients on APs 1, 2, 5, and 6 will be impacted negatively, but the throughput for the room overall will greatly increase because of the balanced resources.

While we cannot change how a client selects an AP, we can try to influence them and try to persuade them to select a different AP so that all of the APs in a neighborhood have a balanced number of clients.

Note: The 802.11k standard is designed to will help balance the client load on APs, unfortunately at this time only a few of the clients support for 802.11k.


This application note discusses Mojo Network’s Smart Client Load Balancing feature that is included in the 8.1 release. This application note explains how Smart Client Load Balancing works, how to enable it, and provides guidance on when it should and shouldn’t be used. Smart Client Load Balancing is independent of Smart Steering. For information on steering clients from the 2.4 GHz band to the 5 GHz band, read the Smart Steering application note attached to this article. 

How It Works
This section explains how smart client load balancing works.
Client Count Threshold
When Smart Client Load Balancing is enabled, and a client attempts to connect to an AP for the
first time (Association) or to roam to the AP (Reassociation), the associating AP determines if it has
sufficient capacity to support an additional client. It does this by comparing the number of clients it
currently has associated to the Minimum Client Threshold parameter.
Suppose the AP template has
• Min Client threshold-30
• Min Client Count Difference-5
If the client wants to associate with an AP whose current client count is less than 30, the client will
be allowed to associate. If the APs client count is 30 or more, the Smart Client Load Balancing
algorithm kicks in. It starts out by evaluating its neighboring APs to see if they are able to take on
another client. To do this the AP uses it AP Neighbor Table.
AP Neighbor Tables
An AP Neighbor Table is built when the AP scans the channels for radio management or WIPS
purposes. If an AP does not have a dedicated third radio for scanning, background scanning must
be enabled. While the AP is scanning the channels, it listens for the beacons of nearby APs and
reads the proprietary Information Element (IE), which contains the neighboring AP’s client count.
The AP compiles a list of the neighboring APs’ BSSID and the client count as shown in the following
Table 2: AP Neighbor Table for AP Mojo_AA: AA: AA

AP BSSIDAP Client Count
Mojo_CC:CC:CC 28
Mojo_DD:DD:DD 32
Mojo_EE:EE:EE 30
Mojo_FF:FF:FF 36

Client Count Threshold
When a client wants to associate to an SSID on the 5GHz radio of AP Mojo_AA: AA: AA it sends an
association request. When the AP receives this request, it determines how many clients are already
associated on that radio. Let’s suppose that AP Mojo_AA:AA:AA has 36 clients associated to that
radio. Because the AP’s client count (36) is greater than the Client Count Threshold (30), it will run
the smart client load balancing algorithm to determine what to do.
Can Neighbor AP Accept Client
To determine if a neighbor AP can support an additional client, the associating AP evaluates each
AP in its AP neighbor table and assigns an accept vote if either of the following two criteria are met:
• Is AP’s neighbor client count less than the minimum client count threshold?
• If AP’s neighbor’s client count is greater than the minimum client count threshold, and is the
difference between the client count greater than the minimum client count difference threshold?
If the answer to either of these questions is yes, the AP is deemed acceptable.
Applying these criteria to the AP neighbor table above we see that two APs (Mojo_BB: BB: BB
and Mojo_CC: CC: CC) meet the first criteria because each has a client count less than 30. AP
Mojo_EE:EE:EE meets the second criteria because even though its client count is above the
minimum client count threshold, the difference between its client counts (30) and Mojo_AA: AA: AA
client count (36) is greater than the minimum client count difference threshold (5).
36 – 30 = 6 > 5
Table 3: AP Status Table after applying criteria 

  AP BSSIDAP Client CountMeets Condition 1
AP Client DifferenceMeets Condition 2Accept / Reject
Mojo_BB:BB:BB 26Yes --Accept  
Mojo_CC:CC:CC28Yes --Accept  
Mojo_DD:DD:DD32No 4No Reject  
Mojo_EE:EE:EE30No 6Yes Accept  
Mojo_FF:FF:FF36No 0No Reject  

Once the associating AP determines which neighbor APs are acceptable alternatives, it check to
see if at least half of the neighboring APs in its list are acceptable. In this case three out of five are
acceptable so the associating AP will reject the client association in an attempt to encourage it to
associate to a better AP.

It responds to the client’s association request with an 802.11 status code 17 – Association denied
because AP is unable to handle additional associated stations. This informs the client that this is not
a suitable AP at this time. If the client has intelligence, it will select another AP.
If less than half of the neighboring APs were acceptable, the client would be allowed to associate.
Not all clients have intelligence to select a different AP when it receives a status code 17. Some
clients will continue to attempt to associate to the same AP because it has the strongest signal
strength. To account for these desperate clients a counter is started for clients that are rejected with
a status code 17. If a client tries to associate again and again within the Desperate Client Interval, it
will be allowed after its attempt counter equals to the Max Association Retries.
Once a client is declared a Desperate Client it maintains that status for 24 hours. During this 24-
hour period the client will be allowed to associate to the AP bypassing the Smart Client Load
Balancing algorithm.

Сервис поддержки клиентов работает на платформе UserEcho