Search code examples
wiresharkpacket-capturepacket-snifferswifi

How to validate WLAN QoS frames which do not have a frame check sequence


I noticed that some WLAN QoS frames of the same subtype (e.g. 8) have a FCS and others don't. In both cases the protected flag in the frame control field is set to 1. What drives this difference and how is the integrity of such frames validated?


Solution

  • What drives this difference

    Perhaps either

    1. the frames without an FCS are transmitted by the host doing the capture, in which case the FCS hasn't been calculated yet (it's generally calculated by the network adapter, not by the host, and outgoing packets are "captured" by the host OS network software handing them to the capture mechanism rather than being captured as transmitted) or
    2. the frames without an FCS were captured by a network adapter that doesn't provide the FCS to the host.

    how is the integrity of such frames validated?

    By checking the FCS - it's there, you just aren't getting it in your capture. For transmitted frames, it's added when the frame is transmitted by the network adapter; for received frames, it's checked by the network adapter even if it doesn't supply it to the host.