Radio Ressource Management

Author: Herbert Haas
herbert AT perihel DOT at
Revision: 0.5
Date: 2008-05-22
Copyright: Copyright (c) 2008 Herbert Haas.


This document summarizes important facts about the Radio Resource Management in Cisco's WLAN Controllers (WLCs). I made these notes once when I was trying to solve some site-survey optimization problems. Of course the major authority about this technology is Cisco so you might consult their documentation database for further information. If you find any mistakes please send me an E-Mail, thanks!


1   Upgrading to

TPC-Threshold verification:

show advanced [802.11b|802.11a] txpower

Change it via:

config advanced [802.11b|802.11a] tx-power-control-thresh 70


show advanced [802.11a|802.11b] profile global

2   Aggressive Load Balancing


show load-balancing

Also values of 10-12 are practical:

config load-balancing window 10

3   Group Leader

Group Leader priority based on the Group Identifier information element in each Neighbor Message. Contains:


But the Coverage Hole algorithm (CHA) is run per WLC.

4   Neighbor Messages

If not all APs can hear each other then Sub-Groups are created for those APs who can hear each other’s messages.

APs in the same logical RF sub-Group can share a single WLC, each be on a separate WLC, or be on a mix of WLCs.

Each controller must have at least one AP hear another AP from any other WLC. It must be possible for a Neighbor Message to pass betweem each two controllers (so intermediate WLCs which have neighboring APs can be utilized)

Each AP compiles and maintains a list of up to 34 neighboring APs (per radio) that is then reported up to their respective controllers.

Each WLC maintains a list of 24 neighbors per AP radio from the Neighbor Messages sent by each AP.

Once at the controller level, this per-AP, per-radio neighbor list of up to 34 APs is then pruned, which drops the ten APs with the weakest signals.

WLCs then forward each AP neighbor list up to the RF Group Leader, the WLC elected by the RF Group to perform all RRM configuration decision making.

Note: RF Grouping works per radio type!!!

WLCs will add neighbors to their lists given they are heard at greater than or equal to -80 dBm and will only then remove them once their signals dip below -85 dBm.

RRM supports a maximum of 20 controllers and 1000 access points per RF Group.

5   Dynamic Channel Assignment Algorithm (DCA)

Each sub-group (consisting of APs that hear each other) is configured separately (because sub-groups cannot interfere with each other)

The RF Group Leader considers the following parameters:

The Group Leader checks if another channel schema will result in a 5 dB better SNR on the worst performing AP.


6   Transmit Power Control Algorithm (TPC)

transmit power is calculated using:

Tx_Max for given AP + (Tx power control thresh – RSSI of 3rd highest neighbor above the threshold).

Hysteresis: 6 dBm before decreasing, 3 dBm before increasing.

6.1   Example

Based on the three steps/conditions defined in the TPC algorithm, the example in this section explains how the calculations are made to determine whether the transmit power of an AP needs to be changed. For the purpose of this example, these values are assumed:

  1. The Tx_Max is 20
  2. The current transmit power is 20 dBm
  3. The configured TPC threshold is -65 dBm
  4. The RSSI of the third neighbor is -55 dBm

Thee TPC algorithm results in:

  1. Condition one: is verified because there is a third neighbor, and it is above the transmit power control threshold.
  2. Condition two: 20 + (-65 – (-55)) = 10
  3. Condition three: Because the power has to be decreased one level, and a value of ten from condition two satisfies the TPC hysteresis, the Tx power is reduced by 3dB, which brings the new Tx power down to 17dBm.

At the next iteration of the TPC algorithm, the AP’s Tx power will be lowered further to 14dBm. This assumes all other conditions remain the same. However, it is important to note that the Tx power will not be lowered further (keeping all things constant) to 11dBm because the margin at 14dBm is not 6dB or higher.

7   Coverage Hole Detection and Correction Algorithm (CHA)

7.1   SNR Threshold Details

Note: The SNR threshold varies based on

  • AP power
  • coverage profile of the WLC

The actual SNR threshold value is:

SNR_threshold = ABS ( AP_TX_Power - 17 dBm - coverage_profile )

The coverage profile is user defined (default: 12 dB)

7.2   Clients with stupid roaming logic

Some clients fail to roam to an available better AP. Then the WLC might detect a coverage problem although there is none. Eventually the CHA is triggered unnecessarily.


  • Increase the Client Min. Exception Level to a higher number (e. g. 3 => 10)
  • Decrease the tolerable client SNR value (e. g. 12 dB => 3 dB)

8   Additional Issues

8.1   Interesting configuraion options

  • Avoid Foreign AP Interference allows the co-channel interference metric to be included in DCA algorithm (enabled by default)
  • Avoid Cisco AP Load allows the DCA to weight APs for a channel change depending of the AP load. Since the load is frequently changing we usually do not want to include this metric in the RRM calculation. (Therefore this field is NOT selected.)
  • Power Neighbor Count - The minimum number of neighbors an AP must have for the TPC algorithm to run.

8.2   Profile Thesholds for Traps

  • Only used for notification! These settings do not affect the RRM algorithms!
  • Therefore any change of these parameters (Clients, Coverage Exception Level, ...) is harmless.

8.3   Debugging RRM

> debug airewave-director ?

   all            Configures debug of all Airewave Director logs
   channel        Configures debug of Airewave Director channel assignment protocol
   error          Configures debug of Airewave Director error logs
   detail         Configures debug of Airewave Director detail logs
   group          Configures debug of Airewave Director grouping protocol
   manager        Configures debug of Airewave Director manager
   message        Configures debug of Airewave Director messages
   packet         Configures debug of Airewave Director packets
   power          Configures debug of Airewave Director power assignment protocol
   radar          Configures debug of Airewave Director radar detection/avoidance protocol
   rf-change      Configures logging of Airewave Director rf changes
   profile        Configures logging of Airewave Director profile events