Gone are the days when standards were pure and simple (well, probably never simple, but at least pure…). Today, it seems they are cluttered with options of which most are probably never going to be implemented. The Wireless LAN 802.11 standard seems to be no exception. Let me make two examples:
Packet Transmission:
- Default: This is the good old "backoff period – send – ack" mechanism. Easy, works well but performance is not that great.
- Frame Bursting: Packets are sent in the following manner: "packet – ack – packet – ack – packet – ack". Still easy, was implemented as a proprietary enhancement in many 802.11g products and has been sort of legalized with 802.11e (WMM).
- Block Acknowledgments: An addition to frame bursting which allows transmissions without ack’s. A whole set of frames are then acknowledged once they are all sent. To make things just a bit more complicated there’s immediate ACK and delayed ACK (which seems to have been defined for devices which can’t tell right away if all went fine).
- Aggregation: And on top, 802.11n has now specified that several MAC frames can be put into a physical frame which can now have a size of up to 64kByte. Looks like this is mandatory so all 802.11 devices should support this.
The statistics on this one are not so bad. Even low end 802.11n devices should support the default method, frame bursting and aggregation. Haven’t seen block ack’s implemented in the devices that have come by me, however.
Power Saving:
I can see at least four possibilities here:
- Standard Power Save (PS): This has been in the standards since the beginning. Devices tell the AP that they are going to sleep and the access point buffers incoming packets. When devices wake up and see that the access point has packets waiting for them they poll for each buffered frame.
- U-APSD: Unscheduled Automated Power-Save Delivery: Introduced by 802.11e, optional in the WMM (Wireless Multimedia) specification. Similar to PS above but once a device sends a trigger frame, the access point forwards all frames of in the buffer that fit into the service period during which the device is active. Once the service period is over, the device automatically goes back to sleep.
- S-APSD: Scheduled Automated Power-Save Delivery: No trigger frames. Instead, a schedule is agreed between the access point and wireless devices. The devices then wake up at predefined instants and packets are delivered automatically. This one is not included in the WMM specification, so this one probably has no chance of seeing the light of day.
- PSMP: Power Save Multi Poll. Yet another power save scheme which was lately introduced with the 802.11n High Throughput specification. This one schedules uplink and downlink transmissions of end user devices. Outside the scheduled times, devices can enter sleep mode. It looks like this power save mode has been designed for devices and applications that have constant data streams with a static bandwidth requirement (e.g. VoIP, video streaming etc.). Nice but also optional.
Statistics on this one are bad. I haven’t seen an access point yet that supports more than the classic PS mode. Has anyone seen more than this implemented yet?