Wireshark – Find out the data rate of an 802.11ax Data Frame
As you know, all data rates are changing with 802.11ax, Hence, the new MCS table you can find here: https://www.semfionetworks.com/blog/mcs-table-updated-with-80211ax-data-rates
In this article, we will see how we can figure out the data rate of a specific 802.11ax data frame.
If you want to know how to capture 802.11ax data frames, refer to this article first: https://www.semfionetworks.com/blog/80211ax-remote-packet-captures-using-the-jetson-nano
STEP 1 - FILTER TO FIND THE 802.11AX DATA FRAMES
radiotap.he.data_1.ppdu_format == 0x0 means that we are filtering for HE Single User PPDUs.
radiotap.he.data_1.ppdu_format == 0x2 means that we are filtering for HE Multi User PPDUs.
STEP 2 - SELECT THE FRAME YOU WANT TO ANALYSE
STEP 3 - FIND THE TRANSMISSION DETAILS IN THE RADIOTAP HEADER
In order to be able to find the exact Data Rate used, we need these pieces of information:
- MCS Index
- Guard Interval
- Channel Width or Ressource Unit size
- Number of Spatial Streams
We can find these information in the RadioTap Header.
STEP 4 - REFERENCE THE MCS TABLE TO FIND THE EXACT DATA RATE
To summarize, here are transmission details what we have for our example:
- PHY: 802.11ax
- MCS Index: 9
- Guard Interval: 1.6us
- Channel Width: 20MHz (OFDMA)
- Number of Spatial Streams: 1
BONUS - CONFIGURE YOUR WIRESHARK COLUMN TO DISPLAY THESE TRANSMISSION DETAILS
As a bonus, you can add the following columns to your Wireshark to display the transmission details we have talked about here:
- radiotap.he.data_3.data_mcs: For the MCS Index
- radiotap.he.data_5.gi: For the Guard Interval
- radiotap.he.data_5.data_bw_ru_allocation: For the Channel Width or RU Allocation
- radiotap.he.data_6.nsts : For the number of Spatial Streams