Follow me:

802.11 Power Saving

Power saving is a normal function of mobile devices. It’s required to conserve battery.

In this episode, we summarize what we’ve read about Power Management from the 802.11 standard.

Power save (PS) is a power management mode in which a station (STA) alternates between two states:

  • Awake: STA is fully powered
  • Dozing: STA is not able to transmit or receive and consumes very low power

Stations may define their own power management states. For example, this is a configurable setting from a Wi-Fi scanner:

  • CAM – Constant Active Mode
  • Fast Power Save
  • MAX Power Save

The Power Management Flag is located in the Frame Control Field located in the MAC header of the 802.11 frame:

The Power Saving Flag is used by a STA to notify that it will go to sleep.

That flag is sent within a Null Data Frame from the STA. The Null Data Frame contains no data at all but is used to specify whether the STA goes into Awake or Doze state.

Null Data Frame sent when client is going to sleep
Null Data Frames
Power management flag

When a STA goes into a doze state, traffic for the STA is buffered at the access point.

How does the STA know there is data buffered for it? The Beacon frame includes a Traffic Indication Map (TIM) and Delivery TIM (DTIM) which tells the STA how often it should come out of doze state and check for buffered data.

Traffic Indication Map

The TIM contains a Partial Virtual Map and an Association ID for buffered data associated with a STA.

The DTIM Count field indicates how many Beacon frames (including the current frame) appear before the next DTIM. A DTIM count of 0 indicates that the current TIM is a DTIM.

The DTIM Period field indicates the number of beacon intervals between successive DTIMs.

The Bitmap Control field contains the traffic indication virtual bitmap bit associated with an AID. This bit is set to 1 in TIM elements with a value of 0 in the DTIM Count field when one or more group addressed MSDUs/MMPDUs are buffered at the AP.

Buffered data for multiple STAs

Wireshark filters

  • Filter frames with the Power Management bit set to 1
    • wlan.fc.pwrmgt == 1
  • Filter null Data frames (null data + CF-Poll):
    • (wlan.fc.type == 2) && (wlan.fc.subtype == 4)
  • Filter beacon frame that indicates buffered data is available for doze STA:
    • (wlan.fc.type == 0) && (wlan.fc.subtype == 8) && (wlan.tim.partial_virtual_bitmap != 00)

802.11-2016 Sections

  • Section 6.3.2 – Power Management p.264
  • Section – Power Management subfield p.642
  • Section 11.2 – Power Management (MLME) p.1599
  • Section 11.2.3 – Power management in a non-DMG infrastructure network p.1600
  • Figure 11-7 – Infrastructure power management operation (no PCF operating) p.1603

PCAP Files

Hosted by

Rowell, CWNE #210, is a network engineer in Higher-Ed. He enjoys working with wireless networking technologies and loves to share and engage with the community. You can connect with him on Twitter, LinkedIn, and Facebook.

Join the discussion

This site uses Akismet to reduce spam. Learn how your comment data is processed.

More from this show

Episode 243