I am using "duration field values" present in 802.11 radio information of wireless packets to calculate the Channel utilization of my Access point. formula to calculate channel utilization is : T on/(T on + T off) to calculate "T on" i am taking the sum of "duration" value present in all packets. But sometimes i am observing, duration filed value is missing in QOS data frames when downlink traffic is running. But can see duration field when uplink traffic is running. i am using 802.11 BE radios to run traffic and sniff packets.
below is the packet flow: Frame 210: 1662 bytes on wire (13296 bits), 1662 bytes captured (13296 bits) Encapsulation type: IEEE 802.11 plus radiotap radio header (23) Arrival Time: Jun 19, 2024 16:53:36.331323000 UTC UTC Arrival Time: Jun 19, 2024 16:53:36.331323000 UTC Epoch Arrival Time: 1718816016.331323000 [Time shift for this packet: 0.000000000 seconds] [Time delta from previous captured frame: 0.067886000 seconds] [Time delta from previous displayed frame: 0.210355000 seconds] [Time since reference or first frame: 14.301998000 seconds] Frame Number: 210 Frame Length: 1662 bytes (13296 bits) Capture Length: 1662 bytes (13296 bits) [Frame is marked: False] [Frame is ignored: False] [Protocols in frame: radiotap:wlan_radio:wlan:data] Radiotap Header v0, Length 120 Header revision: 0 Header pad: 0 Header length: 120 Present flags Present flags word: 0xa040402b .... .... .... .... .... .... .... ...1 = TSFT: Present .... .... .... .... .... .... .... ..1. = Flags: Present .... .... .... .... .... .... .... .0.. = Rate: Absent .... .... .... .... .... .... .... 1... = Channel: Present .... .... .... .... .... .... ...0 .... = FHSS: Absent .... .... .... .... .... .... ..1. .... = dBm Antenna Signal: Present .... .... .... .... .... .... .0.. .... = dBm Antenna Noise: Absent .... .... .... .... .... .... 0... .... = Lock Quality: Absent .... .... .... .... .... ...0 .... .... = TX Attenuation: Absent .... .... .... .... .... ..0. .... .... = dB TX Attenuation: Absent .... .... .... .... .... .0.. .... .... = dBm TX Power: Absent .... .... .... .... .... 0... .... .... = Antenna: Absent .... .... .... .... ...0 .... .... .... = dB Antenna Signal: Absent .... .... .... .... ..0. .... .... .... = dB Antenna Noise: Absent .... .... .... .... .1.. .... .... .... = RX flags: Present .... .... .... .... 0... .... .... .... = TX flags: Absent .... .... .... ..0. .... .... .... .... = data retries: Absent .... .... .... .0.. .... .... .... .... = Channel+: Absent .... .... .... 0... .... .... .... .... = MCS information: Absent .... .... ...0 .... .... .... .... .... = A-MPDU Status: Absent .... .... ..0. .... .... .... .... .... = VHT information: Absent .... .... .1.. .... .... .... .... .... = frame timestamp: Present .... .... 0... .... .... .... .... .... = HE information: Absent .... ...0 .... .... .... .... .... .... = HE-MU information: Absent .... .0.. .... .... .... .... .... .... = 0 Length PSDU: Absent .... 0... .... .... .... .... .... .... = L-SIG: Absent .... ..0. .... .... .... .... .... .... = Reserved: 0x0 ...0 .... .... .... .... .... .... .... = TLVs: Absent ..1. .... .... .... .... .... .... .... = Radiotap NS next: True .0.. .... .... .... .... .... .... .... = Vendor NS next: False 1... .... .... .... .... .... .... .... = Ext: Present Present flags word: 0xa0000820 .... .... .... .... .... .... .... ...0 = TSFT: Absent .... .... .... .... .... .... .... ..0. = Flags: Absent .... .... .... .... .... .... .... .0.. = Rate: Absent .... .... .... .... .... .... .... 0... = Channel: Absent .... .... .... .... .... .... ...0 .... = FHSS: Absent .... .... .... .... .... .... ..1. .... = dBm Antenna Signal: Present .... .... .... .... .... .... .0.. .... = dBm Antenna Noise: Absent .... .... .... .... .... .... 0... .... = Lock Quality: Absent .... .... .... .... .... ...0 .... .... = TX Attenuation: Absent .... .... .... .... .... ..0. .... .... = dB TX Attenuation: Absent .... .... .... .... .... .0.. .... .... = dBm TX Power: Absent .... .... .... .... .... 1... .... .... = Antenna: Present .... .... .... .... ...0 .... .... .... = dB Antenna Signal: Absent .... .... .... .... ..0. .... .... .... = dB Antenna Noise: Absent .... .... .... .... .0.. .... .... .... = RX flags: Absent .... .... .... .... 0... .... .... .... = TX flags: Absent .... .... .... ..0. .... .... .... .... = data retries: Absent .... .... .... .0.. .... .... .... .... = Channel+: Absent .... .... .... 0... .... .... .... .... = MCS information: Absent .... .... ...0 .... .... .... .... .... = A-MPDU Status: Absent .... .... ..0. .... .... .... .... .... = VHT information: Absent .... .... .0.. .... .... .... .... .... = frame timestamp: Absent .... .... 0... .... .... .... .... .... = HE information: Absent .... ...0 .... .... .... .... .... .... = HE-MU information: Absent .... .0.. .... .... .... .... .... .... = 0 Length PSDU: Absent .... 0... .... .... .... .... .... .... = L-SIG: Absent .... ..0. .... .... .... .... .... .... = Reserved: 0x0 ...0 .... .... .... .... .... .... .... = TLVs: Absent ..1. .... .... .... .... .... .... .... = Radiotap NS next: True .0.. .... .... .... .... .... .... .... = Vendor NS next: False 1... .... .... .... .... .... .... .... = Ext: Present Present flags word: 0x10000820 .... .... .... .... .... .... .... ...0 = TSFT: Absent .... .... .... .... .... .... .... ..0. = Flags: Absent .... .... .... .... .... .... .... .0.. = Rate: Absent .... .... .... .... .... .... .... 0... = Channel: Absent .... .... .... .... .... .... ...0 .... = FHSS: Absent .... .... .... .... .... .... ..1. .... = dBm Antenna Signal: Present .... .... .... .... .... .... .0.. .... = dBm Antenna Noise: Absent .... .... .... .... .... .... 0... .... = Lock Quality: Absent .... .... .... .... .... ...0 .... .... = TX Attenuation: Absent .... .... .... .... .... ..0. .... .... = dB TX Attenuation: Absent .... .... .... .... .... .0.. .... .... = dBm TX Power: Absent .... .... .... .... .... 1... .... .... = Antenna: Present .... .... .... .... ...0 .... .... .... = dB Antenna Signal: Absent .... .... .... .... ..0. .... .... .... = dB Antenna Noise: Absent .... .... .... .... .0.. .... .... .... = RX flags: Absent .... .... .... .... 0... .... .... .... = TX flags: Absent .... .... .... ..0. .... .... .... .... = data retries: Absent .... .... .... .0.. .... .... .... .... = Channel+: Absent .... .... .... 0... .... .... .... .... = MCS information: Absent .... .... ...0 .... .... .... .... .... = A-MPDU Status: Absent .... .... ..0. .... .... .... .... .... = VHT information: Absent .... .... .0.. .... .... .... .... .... = frame timestamp: Absent .... .... 0... .... .... .... .... .... = HE information: Absent .... ...0 .... .... .... .... .... .... = HE-MU information: Absent .... .0.. .... .... .... .... .... .... = 0 Length PSDU: Absent .... 0... .... .... .... .... .... .... = L-SIG: Absent .... ..0. .... .... .... .... .... .... = Reserved: 0x0 ...1 .... .... .... .... .... .... .... = TLVs: Present ..0. .... .... .... .... .... .... .... = Radiotap NS next: False .0.. .... .... .... .... .... .... .... = Vendor NS next: False 0... .... .... .... .... .... .... .... = Ext: Absent MAC timestamp: 112093354762 Flags: 0x00 .... ...0 = CFP: False .... ..0. = Preamble: Long .... .0.. = WEP: False .... 0... = Fragmentation: False ...0 .... = FCS at end: False ..0. .... = Data Pad: False .0.. .... = Bad FCS: False 0... .... = Short GI: False Channel frequency: 5180 [5 GHz 36] Channel flags: 0x0140, Orthogonal Frequency-Division Multiplexing (OFDM), 5 GHz spectrum .... .... .... ...0 = 700 MHz spectrum: False .... .... .... ..0. = 800 MHz spectrum: False .... .... .... .0.. = 900 MHz spectrum: False .... .... ...0 .... = Turbo: False .... .... ..0. .... = Complementary Code Keying (CCK): False .... .... .1.. .... = Orthogonal Frequency-Division Multiplexing (OFDM): True .... .... 0... .... = 2 GHz spectrum: False .... ...1 .... .... = 5 GHz spectrum: True .... ..0. .... .... = Passive: False .... .0.. .... .... = Dynamic CCK-OFDM: False .... 0... .... .... = Gaussian Frequency Shift Keying (GFSK): False ...0 .... .... .... = GSM (900MHz): False ..0. .... .... .... = Static Turbo: False .0.. .... .... .... = Half Rate Channel (10MHz Channel Width): False 0... .... .... .... = Quarter Rate Channel (5MHz Channel Width): False Antenna signal: -33 dBm RX flags: 0x0000 .... .... .... .... .... ..0. = Bad PLCP: False timestamp information timestamp: 1360816537 accuracy: 22 .... 0001 = time unit: usec (1) 0001 .... = sampling position: signal acquisition (1) .... ...1 = 32-bit counter: Yes .... ..1. = accuracy field: Present Antenna signal: -33 dBm Antenna: 0 Antenna signal: -66 dBm Antenna: 1 EHT TLV type: EHT (34) TLV datalen: 44 known: 0x00000004, Guard Interval Known .... .... .... .... .... .... .... ...0 = Reserved: 0x0 .... .... .... .... .... .... .... ..0. = Spatial Reuse Known: False .... .... .... .... .... .... .... .1.. = Guard Interval Known: True .... .... .... .... .... .... .... 0... = Reserved: False .... .... .... .... .... .... ...0 .... = Number of LTF symbols Known: False .... .... .... .... .... .... ..0. .... = LDPC Extra Symbol Segment Known: False .... .... .... .... .... .... .0.. .... = Pre-FEC Padding Factor Known: False .... .... .... .... .... .... 0... .... = PE Disambiguity Known: False .... .... .... .... .... ...0 .... .... = EHT Disregard Known: False .... .... .... .... .... ..0. .... .... = Reserved: False .... .... .... .... ...0 00.. .... .... = Reserved: 0x0 .... .... .... .... ..0. .... .... .... = CRC1 Known: False .... .... .... .... .0.. .... .... .... = Tail1 Known: False .... .... .... .... 0... .... .... .... = CRC2 Known: False .... .... .... ...0 .... .... .... .... = Tail2 known: False .... .... .... ..0. .... .... .... .... = NSS Known: False .... .... .... .0.. .... .... .... .... = Beamformed Known: False .... .... .... 0... .... .... .... .... = Number of Non-OFDMA Users Known: False .... .... ...0 .... .... .... .... .... = User Encoding Block CRC Known: False .... .... ..0. .... .... .... .... .... = User Encoding Block Tail Known: False .... .... .0.. .... .... .... .... .... = RU/MRU Size Known: False .... .... 0... .... .... .... .... .... = RU/MRU Index Known: False .... ...0 .... .... .... .... .... .... = TB RU Allocation Known: False .... ..0. .... .... .... .... .... .... = Primary 80MHz Channel Position Known: False 0000 00.. .... .... .... .... .... .... = Reserved: 0x00 data[0]: 0x00000400 .... .... .... .... .... .... .... .000 = Reserved: 0x0 .... .... .... .... .... .... .000 0... = Spatial Reuse: 0 (Not known) .... .... .... .... .... ...0 0... .... = GI: 0.8us (0) .... .... .... .... .... .10. .... .... = LTF symbol size: 2x (2) .... .... .... .... ..00 0... .... .... = Number of LTF symbols: 0 (Not known) .... .... .... .... .0.. .... .... .... = LDPC extra symbol segment: False (Not known) .... .... .... ...0 0... .... .... .... = Pre-FEC padding factor: 0 (Not known) .... .... .... ..0. .... .... .... .... = PE Disambiguity: 0 (Not known) .... .... ..00 00.. .... .... .... .... = Disregard: 0 (Not known) .... ..00 00.. .... .... .... .... .... = CRC1: 0 (Not known) 0000 00.. .... .... .... .... .... .... = Tail1: 0 (Not known) data[1]: 0x00000000 .... .... .... .... .... .... ...0 0000 = RU/MRU Size: 0 (Not known) .... .... .... .... ...0 0000 000. .... = RU/MRU index: 0 (Not known) .... .... ..00 0000 000. .... .... .... = Content Channel 1 RU Allocation 1::1: 0x000 (Not known) .... .... .0.. .... .... .... .... .... = Content Channel 1 RU Allocation 1::1 known: False ..00 0000 .... .... .... .... .... .... = Reserved: 0x00 00.. .... .... .... .... .... .... .... = Primary 80 MHz Channel Position: 0x0 (Not known) data[2]: 0x00000000 .... .... .... .... .... ...0 0000 0000 = Content Channel 2 RU Allocation 1::1: 0x000 (Not known) .... .... .... .... .... ..0. .... .... = Content Channel 2 RU Allocation 1::1 known: False .... .... .... .000 0000 00.. .... .... = Content Channel 1 RU Allocation 1::2: 0x000 (Not known) .... .... .... 0... .... .... .... .... = Content Channel 1 RU Allocation 1::2 known: False ...0 0000 0000 .... .... .... .... .... = Content Channel 2 RU Allocation 1::2: 0x000 (Not known) ..0. .... .... .... .... .... .... .... = Content Channel 2 RU Allocation 1::2 known: False 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[3]: 0x00000000 .... .... .... .... .... ...0 0000 0000 = Content Channel 1 RU Allocation 2::1: 0x000 (Not known) .... .... .... .... .... ..0. .... .... = Content Channel 1 RU Allocation 2::1 known: False .... .... .... .000 0000 00.. .... .... = Content Channel 2 RU Allocation 2::1: 0x000 (Not known) .... .... .... 0... .... .... .... .... = Content Channel 2 RU Allocation 2::1 known: False ...0 0000 0000 .... .... .... .... .... = Content Channel 1 RU Allocation 2::2: 0x000 (Not known) ..0. .... .... .... .... .... .... .... = Content Channel 1 RU Allocation 2::2 known: False 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[4]: 0x00000000 .... .... .... .... .... ...0 0000 0000 = Content Channel 2 RU Allocation 2::2: 0x000 (Not known) .... .... .... .... .... ..0. .... .... = Content Channel 2 RU Allocation 2::2 known: False .... .... .... .000 0000 00.. .... .... = Content Channel 1 RU Allocation 2::3: 0x000 (Not known) .... .... .... 0... .... .... .... .... = Content Channel 1 RU Allocation 2::3 known: False ...0 0000 0000 .... .... .... .... .... = Content Channel 2 RU Allocation 2::3: 0x000 (Not known) ..0. .... .... .... .... .... .... .... = Content Channel 2 RU Allocation 2::3 known: False 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[5]: 0x00000000 .... .... .... .... .... ...0 0000 0000 = Content Channel 1 RU Allocation 2::4: 0x000 (Not known) .... .... .... .... .... ..0. .... .... = Content Channel 1 RU Allocation 2::4 known: False .... .... .... .000 0000 00.. .... .... = Content Channel 2 RU Allocation 2::4: 0x000 (Not known) .... .... .... 0... .... .... .... .... = Content Channel 2 RU Allocation 2::4 known: False ...0 0000 0000 .... .... .... .... .... = Content Channel 1 RU Allocation 2::5: 0x000 (Not known) ..0. .... .... .... .... .... .... .... = Content Channel 1 RU Allocation 2::5 known: False 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[6]: 0x00000000 .... .... .... .... .... ...0 0000 0000 = Content Channel 2 RU Allocation 2::5: 0x000 (Not known) .... .... .... .... .... ..0. .... .... = Content Channel 2 RU Allocation 2::5 known: False .... .... .... .000 0000 00.. .... .... = Content Channel 1 RU Allocation 2::6: 0x000 (Not known) .... .... .... 0... .... .... .... .... = Content Channel 1 RU Allocation 2::6 known: False ...0 0000 0000 .... .... .... .... .... = Content Channel 2 RU Allocation 2::6: 0x000 (Not known) ..0. .... .... .... .... .... .... .... = Content Channel 2 RU Allocation 2::6 known: False 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[7]: 0x00000000 .... .... .... .... .... .... .... 0000 = CRC2 (OFDMA Only: For RU Allocation-2): 0x0 .... .... .... .... .... ..00 0000 .... = Tail2 (OFDMA Only: after RU Allocation-2): 0x00 .... .... .... .... .... 00.. .... .... = reserved: 0x0 .... .... .... .... 0000 .... .... .... = NSS (EHT sounding): 0x0 .... .... .... ...0 .... .... .... .... = Beamformed (EHT sounding): False .... .... .... 000. .... .... .... .... = Number Of Non-OFDMA Users: 0 (Not known) .... .... 0000 .... .... .... .... .... = User Encoding Block CRC: 0x0 ..00 0000 .... .... .... .... .... .... = User Encoding Block Tail: 0x00 00.. .... .... .... .... .... .... .... = Reserved: 0x0 data[8]: 0x00000000 .... .... .... .... .... .... .... ...0 = RU Allocation (TB Format): PS 160: 0x0 .... .... .... .... .... .... .... ..0. = RU Allocation (TB Format): B0: 0x0 .... .... .... .... .... ...0 0000 00.. = RU Allocation (TB Format): B7-B1: 0x00 0000 0000 0000 0000 0000 000. .... .... = Reserved: 0x000000 User Info user_info: 0x209800b6 .... .... .... .... .... .... .... ...0 = STA-ID known: False .... .... .... .... .... .... .... ..1. = MCS known: True .... .... .... .... .... .... .... .1.. = Coding known: True .... .... .... .... .... .... .... 0... = Reserved known: False .... .... .... .... .... .... ...1 .... = NSS known: True .... .... .... .... .... .... ..1. .... = Beamforming known: True .... .... .... .... .... .... .0.. .... = Spatial Configuration known: False .... .... .... .... .... .... 1... .... = Data captured for this user: True .... .... .... .000 0000 0000 .... .... = STA-ID: 0x000 (Not known) .... .... .... 1... .... .... .... .... = Coding: LDPC (0x1) .... .... 1001 .... .... .... .... .... = MCS: 0x9 .... 0000 .... .... .... .... .... .... = NSS: 0x0 ...0 .... .... .... .... .... .... .... = Reserved: 0x0 (Not known) ..1. .... .... .... .... .... .... .... = Beamforming: 0x1 00.. .... .... .... .... .... .... .... = Reserved: 0x0 U-SIG TLV type: U-SIG (33) TLV datalen: 12 U-SIG common: 0x00010002, BW known, BW: 80 MHz .... .... .... .... .... .... .... ...0 = PHY version identifier known: False .... .... .... .... .... .... .... ..1. = BW known: True .... .... .... .... .... .... .... .0.. = UL/DL known: False .... .... .... .... .... .... .... 0... = BSS Color known: False .... .... .... .... .... .... ...0 .... = TXOP known: False .... .... .... .... .... .... ..0. .... = Bad U-SIG CRC: False .... .... .... .... .... .... .0.. .... = Validate bits checked: False .... .... .... .... .... .... 0... .... = Validate bits OK: False .... .... .... .... .... 0000 00.. .... = Reserved: 0x00 .... .... .... .... .000 .... .... .... = Phy version identifier: 0 .... .... .... ..01 0... .... .... .... = BW: 80 MHz (0x2) .... .... .... .0.. .... .... .... .... = UL/DL: False .... ...0 0000 0... .... .... .... .... = BSS Color: 0 0000 000. .... .... .... .... .... .... = TXOP: 0 EHT MU PPDU: 0x00000000 .... .... .... .... .... .... ...0 0000 = U-SIG-1 B20-B24 not known: 0x00 .... .... .... .... .... .... ..0. .... = U-SIG-1 B25 not known: 0x0 .... .... .... .... .... .... 00.. .... = PPDU Type and Compression Mode: 0x0 .... .... .... .... .... ...0 .... .... = Validate not known: 0x0 .... .... .... .... ..00 000. .... .... = Punctured Channel Information not known: 0x00 .... .... .... .... .0.. .... .... .... = Validate not known: 0x0 .... .... .... ...0 0... .... .... .... = EHT-SIG MCS not known: 0x0 .... .... ..00 000. .... .... .... .... = Number of EHT-SIG Symbols not known: 0x00 .... ..00 00.. .... .... .... .... .... = CRC not known: 0x0 0000 00.. .... .... .... .... .... .... = Tail not known: 0x00 mask: 0x00000000 802.11 radio information PHY type: 802.11be (EHT) (12) Channel: 36 Frequency: 5180MHz Signal strength (dBm): -66 dBm TSF timestamp: 112093354762 IEEE 802.11 QoS Data, Flags: .p....F. Type/Subtype: QoS Data (0x0028) Frame Control Field: 0x8842 .... ..00 = Version: 0 .... 10.. = Type: Data frame (2) 1000 .... = Subtype: 8 Flags: 0x42 .... ..10 = DS status: Frame from DS to a STA via AP(To DS: 0 From DS: 1) (0x2) .... .0.. = More Fragments: This is the last fragment .... 0... = Retry: Frame is not being retransmitted ...0 .... = PWR MGT: STA will stay up ..0. .... = More Data: No data buffered .1.. .... = Protected flag: Data is protected 0... .... = +HTC/Order flag: Not strictly ordered .000 0000 0010 1000 = Duration: 40 microseconds Receiver address: Intel_5d:a9:c2 (e4:60:17:5d:a9:c2) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) Transmitter address: TPLink_48:d3:87 (78:8c:b5:48:d3:87) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) Destination address: Intel_5d:a9:c2 (e4:60:17:5d:a9:c2) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) Source address: jiahuazhongl_3:72:83 (9c:69:b4:63:72:83) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) BSS Id: TPLink_48:d3:87 (78:8c:b5:48:d3:87) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) STA address: Intel_5d:a9:c2 (e4:60:17:5d:a9:c2) .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) .... ...0 .... .... .... .... = IG bit: Individual address (unicast) .... .... .... 0000 = Fragment number: 0 0101 0000 1011 .... = Sequence number: 1291 [WLAN Flags: .p....F.] Qos Control: 0x0000 .... .... .... 0000 = TID: 0 [.... .... .... .000 = Priority: Best Effort (Best Effort) (0)] .... .... ...0 .... = EOSP: Service period .... .... .00. .... = Ack Policy: Normal Ack (0x0) .... .... 0... .... = Payload Type: MSDU 0000 0000 .... .... = QAP PS Buffer State: 0x00 .... ..0. .... .... = Buffer State Indicated: No CCMP parameters CCMP Ext. Initialization Vector: 0x000000001549 Key Index: 0 Data (1508 bytes) Data [?]: aaaa030000000800450005dc2027400040119261c0a800b3c0a80085810d810e05c874ed000000001a2b3c4d008e008f059c00000000105466730d1013a8b7000000000000000000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324252627282 [Length: 1508]
What could be the reason for this. Can anyone help me to find out the cause. Thanks in advance