A Discrete-Event Network Simulator
API
mgt-headers.h
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2006 INRIA
4  * Copyright (c) 2009 MIRKO BANCHI
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation;
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18  *
19  * Authors: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
20  * Mirko Banchi <mk.banchi@gmail.com>
21  */
22 
23 #ifndef MGT_HEADERS_H
24 #define MGT_HEADERS_H
25 
26 #include "ns3/mac48-address.h"
27 #include "status-code.h"
28 #include "capability-information.h"
29 #include "supported-rates.h"
30 #include "ssid.h"
31 #include "ns3/dsss-parameter-set.h"
32 #include "extended-capabilities.h"
33 #include "ns3/ht-capabilities.h"
34 #include "ns3/ht-operation.h"
35 #include "ns3/vht-capabilities.h"
36 #include "ns3/vht-operation.h"
37 #include "ns3/erp-information.h"
38 #include "edca-parameter-set.h"
39 #include "ns3/he-capabilities.h"
40 #include "ns3/he-operation.h"
41 
42 namespace ns3 {
43 
49 {
50 public:
53 
59  void SetSsid (Ssid ssid);
65  void SetSupportedRates (SupportedRates rates);
71  void SetListenInterval (uint16_t interval);
77  void SetCapabilities (CapabilityInformation capabilities);
83  void SetExtendedCapabilities (ExtendedCapabilities extendedCapabilities);
89  void SetHtCapabilities (HtCapabilities htCapabilities);
95  void SetVhtCapabilities (VhtCapabilities vhtCapabilities);
101  void SetHeCapabilities (HeCapabilities heCapabilities);
119  HtCapabilities GetHtCapabilities (void) const;
125  VhtCapabilities GetVhtCapabilities (void) const;
131  HeCapabilities GetHeCapabilities (void) const;
137  Ssid GetSsid (void) const;
143  SupportedRates GetSupportedRates (void) const;
149  uint16_t GetListenInterval (void) const;
150 
155  static TypeId GetTypeId (void);
156 
157  TypeId GetInstanceTypeId (void) const override;
158  void Print (std::ostream &os) const override;
159  uint32_t GetSerializedSize (void) const override;
160  void Serialize (Buffer::Iterator start) const override;
161  uint32_t Deserialize (Buffer::Iterator start) override;
162 
163 
164 private:
172  uint16_t m_listenInterval;
173 };
174 
175 
181 {
182 public:
185 
191  void SetSsid (Ssid ssid);
197  void SetSupportedRates (SupportedRates rates);
203  void SetListenInterval (uint16_t interval);
209  void SetCapabilities (CapabilityInformation capabilities);
215  void SetExtendedCapabilities (ExtendedCapabilities extendedCapabilities);
221  void SetHtCapabilities (HtCapabilities htCapabilities);
227  void SetVhtCapabilities (VhtCapabilities vhtCapabilities);
233  void SetHeCapabilities (HeCapabilities heCapabilities);
251  HtCapabilities GetHtCapabilities (void) const;
257  VhtCapabilities GetVhtCapabilities (void) const;
263  HeCapabilities GetHeCapabilities (void) const;
269  Ssid GetSsid (void) const;
275  SupportedRates GetSupportedRates (void) const;
281  uint16_t GetListenInterval (void) const;
287  void SetCurrentApAddress (Mac48Address currentApAddr);
288 
293  static TypeId GetTypeId (void);
294  TypeId GetInstanceTypeId (void) const;
295  void Print (std::ostream &os) const;
296  uint32_t GetSerializedSize (void) const;
297  void Serialize (Buffer::Iterator start) const;
299 
300 
301 private:
310  uint16_t m_listenInterval;
311 };
312 
313 
319 {
320 public:
323 
329  StatusCode GetStatusCode (void);
353  HtCapabilities GetHtCapabilities (void) const;
359  HtOperation GetHtOperation (void) const;
365  VhtCapabilities GetVhtCapabilities (void) const;
371  VhtOperation GetVhtOperation (void) const;
377  HeCapabilities GetHeCapabilities (void) const;
383  HeOperation GetHeOperation (void) const;
389  uint16_t GetAssociationId (void) const;
395  ErpInformation GetErpInformation (void) const;
407  void SetCapabilities (CapabilityInformation capabilities);
413  void SetExtendedCapabilities (ExtendedCapabilities extendedCapabilities);
419  void SetVhtOperation (VhtOperation vhtOperation);
425  void SetVhtCapabilities (VhtCapabilities vhtCapabilities);
431  void SetHtCapabilities (HtCapabilities htCapabilities);
437  void SetHtOperation (HtOperation htOperation);
443  void SetSupportedRates (SupportedRates rates);
449  void SetStatusCode (StatusCode code);
455  void SetAssociationId (uint16_t aid);
461  void SetErpInformation (ErpInformation erpInformation);
467  void SetEdcaParameterSet (EdcaParameterSet edcaParameterSet);
473  void SetHeCapabilities (HeCapabilities heCapabilities);
479  void SetHeOperation (HeOperation heOperation);
480 
485  static TypeId GetTypeId (void);
486  TypeId GetInstanceTypeId (void) const;
487  void Print (std::ostream &os) const;
488  uint32_t GetSerializedSize (void) const;
489  void Serialize (Buffer::Iterator start) const;
491 
492 
493 private:
497  uint16_t m_aid;
507 };
508 
509 
515 {
516 public:
518 
524  void SetSsid (Ssid ssid);
530  void SetSupportedRates (SupportedRates rates);
536  void SetExtendedCapabilities (ExtendedCapabilities extendedCapabilities);
542  void SetHtCapabilities (HtCapabilities htCapabilities);
548  void SetVhtCapabilities (VhtCapabilities vhtCapabilities);
554  void SetHeCapabilities (HeCapabilities heCapabilities);
560  Ssid GetSsid (void) const;
566  SupportedRates GetSupportedRates (void) const;
578  HtCapabilities GetHtCapabilities (void) const;
584  VhtCapabilities GetVhtCapabilities (void) const;
590  HeCapabilities GetHeCapabilities (void) const;
591 
596  static TypeId GetTypeId (void);
597  TypeId GetInstanceTypeId (void) const;
598  void Print (std::ostream &os) const;
599  uint32_t GetSerializedSize (void) const;
600  void Serialize (Buffer::Iterator start) const;
602 
603 
604 private:
611 };
612 
613 
619 {
620 public:
623 
629  Ssid GetSsid (void) const;
635  uint64_t GetBeaconIntervalUs (void) const;
641  SupportedRates GetSupportedRates (void) const;
665  HtCapabilities GetHtCapabilities (void) const;
671  HtOperation GetHtOperation (void) const;
677  VhtCapabilities GetVhtCapabilities (void) const;
683  VhtOperation GetVhtOperation (void) const;
689  HeCapabilities GetHeCapabilities (void) const;
695  HeOperation GetHeOperation (void) const;
701  ErpInformation GetErpInformation (void) const;
713  void SetCapabilities (CapabilityInformation capabilities);
719  void SetExtendedCapabilities (ExtendedCapabilities extendedCapabilities);
725  void SetHtCapabilities (HtCapabilities htCapabilities);
731  void SetHtOperation (HtOperation htOperation);
737  void SetVhtCapabilities (VhtCapabilities vhtCapabilities);
743  void SetVhtOperation (VhtOperation vhtOperation);
749  void SetHeCapabilities (HeCapabilities heCapabilities);
755  void SetHeOperation (HeOperation heOperation);
761  void SetSsid (Ssid ssid);
767  void SetBeaconIntervalUs (uint64_t us);
773  void SetSupportedRates (SupportedRates rates);
779  void SetDsssParameterSet (DsssParameterSet dsssParameterSet);
785  void SetErpInformation (ErpInformation erpInformation);
791  void SetEdcaParameterSet (EdcaParameterSet edcaParameterSet);
797  uint64_t GetTimestamp ();
798 
803  static TypeId GetTypeId (void);
804  TypeId GetInstanceTypeId (void) const;
805  void Print (std::ostream &os) const;
806  uint32_t GetSerializedSize (void) const;
807  void Serialize (Buffer::Iterator start) const;
809 
810 
811 private:
812  uint64_t m_timestamp;
814  uint64_t m_beaconInterval;
827 };
828 
829 
835 {
836 public:
842  static TypeId GetTypeId (void);
843 };
844 
845 
846 /****************************
847 * Action frames
848 *****************************/
849 
857 class WifiActionHeader : public Header
858 {
859 public:
860  WifiActionHeader ();
862 
863  /*
864  * Compatible with table 8-38 IEEE 802.11, Part11, (Year 2012)
865  * Category values - see 802.11-2012 Table 8-38
866  */
867 
869  enum CategoryValue //table 8-38 staring from IEEE 802.11, Part11, (Year 2012)
870  {
872  MESH = 13, //Category: Mesh
873  MULTIHOP = 14, //not used so far
874  SELF_PROTECTED = 15, //Category: Self Protected
875  //Since vendor specific action has no stationary Action value,the parse process is not here.
876  //Refer to vendor-specific-action in wave module.
878  };
879 
881  enum SelfProtectedActionValue //Category: 15 (Self Protected)
882  {
883  PEER_LINK_OPEN = 1, //Mesh Peering Open
884  PEER_LINK_CONFIRM = 2, //Mesh Peering Confirm
885  PEER_LINK_CLOSE = 3, //Mesh Peering Close
886  GROUP_KEY_INFORM = 4, //Mesh Group Key Inform
887  GROUP_KEY_ACK = 5, //Mesh Group Key Acknowledge
888  };
889 
892  {
893  PROXY_UPDATE = 0, //not used so far
894  PROXY_UPDATE_CONFIRMATION = 1, //not used so far
895  };
896 
899  {
900  LINK_METRIC_REPORT = 0, //Action Value:0 in Category 13: Mesh
901  PATH_SELECTION = 1, //Action Value:1 in Category 13: Mesh
902  PORTAL_ANNOUNCEMENT = 2, //Action Value:2 in Category 13: Mesh
903  CONGESTION_CONTROL_NOTIFICATION = 3, //Action Value:3 in Category 13: Mesh
904  MDA_SETUP_REQUEST = 4, //Action Value:4 in Category 13: Mesh MCCA-Setup-Request (not used so far)
905  MDA_SETUP_REPLY = 5, //Action Value:5 in Category 13: Mesh MCCA-Setup-Reply (not used so far)
906  MDAOP_ADVERTISMENT_REQUEST = 6, //Action Value:6 in Category 13: Mesh MCCA-Advertisement-Request (not used so far)
907  MDAOP_ADVERTISMENTS = 7, //Action Value:7 in Category 13: Mesh (not used so far)
908  MDAOP_SET_TEARDOWN = 8, //Action Value:8 in Category 13: Mesh (not used so far)
909  TBTT_ADJUSTMENT_REQUEST = 9, //Action Value:9 in Category 13: Mesh (not used so far)
910  TBTT_ADJUSTMENT_RESPONSE = 10, //Action Value:10 in Category 13: Mesh (not used so far)
911  };
912 
918  {
921  BLOCK_ACK_DELBA = 2
922  };
923 
924 
928  typedef union
929  {
934  } ActionValue;
941  void SetAction (CategoryValue type, ActionValue action);
942 
955 
960  static TypeId GetTypeId (void);
961  TypeId GetInstanceTypeId () const;
962  void Print (std::ostream &os) const;
963  uint32_t GetSerializedSize () const;
964  void Serialize (Buffer::Iterator start) const;
966 
967 
968 private:
974  std::string CategoryValueToString (CategoryValue value) const;
981  uint8_t m_category;
982  uint8_t m_actionValue;
983 };
984 
985 
991 {
992 public:
994 
999  static TypeId GetTypeId (void);
1000  TypeId GetInstanceTypeId (void) const;
1001  void Print (std::ostream &os) const;
1002  uint32_t GetSerializedSize (void) const;
1003  void Serialize (Buffer::Iterator start) const;
1004  uint32_t Deserialize (Buffer::Iterator start);
1005 
1009  void SetDelayedBlockAck ();
1013  void SetImmediateBlockAck ();
1019  void SetTid (uint8_t tid);
1025  void SetTimeout (uint16_t timeout);
1031  void SetBufferSize (uint16_t size);
1037  void SetStartingSequence (uint16_t seq);
1043  void SetAmsduSupport (bool supported);
1044 
1050  uint16_t GetStartingSequence (void) const;
1056  uint8_t GetTid (void) const;
1062  bool IsImmediateBlockAck (void) const;
1068  uint16_t GetTimeout (void) const;
1074  uint16_t GetBufferSize (void) const;
1080  bool IsAmsduSupported (void) const;
1081 
1082 private:
1088  uint16_t GetParameterSet (void) const;
1094  void SetParameterSet (uint16_t params);
1100  uint16_t GetStartingSequenceControl (void) const;
1106  void SetStartingSequenceControl (uint16_t seqControl);
1107 
1108  uint8_t m_dialogToken;
1109  uint8_t m_amsduSupport;
1110  uint8_t m_policy;
1111  uint8_t m_tid;
1112  uint16_t m_bufferSize;
1113  uint16_t m_timeoutValue;
1114  uint16_t m_startingSeq;
1115 };
1116 
1117 
1123 {
1124 public:
1126 
1131  static TypeId GetTypeId (void);
1132  TypeId GetInstanceTypeId (void) const;
1133  void Print (std::ostream &os) const;
1134  uint32_t GetSerializedSize (void) const;
1135  void Serialize (Buffer::Iterator start) const;
1136  uint32_t Deserialize (Buffer::Iterator start);
1137 
1141  void SetDelayedBlockAck ();
1145  void SetImmediateBlockAck ();
1151  void SetTid (uint8_t tid);
1157  void SetTimeout (uint16_t timeout);
1163  void SetBufferSize (uint16_t size);
1169  void SetStatusCode (StatusCode code);
1175  void SetAmsduSupport (bool supported);
1176 
1182  StatusCode GetStatusCode (void) const;
1188  uint8_t GetTid (void) const;
1194  bool IsImmediateBlockAck (void) const;
1200  uint16_t GetTimeout (void) const;
1206  uint16_t GetBufferSize (void) const;
1212  bool IsAmsduSupported (void) const;
1213 
1214 
1215 private:
1221  uint16_t GetParameterSet (void) const;
1227  void SetParameterSet (uint16_t params);
1228 
1229  uint8_t m_dialogToken;
1231  uint8_t m_amsduSupport;
1232  uint8_t m_policy;
1233  uint8_t m_tid;
1234  uint16_t m_bufferSize;
1235  uint16_t m_timeoutValue;
1236 };
1237 
1238 
1243 class MgtDelBaHeader : public Header
1244 {
1245 public:
1246  MgtDelBaHeader ();
1247 
1252  static TypeId GetTypeId (void);
1253 
1254  TypeId GetInstanceTypeId (void) const;
1255  void Print (std::ostream &os) const;
1256  uint32_t GetSerializedSize (void) const;
1257  void Serialize (Buffer::Iterator start) const;
1258  uint32_t Deserialize (Buffer::Iterator start);
1259 
1266  bool IsByOriginator (void) const;
1272  uint8_t GetTid (void) const;
1278  void SetTid (uint8_t tid);
1282  void SetByOriginator (void);
1286  void SetByRecipient (void);
1287 
1288 
1289 private:
1295  uint16_t GetParameterSet (void) const;
1301  void SetParameterSet (uint16_t params);
1302 
1303  uint16_t m_initiator;
1304  uint16_t m_tid;
1305  uint16_t m_reasonCode;
1306 };
1307 
1308 } //namespace ns3
1309 
1310 #endif /* MGT_HEADERS_H */
iterator in a Buffer instance
Definition: buffer.h:99
The DSSS Parameter Set.
The EDCA Parameter Set.
The ErpInformation Information Element.
The Extended Capabilities Information Element.
The IEEE 802.11ax HE Capabilities.
The HE Operation Information Element.
Definition: he-operation.h:36
Protocol header serialization and deserialization.
Definition: header.h:43
virtual uint32_t Deserialize(Buffer::Iterator start)=0
Deserialize the object from a buffer iterator.
The HT Capabilities Information Element.
The HT Operation Information Element.
Definition: ht-operation.h:51
an EUI-48 address
Definition: mac48-address.h:44
Implement the header for management frames of type Add Block Ack request.
Definition: mgt-headers.h:991
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
uint16_t m_startingSeq
Starting sequence number.
Definition: mgt-headers.h:1114
void Serialize(Buffer::Iterator start) const
uint16_t GetTimeout(void) const
Return the timeout.
void SetStartingSequenceControl(uint16_t seqControl)
Set sequence control with the given raw value.
uint8_t m_tid
Traffic ID.
Definition: mgt-headers.h:1111
bool IsImmediateBlockAck(void) const
Return whether the Block Ack policy is immediate Block Ack.
uint8_t m_amsduSupport
Flag if A-MSDU is supported.
Definition: mgt-headers.h:1109
void SetBufferSize(uint16_t size)
Set buffer size.
void SetDelayedBlockAck()
Enable delayed BlockAck.
uint8_t m_dialogToken
Not used for now.
Definition: mgt-headers.h:1108
void SetAmsduSupport(bool supported)
Enable or disable A-MSDU support.
void SetImmediateBlockAck()
Enable immediate BlockAck.
bool IsAmsduSupported(void) const
Return whether A-MSDU capability is supported.
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
uint16_t GetStartingSequence(void) const
Return the starting sequence number.
uint16_t m_bufferSize
Buffer size.
Definition: mgt-headers.h:1112
uint16_t GetBufferSize(void) const
Return the buffer size.
uint32_t GetSerializedSize(void) const
uint16_t GetStartingSequenceControl(void) const
Return the raw sequence control.
void Print(std::ostream &os) const
static TypeId GetTypeId(void)
Register this type.
uint8_t GetTid(void) const
Return the Traffic ID (TID).
uint16_t m_timeoutValue
Timeout.
Definition: mgt-headers.h:1113
void SetTimeout(uint16_t timeout)
Set timeout.
void SetTid(uint8_t tid)
Set Traffic ID (TID).
uint8_t m_policy
Block Ack policy.
Definition: mgt-headers.h:1110
void SetStartingSequence(uint16_t seq)
Set the starting sequence number.
uint16_t GetParameterSet(void) const
Return the raw parameter set.
Implement the header for management frames of type Add Block Ack response.
Definition: mgt-headers.h:1123
uint16_t m_bufferSize
Buffer size.
Definition: mgt-headers.h:1234
void SetTid(uint8_t tid)
Set Traffic ID (TID).
void Print(std::ostream &os) const
uint8_t m_amsduSupport
Flag if A-MSDU is supported.
Definition: mgt-headers.h:1231
static TypeId GetTypeId(void)
Register this type.
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
void Serialize(Buffer::Iterator start) const
bool IsImmediateBlockAck(void) const
Return whether the Block Ack policy is immediate Block Ack.
bool IsAmsduSupported(void) const
Return whether A-MSDU capability is supported.
uint8_t m_dialogToken
Not used for now.
Definition: mgt-headers.h:1229
uint16_t GetBufferSize(void) const
Return the buffer size.
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
uint16_t GetParameterSet(void) const
Return the raw parameter set.
uint16_t GetTimeout(void) const
Return the timeout.
void SetTimeout(uint16_t timeout)
Set timeout.
uint8_t m_policy
Block ACK policy.
Definition: mgt-headers.h:1232
void SetBufferSize(uint16_t size)
Set buffer size.
uint16_t m_timeoutValue
Timeout.
Definition: mgt-headers.h:1235
void SetStatusCode(StatusCode code)
Set the status code.
uint8_t m_tid
Traffic ID.
Definition: mgt-headers.h:1233
void SetAmsduSupport(bool supported)
Enable or disable A-MSDU support.
uint8_t GetTid(void) const
Return the Traffic ID (TID).
void SetDelayedBlockAck()
Enable delayed BlockAck.
StatusCode GetStatusCode(void) const
Return the status code.
void SetImmediateBlockAck()
Enable immediate BlockAck.
uint32_t GetSerializedSize(void) const
StatusCode m_code
Status code.
Definition: mgt-headers.h:1230
Implement the header for management frames of type association request.
Definition: mgt-headers.h:49
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:581
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:166
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:587
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:539
ExtendedCapabilities m_extendedCapability
Extended capabilities.
Definition: mgt-headers.h:168
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:551
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:521
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:611
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:563
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:169
TypeId GetInstanceTypeId(void) const override
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:622
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:557
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the Extended Capabilities.
Definition: mgt-headers.cc:545
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:167
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:170
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:515
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:575
void SetListenInterval(uint16_t interval)
Set the listen interval.
Definition: mgt-headers.cc:527
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:599
void Print(std::ostream &os) const override
Definition: mgt-headers.cc:644
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:533
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:569
uint16_t m_listenInterval
listen interval
Definition: mgt-headers.h:172
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:165
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:593
uint32_t GetSerializedSize(void) const override
Definition: mgt-headers.cc:628
void Serialize(Buffer::Iterator start) const override
Definition: mgt-headers.cc:655
uint16_t GetListenInterval(void) const
Return the listen interval.
Definition: mgt-headers.cc:605
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:171
Implement the header for management frames of type association and reassociation response.
Definition: mgt-headers.h:319
void SetErpInformation(ErpInformation erpInformation)
Set the ERP information.
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:971
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:953
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:947
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:941
void SetHtOperation(HtOperation htOperation)
Set the HT operation.
Definition: mgt-headers.cc:959
EdcaParameterSet GetEdcaParameterSet(void) const
Return the EDCA Parameter Set.
VhtOperation m_vhtOperation
VHT operation.
Definition: mgt-headers.h:502
ErpInformation m_erpInformation
ERP information.
Definition: mgt-headers.h:503
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:923
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:995
EdcaParameterSet m_edcaParameterSet
EDCA Parameter Set.
Definition: mgt-headers.h:504
HtOperation m_htOperation
HT operation.
Definition: mgt-headers.h:500
void SetStatusCode(StatusCode code)
Set the status code.
Definition: mgt-headers.cc:911
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:494
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:505
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
void SetAssociationId(uint16_t aid)
Set the association ID.
uint32_t GetSerializedSize(void) const
VhtOperation GetVhtOperation(void) const
Return the VHT operation.
Definition: mgt-headers.cc:989
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:501
void Print(std::ostream &os) const
SupportedRates GetSupportedRates(void)
Return the supported rates.
Definition: mgt-headers.cc:905
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:495
HeOperation m_heOperation
HE operation.
Definition: mgt-headers.h:506
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:977
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:499
StatusCode GetStatusCode(void)
Return the status code.
Definition: mgt-headers.cc:899
HtOperation GetHtOperation(void) const
Return the HT operation.
Definition: mgt-headers.cc:965
void SetEdcaParameterSet(EdcaParameterSet edcaParameterSet)
Set the EDCA Parameter Set.
void SetHeOperation(HeOperation heOperation)
Set the HE operation.
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:498
static TypeId GetTypeId(void)
Register this type.
void Serialize(Buffer::Iterator start) const
HeOperation GetHeOperation(void) const
Return the HE operation.
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:935
void SetVhtOperation(VhtOperation vhtOperation)
Set the VHT operation.
Definition: mgt-headers.cc:983
ErpInformation GetErpInformation(void) const
Return the ERP information.
uint16_t GetAssociationId(void) const
Return the association ID.
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:929
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:917
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
StatusCode m_code
Status code.
Definition: mgt-headers.h:496
Implement the header for management frames of type beacon.
Definition: mgt-headers.h:835
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:488
Implement the header for management frames of type Delete Block Ack.
Definition: mgt-headers.h:1244
void SetTid(uint8_t tid)
Set Traffic ID (TID).
uint8_t GetTid(void) const
Return the Traffic ID (TID).
void Serialize(Buffer::Iterator start) const
uint16_t GetParameterSet(void) const
Return the raw parameter set.
uint16_t m_initiator
initiator
Definition: mgt-headers.h:1303
void SetByOriginator(void)
Set the initiator bit in the DELBA.
bool IsByOriginator(void) const
Check if the initiator bit in the DELBA is set.
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
void Print(std::ostream &os) const
static TypeId GetTypeId(void)
Register this type.
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
uint16_t m_reasonCode
Not used for now.
Definition: mgt-headers.h:1305
void SetByRecipient(void)
Un-set the initiator bit in the DELBA.
uint16_t m_tid
Traffic ID.
Definition: mgt-headers.h:1304
uint32_t GetSerializedSize(void) const
Implement the header for management frames of type probe request.
Definition: mgt-headers.h:515
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:64
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:94
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:607
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:88
void Print(std::ostream &os) const
Definition: mgt-headers.cc:143
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:154
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:605
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:40
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:52
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:610
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:137
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:82
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:100
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:112
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:606
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:126
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:608
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:70
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:46
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:76
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:609
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:106
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:58
Implement the header for management frames of type probe response.
Definition: mgt-headers.h:619
VhtOperation m_vhtOperation
VHT operation.
Definition: mgt-headers.h:822
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:268
void SetErpInformation(ErpInformation erpInformation)
Set the ERP information.
Definition: mgt-headers.cc:346
VhtOperation GetVhtOperation(void) const
Return the VHT operation.
Definition: mgt-headers.cc:286
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:298
uint64_t m_beaconInterval
Beacon interval.
Definition: mgt-headers.h:814
uint64_t GetTimestamp()
Return the time stamp.
Definition: mgt-headers.cc:196
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:274
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:220
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:425
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:292
HtOperation GetHtOperation(void) const
Return the HT operation.
Definition: mgt-headers.cc:262
HeOperation GetHeOperation(void) const
Return the HE operation.
Definition: mgt-headers.cc:310
DsssParameterSet GetDsssParameterSet(void) const
Return the DSSS Parameter Set.
Definition: mgt-headers.cc:340
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:232
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:821
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:226
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:370
EdcaParameterSet GetEdcaParameterSet(void) const
Return the EDCA Parameter Set.
Definition: mgt-headers.cc:364
Ssid m_ssid
Service set ID (SSID)
Definition: mgt-headers.h:813
HtOperation m_htOperation
HT operation.
Definition: mgt-headers.h:820
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:202
void SetVhtOperation(VhtOperation vhtOperation)
Set the VHT operation.
Definition: mgt-headers.cc:280
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:244
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:214
void SetHtOperation(HtOperation htOperation)
Set the HT operation.
Definition: mgt-headers.cc:256
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:316
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:815
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:328
void Print(std::ostream &os) const
Definition: mgt-headers.cc:410
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:381
HeOperation m_heOperation
HE operation.
Definition: mgt-headers.h:824
ErpInformation GetErpInformation(void) const
Return the ERP information.
Definition: mgt-headers.cc:352
void SetDsssParameterSet(DsssParameterSet dsssParameterSet)
Set the DSSS Parameter Set.
Definition: mgt-headers.cc:334
void SetBeaconIntervalUs(uint64_t us)
Set the beacon interval in microseconds unit.
Definition: mgt-headers.cc:322
void SetEdcaParameterSet(EdcaParameterSet edcaParameterSet)
Set the EDCA Parameter Set.
Definition: mgt-headers.cc:358
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:387
DsssParameterSet m_dsssParameterSet
DSSS Parameter Set.
Definition: mgt-headers.h:817
EdcaParameterSet m_edcaParameterSet
EDCA Parameter Set.
Definition: mgt-headers.h:826
void SetHeOperation(HeOperation heOperation)
Set the HE operation.
Definition: mgt-headers.cc:304
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:250
uint64_t GetBeaconIntervalUs(void) const
Return the beacon interval in microseconds unit.
Definition: mgt-headers.cc:208
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:818
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:816
uint64_t m_timestamp
Timestamp.
Definition: mgt-headers.h:812
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:819
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:238
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:823
ErpInformation m_erpInformation
ERP information.
Definition: mgt-headers.h:825
Implement the header for management frames of type reassociation request.
Definition: mgt-headers.h:181
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:786
Mac48Address m_currentApAddr
Address of the current access point.
Definition: mgt-headers.h:302
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:708
uint16_t m_listenInterval
listen interval
Definition: mgt-headers.h:310
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:307
uint16_t GetListenInterval(void) const
Return the listen interval.
Definition: mgt-headers.cc:792
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:744
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:720
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:308
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:774
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:804
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:304
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:702
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:762
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:303
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:850
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:309
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the Extended Capabilities.
Definition: mgt-headers.cc:732
void SetListenInterval(uint16_t interval)
Set the listen interval.
Definition: mgt-headers.cc:714
ExtendedCapabilities m_extendedCapability
Extended capabilities.
Definition: mgt-headers.h:306
void Print(std::ostream &os) const
Definition: mgt-headers.cc:838
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:780
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:305
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:750
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:815
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:768
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:756
void SetCurrentApAddress(Mac48Address currentApAddr)
Set the address of the current access point.
Definition: mgt-headers.cc:798
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:726
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:821
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:738
The IEEE 802.11 SSID Information Element.
Definition: ssid.h:36
Status code for association response.
Definition: status-code.h:32
The Supported Rates Information Element.
a unique identifier for an interface.
Definition: type-id.h:59
The IEEE 802.11ac VHT Capabilities.
The VHT Operation Information Element.
Definition: vht-operation.h:36
See IEEE 802.11 chapter 7.3.1.11 Header format: | category: 1 | action value: 1 |.
Definition: mgt-headers.h:858
MultihopActionValue
MultihopActionValue enumeration.
Definition: mgt-headers.h:892
SelfProtectedActionValue
SelfProtectedActionValue enumeration.
Definition: mgt-headers.h:882
uint8_t m_category
Category of the action.
Definition: mgt-headers.h:981
void Print(std::ostream &os) const
void Serialize(Buffer::Iterator start) const
std::string CategoryValueToString(CategoryValue value) const
Category value to string function.
CategoryValue
CategoryValue enumeration.
Definition: mgt-headers.h:870
std::string SelfProtectedActionValueToString(SelfProtectedActionValue value) const
Self protected action value to string function.
uint32_t GetSerializedSize() const
BlockAckActionValue
Block Ack Action field values See 802.11 Table 8-202.
Definition: mgt-headers.h:918
uint8_t m_actionValue
Action value.
Definition: mgt-headers.h:982
CategoryValue GetCategory()
Return the category value.
MeshActionValue
MeshActionValue enumeration.
Definition: mgt-headers.h:899
ActionValue GetAction()
Return the action value.
void SetAction(CategoryValue type, ActionValue action)
Set action for this Action header.
TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
static TypeId GetTypeId(void)
Register this type.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ssid
Definition: third.py:100
def start()
Definition: core.py:1855
ns3::Time timeout
typedef for union of different ActionValues
Definition: mgt-headers.h:929
SelfProtectedActionValue selfProtectedAction
self protected action
Definition: mgt-headers.h:932
MultihopActionValue multihopAction
multi hop action
Definition: mgt-headers.h:931
MeshActionValue meshAction
mesh action
Definition: mgt-headers.h:930
BlockAckActionValue blockAck
block ack
Definition: mgt-headers.h:933