A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
wifi-constants.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2024 DERONNE SOFTWARE ENGINEERING
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Sébastien Deronne <sebastien.deronne@gmail.com>
7 */
8
9#ifndef WIFI_CONSTANTS_H
10#define WIFI_CONSTANTS_H
11
12#include "ns3/nstime.h"
13
14/**
15 * @file
16 * @ingroup wifi
17 * Declaration of the constants used across wifi module
18 */
19
20namespace ns3
21{
22
23/// Wi-Fi Time Unit value in microseconds (see IEEE 802.11-2020 sec. 3.1)
24/// Used to initialize WIFI_TU
25extern const Time WIFI_TU;
26
27/// aRxPHYStartDelay value to use when waiting for a new frame in the context of EMLSR operations
28/// (Sec. 35.3.17 of 802.11be D3.1)
30
31/// aSIFSTime value for OFDM (20 MHz channel spacing)
32/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
33extern const Time OFDM_SIFS_TIME_20MHZ;
34
35/// aSlotTime duration for OFDM (20 MHz channel spacing)
36/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
37extern const Time OFDM_SLOT_TIME_20MHZ;
38
39/// aSIFSTime value for OFDM (10 MHz channel spacing)
40/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
41extern const Time OFDM_SIFS_TIME_10MHZ;
42
43/// aSlotTime duration for OFDM (10 MHz channel spacing)
44/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
45extern const Time OFDM_SLOT_TIME_10MHZ;
46
47/// aSIFSTime value for OFDM (5 MHz channel spacing)
48/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
49extern const Time OFDM_SIFS_TIME_5MHZ;
50
51/// aSlotTime duration for OFDM (5 MHz channel spacing)
52/// (Table 17-21 "OFDM PHY characteristics" of 802.11-2020)
53extern const Time OFDM_SLOT_TIME_5MHZ;
54
55/// aSIFSTime duration for DSSS (Table 16-4 "HR/DSSS PHY characteristics" of 802.11-2020)
56extern const Time DSSS_SIFS_TIME;
57
58/// aSlotTime duration for DSSS (Table 16-4 "HR/DSSS PHY characteristics" of 802.11-2020)
59extern const Time DSSS_SLOT_TIME;
60
61/// maximum propagation delay
62extern const Time MAX_PROPAGATION_DELAY;
63
64/// The aMediumSyncThreshold defined by Sec. 35.3.16.18.1 of 802.11be D4.0
65extern const Time MEDIUM_SYNC_THRESHOLD;
66
67/// Subcarrier frequency spacing in Hz (Table 19-6 "Timing-related constants" of 802.11-2020)
68static constexpr uint32_t SUBCARRIER_FREQUENCY_SPACING{312500};
69
70/// Subcarrier frequency spacing for the HE modulated fields in Hz (Table 27-12 "Timing-related
71/// constants" of 802.11ax-2021)
73
74/// Size of the space of sequence numbers
75static constexpr uint16_t SEQNO_SPACE_SIZE{4096};
76
77/// Size of the half the space of sequence numbers (used to determine old packets)
78static constexpr uint16_t SEQNO_SPACE_HALF_SIZE{SEQNO_SPACE_SIZE / 2};
79
80/// This value conforms to the 802.11 specification
81static constexpr uint16_t MAX_MSDU_SIZE{2304};
82
83/// The length in octets of the IEEE 802.11 MAC FCS field
84static constexpr uint16_t WIFI_MAC_FCS_LENGTH{4};
85
86/// The minimum value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
87static constexpr uint32_t WIFI_MIN_RTS_THRESHOLD{0};
88
89/// The maximum value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
90static constexpr uint32_t WIFI_MAX_RTS_THRESHOLD{4692480};
91
92/// The default value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
94
95/// The minimum value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
96static constexpr uint32_t WIFI_MIN_FRAG_THRESHOLD{256};
97
98/// The maximum value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
99static constexpr uint32_t WIFI_MAX_FRAG_THRESHOLD{65535};
100
101/// The default value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
103
104/// STA_ID to identify a single user (SU)
105static constexpr uint16_t SU_STA_ID{65535};
106
107/// Empty 242-tone RU identifier for HE (Section 26.11.7 802.11ax-2021)
108static constexpr uint8_t EMPTY_242_TONE_HE_RU{113};
109
110/// The minimum value for the association ID (Sec. 9.4.1.8 of 802.11-2020)
111static constexpr uint16_t MIN_AID{1};
112
113/// The maximum value for the association ID (Sec. 9.4.1.8 of 802.11-2020)
114static constexpr uint16_t MAX_AID{2007};
115
116/// STA_ID for a RU that is intended for no user (Section 26.11.1 802.11ax-2021)
117static constexpr uint16_t NO_USER_STA_ID{2046};
118
119/// Unassigned 242-tone RU identifier for EHT (Table Table 36-34 IEEE 802.11be D7.0)
120static constexpr uint8_t UNASSIGNED_242_TONE_EHT_RU{27};
121
122/// The maximum value for the association ID updated since 802.11be (Sec. 9.4.1.8 of 802.11be D7.0)
123static constexpr uint16_t EHT_MAX_AID{2006};
124
125/// AID value for Special User Info field in trigger frames (Sec. 9.3.1.22.3 of 802.11be D7.0)
126static constexpr uint16_t AID_SPECIAL_USER{2007};
127
128} // namespace ns3
129
130#endif /* WIFI_CONSTANTS_H */
void(* Time)(Time oldValue, Time newValue)
TracedValue callback signature for Time.
Definition nstime.h:865
Every class exported by the ns3 library is enclosed in the ns3 namespace.
static constexpr uint16_t SEQNO_SPACE_HALF_SIZE
Size of the half the space of sequence numbers (used to determine old packets)
const Time DSSS_SIFS_TIME
aSIFSTime duration for DSSS (Table 16-4 "HR/DSSS PHY characteristics" of 802.11-2020)
static constexpr uint8_t EMPTY_242_TONE_HE_RU
Empty 242-tone RU identifier for HE (Section 26.11.7 802.11ax-2021)
const Time MEDIUM_SYNC_THRESHOLD
The aMediumSyncThreshold defined by Sec. 35.3.16.18.1 of 802.11be D4.0.
const Time MAX_PROPAGATION_DELAY
maximum propagation delay
static constexpr uint32_t WIFI_DEFAULT_FRAG_THRESHOLD
The default value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802....
const Time DSSS_SLOT_TIME
aSlotTime duration for DSSS (Table 16-4 "HR/DSSS PHY characteristics" of 802.11-2020)
const Time WIFI_TU
Wi-Fi Time Unit value in microseconds (see IEEE 802.11-2020 sec.
static constexpr uint16_t WIFI_MAC_FCS_LENGTH
The length in octets of the IEEE 802.11 MAC FCS field.
const Time OFDM_SIFS_TIME_10MHZ
aSIFSTime value for OFDM (10 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
const Time OFDM_SLOT_TIME_20MHZ
aSlotTime duration for OFDM (20 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
static constexpr uint8_t UNASSIGNED_242_TONE_EHT_RU
Unassigned 242-tone RU identifier for EHT (Table Table 36-34 IEEE 802.11be D7.0)
const Time OFDM_SIFS_TIME_5MHZ
aSIFSTime value for OFDM (5 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
static constexpr uint32_t WIFI_MIN_RTS_THRESHOLD
The minimum value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
static constexpr uint16_t NO_USER_STA_ID
STA_ID for a RU that is intended for no user (Section 26.11.1 802.11ax-2021)
static constexpr uint32_t WIFI_MIN_FRAG_THRESHOLD
The minimum value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802....
static constexpr uint32_t WIFI_MAX_FRAG_THRESHOLD
The maximum value for dot11FragmentationThreshold (C.3 MIB detail in IEEE Std 802....
const Time OFDM_SLOT_TIME_5MHZ
aSlotTime duration for OFDM (5 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
static constexpr uint32_t SUBCARRIER_FREQUENCY_SPACING
Subcarrier frequency spacing in Hz (Table 19-6 "Timing-related constants" of 802.11-2020)
static constexpr uint16_t SEQNO_SPACE_SIZE
Size of the space of sequence numbers.
static constexpr uint32_t WIFI_DEFAULT_RTS_THRESHOLD
The default value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
static constexpr uint32_t SUBCARRIER_FREQUENCY_SPACING_HE
Subcarrier frequency spacing for the HE modulated fields in Hz (Table 27-12 "Timing-relatedconstants"...
static constexpr uint16_t MAX_MSDU_SIZE
This value conforms to the 802.11 specification.
static constexpr uint16_t MIN_AID
The minimum value for the association ID (Sec. 9.4.1.8 of 802.11-2020)
static constexpr uint32_t WIFI_MAX_RTS_THRESHOLD
The maximum value for dot11RTSThreshold (C.3 MIB detail in IEEE Std 802.11-2020)
static constexpr uint16_t SU_STA_ID
STA_ID to identify a single user (SU)
const Time OFDM_SIFS_TIME_20MHZ
aSIFSTime value for OFDM (20 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
const Time OFDM_SLOT_TIME_10MHZ
aSlotTime duration for OFDM (10 MHz channel spacing) (Table 17-21 "OFDM PHY characteristics" of 802....
static constexpr uint16_t MAX_AID
The maximum value for the association ID (Sec. 9.4.1.8 of 802.11-2020)
const Time EMLSR_RX_PHY_START_DELAY
aRxPHYStartDelay value to use when waiting for a new frame in the context of EMLSR operations (Sec.
static constexpr uint16_t EHT_MAX_AID
The maximum value for the association ID updated since 802.11be (Sec. 9.4.1.8 of 802....
static constexpr uint16_t AID_SPECIAL_USER
AID value for Special User Info field in trigger frames (Sec. 9.3.1.22.3 of 802.11be D7....