Exploring DTPC and 802.11h Transmit Power Control

This article describes several wireless features to control the transmit power of wireless clients, along with some examples.

When designing, surveying or troubleshooting a wireless network, it is ideal to know the wireless clients and specifically their transmit powers.

In some cases, a mismatch of transmit power between an access point and a client can create network performance issues. A classic scenario is an access point with very strong transmit power. A packet sent by the access point will be received by a wireless client but a packet sent by a wireless client with less transmit power may not reach the access point. Matching transmit power could prevent one-way audio in Voice-over-IP.

Moreover, limiting the transmit power of the clients may help to reduce co-channel interference and to improve the network capacity, especially in high density environments.

A radio driver determines the transmit power of a wireless frame based on several factors including:

  • The radio hardware capability.

  • The regulatory domain: one or multiple country may be defined on the radio and will enforce a maximum allowed power for compliance with the regulations of the country.

  • The operational frequency: the transmit power may vary by band (2.4 GHz, 5 GHz) and subband (UNII1, UNII2, UNII2-Ex, UNII3).

  • The data rate and/or the modulation technique: the transmit power usually depends on the modulation technique (DSSS, CCK, OFDM, HT-20, HT-40) and the data rate of the transmission. Lower data rates generally have higher transmit powers than higher data rates.

  • Additional power constraints: Cisco proprietary DTPC feature minimizes power consumption and can save battery by limiting the transmit power of CCX clients to the transmit power of the access point radio. Similarly, the IEEE 802.11h amendment has a Power Constraint element to control the maximum transmit power of a client.

Standard 802.11d – and Cisco world-mode implementation

IEEE 802.11d-2001 is the 802.11 amendment that provides regulatory domain information. When enabled, a Country information element is added to the beacons and probe responses. With this element, the wireless clients can learn about the domain in term of allowed channels and maximum transmit output and can maintain compliance with the regulations of the country.

The Country element (IE number 7) contains the following information:

  • Country string: 3 octets value to indicate the regulatory domain (for example, AU – Australia). The third octet indicates if the regulations are for indoor, outdoor or both environments.

  • One or several consecutive subband triplets:

    • First Channel Number/Operating Extension Identifier: the lowest channel number of the subband.

    • Number of Channels/Operating Class: the number of channels defining the subband, starting from the first channel number.

    • Maximum transmit power level/Coverage Class: this value in dBm is an indication of either the maximum Transmit Power Output send to the antenna (TPO) or the Effective Isotropic Radiated Power (EIRP) depending on the implementation and the value of the country code.

Associated clients will limit their transmit power to the maximum value allowed for the country in the current channel.

On WLC, 802.11d is enabled by default using the country code provided at the initial WLC setup.

To change the controller’s country code:

(WLC) >config country CODE

Where the value CODE is the two-character ISO country code.

To verify the country code on a WLC:

(WLC) >show country

Configured Country............................... AU  - Australia

Using GUI:

In WIRELESS | Country, select the Country Code.

For example, when using the country code for Australia (ISO code AU), the beacon and probe response frames include the following Country element.

On an autonomous Cisco access point, IEEE 802.11d is disabled by default. You can enable it using the world-mode radio interface command:

AAP(config)#interface dot11Radio {0 | 1}

AAP(config-if)#world-mode dot11d country-code CODE {both | indoor | outdoor}

Regulatory information can restrict differently based on the access point’s location (indoor, outdoor or both).

For example, to enable 802.11d with Australia as a country code on 5GHz radio interface:

AAP(config)#interface dot11Radio 1

AAP(config-if)#world-mode dot11d country-code AU both

Selected country Australia

The world-mode legacy command is only useful for Cisco Aironet 350/CB20 NICs using earlier software versions that didn’t support 802.11d yet.

The GUI allows to enable 802.11d but the country code cannot be set (bug?).

In NETWORK | NETWORK INTERFACE | Radio1-802.11N 5GHz | Country Code section, you can only enable Dot11d.

On a captured Beacon frame, the Country element concatenates regulatory information from different subbands (UNII1, UNII2, UNII2-EX, UNII3):

You can verify the work-mode configuration from the running-configuration or the GUI.

Note that since the 1st of January 2015, manufacturers have been required by the FCC that non-SDR wireless clients do not rely on 802.11d for enforcing regulatory domains. [1]

Cisco Dynamic Transmit Power Control (DTPC)

DTPC is a Cisco proprietary feature which is part of the CCX program. When enabled on the global radio settings, Cisco access points advertise their channel and transmit power level in the beacons and probe responses. CCXv2 clients will automatically adjust their transmit power to the same level as the access point. For example, Cisco wireless phones from 7920 to 8821 series support DTPC.

This feature is particularly useful for the following reasons:

  • DTPC saves energy for low-powered devices which increases battery life.

  • DTPC reduces co-channel interference resulting from the client themselves. This is particularly true for high density environment.

  • DTPC can contribute to prevent a transmit power mismatch between the access point and the CCX client. Voice-over-IP will benefit from it.

On a WLC, DTPC is enabled by default. DTPC can be enabled/disabled per band in 2.4 GHz and for 5 GHz global settings. When enabled, it will transmit a vendor specific DTPC element (IE number 150) in the beacon and probe response frames.

In CLI:

config {802.11a | 802.11b} dtpc {enable | disable}

In addition, Aironet Extensions must also be enabled on the WLAN to support DTPC.

config wlan ccx AironetIeSupport enable 1

In GUI:

In WIRELESS | 802.11a/n/ac | Network | Advanced tab, enable Aironet IE.

In WLANs | WLANs | <WLAN ID> | General section, enable DTPC Support.

With DTPC enabled, access points advertise their transmit power in beacons and probe responses. The following picture shows the DTPC Information Element (IE number 150) captured in a beacon frame.

In this example, the access point transmit power was set to 19 dBm = 0x13 in hexadecimal. An associated CCX wireless client will limit its own transmit power to the access point’s transmit power.

To verify if DTPC is enabled:

(WLC) >show {802.11a | 802.11b}

DTPC  Status..................................... Enabled

 

(WLC) >show wlan 1

CCX - AironetIe Support.......................... Enabled

Let’s see an example of DTPC using a Samsung S5 mobile phone (CCX) and a Cisco 2700 access point. During this test, ICMP traffic was transmitted between the two devices. The frequency was set to 5745 MHz (channel 149) and the supported data rate was limited to 24Mbps only. Between each association, the access point transmit power level has been incremented from level 8 (2 dBm) to level 1 (23 dBm).

The RSSI of the access point frames (in blue) shows that the access point transmit power was increasing with time. The averaged RSSI of the mobile phone frames (in red) was constant at -60 dBm while the AP power was between 2 dBm and 8 dBm. When the AP power increased between 8 dBm and 14 dBm, the RSSI of the S5 frames increased up to -53 dBm. When the AP power was above 14 dBm, the RSSI of the S5 was capped at -53 dBm with no growth.

To explain this, the CCX client set its power accordingly to the access point transmit point within the client transmit power capabilities. In this example, when the access point transmit power is greater than 14 dBm, the S5 transmit power has reached its maximum. In other words, there is no more performance gain in the direction to the access point when the access point transmit power is above 14 dBm with a Samsung S5 at a data rate of 24 Mbps.

On an autonomous Cisco access point, DTPC is disabled by default and can be configured with the following radio interface command:

In CLI:

AAP(config)#interface dot11Radio {0 | 1}

AAP(config-if)#power client local

Notice again that Aironet extensions must be enabled to limit the power level on associated client devices. Aironet extensions are enabled by default.

AAP(config)#interface dot11Radio {0 | 1}

AAP(config-if)#dot11 extension aironet

Using GUI:

In NETWORK | NETWORK INTERFACE | Radio0-802.11N 2.4GHz, set Client Power (dBm) to Local.

The DTPC IE will be included and will match the transmit power configured for the access point radio interface.

With the IOS autonomous mode, the power client command has an extra feature. The client power can be set to any power level from -127 dBm  to 127 dBm or to the client maximum transmit power, regardless of the access point transmit power (actually limited to the maximum allowed transmit power of the access point) using the following command:

AAP(config)#interface dot11Radio {0 | 1}

AAP(config-if)#power client {-127 - 127 | maximum}

The feature uses the same DTPC IE but this time, the client power can be changed without matching the access point transmit power. This command offers a better precision in unit of dBm.

In a second example, using the same test conditions (Samsung S5, autonomous Cisco 2700 access point, channel 149, 24Mbps data rate only), the client power has been incremented from 6 dBm to 22 dBm between each association.

The RSSI of the access point frames (in blue) shows that the access point transmit power was constant. The averaged RSSI of the S5 frames (in red) increased and reached a plateau. We can see more precisely that the Samsung S5 reached its maximum transmit power at a data rate of 24 Mbps when the DTPC IE value is above 13 dBm.

802.11h – TPC Power Constraint

802.11h-2003 was an amendment called “Spectrum and Transmit Power Management Extensions in the 5GHz band in Europe” which later became enforced worldwide by both the ETSI and the FCC. Its purpose is to adjust the WLAN in order to co-exist with satellite and radar communications sharing the same frequency range.

802.11h operations consist of 2 mechanisms:

  • Dynamic Frequency Selection (DFS): to detect radar systems and to avoid co-channel operations. If the radio detects a radar signal on its operational channel, it must stop using the channel for 30 minutes and will move to another channel after checking that the new channel is free of radar for 1 minute. This mechanism is mandatory for UNII2 channels (52, 56, 60, and 64) and UNII2-EX channels (100, 104, 108, 112, 120, 124, 128, 136, and 140).

  • Transmit Power Control (TPC): to enforce an additional power constraint in dBm and to reduce the interference with satellite services. The access point and its wireless clients will ensure that they cannot transmit over the maximum regulatory transmit power minus the power constraint. This mitigation mechanism is optional.

The IEEE 802.11h mechanisms are carefully considered for outdoor wireless deployments, especially near airports, maritime ports and weather radars.

Looking at TPC specifically, a power constraint can be used to limit the transmit power of mesh access points associating to root access points for example. 802.11h Power Constraint can be configured for 5GHz radios only. When enabled, it will transmit the Power Constraint element (IE number 32) in the beacon and probe response frames.

802.11h TPC also requires the Country element. In fact the wireless client determines its local maximum transmit power with the combination of the local maximum transmit power in the Country element and the power constraint according to the following formula:

On a WLC, you can set a power constraint of 10 dB with the following command:

(WLC) >config 802.11h powerconstraint 10

 

Power constraint value set.

Note that DTPC and 802.11h Power Constraint are mutually exclusive. They cannot be enabled simultaneously.

If you try to modify the power constraint while DTPC is still enabled, you will see the following error:

(WLC) >config 802.11h powerconstraint 10

 

802.11a Dynamic Transmit Power Control (DTPC) must be disabled before enabling 802.11h power constraint. Use 'config 802.11a dtpc disable' to disable the 802.11a DTPC.

Using GUI, you can configure 802.11h Power Constraint:

In WIRELESS | 802.11a/n/ac | DFS (802.11h) | Power Constraint tab, set Local Power Constraint to a value in dB.

To check the power constraint value:

(WLC) >show 802.11h

 

Power Constraint................................. 10

Channel Switch................................... Enabled

Channel Mode..................................... Quiet

The following picture shows the Power Constraint element captured in a beacon frame.

The access point informs the client of a power constraint of 10 dB. The constraint will be applied from the maximum transmit power allowed by the regulatory domain, and not from the transmit power of the access point (which is unknown by the client with TPC). If the maximum power allowed by the domain is 23 dBm, the client will limit its power to 23 – 10 = 13 dBm.

On an autonomous access point, a default power constraint of 3 dB is set on 5GHz radios when 802.11d is enabled and when the power client {-127 to 127 | local} command is not used.

In the next example, an iPhone 5S is used with the same access point setup with 802.11h Power Constraint instead of DTPC. Between each association with an iPhone 5S, the Power Constraint was decremented from 28 dB to 7 dB. The configuration was the same as the previous tests (24Mbps data rate, channel 149).

Again, the RSSI of the access point frames (in blue) shows that the access point transmit power was constant. The averaged RSSI of the iPhone frames (in red) increased and reached a maximum when the Power Constraint hit 12 dB. To find out the client transmit power, use the formula: the client transmit power is limited to the maximum transmit power level specified for the channel in the Country element minus the power constraint.

In a beacon, the Country element specified that the maximum transmit power level specified for channel 149 was 30 dBm. So with a Power Constraint of 12 dB, the maximum client transmit power of the iPhone 5S for 24Mbps would be 18 dBm.

But let's just be careful with those values. One step back on the interpretation of Maximum Transmit Power Level in the Country element, it can relate to the TPO or to the EIRP. In Australia, the maximum output powers are expressed in EIRP which means antenna gain must be taken into account.

802.11h - Power Capability and TPC Report

802.11h has also introduced two Information Elements, Power Capability (IE number 33) and Supported Channels (IE number 36) which are now in every Association Request and Reassociation Request frame (2.4GHz and 5GHz). The first one specifies the minimum and maximum transmit powers in dBm with which a wireless client is capable of transmitting in the current channel. The second contains the list of channel subbands in which the wireless client is capable of operating.

The following picture shows the two IEs in an Association Request of the iPhone 5S on 5GHz channel 149:

Finally 802.11h includes TPC Report element (IE number 35) which contains the transmit power information. The TPC Report can be in beacon and probe response frames and can also be requested to any station. The reply may be in the form of an Action frame containing the power used to transmit the response. You may see the following TPC Report element with other wireless vendor access points in conjunction with 802.11k:

Conclusion

In addition to technical documentation and FCC ID Search information, benchmarking the wireless clients may help to understand what the client behaviour is under specific requirements (country, radio band, channel, data rate, etc). Packet analysis helps me to find lots of useful information, including:

  • Supported subbands and channels: using Country element and Supported Channels element.

  • Maximum transmit power allowed by the regulatory domain: using Country element.

  • Maximum transmit power supported by the wireless client on the current channel: using Power Capability element.

  • Client transmit power limitation: using DTPC element or 802.11h Power Constraint element. Up to the maximum transmit power supported by the wireless client.

Using benchmarking results, the wireless network can be changed in order to optimise the performance. It is generally recommended to ensure that the transmit power of the access point is not greater than the maximum transmit power of the weakest client for the desired minimum data rate.

However matching transmit power makes sense in a world using same radios and isotropic radiators. Performance may be affected by many other factors such as the antenna gain, the radiation pattern, the radio received sensitivity, the noise, Dynamic Rate Shifting and roaming algorithms to name a few.

Additional resources

Cisco Enterprise Mobility 8.1 Design Guide: http://www.cisco.com/c/en/us/td/docs/wireless/controller/8-1/Enterprise-Mobility-8-1-Design-Guide/Enterprise_Mobility_8-1_Deployment_Guide.html

Overview on 802.11h, Transmit Power Control (TPC) and Dynamic Frequency Selection: http://www.cisco.com/c/en/us/support/docs/wireless-mobility/80211/200069-Overview-on-802-11h-Transmit-Power-Cont.html

TPC and DFS Overview, Cisco Support Community: https://supportforums.cisco.com/document/52376/tpc-and-dfs-overview

TPC vs DTPC vs World mode and 802.11h parameters:

http://wirelessccie.blogspot.com.au/2009/07/tpc-vs-dtpc-vs-world-mode.html

http://wirelessccie.blogspot.com.au/2009/08/80211h-parameters.html

[1] FCC 594280 D01 Configuration Control: https://apps.fcc.gov/oetcf/kdb/forms/FTSSearchResultPage.cfm?id=39498&switch=P