wlan power save mode in linux
play

WLAN Power Save Mode in Linux Kalle Valo kalle.valo@iki.fi - PowerPoint PPT Presentation

WLAN Power Save Mode in Linux Kalle Valo kalle.valo@iki.fi (...@nokia.com) FUDCon Berlin 2009 Linux Wireless Linux Wireless Outline 1 Introduction 2 Status 3 Future Linux Wireless Linux Wireless Introduction Introduction Linux Wireless


  1. WLAN Power Save Mode in Linux Kalle Valo kalle.valo@iki.fi (...@nokia.com) FUDCon Berlin 2009 Linux Wireless Linux Wireless

  2. Outline 1 Introduction 2 Status 3 Future Linux Wireless Linux Wireless

  3. Introduction Introduction Linux Wireless Linux Wireless

  4. Introduction Why? • Total system power consumption of Nokia N800 (stlc45xx, mac80211, 2.6.29-omap-wl): 1200 1000 800 power (mW) 600 400 200 0 PSM off PSM on PSM + beacon filter WLAN off Linux Wireless Linux Wireless

  5. Introduction Power Save Mode (PSM) simplified • client informs Access Point (AP) of the PSM status with a flag in Frame Control header • AP buffers all unicast, broadcast and multicast frames • AP informs of buffered unicast frames with TIM bits in beacons • AP sends broadcast and multicast frames immediately after the DTIM beacons with a special TIM bit set • AP sends buffered unicast frames either when client wakes up or requests them with a PS-Poll frame Linux Wireless Linux Wireless

  6. Introduction PSM example Linux Wireless Linux Wireless

  7. Introduction Downsides • few ms latency in transmission due to firmware wakeup (depends on hardware) • hundreds of ms latency in receive, depends on: • beacon interval • DTIM period • how often client wakes up for beacons • broken APs → strange packet loss • broken firmware and/or HW, timing is very delicate Linux Wireless Linux Wireless

  8. Status Status Linux Wireless Linux Wireless

  9. Status Dynamic and Static PSM • timeout > 0 → Dynamic PSM • stays awake a certain period after a last transmission • wakes up with Nullfunc • should not affect throughput • in certain cases increases latency considerably, but user won’t notice in practise • timeout = 0 → Static PSM • goes immediately to sleep after transmitting a frame • fetches buffered frames with PS-Poll frame • decreases throughput • increases latency significantly Linux Wireless Linux Wireless

  10. Status User space interface • Wireless Extensions have power and power timeout: • iwconfig wlan0 power timeout 200m • the dynamic PSM timeout value • no support in nl80211, yet • network latency PM QoS interface • /dev/network_latency • how often hardware wakes up for beacons Linux Wireless Linux Wireless

  11. Status mac80211 status • supported HW types: • HW supports PSM (IEEE80211_HW_SUPPORTS_PS) • Stack must create Nullfunc and PS-Poll frames (IEEE80211_HW_PS_NULLFUNC_STACK) • HW has timers for dynamic PSM transitions (IEEE80211_HW_SUPPORTS_DYNAMIC_PS) • drivers supporting PSM: • ath9k • rt2x00 • iwlwifi (was disabled due to bugs, just re-enabled today) • stlc45xx (staging, patches pending) • wl1251 (patches pending) • PSM enabled by default for the drivers which claim to support it, default timeout 500 ms Linux Wireless Linux Wireless

  12. Status Fullmac driver support • unknown, any comments? Linux Wireless Linux Wireless

  13. Status Beacon filtering • in softmac beacons are normally forwarded to the host CPU • wakes up CPU unnecessarily • some HWs support a feature to only forward beacons which have chaned in relevant parts • HW sends an event when beacons are lost Linux Wireless Linux Wireless

  14. Future Future Linux Wireless Linux Wireless

  15. Future Unscheduled Automatic Power Save Delivery (U-APSD) • also known as WMM Power Save • needs QoS support from the applications, otherwise legacy PSM is used Linux Wireless Linux Wireless

  16. Future Improvements to Dynamic Power Save • an interface for the applications to influence the timeout value • use PM QoS network_latency somehow? • more advanced algorithm for adaptation • academic papers available Linux Wireless Linux Wireless

  17. Future User space • nl80211 support • wpa_supplicant: • support to disable PSM? • configure timeout value? • more QoS information from applications? Linux Wireless Linux Wireless

  18. Thanks for listening. Questions? http://wireless.kernel.org/ Linux Wireless

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend