Tags

, ,

The Sequence Control field is 16 bits in length and consists of two subfields, the Sequence Number and the Fragment Number. The sequence Control field is not present in control frames (as no frame body). The format of the Sequence Control field is shown below.

CWAP- SeqControl-01Sequence Number
The Sequence Number field is a 12-bit field indicating the sequence number of an MSDU, A-MSDU, or MMPDU. Each MSDU, A-MSDU, or MMPDU transmitted by a STA is assigned a sequence number.The sequence number remains constant in all retransmissions of an MSDU, MMPDU, or fragment thereof.

Fragment Number
The Fragment Number field is a 4-bit field indicating the number of each fragment of an MSDU or MMPDU. The fragment number is set to 0 in the first or only fragment of an MSDU or MMPDU and is incremented by one for each successive fragment of that MSDU or MMPDU. The fragment number remains constant in all retransmissions of the fragment.

Fragments are always sent in what is known as a “fragment burst“. Once Tx STA gains control of the medium, it maintains control through NAV Duration values & SIFS. Value of the Duration field in the MAC header of first fragment is used to reserve the medium for the next fragment. If a fragment is not acknowledged, then retries begin at unacknowledged fragment (using DIFS) & not beginning of the original MSDU.

CWAP- SeqControl-02Below shows an example for a STA configured with a fragmentation threshold (min 256 byte) of 300 bytes. So any MSDU larger than 300 bytes will be fragmented. Fragmentation does not take into account frame body expansion due to encryption, thus encrypted fragment may exceed the fragmentation threshold. Given example consider non-QoS data frame with MAC header size of 24 bytes (ie 32 -6 -2 bytes where 6 byte less for 4th address field & 2 bytes less for no QoS control field) and 4 byte CRC. So fragment size should be 272 bytes (300-28).

CWAP- SeqControl-03The first fragment to be transmitted will be fragment#0 & the More Fragment bit in the Frame Control bit set to 1. The More Fragments bit will stay to 1 until the last fragment, at which time it will change to 0 indicating that there is no more fragments (fragment#4 in the below).

CWAP- SeqControl-04
Reference
1. CWAP Official Study Guide – Chapter 3