WLC QoS – QoS Basic Service Set (QBSS)

By Jason Boyers on April 27th, 2011

Ahh, the joys of acronyms!  So many ways of stating similar, but not exactly the same, things.  How do access points determine whether to allow clients (and their streams) to connect and pass data, and how do clients determine which is the best access point in a given area to connect to?  These can be accomplished in two different ways: QBSS (QoS Basic Service Set) and TSpec (Traffic Specification.)  QBSS is normally sent by the access point, though the version can be changed.  With it, the client gathers information as to the load on an AP to determine whether or not there is enough or better capacity to join it than another nearby AP.   TSpec, on the other hand, is not enabled by default.  Therefore, it must be configured and applied prior to its use.  Based on the configuration, the WLC determines whether or not specific streams are allowed to use the wireless medium when connecting to a specified SSID using a specified Access Category.  We will saved TSpec (with ADDTS) for the next blog.

So, we start with QBSS, since it is the simplest.  There are three versions of QBSS – Cisco v1, 802.11e, and Cisco v2.  Let’s start with the default – 802.11e (also referred to as “Draft 13.”)  When a WLAN is configured, the WMM Policy under the QoS tab is set to Allowed by default.  With this setting, or if the WMM Policy is set to Required, then the QBSS Load Element IE in the beacons will be set to the 802.11e CCA Version.  The IE will send the number of stations currently connected to the AP, the current channel utilization, and the Available Admission Capabilities, which is a value which should be multiplied by 32μs.  In the example below, there are 2 clients, 6% channel utilization, and 15625 for AAC (which equals 500ms.)  Note that in the AAC is derived from the Max RF Bandwidth configured under the Voice parameters for each network (802.11a/n and 802.11b/g/n.)  The default would be 23437, resulting in 750ms, or 75% of each second.  Also, if the Reserved Roaming Bandwidth is configured, that value will be added to the AAC.  So, with the default of  6% for roaming, plus the 75% for Max RF Bandwidth, the value sent would be 29687.  That equates to Clients can use this information for determining which AP to connect to, and APs can use this information to determine whether or not a client should be allowed (based on the AAC value.)

QBSS 802.11e

In the same QBSS Load Element IE, Cisco v1 (also referred to as “Old QBSS” or “Draft 6″) sends the same information as the 802.11e.  However, the value for “Available Admission Capabilities” will be “0,” no matter the Voice configuration.  The client uses this information to determine if it will connect to a certain AP – the AP doesn’t use this information.  Because it uses the same IE, it cannot be configured at the same time as the 802.11e version.  Therefore, the WMM Policy must be set to Disabled.  And, the 7920 Client CAC must be checked.  The threshold at which the client will start roaming based on the QBSS values in the IE are defined on the client side.  Here’s an example of the QBSS IE from a packet capture.

QBSS Version 1

There is also a third QBSS element – Cisco v2.  Note that this QBSS IE is NOT the same information element as the QBSS Load Element IE used by Cisco v1 or 802.11e.  Therefore, it can be used at the same time as either one.  This IE is configured by checking the 7920 AP CAC checkbox under the WLAN QoS tab. This IE countains station count and channel utilization, just like the first two QBSS options.  But, it also sends the Call Admission Limit value (defaults to 105 out of 255,) and a G.711 CU Quantum value (defaults to 15.)  The G711 Channel Utilization (CU) unit is based on the packetizing of voice traffic using G.711 in 20ms samples.  If you were using a different sample size, that could theoretically be changed to provide a more accurate picture of channel utilization based on the number of streams.  Note that this Information Element does not appear to be sent for 802.11a – only 802.11b/g.  That is perhaps why the command modify these values is only found under the advanced 802.11b configuration – config advanced 802.11b 7920VSIEConfig {call-admission-limit limitG711-CU-Quantum quantum}.

QBSS Cisco v2

So, what do we make of all of this?  First, if the client is required to choose between available access points, this is one way to accomplish that.  The clients must understand the IEs, and they must have an algorithm that can make association/roaming decisions using that information.  Obviously, if this is a non-CCX/Cisco client, then the only option is the 802.11e version (using WMM.)   Here’s the recommendations to configure, based on the clients:

  1. Cisco 7920, pre 2.0(1)
    • WMM Policy: Disabled
    • 7920 Client CAC (Cisco version 1, Draft 6)
  2. Cisco 7920, 2.0(1) or greater; 7921; CCX clients
    • WMM Policy: Allowed (WMM Policy: Required if only WMM devices will connect to this SSID)
    • 7920 AP CAC (Cisco version 2)
  3. Other WMM Devices
    • WMM Policy: Allowed (WMM Policy: Required if only WMM devices will connect to this SSID)

Also, it should be noted that although the term “Basic Service Set” is used, it actually applies to all clients connected to a radio.  So, if one client is connected to SSID1 and another is connected to SSID2, then the QBSS IEs for both SSID beacons will show a Station Count of 2.  Next time – TSpec and ACM!

Jason Boyers – CCIE #26024 (Wireless)
Technical Instructor – IPexpert, Inc.
Mailto: jboyers@ipexpert.com

WLC QoS - QoS Basic Service Set (QBSS), 3.8 out of 5 based on 5 ratings
Be Sociable, Share!

    Tags: CCIE, CCIE Wireless, CCIE Wireless Training

    3 Responses to “WLC QoS – QoS Basic Service Set (QBSS)”

    1. Andrew says:

      Hi Jason,
      How were you able to get Wireshark to decode wireless information element 221 for QBSS version 2. I updated to the latest version of Wireshark (1.4.6) and that IE is not interpreted.

      CCIE #28298 (Wireless)

      VA:F [1.9.22_1171]
      Rating: 5.0/5 (1 vote cast)
    2. Jason Boyers says:

      I’m running v1.4.3, and it decodes it fine. IE 221 only means that it is vendor specific. It is the Aironet IE type 14 that needs to be interpreted. I just checked under Help>Supported Protocols. There is a tab for “Display Filter Fields.” In that list, there is a section title “802.11 MGT.” All of the options start with “wlan_mgt.” A little ways down that list there should be four fiels that start with “wlan_mgt.qbss2.” That covers the fields available in the IE. I’m running Wireshark (for interpretation, not gathering the packet captures) in Vista, 32-bit.

      VA:F [1.9.22_1171]
      Rating: 5.0/5 (1 vote cast)
    3. TacACK says:

      Very well written! Thanks for the blogpost , Jason.

      VA:F [1.9.22_1171]
      Rating: 0.0/5 (0 votes cast)

    Leave a Reply