Duration/ID field is 2 bytes(16bits) long field in the 802.11 MAC header.
Here is the 16 bit of Duration/ID fieldIn 802.11, Duration/ID field can be used for 3 different reason
1. Virtual Carrier Sense – This is the main purpose which used to reset the NAV timer of the other stations
2. Legacy Power Management – PS Poll frames use this field as an association identifer (AID)
3. Contention-free Period – This field is used as an indicator that a point coordination function (PCF) process has begun.
Virtual Carrier Sense
– Virtual Carrier Sense use a timer mechanism known as the NAV (Network Allocation Vector)
– When listening STA hears a frame transmission by other STA, the listening STA will set its NAV timer to the value appear in transmitted frame.
– listening STA then will use the NAV as a count down timer, knowing that RF medium will be busy until it reach 0.
– When a client transmit a unicast frame, Duration/ID field use bit 0-14 (value 0 – 32767)
– Duration/ID value represent time in μS (microseconds) that is required to transmit the ACK + one SIFS interval.
– Duration values are always about frame transmission that are to follow.
– The client who transmit a frame will calculate how long it will take to receive an ACK frame & include that in the duration field.
– The ACK frame follows the transmitted frame having duration value of 0.
Below shows a frame capture of a unicast frame & ACK followed by the transmission. As you can see duration value of 44 μS (time for a ACK+SIFS) for tx frame & ACK having 0 μS value.
When this type of frame is transmitting in the RF all other receiving STA set their NAV to 44 μS
– NAV is not updated when the receiver address (RA) is the same as receiving station’s MAC address.
– Duration value of the Tx STA does not reset the trasmitter’s NAV timer (as it cannot hear its own tx)
– Transmitter NAV will be zero after transmitting
PS-Poll in Legacy Power Management
– When a STA associate to an AP each STA will get a unique AID (Association Identifier)
– If AP buffering data for a station in power save mode, when AP transmit its next beacon, the AID of station will be seen in TIM (Traffic Indicator Map)
– TIM field is a list of all stations that have undelivered unicast data buffered on the AP (DTIM is used for multicast buffered data)
– Client will send a PS-Poll frame to request that AP sends the unicast buffered frame to the STA.
– In PS-Poll frame Duration/ID field use as an identifier (AID) & not being used for duration or resetting NAV timers.
– When it use in PS-Poll frame, tow Most Significant Bits (MSB) set to 1 & AID value use rest of the 14 LSB(Least Significant Bits).
– But allowable value for AID is 1 – 2007.
Below shows a PS-Poll frame capture that shows the AID value (3 in my case) instead of Duration value.Contention-free period in PCF
– When duration field used in PCF, it used a fixed value of 32768 (bit 15 is 1 & all other bits set to 0)
– In all frames transmitted in Contention-free Period (CFP) have duration value of 32768.
– In HCF (Hybrid Coordination Function) Channel Access (HCCA) that require to use CFP.
– None of the vendors not implemented HCCA
Below table summarize the duration ID field contents & highlighted the 3 main scenarios explained above (source page 90-91 CWAP study guide)
1. CWAP Official Study Guide – Chapter 3
1. MAC Header : Frame Control
2. MAC Header : Addresses
3. MAC Header : QoS Control
4. MAC Header : Sequence Control
Will Broadcast or multicast frame will be buffered by AP when the station goes in sleep mode?
Yes, if DTIM set to 1 in each beacon interval multicast/broadcast packet will be sent. So STA has to wake up for every beacon interval to receive multicast/broadcast.
If you set DTIM=5, then multicast/broadcast will be delivered in every 5th beacon interval. So STA can go into longer sleep time. So AP will buffer those broadcast/multicast during that time.
If duration = SIFS + Ack then since NAV is derived from it, that should be NAV = Data payload time + Duration (SIFS+Ack)?