802.11 network cards are notorious for draining a laptop’s battery power quickly. However, you can minimize this power drain by utilizing a power-save mode, which basically puts the network card to sleep, only periodically checking for network activity. Jim Geier explains.
Wireless LANs certainly provide the freedom of mobility as we use our laptops and PDAs without the constraints of network cabling. Of course to facilitate this benefit, we unplug our devices from AC power and operate them from batteries. As most of know, however, 802.11 network cards consume significant amounts of energy that drains batteries fast.
To prolong battery life, the 802.11 standard defines an optional “power save mode,” which is available on most 80211 NICs today. End users can simply turn it on or off via the card driver or configuration tool. With power save off, the 80211 network card is generally in receive mode listening for packets and occasionally in transmit mode when sending packets. These modes require the 80211 NIC to keep most circuits powered-up and ready for operation.
When you activate the power save mode, the 80211 network card indicates its desire to enter “sleep” state to the access point by toggling the power save bit in the header of each 802.11 frame from a 0 to a 1. The access point receives this frame and notices the corresponding client wishes to enter power save mode. The access point will then begin buffering packets for the client while the client’s 80211 NIC is asleep. This is analogous to taking a nap at your desk and telling your assistant to hold all messages intended for you.
The client’s 80211 network card consumes much less power while sleeping by shutting off power to nearly everything except for a timing circuit. This enables the NIC to consume very little power and wake up periodically (at the right time) to receive regular beacon transmissions coming from the access point. These beacons identify whether sleeping stations have packets buffered at the access point and waiting for delivery to their respective destinations.
When a sleeping network card wakes up and learns from the beacon that there are packets waiting, the radio NIC communicates with the access point to retrieve them. After that, the 80211 network card can go back to sleep until it must listen for the next beacon transmission.
Should I use power save mode?
When deciding whether to use power save mode, you should consider the following:
- Actual power savings. The actual savings in battery life using 802.11 power save mode is difficult to determine, and there are situations where it might not provide any benefits at all. When transmitting or receiving, the 80211 network card will consume an average of 250 milliamps; whereas, current draw while asleep could be as low as 30 milliamps. Because the sleeping 80211 network card will wake up periodically, the aggregate current draw will vary somewhere between 30 and 250 milliamps, depending on the wakeup timing (beacon intervals) set in the access point.If you force the 80211 network card to wakeup often in order to accommodate higher traffic levels, then the aggregate current will be closer to the receive/transmit values, possibly 230 milliamps or so. As a result, you probably won’t notice any appreciable savings in battery life.If the wakeup settings allow the 80211 network card to sleep for longer periods of time, then the aggregate current draw will be closer to the sleep value, maybe 100 milliamps. As a result, battery requirements from the 80211 network card will drop by 50 percent or more. That doesn’t mean that your battery will last twice as long, however, because the end user device (e.g., laptop, PDA, etc.) also consumes power from the battery. The 80211 network card improvements only contribute to part of lengthening the battery life.
- Decrease in throughput. Keep in mind that to achieve significant battery savings using sleep mode, you have to be willing to live with extremely low throughput. Some applications that require frequent communications with the clients will not operate well with power saving turned on.
- Broadcast packet support. Most access points are designed to not buffer broadcast packets for sleeping clients. This avoids the need for relatively large buffers since broadcast packets are a very common occurrence on most networks. If broadcast packets are an important part of your wireless applications, then avoid the use of power save mode. Your clients will likely miss important information while sleeping.
These are some general guidelines, but the true test is actual practice. If you feel that power save mode could provide significant battery savings, then do some pilot testing first to ensure you can actually realize battery savings and live with the resulting drop in throughput.