A Discrete-Event Network Simulator
API
mgt-headers.cc
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 #include "ns3/simulator.h"
24 #include "ns3/address-utils.h"
25 #include "mgt-headers.h"
26 
27 namespace ns3 {
28 
29 /***********************************************************
30  * Probe Request
31  ***********************************************************/
32 
33 NS_OBJECT_ENSURE_REGISTERED (MgtProbeRequestHeader);
34 
36 {
37 }
38 
39 void
41 {
42  m_ssid = ssid;
43 }
44 
45 Ssid
47 {
48  return m_ssid;
49 }
50 
51 void
53 {
54  m_rates = rates;
55 }
56 
57 void
59 {
60  m_extendedCapability = extendedCapabilities;
61 }
62 
65 {
66  return m_extendedCapability;
67 }
68 
69 void
71 {
72  m_htCapability = htCapabilities;
73 }
74 
77 {
78  return m_htCapability;
79 }
80 
81 void
83 {
84  m_vhtCapability = vhtCapabilities;
85 }
86 
89 {
90  return m_vhtCapability;
91 }
92 
93 void
95 {
96  m_heCapability = heCapabilities;
97 }
98 
101 {
102  return m_heCapability;
103 }
104 
107 {
108  return m_rates;
109 }
110 
111 uint32_t
113 {
114  uint32_t size = 0;
115  size += m_ssid.GetSerializedSize ();
116  size += m_rates.GetSerializedSize ();
122  return size;
123 }
124 
125 TypeId
127 {
128  static TypeId tid = TypeId ("ns3::MgtProbeRequestHeader")
129  .SetParent<Header> ()
130  .SetGroupName ("Wifi")
131  .AddConstructor<MgtProbeRequestHeader> ()
132  ;
133  return tid;
134 }
135 
136 TypeId
138 {
139  return GetTypeId ();
140 }
141 
142 void
143 MgtProbeRequestHeader::Print (std::ostream &os) const
144 {
145  os << "ssid=" << m_ssid << ", "
146  << "rates=" << m_rates << ", "
147  << "Extended Capabilities=" << m_extendedCapability << " , "
148  << "HT Capabilities=" << m_htCapability << " , "
149  << "VHT Capabilities=" << m_vhtCapability << " , "
150  << "HE Capabilities=" << m_heCapability;
151 }
152 
153 void
155 {
157  i = m_ssid.Serialize (i);
158  i = m_rates.Serialize (i);
159  i = m_rates.extended.Serialize (i);
161  i = m_htCapability.Serialize (i);
162  i = m_vhtCapability.Serialize (i);
163  i = m_heCapability.Serialize (i);
164 }
165 
166 uint32_t
168 {
170  i = m_ssid.Deserialize (i);
171  i = m_rates.Deserialize (i);
177  return i.GetDistanceFrom (start);
178 }
179 
180 
181 /***********************************************************
182  * Probe Response
183  ***********************************************************/
184 
186 
188 {
189 }
190 
192 {
193 }
194 
195 uint64_t
197 {
198  return m_timestamp;
199 }
200 
201 Ssid
203 {
204  return m_ssid;
205 }
206 
207 uint64_t
209 {
210  return m_beaconInterval;
211 }
212 
215 {
216  return m_rates;
217 }
218 
219 void
221 {
222  m_capability = capabilities;
223 }
224 
227 {
228  return m_capability;
229 }
230 
231 void
233 {
234  m_extendedCapability = extendedCapabilities;
235 }
236 
239 {
240  return m_extendedCapability;
241 }
242 
243 void
245 {
246  m_htCapability = htCapabilities;
247 }
248 
251 {
252  return m_htCapability;
253 }
254 
255 void
257 {
258  m_htOperation = htOperation;
259 }
260 
263 {
264  return m_htOperation;
265 }
266 
267 void
269 {
270  m_vhtCapability = vhtCapabilities;
271 }
272 
275 {
276  return m_vhtCapability;
277 }
278 
279 void
281 {
282  m_vhtOperation = vhtOperation;
283 }
284 
287 {
288  return m_vhtOperation;
289 }
290 
291 void
293 {
294  m_heCapability = heCapabilities;
295 }
296 
299 {
300  return m_heCapability;
301 }
302 
303 void
305 {
306  m_heOperation = heOperation;
307 }
308 
311 {
312  return m_heOperation;
313 }
314 
315 void
317 {
318  m_ssid = ssid;
319 }
320 
321 void
323 {
324  m_beaconInterval = us;
325 }
326 
327 void
329 {
330  m_rates = rates;
331 }
332 
333 void
335 {
336  m_dsssParameterSet = dsssParameterSet;
337 }
338 
341 {
342  return m_dsssParameterSet;
343 }
344 
345 void
347 {
348  m_erpInformation = erpInformation;
349 }
350 
353 {
354  return m_erpInformation;
355 }
356 
357 void
359 {
360  m_edcaParameterSet = edcaParameters;
361 }
362 
363 void
365 {
366  m_muEdcaParameterSet = muEdcaParameters;
367 }
368 
371 {
372  return m_edcaParameterSet;
373 }
374 
377 {
378  return m_muEdcaParameterSet;
379 }
380 
381 TypeId
383 {
384  static TypeId tid = TypeId ("ns3::MgtProbeResponseHeader")
385  .SetParent<Header> ()
386  .SetGroupName ("Wifi")
387  .AddConstructor<MgtProbeResponseHeader> ()
388  ;
389  return tid;
390 }
391 
392 TypeId
394 {
395  return GetTypeId ();
396 }
397 
398 uint32_t
400 {
401  uint32_t size = 0;
402  size += 8; //timestamp
403  size += 2; //beacon interval
404  size += m_capability.GetSerializedSize ();
405  size += m_ssid.GetSerializedSize ();
406  size += m_rates.GetSerializedSize ();
413  size += m_htOperation.GetSerializedSize ();
417  size += m_heOperation.GetSerializedSize ();
419  return size;
420 }
421 
422 void
423 MgtProbeResponseHeader::Print (std::ostream &os) const
424 {
425  os << "ssid=" << m_ssid << ", "
426  << "rates=" << m_rates << ", "
427  << "ERP information=" << m_erpInformation << ", "
428  << "Extended Capabilities=" << m_extendedCapability << " , "
429  << "HT Capabilities=" << m_htCapability << " , "
430  << "HT Operation=" << m_htOperation << " , "
431  << "VHT Capabilities=" << m_vhtCapability << " , "
432  << "VHT Operation=" << m_vhtOperation << " , "
433  << "HE Capabilities=" << m_heCapability << " , "
434  << "HE Operation=" << m_heOperation;
435 }
436 
437 void
439 {
440  //timestamp
441  //beacon interval
442  //capability information
443  //SSID
444  //supported rates
445  //FH parameter set
446  //DS parameter set
447  //CF parameter set
448  //IBSS parameter set
450  i.WriteHtolsbU64 (Simulator::Now ().GetMicroSeconds ());
451  i.WriteHtolsbU16 (static_cast<uint16_t> (m_beaconInterval / 1024));
452  i = m_capability.Serialize (i);
453  i = m_ssid.Serialize (i);
454  i = m_rates.Serialize (i);
456  i = m_erpInformation.Serialize (i);
457  i = m_rates.extended.Serialize (i);
460  i = m_htCapability.Serialize (i);
461  i = m_htOperation.Serialize (i);
462  i = m_vhtCapability.Serialize (i);
463  i = m_vhtOperation.Serialize (i);
464  i = m_heCapability.Serialize (i);
465  i = m_heOperation.Serialize (i);
467 }
468 
469 uint32_t
471 {
473  m_timestamp = i.ReadLsbtohU64 ();
475  m_beaconInterval *= 1024;
476  i = m_capability.Deserialize (i);
477  i = m_ssid.Deserialize (i);
478  i = m_rates.Deserialize (i);
491  return i.GetDistanceFrom (start);
492 }
493 
494 
495 /***********************************************************
496  * Beacons
497  ***********************************************************/
498 
500 
501 /* static */
502 TypeId
504 {
505  static TypeId tid = TypeId ("ns3::MgtBeaconHeader")
507  .SetGroupName ("Wifi")
508  .AddConstructor<MgtBeaconHeader> ()
509  ;
510  return tid;
511 }
512 
513 
514 /***********************************************************
515  * Assoc Request
516  ***********************************************************/
517 
519 
521  : m_listenInterval (0)
522 {
523 }
524 
526 {
527 }
528 
529 void
531 {
532  m_ssid = ssid;
533 }
534 
535 void
537 {
538  m_rates = rates;
539 }
540 
541 void
543 {
544  m_listenInterval = interval;
545 }
546 
547 void
549 {
550  m_capability = capabilities;
551 }
552 
555 {
556  return m_capability;
557 }
558 
559 void
561 {
562  m_extendedCapability = extendedCapabilities;
563 }
564 
567 {
568  return m_extendedCapability;
569 }
570 
571 void
573 {
574  m_htCapability = htCapabilities;
575 }
576 
579 {
580  return m_htCapability;
581 }
582 
583 void
585 {
586  m_vhtCapability = vhtCapabilities;
587 }
588 
591 {
592  return m_vhtCapability;
593 }
594 
595 void
597 {
598  m_heCapability = heCapabilities;
599 }
600 
603 {
604  return m_heCapability;
605 }
606 
607 Ssid
609 {
610  return m_ssid;
611 }
612 
615 {
616  return m_rates;
617 }
618 
619 uint16_t
621 {
622  return m_listenInterval;
623 }
624 
625 TypeId
627 {
628  static TypeId tid = TypeId ("ns3::MgtAssocRequestHeader")
629  .SetParent<Header> ()
630  .SetGroupName ("Wifi")
631  .AddConstructor<MgtAssocRequestHeader> ()
632  ;
633  return tid;
634 }
635 
636 TypeId
638 {
639  return GetTypeId ();
640 }
641 
642 uint32_t
644 {
645  uint32_t size = 0;
646  size += m_capability.GetSerializedSize ();
647  size += 2;
648  size += m_ssid.GetSerializedSize ();
649  size += m_rates.GetSerializedSize ();
655  return size;
656 }
657 
658 void
659 MgtAssocRequestHeader::Print (std::ostream &os) const
660 {
661  os << "ssid=" << m_ssid << ", "
662  << "rates=" << m_rates << ", "
663  << "Extended Capabilities=" << m_extendedCapability << " , "
664  << "HT Capabilities=" << m_htCapability << " , "
665  << "VHT Capabilities=" << m_vhtCapability << " , "
666  << "HE Capabilities=" << m_heCapability;
667 }
668 
669 void
671 {
673  i = m_capability.Serialize (i);
675  i = m_ssid.Serialize (i);
676  i = m_rates.Serialize (i);
677  i = m_rates.extended.Serialize (i);
679  i = m_htCapability.Serialize (i);
680  i = m_vhtCapability.Serialize (i);
681  i = m_heCapability.Serialize (i);
682 }
683 
684 uint32_t
686 {
688  i = m_capability.Deserialize (i);
690  i = m_ssid.Deserialize (i);
691  i = m_rates.Deserialize (i);
697  return i.GetDistanceFrom (start);
698 }
699 
700 
701 /***********************************************************
702  * Ressoc Request
703  ***********************************************************/
704 
706 
708  : m_currentApAddr (Mac48Address ())
709 {
710 }
711 
713 {
714 }
715 
716 void
718 {
719  m_ssid = ssid;
720 }
721 
722 void
724 {
725  m_rates = rates;
726 }
727 
728 void
730 {
731  m_listenInterval = interval;
732 }
733 
734 void
736 {
737  m_capability = capabilities;
738 }
739 
742 {
743  return m_capability;
744 }
745 
746 void
748 {
749  m_extendedCapability = extendedCapabilities;
750 }
751 
754 {
755  return m_extendedCapability;
756 }
757 
758 void
760 {
761  m_htCapability = htCapabilities;
762 }
763 
766 {
767  return m_htCapability;
768 }
769 
770 void
772 {
773  m_vhtCapability = vhtCapabilities;
774 }
775 
778 {
779  return m_vhtCapability;
780 }
781 
782 void
784 {
785  m_heCapability = heCapabilities;
786 }
787 
790 {
791  return m_heCapability;
792 }
793 
794 Ssid
796 {
797  return m_ssid;
798 }
799 
802 {
803  return m_rates;
804 }
805 
806 uint16_t
808 {
809  return m_listenInterval;
810 }
811 
812 void
814 {
815  m_currentApAddr = currentApAddr;
816 }
817 
818 TypeId
820 {
821  static TypeId tid = TypeId ("ns3::MgtReassocRequestHeader")
822  .SetParent<Header> ()
823  .SetGroupName ("Wifi")
824  .AddConstructor<MgtReassocRequestHeader> ()
825  ;
826  return tid;
827 }
828 
829 TypeId
831 {
832  return GetTypeId ();
833 }
834 
835 uint32_t
837 {
838  uint32_t size = 0;
839  size += m_capability.GetSerializedSize ();
840  size += 2; //listen interval
841  size += 6; //current AP address
842  size += m_ssid.GetSerializedSize ();
843  size += m_rates.GetSerializedSize ();
849  return size;
850 }
851 
852 void
853 MgtReassocRequestHeader::Print (std::ostream &os) const
854 {
855  os << "current AP address=" << m_currentApAddr << ", "
856  << "ssid=" << m_ssid << ", "
857  << "rates=" << m_rates << ", "
858  << "Extended Capabilities=" << m_extendedCapability << " , "
859  << "HT Capabilities=" << m_htCapability << " , "
860  << "VHT Capabilities=" << m_vhtCapability << " , "
861  << "HE Capabilities=" << m_heCapability;
862 }
863 
864 void
866 {
868  i = m_capability.Serialize (i);
871  i = m_ssid.Serialize (i);
872  i = m_rates.Serialize (i);
873  i = m_rates.extended.Serialize (i);
875  i = m_htCapability.Serialize (i);
876  i = m_vhtCapability.Serialize (i);
877  i = m_heCapability.Serialize (i);
878 }
879 
880 uint32_t
882 {
884  i = m_capability.Deserialize (i);
887  i = m_ssid.Deserialize (i);
888  i = m_rates.Deserialize (i);
894  return i.GetDistanceFrom (start);
895 }
896 
897 
898 /***********************************************************
899  * Assoc/Reassoc Response
900  ***********************************************************/
901 
903 
905  : m_aid (0)
906 {
907 }
908 
910 {
911 }
912 
915 {
916  return m_code;
917 }
918 
921 {
922  return m_rates;
923 }
924 
925 void
927 {
928  m_code = code;
929 }
930 
931 void
933 {
934  m_rates = rates;
935 }
936 
937 void
939 {
940  m_capability = capabilities;
941 }
942 
945 {
946  return m_capability;
947 }
948 
949 void
951 {
952  m_extendedCapability = extendedCapabilities;
953 }
954 
957 {
958  return m_extendedCapability;
959 }
960 
961 void
963 {
964  m_htCapability = htCapabilities;
965 }
966 
969 {
970  return m_htCapability;
971 }
972 
973 void
975 {
976  m_htOperation = htOperation;
977 }
978 
981 {
982  return m_htOperation;
983 }
984 
985 void
987 {
988  m_vhtCapability = vhtCapabilities;
989 }
990 
993 {
994  return m_vhtCapability;
995 }
996 
997 void
999 {
1000  m_vhtOperation = vhtOperation;
1001 }
1002 
1005 {
1006  return m_vhtOperation;
1007 }
1008 
1009 void
1011 {
1012  m_heCapability = heCapabilities;
1013 }
1014 
1017 {
1018  return m_heCapability;
1019 }
1020 
1021 void
1023 {
1024  m_heOperation = heOperation;
1025 }
1026 
1029 {
1030  return m_heOperation;
1031 }
1032 
1033 void
1035 {
1036  m_aid = aid;
1037 }
1038 
1039 uint16_t
1041 {
1042  return m_aid;
1043 }
1044 
1045 void
1047 {
1048  m_erpInformation = erpInformation;
1049 }
1050 
1053 {
1054  return m_erpInformation;
1055 }
1056 
1057 void
1059 {
1060  m_edcaParameterSet = edcaparameters;
1061 }
1062 
1063 void
1065 {
1066  m_muEdcaParameterSet = muEdcaParameters;
1067 }
1068 
1071 {
1072  return m_edcaParameterSet;
1073 }
1074 
1077 {
1078  return m_muEdcaParameterSet;
1079 }
1080 
1081 TypeId
1083 {
1084  static TypeId tid = TypeId ("ns3::MgtAssocResponseHeader")
1085  .SetParent<Header> ()
1086  .SetGroupName ("Wifi")
1087  .AddConstructor<MgtAssocResponseHeader> ()
1088  ;
1089  return tid;
1090 }
1091 
1092 TypeId
1094 {
1095  return GetTypeId ();
1096 }
1097 
1098 uint32_t
1100 {
1101  uint32_t size = 0;
1102  size += m_capability.GetSerializedSize ();
1103  size += m_code.GetSerializedSize ();
1104  size += 2; //aid
1105  size += m_rates.GetSerializedSize ();
1107  size += m_rates.extended.GetSerializedSize ();
1110  size += m_htCapability.GetSerializedSize ();
1111  size += m_htOperation.GetSerializedSize ();
1113  size += m_vhtOperation.GetSerializedSize ();
1114  size += m_heCapability.GetSerializedSize ();
1115  size += m_heOperation.GetSerializedSize ();
1117  return size;
1118 }
1119 
1120 void
1121 MgtAssocResponseHeader::Print (std::ostream &os) const
1122 {
1123  os << "status code=" << m_code << ", "
1124  << "aid=" << m_aid << ", "
1125  << "rates=" << m_rates << ", "
1126  << "ERP information=" << m_erpInformation << ", "
1127  << "Extended Capabilities=" << m_extendedCapability << " , "
1128  << "HT Capabilities=" << m_htCapability << " , "
1129  << "HT Operation=" << m_htOperation << " , "
1130  << "VHT Capabilities=" << m_vhtCapability << " , "
1131  << "VHT Operation=" << m_vhtOperation << " , "
1132  << "HE Capabilities=" << m_heCapability << " , "
1133  << "HE Operation=" << m_heOperation;
1134 }
1135 
1136 void
1138 {
1139  Buffer::Iterator i = start;
1140  i = m_capability.Serialize (i);
1141  i = m_code.Serialize (i);
1142  i.WriteHtolsbU16 (m_aid);
1143  i = m_rates.Serialize (i);
1144  i = m_erpInformation.Serialize (i);
1145  i = m_rates.extended.Serialize (i);
1146  i = m_edcaParameterSet.Serialize (i);
1148  i = m_htCapability.Serialize (i);
1149  i = m_htOperation.Serialize (i);
1150  i = m_vhtCapability.Serialize (i);
1151  i = m_vhtOperation.Serialize (i);
1152  i = m_heCapability.Serialize (i);
1153  i = m_heOperation.Serialize (i);
1155 }
1156 
1157 uint32_t
1159 {
1160  Buffer::Iterator i = start;
1161  i = m_capability.Deserialize (i);
1162  i = m_code.Deserialize (i);
1163  m_aid = i.ReadLsbtohU16 ();
1164  i = m_rates.Deserialize (i);
1176  return i.GetDistanceFrom (start);
1177 }
1178 
1179 
1180 /**********************************************************
1181  * ActionFrame
1182  **********************************************************/
1184 {
1185 }
1186 
1188 {
1189 }
1190 
1191 void
1194 {
1195  m_category = static_cast<uint8_t> (type);
1196  switch (type)
1197  {
1198  case BLOCK_ACK:
1199  {
1200  m_actionValue = static_cast<uint8_t> (action.blockAck);
1201  break;
1202  }
1203  case MESH:
1204  {
1205  m_actionValue = static_cast<uint8_t> (action.meshAction);
1206  break;
1207  }
1208  case MULTIHOP:
1209  {
1210  m_actionValue = static_cast<uint8_t> (action.multihopAction);
1211  break;
1212  }
1213  case SELF_PROTECTED:
1214  {
1215  m_actionValue = static_cast<uint8_t> (action.selfProtectedAction);
1216  break;
1217  }
1219  {
1220  break;
1221  }
1222  }
1223 }
1224 
1227 {
1228  switch (m_category)
1229  {
1230  case BLOCK_ACK:
1231  return BLOCK_ACK;
1232  case MESH:
1233  return MESH;
1234  case MULTIHOP:
1235  return MULTIHOP;
1236  case SELF_PROTECTED:
1237  return SELF_PROTECTED;
1239  return VENDOR_SPECIFIC_ACTION;
1240  default:
1241  NS_FATAL_ERROR ("Unknown action value");
1242  return SELF_PROTECTED;
1243  }
1244 }
1245 
1248 {
1249  ActionValue retval;
1250  retval.selfProtectedAction = PEER_LINK_OPEN; //Needs to be initialized to something to quiet valgrind in default cases
1251  switch (m_category)
1252  {
1253  case BLOCK_ACK:
1254  switch (m_actionValue)
1255  {
1258  break;
1261  break;
1262  case BLOCK_ACK_DELBA:
1263  retval.blockAck = BLOCK_ACK_DELBA;
1264  break;
1265  }
1266  break;
1267 
1268  case SELF_PROTECTED:
1269  switch (m_actionValue)
1270  {
1271  case PEER_LINK_OPEN:
1273  break;
1274  case PEER_LINK_CONFIRM:
1276  break;
1277  case PEER_LINK_CLOSE:
1279  break;
1280  case GROUP_KEY_INFORM:
1282  break;
1283  case GROUP_KEY_ACK:
1285  break;
1286  default:
1287  NS_FATAL_ERROR ("Unknown mesh peering management action code");
1288  retval.selfProtectedAction = PEER_LINK_OPEN; /* quiet compiler */
1289  }
1290  break;
1291 
1292  case MESH:
1293  switch (m_actionValue)
1294  {
1295  case LINK_METRIC_REPORT:
1296  retval.meshAction = LINK_METRIC_REPORT;
1297  break;
1298  case PATH_SELECTION:
1299  retval.meshAction = PATH_SELECTION;
1300  break;
1301  case PORTAL_ANNOUNCEMENT:
1303  break;
1306  break;
1307  case MDA_SETUP_REQUEST:
1308  retval.meshAction = MDA_SETUP_REQUEST;
1309  break;
1310  case MDA_SETUP_REPLY:
1311  retval.meshAction = MDA_SETUP_REPLY;
1312  break;
1315  break;
1316  case MDAOP_ADVERTISMENTS:
1318  break;
1319  case MDAOP_SET_TEARDOWN:
1320  retval.meshAction = MDAOP_SET_TEARDOWN;
1321  break;
1324  break;
1327  break;
1328  default:
1329  NS_FATAL_ERROR ("Unknown mesh peering management action code");
1330  retval.selfProtectedAction = PEER_LINK_OPEN; /* quiet compiler */
1331  }
1332  break;
1333 
1334  case MULTIHOP: //not yet supported
1335  switch (m_actionValue)
1336  {
1337  case PROXY_UPDATE: //not used so far
1338  retval.multihopAction = PROXY_UPDATE;
1339  break;
1340  case PROXY_UPDATE_CONFIRMATION: //not used so far
1341  retval.multihopAction = PROXY_UPDATE;
1342  break;
1343  default:
1344  NS_FATAL_ERROR ("Unknown mesh peering management action code");
1345  retval.selfProtectedAction = PEER_LINK_OPEN; /* quiet compiler */
1346  }
1347  break;
1348  default:
1349  NS_FATAL_ERROR ("Unsupported mesh action");
1350  retval.selfProtectedAction = PEER_LINK_OPEN; /* quiet compiler */
1351  }
1352  return retval;
1353 }
1354 
1355 TypeId
1357 {
1358  static TypeId tid = TypeId ("ns3::WifiActionHeader")
1359  .SetParent<Header> ()
1360  .SetGroupName ("Wifi")
1361  .AddConstructor<WifiActionHeader> ()
1362  ;
1363  return tid;
1364 }
1365 
1366 TypeId
1368 {
1369  return GetTypeId ();
1370 }
1371 
1372 std::string
1374 {
1375  if (value == BLOCK_ACK)
1376  {
1377  return "BlockAck";
1378  }
1379  else if (value == MESH)
1380  {
1381  return "Mesh";
1382  }
1383  else if (value == SELF_PROTECTED)
1384  {
1385  return "SelfProtected";
1386  }
1387  else if (value == VENDOR_SPECIFIC_ACTION)
1388  {
1389  return "VendorSpecificAction";
1390  }
1391  else
1392  {
1393  std::ostringstream convert;
1394  convert << value;
1395  return convert.str ();
1396  }
1397 }
1398 std::string
1400 {
1401  if (value == PEER_LINK_OPEN)
1402  {
1403  return "PeerLinkOpen";
1404  }
1405  else if (value == PEER_LINK_CONFIRM)
1406  {
1407  return "PeerLinkConfirm";
1408  }
1409  else if (value == PEER_LINK_CLOSE)
1410  {
1411  return "PeerLinkClose";
1412  }
1413  else if (value == GROUP_KEY_INFORM)
1414  {
1415  return "GroupKeyInform";
1416  }
1417  else if (value == GROUP_KEY_ACK)
1418  {
1419  return "GroupKeyAck";
1420  }
1421  else
1422  {
1423  std::ostringstream convert;
1424  convert << value;
1425  return convert.str ();
1426  }
1427 }
1428 
1429 void
1430 WifiActionHeader::Print (std::ostream &os) const
1431 {
1432  os << "category=" << CategoryValueToString ((CategoryValue) m_category)
1434 }
1435 
1436 uint32_t
1438 {
1439  return 2;
1440 }
1441 
1442 void
1444 {
1445  start.WriteU8 (m_category);
1446  start.WriteU8 (m_actionValue);
1447 }
1448 
1449 uint32_t
1451 {
1452  Buffer::Iterator i = start;
1453  m_category = i.ReadU8 ();
1454  m_actionValue = i.ReadU8 ();
1455  return i.GetDistanceFrom (start);
1456 }
1457 
1458 
1459 /***************************************************
1460 * ADDBARequest
1461 ****************************************************/
1462 
1464 
1466  : m_dialogToken (1),
1467  m_amsduSupport (1),
1468  m_bufferSize (0)
1469 {
1470 }
1471 
1472 TypeId
1474 {
1475  static TypeId tid = TypeId ("ns3::MgtAddBaRequestHeader")
1476  .SetParent<Header> ()
1477  .SetGroupName ("Wifi")
1478  .AddConstructor<MgtAddBaRequestHeader> ()
1479  ;
1480  return tid;
1481 }
1482 
1483 TypeId
1485 {
1486  return GetTypeId ();
1487 }
1488 
1489 void
1490 MgtAddBaRequestHeader::Print (std::ostream &os) const
1491 {
1492 }
1493 
1494 uint32_t
1496 {
1497  uint32_t size = 0;
1498  size += 1; //Dialog token
1499  size += 2; //Block ack parameter set
1500  size += 2; //Block ack timeout value
1501  size += 2; //Starting sequence control
1502  return size;
1503 }
1504 
1505 void
1507 {
1508  Buffer::Iterator i = start;
1509  i.WriteU8 (m_dialogToken);
1513 }
1514 
1515 uint32_t
1517 {
1518  Buffer::Iterator i = start;
1519  m_dialogToken = i.ReadU8 ();
1523  return i.GetDistanceFrom (start);
1524 }
1525 
1526 void
1528 {
1529  m_policy = 0;
1530 }
1531 
1532 void
1534 {
1535  m_policy = 1;
1536 }
1537 
1538 void
1540 {
1541  NS_ASSERT (tid < 16);
1542  m_tid = tid;
1543 }
1544 
1545 void
1547 {
1549 }
1550 
1551 void
1553 {
1554  m_bufferSize = size;
1555 }
1556 
1557 void
1559 {
1560  m_startingSeq = seq;
1561 }
1562 
1563 void
1565 {
1566  m_startingSeq = (seqControl >> 4) & 0x0fff;
1567 }
1568 
1569 void
1571 {
1572  m_amsduSupport = supported;
1573 }
1574 
1575 uint8_t
1577 {
1578  return m_tid;
1579 }
1580 
1581 bool
1583 {
1584  return (m_policy == 1) ? true : false;
1585 }
1586 
1587 uint16_t
1589 {
1590  return m_timeoutValue;
1591 }
1592 
1593 uint16_t
1595 {
1596  return m_bufferSize;
1597 }
1598 
1599 bool
1601 {
1602  return (m_amsduSupport == 1) ? true : false;
1603 }
1604 
1605 uint16_t
1607 {
1608  return m_startingSeq;
1609 }
1610 
1611 uint16_t
1613 {
1614  return (m_startingSeq << 4) & 0xfff0;
1615 }
1616 
1617 uint16_t
1619 {
1620  uint16_t res = 0;
1621  res |= m_amsduSupport;
1622  res |= m_policy << 1;
1623  res |= m_tid << 2;
1624  res |= m_bufferSize << 6;
1625  return res;
1626 }
1627 
1628 void
1630 {
1631  m_amsduSupport = (params) & 0x01;
1632  m_policy = (params >> 1) & 0x01;
1633  m_tid = (params >> 2) & 0x0f;
1634  m_bufferSize = (params >> 6) & 0x03ff;
1635 }
1636 
1637 
1638 /***************************************************
1639 * ADDBAResponse
1640 ****************************************************/
1641 
1643 
1645  : m_dialogToken (1),
1646  m_amsduSupport (1),
1647  m_bufferSize (0)
1648 {
1649 }
1650 
1651 TypeId
1653 {
1654  static TypeId tid = TypeId ("ns3::MgtAddBaResponseHeader")
1655  .SetParent<Header> ()
1656  .SetGroupName ("Wifi")
1657  .AddConstructor<MgtAddBaResponseHeader> ()
1658  ;
1659  return tid;
1660 }
1661 
1662 TypeId
1664 {
1665  return GetTypeId ();
1666 }
1667 
1668 void
1669 MgtAddBaResponseHeader::Print (std::ostream &os) const
1670 {
1671  os << "status code=" << m_code;
1672 }
1673 
1674 uint32_t
1676 {
1677  uint32_t size = 0;
1678  size += 1; //Dialog token
1679  size += m_code.GetSerializedSize (); //Status code
1680  size += 2; //Block ack parameter set
1681  size += 2; //Block ack timeout value
1682  return size;
1683 }
1684 
1685 void
1687 {
1688  Buffer::Iterator i = start;
1689  i.WriteU8 (m_dialogToken);
1690  i = m_code.Serialize (i);
1693 }
1694 
1695 uint32_t
1697 {
1698  Buffer::Iterator i = start;
1699  m_dialogToken = i.ReadU8 ();
1700  i = m_code.Deserialize (i);
1703  return i.GetDistanceFrom (start);
1704 }
1705 
1706 void
1708 {
1709  m_policy = 0;
1710 }
1711 
1712 void
1714 {
1715  m_policy = 1;
1716 }
1717 
1718 void
1720 {
1721  NS_ASSERT (tid < 16);
1722  m_tid = tid;
1723 }
1724 
1725 void
1727 {
1729 }
1730 
1731 void
1733 {
1734  m_bufferSize = size;
1735 }
1736 
1737 void
1739 {
1740  m_code = code;
1741 }
1742 
1743 void
1745 {
1746  m_amsduSupport = supported;
1747 }
1748 
1749 StatusCode
1751 {
1752  return m_code;
1753 }
1754 
1755 uint8_t
1757 {
1758  return m_tid;
1759 }
1760 
1761 bool
1763 {
1764  return (m_policy == 1) ? true : false;
1765 }
1766 
1767 uint16_t
1769 {
1770  return m_timeoutValue;
1771 }
1772 
1773 uint16_t
1775 {
1776  return m_bufferSize;
1777 }
1778 
1779 bool
1781 {
1782  return (m_amsduSupport == 1) ? true : false;
1783 }
1784 
1785 uint16_t
1787 {
1788  uint16_t res = 0;
1789  res |= m_amsduSupport;
1790  res |= m_policy << 1;
1791  res |= m_tid << 2;
1792  res |= m_bufferSize << 6;
1793  return res;
1794 }
1795 
1796 void
1798 {
1799  m_amsduSupport = (params) & 0x01;
1800  m_policy = (params >> 1) & 0x01;
1801  m_tid = (params >> 2) & 0x0f;
1802  m_bufferSize = (params >> 6) & 0x03ff;
1803 }
1804 
1805 
1806 /***************************************************
1807 * DelBa
1808 ****************************************************/
1809 
1811 
1813  : m_reasonCode (1)
1814 {
1815 }
1816 
1817 TypeId
1819 {
1820  static TypeId tid = TypeId ("ns3::MgtDelBaHeader")
1821  .SetParent<Header> ()
1822  .SetGroupName ("Wifi")
1823  .AddConstructor<MgtDelBaHeader> ()
1824  ;
1825  return tid;
1826 }
1827 
1828 TypeId
1830 {
1831  return GetTypeId ();
1832 }
1833 
1834 void
1835 MgtDelBaHeader::Print (std::ostream &os) const
1836 {
1837 }
1838 
1839 uint32_t
1841 {
1842  uint32_t size = 0;
1843  size += 2; //DelBa parameter set
1844  size += 2; //Reason code
1845  return size;
1846 }
1847 
1848 void
1850 {
1851  Buffer::Iterator i = start;
1854 }
1855 
1856 uint32_t
1858 {
1859  Buffer::Iterator i = start;
1861  m_reasonCode = i.ReadLsbtohU16 ();
1862  return i.GetDistanceFrom (start);
1863 }
1864 
1865 bool
1867 {
1868  return (m_initiator == 1) ? true : false;
1869 }
1870 
1871 uint8_t
1873 {
1874  NS_ASSERT (m_tid < 16);
1875  uint8_t tid = static_cast<uint8_t> (m_tid);
1876  return tid;
1877 }
1878 
1879 void
1881 {
1882  m_initiator = 1;
1883 }
1884 
1885 void
1887 {
1888  m_initiator = 0;
1889 }
1890 
1891 void
1893 {
1894  NS_ASSERT (tid < 16);
1895  m_tid = static_cast<uint16_t> (tid);
1896 }
1897 
1898 uint16_t
1900 {
1901  uint16_t res = 0;
1902  res |= m_initiator << 11;
1903  res |= m_tid << 12;
1904  return res;
1905 }
1906 
1907 void
1909 {
1910  m_initiator = (params >> 11) & 0x01;
1911  m_tid = (params >> 12) & 0x0f;
1912 }
1913 
1914 } //namespace ns3
ns3::MgtAssocResponseHeader::m_extendedCapability
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:511
ns3::MgtProbeResponseHeader::SetErpInformation
void SetErpInformation(ErpInformation erpInformation)
Set the ERP information.
Definition: mgt-headers.cc:346
ns3::MgtDelBaHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:1835
ns3::MgtProbeResponseHeader::SetExtendedCapabilities
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:232
ns3::MgtProbeResponseHeader::GetHeOperation
HeOperation GetHeOperation(void) const
Return the HE operation.
Definition: mgt-headers.cc:310
ns3::TypeId
a unique identifier for an interface.
Definition: type-id.h:59
ns3::MgtProbeRequestHeader::m_extendedCapability
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:621
ns3::MgtReassocRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:819
ns3::MgtReassocRequestHeader::m_listenInterval
uint16_t m_listenInterval
listen interval
Definition: mgt-headers.h:311
ns3::MgtReassocRequestHeader::m_htCapability
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:308
ns3::MgtAssocResponseHeader::GetSupportedRates
SupportedRates GetSupportedRates(void)
Return the supported rates.
Definition: mgt-headers.cc:920
ns3::MgtAssocResponseHeader::GetStatusCode
StatusCode GetStatusCode(void)
Return the status code.
Definition: mgt-headers.cc:914
ns3::VhtCapabilities
The IEEE 802.11ac VHT Capabilities.
Definition: vht-capabilities.h:35
ns3::MgtProbeResponseHeader::m_vhtOperation
VhtOperation m_vhtOperation
VHT operation.
Definition: mgt-headers.h:848
ns3::MgtAssocResponseHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:1137
ns3::MgtAddBaResponseHeader::IsImmediateBlockAck
bool IsImmediateBlockAck(void) const
Return whether the Block Ack policy is immediate Block Ack.
Definition: mgt-headers.cc:1762
NS_OBJECT_ENSURE_REGISTERED
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
Definition: object-base.h:45
NS_ASSERT
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
Definition: assert.h:67
ns3::MgtAssocRequestHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:614
ns3::MgtProbeResponseHeader::GetErpInformation
ErpInformation GetErpInformation(void) const
Return the ERP information.
Definition: mgt-headers.cc:352
ns3::MgtAssocResponseHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:1093
ns3::MgtReassocRequestHeader::SetExtendedCapabilities
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the Extended Capabilities.
Definition: mgt-headers.cc:747
ns3::MgtProbeResponseHeader::SetDsssParameterSet
void SetDsssParameterSet(DsssParameterSet dsssParameterSet)
Set the DSSS Parameter Set.
Definition: mgt-headers.cc:334
ns3::MgtReassocRequestHeader::m_extendedCapability
ExtendedCapabilities m_extendedCapability
Extended capabilities.
Definition: mgt-headers.h:307
ns3::HeOperation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: he-operation.cc:137
ns3::Buffer::Iterator::WriteHtolsbU16
void WriteHtolsbU16(uint16_t data)
Definition: buffer.cc:911
ns3::MgtAddBaRequestHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:1495
ns3::MgtReassocRequestHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:836
ns3::MgtProbeResponseHeader::m_timestamp
uint64_t m_timestamp
Timestamp.
Definition: mgt-headers.h:838
ns3::CapabilityInformation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Serialize capability information to the given buffer.
Definition: capability-information.cc:126
ns3::MgtAssocResponseHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:968
ns3::WifiInformationElement::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator i)
Deserialize entire IE, which must be present.
Definition: wifi-information-element.cc:66
ns3::MgtAddBaResponseHeader::GetBufferSize
uint16_t GetBufferSize(void) const
Return the buffer size.
Definition: mgt-headers.cc:1774
ns3::MgtAddBaRequestHeader::SetImmediateBlockAck
void SetImmediateBlockAck()
Enable immediate BlockAck.
Definition: mgt-headers.cc:1533
ns3::MgtAssocRequestHeader::SetListenInterval
void SetListenInterval(uint16_t interval)
Set the listen interval.
Definition: mgt-headers.cc:542
ns3::WifiActionHeader::ActionValue::meshAction
MeshActionValue meshAction
mesh action
Definition: mgt-headers.h:957
ns3::MgtAssocResponseHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:1121
ns3::WifiActionHeader::MDAOP_ADVERTISMENT_REQUEST
@ MDAOP_ADVERTISMENT_REQUEST
Definition: mgt-headers.h:933
ns3::MgtReassocRequestHeader::GetCapabilities
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:741
ns3::WifiActionHeader::LINK_METRIC_REPORT
@ LINK_METRIC_REPORT
Definition: mgt-headers.h:927
ns3::WifiActionHeader::ActionValue::multihopAction
MultihopActionValue multihopAction
multi hop action
Definition: mgt-headers.h:958
ns3::MgtProbeResponseHeader::GetTimestamp
uint64_t GetTimestamp()
Return the time stamp.
Definition: mgt-headers.cc:196
ns3::WifiActionHeader::PATH_SELECTION
@ PATH_SELECTION
Definition: mgt-headers.h:928
ns3::Simulator::Now
static Time Now(void)
Return the current simulation virtual time.
Definition: simulator.cc:195
ns3::MgtReassocRequestHeader::m_capability
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:306
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
ns3::MgtAddBaRequestHeader::GetStartingSequenceControl
uint16_t GetStartingSequenceControl(void) const
Return the raw sequence control.
Definition: mgt-headers.cc:1612
ns3::MgtAssocRequestHeader::SetVhtCapabilities
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:584
ns3::MgtProbeResponseHeader::SetVhtOperation
void SetVhtOperation(VhtOperation vhtOperation)
Set the VHT operation.
Definition: mgt-headers.cc:280
ns3::WifiActionHeader::CategoryValueToString
std::string CategoryValueToString(CategoryValue value) const
Category value to string function.
Definition: mgt-headers.cc:1373
ns3::Buffer::Iterator::GetDistanceFrom
uint32_t GetDistanceFrom(Iterator const &o) const
Definition: buffer.cc:788
ns3::MgtAddBaRequestHeader::m_startingSeq
uint16_t m_startingSeq
Starting sequence number.
Definition: mgt-headers.h:1141
ns3::MgtDelBaHeader::m_initiator
uint16_t m_initiator
initiator
Definition: mgt-headers.h:1330
ns3::MgtProbeResponseHeader::~MgtProbeResponseHeader
~MgtProbeResponseHeader()
Definition: mgt-headers.cc:191
ns3::MgtAssocResponseHeader::GetVhtOperation
VhtOperation GetVhtOperation(void) const
Return the VHT operation.
Definition: mgt-headers.cc:1004
ns3::MgtAssocRequestHeader::m_listenInterval
uint16_t m_listenInterval
listen interval
Definition: mgt-headers.h:173
ns3::MgtProbeResponseHeader::SetCapabilities
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:220
ns3::WifiActionHeader::MDA_SETUP_REQUEST
@ MDA_SETUP_REQUEST
Definition: mgt-headers.h:931
ns3::WifiActionHeader::MESH
@ MESH
Definition: mgt-headers.h:899
ns3::MgtAddBaRequestHeader::SetBufferSize
void SetBufferSize(uint16_t size)
Set buffer size.
Definition: mgt-headers.cc:1552
ns3::HtCapabilities::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: ht-capabilities.cc:274
ns3::Buffer::Iterator::ReadU8
uint8_t ReadU8(void)
Definition: buffer.h:1021
ns3::MgtProbeResponseHeader::m_heCapability
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:849
ns3::MgtDelBaHeader::GetTid
uint8_t GetTid(void) const
Return the Traffic ID (TID).
Definition: mgt-headers.cc:1872
ns3::MgtReassocRequestHeader::m_heCapability
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:310
ns3::MgtProbeResponseHeader::GetSsid
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:202
ns3::MgtAssocRequestHeader::GetCapabilities
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:554
ns3::MgtAssocResponseHeader::GetHeOperation
HeOperation GetHeOperation(void) const
Return the HE operation.
Definition: mgt-headers.cc:1028
ns3::WifiActionHeader::SelfProtectedActionValue
SelfProtectedActionValue
SelfProtectedActionValue enumeration.
Definition: mgt-headers.h:909
ns3::MgtAssocRequestHeader::m_capability
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:168
ns3::HtOperation::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: ht-operation.cc:323
ns3::MgtProbeResponseHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:393
ns3::MgtProbeResponseHeader::m_capability
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:842
ns3::MgtAddBaResponseHeader::m_amsduSupport
uint8_t m_amsduSupport
Flag if A-MSDU is supported.
Definition: mgt-headers.h:1258
ns3::StatusCode::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: status-code.cc:48
ns3::MgtReassocRequestHeader::m_rates
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:305
ns3::MgtDelBaHeader::m_tid
uint16_t m_tid
Traffic ID.
Definition: mgt-headers.h:1331
ns3::HeCapabilities
The IEEE 802.11ax HE Capabilities.
Definition: he-capabilities.h:34
ns3::MgtDelBaHeader::SetByOriginator
void SetByOriginator(void)
Set the initiator bit in the DELBA.
Definition: mgt-headers.cc:1880
ns3::MgtDelBaHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Return the raw parameter set.
Definition: mgt-headers.cc:1899
ns3::MgtAssocRequestHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:578
ns3::MgtAssocRequestHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:572
ns3::MgtProbeResponseHeader::GetEdcaParameterSet
EdcaParameterSet GetEdcaParameterSet(void) const
Return the EDCA Parameter Set.
Definition: mgt-headers.cc:370
ns3::ExtendedCapabilities::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: extended-capabilities.cc:129
ns3::WifiActionHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:1356
ns3::MgtAssocResponseHeader::GetErpInformation
ErpInformation GetErpInformation(void) const
Return the ERP information.
Definition: mgt-headers.cc:1052
ns3::MgtProbeRequestHeader::GetHeCapabilities
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:100
ns3::DsssParameterSet
The DSSS Parameter Set.
Definition: dsss-parameter-set.h:35
ns3::MgtAddBaRequestHeader
Implement the header for management frames of type Add Block Ack request.
Definition: mgt-headers.h:1018
ns3::Buffer::Iterator::WriteU8
void WriteU8(uint8_t data)
Definition: buffer.h:869
ns3::HeOperation::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: he-operation.cc:147
ns3::WifiActionHeader::ActionValue
typedef for union of different ActionValues
Definition: mgt-headers.h:956
ns3::WifiActionHeader::SelfProtectedActionValueToString
std::string SelfProtectedActionValueToString(SelfProtectedActionValue value) const
Self protected action value to string function.
Definition: mgt-headers.cc:1399
ns3::MgtAssocResponseHeader::GetExtendedCapabilities
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:956
ns3::MgtAddBaResponseHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Return the raw parameter set.
Definition: mgt-headers.cc:1786
ns3::MgtAssocResponseHeader::m_edcaParameterSet
EdcaParameterSet m_edcaParameterSet
EDCA Parameter Set.
Definition: mgt-headers.h:517
ns3::MgtProbeRequestHeader::SetHeCapabilities
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:94
ns3::WifiActionHeader::ActionValue::selfProtectedAction
SelfProtectedActionValue selfProtectedAction
self protected action
Definition: mgt-headers.h:959
ns3::MgtProbeRequestHeader::m_htCapability
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:622
ns3::MgtAssocRequestHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:536
ns3::Mac48Address
an EUI-48 address
Definition: mac48-address.h:44
ns3::MgtReassocRequestHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:723
ns3::WifiActionHeader::m_category
uint8_t m_category
Category of the action.
Definition: mgt-headers.h:1008
ns3::MgtAssocRequestHeader::m_vhtCapability
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:171
ns3::MgtReassocRequestHeader::GetExtendedCapabilities
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:753
ns3::WifiActionHeader::MDAOP_ADVERTISMENTS
@ MDAOP_ADVERTISMENTS
Definition: mgt-headers.h:934
ns3::ExtendedCapabilities::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: extended-capabilities.cc:119
ns3::MgtProbeRequestHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:76
ns3::MgtAssocResponseHeader::m_muEdcaParameterSet
MuEdcaParameterSet m_muEdcaParameterSet
MU EDCA Parameter Set.
Definition: mgt-headers.h:520
ns3::MgtAssocResponseHeader::GetHeCapabilities
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:1016
ns3::MgtAssocResponseHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:962
ns3::MgtAssocRequestHeader::GetListenInterval
uint16_t GetListenInterval(void) const
Return the listen interval.
Definition: mgt-headers.cc:620
ns3::MgtAssocRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:626
ns3::MgtAddBaRequestHeader::MgtAddBaRequestHeader
MgtAddBaRequestHeader()
Definition: mgt-headers.cc:1465
ns3::WifiActionHeader::BLOCK_ACK_ADDBA_REQUEST
@ BLOCK_ACK_ADDBA_REQUEST
Definition: mgt-headers.h:946
ns3::MgtReassocRequestHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:865
ns3::MgtProbeResponseHeader::GetMuEdcaParameterSet
MuEdcaParameterSet GetMuEdcaParameterSet(void) const
Return the MU EDCA Parameter Set.
Definition: mgt-headers.cc:376
ns3::MgtAssocRequestHeader::SetExtendedCapabilities
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the Extended Capabilities.
Definition: mgt-headers.cc:560
ns3::MgtDelBaHeader::SetByRecipient
void SetByRecipient(void)
Un-set the initiator bit in the DELBA.
Definition: mgt-headers.cc:1886
ns3::MgtReassocRequestHeader::SetHeCapabilities
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:783
ns3::MgtAssocRequestHeader::GetExtendedCapabilities
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:566
ns3::TypeId::SetParent
TypeId SetParent(TypeId tid)
Set the parent TypeId.
Definition: type-id.cc:923
ns3::MgtProbeResponseHeader::GetBeaconIntervalUs
uint64_t GetBeaconIntervalUs(void) const
Return the beacon interval in microseconds unit.
Definition: mgt-headers.cc:208
ns3::WifiInformationElement::GetSerializedSize
virtual uint16_t GetSerializedSize() const
Get the size of the serialized IE including Element ID and length fields.
Definition: wifi-information-element.cc:35
ns3::MgtProbeResponseHeader::GetDsssParameterSet
DsssParameterSet GetDsssParameterSet(void) const
Return the DSSS Parameter Set.
Definition: mgt-headers.cc:340
ns3::MgtAddBaRequestHeader::SetDelayedBlockAck
void SetDelayedBlockAck()
Enable delayed BlockAck.
Definition: mgt-headers.cc:1527
ns3::Ssid
The IEEE 802.11 SSID Information Element.
Definition: ssid.h:36
ns3::VhtOperation
The VHT Operation Information Element.
Definition: vht-operation.h:36
ns3::MgtAddBaResponseHeader::SetTid
void SetTid(uint8_t tid)
Set Traffic ID (TID).
Definition: mgt-headers.cc:1719
ns3::MgtAssocResponseHeader::m_heCapability
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:518
ns3::MgtProbeRequestHeader::SetVhtCapabilities
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:82
ns3::MgtAssocResponseHeader::GetHtOperation
HtOperation GetHtOperation(void) const
Return the HT operation.
Definition: mgt-headers.cc:980
ns3::MgtAssocRequestHeader::SetSsid
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:530
ns3::WifiActionHeader::PEER_LINK_CONFIRM
@ PEER_LINK_CONFIRM
Definition: mgt-headers.h:911
ns3::MgtProbeRequestHeader
Implement the header for management frames of type probe request.
Definition: mgt-headers.h:529
ns3::EdcaParameterSet
The EDCA Parameter Set.
Definition: edca-parameter-set.h:35
ns3::MgtAddBaRequestHeader::IsAmsduSupported
bool IsAmsduSupported(void) const
Return whether A-MSDU capability is supported.
Definition: mgt-headers.cc:1600
ns3::MgtAddBaResponseHeader::SetTimeout
void SetTimeout(uint16_t timeout)
Set timeout.
Definition: mgt-headers.cc:1726
ns3::MgtProbeRequestHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:143
mgt-headers.h
ns3::MgtReassocRequestHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:830
ns3::Buffer::Iterator::WriteHtolsbU64
void WriteHtolsbU64(uint64_t data)
Definition: buffer.cc:927
ns3::MgtProbeResponseHeader::m_erpInformation
ErpInformation m_erpInformation
ERP information.
Definition: mgt-headers.h:851
ns3::Buffer::Iterator::ReadLsbtohU64
uint64_t ReadLsbtohU64(void)
Definition: buffer.cc:1094
ns3::MgtProbeRequestHeader::m_ssid
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:619
ns3::MgtAssocResponseHeader::SetVhtOperation
void SetVhtOperation(VhtOperation vhtOperation)
Set the VHT operation.
Definition: mgt-headers.cc:998
ns3::MgtDelBaHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:1829
ns3::WifiInformationElement::DeserializeIfPresent
Buffer::Iterator DeserializeIfPresent(Buffer::Iterator i)
Deserialize entire IE if it is present.
Definition: wifi-information-element.cc:77
ns3::SupportedRates
The Supported Rates Information Element.
Definition: supported-rates.h:96
ns3::MgtProbeRequestHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:137
ns3::WifiActionHeader
See IEEE 802.11 chapter 7.3.1.11 Header format: | category: 1 | action value: 1 |.
Definition: mgt-headers.h:885
ns3::MgtProbeResponseHeader::SetHeCapabilities
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:292
ns3::WifiActionHeader::GetAction
ActionValue GetAction()
Return the action value.
Definition: mgt-headers.cc:1247
NS_FATAL_ERROR
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
Definition: fatal-error.h:165
ns3::ExtendedSupportedRatesIE::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: supported-rates.cc:272
ns3::MgtDelBaHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:1840
ns3::MgtAssocResponseHeader::m_htOperation
HtOperation m_htOperation
HT operation.
Definition: mgt-headers.h:513
ns3::MgtReassocRequestHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:759
visualizer.core.start
def start()
Definition: core.py:1855
ns3::MgtAssocRequestHeader::m_extendedCapability
ExtendedCapabilities m_extendedCapability
Extended capabilities.
Definition: mgt-headers.h:169
ns3::MgtProbeResponseHeader::m_beaconInterval
uint64_t m_beaconInterval
Beacon interval.
Definition: mgt-headers.h:840
ns3::MgtReassocRequestHeader::m_currentApAddr
Mac48Address m_currentApAddr
Address of the current access point.
Definition: mgt-headers.h:303
ns3::DsssParameterSet::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: dsss-parameter-set.cc:67
ns3::MgtAddBaResponseHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:1663
ns3::MgtAddBaResponseHeader::GetTid
uint8_t GetTid(void) const
Return the Traffic ID (TID).
Definition: mgt-headers.cc:1756
ns3::MgtAddBaRequestHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
Definition: mgt-headers.cc:1629
ns3::MgtAddBaResponseHeader::m_dialogToken
uint8_t m_dialogToken
Not used for now.
Definition: mgt-headers.h:1256
ns3::MgtAddBaResponseHeader::SetStatusCode
void SetStatusCode(StatusCode code)
Set the status code.
Definition: mgt-headers.cc:1738
ns3::MgtProbeResponseHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:399
ns3::MgtBeaconHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:503
ns3::MgtAssocRequestHeader::MgtAssocRequestHeader
MgtAssocRequestHeader()
Definition: mgt-headers.cc:520
ns3::DsssParameterSet::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: dsss-parameter-set.cc:57
ns3::WifiActionHeader::CategoryValue
CategoryValue
CategoryValue enumeration.
Definition: mgt-headers.h:897
ns3::MgtAddBaRequestHeader::m_amsduSupport
uint8_t m_amsduSupport
Flag if A-MSDU is supported.
Definition: mgt-headers.h:1136
ns3::MgtProbeResponseHeader::m_htOperation
HtOperation m_htOperation
HT operation.
Definition: mgt-headers.h:846
ns3::MgtProbeResponseHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:244
ns3::MgtAddBaResponseHeader::m_timeoutValue
uint16_t m_timeoutValue
Timeout.
Definition: mgt-headers.h:1262
ns3::MgtReassocRequestHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:801
ns3::MgtProbeResponseHeader::SetVhtCapabilities
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:268
ns3::WifiInformationElement::Serialize
virtual Buffer::Iterator Serialize(Buffer::Iterator i) const
Serialize entire IE including Element ID and length fields.
Definition: wifi-information-element.cc:47
ns3::MgtAddBaRequestHeader::m_tid
uint8_t m_tid
Traffic ID.
Definition: mgt-headers.h:1138
ns3::CapabilityInformation::GetSerializedSize
uint32_t GetSerializedSize(void) const
Return the serialized size of capability information.
Definition: capability-information.cc:120
ns3::MgtProbeResponseHeader::SetHtOperation
void SetHtOperation(HtOperation htOperation)
Set the HT operation.
Definition: mgt-headers.cc:256
ns3::MgtAddBaRequestHeader::GetStartingSequence
uint16_t GetStartingSequence(void) const
Return the starting sequence number.
Definition: mgt-headers.cc:1606
ns3::WifiActionHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:1443
ns3::MgtAssocResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:1082
ns3::MgtDelBaHeader::MgtDelBaHeader
MgtDelBaHeader()
Definition: mgt-headers.cc:1812
ns3::MgtReassocRequestHeader::GetSsid
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:795
ns3::MgtAssocRequestHeader::GetHeCapabilities
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:602
ns3::MgtProbeRequestHeader::SetHtCapabilities
void SetHtCapabilities(HtCapabilities htCapabilities)
Set the HT capabilities.
Definition: mgt-headers.cc:70
ns3::MgtAssocResponseHeader::SetEdcaParameterSet
void SetEdcaParameterSet(EdcaParameterSet edcaParameterSet)
Set the EDCA Parameter Set.
Definition: mgt-headers.cc:1058
ns3::MgtAssocResponseHeader::m_capability
CapabilityInformation m_capability
Capability information.
Definition: mgt-headers.h:508
ns3::MgtAssocResponseHeader::~MgtAssocResponseHeader
~MgtAssocResponseHeader()
Definition: mgt-headers.cc:909
ns3::MgtProbeResponseHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:438
ns3::MgtAssocResponseHeader::SetHeCapabilities
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:1010
ns3::MgtAssocRequestHeader::SetCapabilities
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:548
ns3::MgtAssocResponseHeader::GetMuEdcaParameterSet
MuEdcaParameterSet GetMuEdcaParameterSet(void) const
Return the MU EDCA Parameter Set.
Definition: mgt-headers.cc:1076
ns3::MgtProbeResponseHeader::m_htCapability
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:845
ns3::MgtProbeResponseHeader::m_muEdcaParameterSet
MuEdcaParameterSet m_muEdcaParameterSet
MU EDCA Parameter Set.
Definition: mgt-headers.h:853
ns3::HtCapabilities
The HT Capabilities Information Element.
Definition: ht-capabilities.h:42
ns3::WifiActionHeader::TBTT_ADJUSTMENT_RESPONSE
@ TBTT_ADJUSTMENT_RESPONSE
Definition: mgt-headers.h:937
ns3::MgtAssocResponseHeader::SetExtendedCapabilities
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:950
ns3::WifiActionHeader::MDAOP_SET_TEARDOWN
@ MDAOP_SET_TEARDOWN
Definition: mgt-headers.h:935
ns3::StatusCode::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
Definition: status-code.cc:54
ns3::MgtAddBaRequestHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:1506
ns3::MgtDelBaHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:1849
ns3::MgtProbeRequestHeader::GetSsid
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:46
ns3::WifiActionHeader::GROUP_KEY_ACK
@ GROUP_KEY_ACK
Definition: mgt-headers.h:914
ns3::MgtReassocRequestHeader::SetVhtCapabilities
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:771
ns3::MgtDelBaHeader::SetTid
void SetTid(uint8_t tid)
Set Traffic ID (TID).
Definition: mgt-headers.cc:1892
ns3::MgtAddBaResponseHeader::SetDelayedBlockAck
void SetDelayedBlockAck()
Enable delayed BlockAck.
Definition: mgt-headers.cc:1707
ns3::WifiActionHeader::CONGESTION_CONTROL_NOTIFICATION
@ CONGESTION_CONTROL_NOTIFICATION
Definition: mgt-headers.h:930
ns3::MgtAssocRequestHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Definition: mgt-headers.cc:670
ns3::WifiActionHeader::PEER_LINK_OPEN
@ PEER_LINK_OPEN
Definition: mgt-headers.h:910
ns3::MgtProbeResponseHeader::SetSsid
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:316
ns3::MgtAddBaRequestHeader::SetTid
void SetTid(uint8_t tid)
Set Traffic ID (TID).
Definition: mgt-headers.cc:1539
ns3::WifiActionHeader::ActionValue::blockAck
BlockAckActionValue blockAck
block ack
Definition: mgt-headers.h:960
ns3::MgtAddBaResponseHeader::MgtAddBaResponseHeader
MgtAddBaResponseHeader()
Definition: mgt-headers.cc:1644
ns3::MgtAddBaRequestHeader::IsImmediateBlockAck
bool IsImmediateBlockAck(void) const
Return whether the Block Ack policy is immediate Block Ack.
Definition: mgt-headers.cc:1582
ns3::MgtProbeRequestHeader::SetSsid
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:40
ns3::MgtDelBaHeader::m_reasonCode
uint16_t m_reasonCode
Not used for now.
Definition: mgt-headers.h:1332
ns3::MgtProbeRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:126
ns3::StatusCode::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator start)
Definition: status-code.cc:61
ns3::MgtReassocRequestHeader::m_ssid
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:304
ns3::WifiActionHeader::PROXY_UPDATE
@ PROXY_UPDATE
Definition: mgt-headers.h:920
ns3::WifiActionHeader::~WifiActionHeader
~WifiActionHeader()
Definition: mgt-headers.cc:1187
ns3::MgtAddBaRequestHeader::SetStartingSequence
void SetStartingSequence(uint16_t seq)
Set the starting sequence number.
Definition: mgt-headers.cc:1558
ns3::HeOperation
The HE Operation Information Element.
Definition: he-operation.h:36
ns3::MgtAddBaRequestHeader::m_bufferSize
uint16_t m_bufferSize
Buffer size.
Definition: mgt-headers.h:1139
ns3::WifiActionHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:1367
ns3::MgtAddBaResponseHeader::GetTimeout
uint16_t GetTimeout(void) const
Return the timeout.
Definition: mgt-headers.cc:1768
ns3::MgtAddBaResponseHeader::m_tid
uint8_t m_tid
Traffic ID.
Definition: mgt-headers.h:1260
ns3::MgtAddBaResponseHeader::IsAmsduSupported
bool IsAmsduSupported(void) const
Return whether A-MSDU capability is supported.
Definition: mgt-headers.cc:1780
ns3::MgtAssocResponseHeader::SetHeOperation
void SetHeOperation(HeOperation heOperation)
Set the HE operation.
Definition: mgt-headers.cc:1022
ns3::MgtAddBaRequestHeader::GetTid
uint8_t GetTid(void) const
Return the Traffic ID (TID).
Definition: mgt-headers.cc:1576
ns3::ErpInformation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: erp-information.cc:87
ns3::Header
Protocol header serialization and deserialization.
Definition: header.h:43
ns3::MgtAssocResponseHeader::m_vhtOperation
VhtOperation m_vhtOperation
VHT operation.
Definition: mgt-headers.h:515
ns3::MgtAssocResponseHeader::SetVhtCapabilities
void SetVhtCapabilities(VhtCapabilities vhtCapabilities)
Set the VHT capabilities.
Definition: mgt-headers.cc:986
ns3::HtOperation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: ht-operation.cc:313
ns3::MgtAssocRequestHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const override
Definition: mgt-headers.cc:643
ns3::MgtAssocResponseHeader::m_rates
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:507
ns3::WifiActionHeader::SELF_PROTECTED
@ SELF_PROTECTED
Definition: mgt-headers.h:901
ns3::MgtAddBaRequestHeader::SetTimeout
void SetTimeout(uint16_t timeout)
Set timeout.
Definition: mgt-headers.cc:1546
ns3::MgtAssocResponseHeader::GetCapabilities
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:944
ns3::ErpInformation::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: erp-information.cc:97
ns3::MgtProbeResponseHeader::m_ssid
Ssid m_ssid
Service set ID (SSID)
Definition: mgt-headers.h:839
ns3::WifiActionHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:1430
ns3::WifiActionHeader::TBTT_ADJUSTMENT_REQUEST
@ TBTT_ADJUSTMENT_REQUEST
Definition: mgt-headers.h:936
ns3::MgtBeaconHeader
Implement the header for management frames of type beacon.
Definition: mgt-headers.h:862
ns3::MgtAddBaRequestHeader::GetTimeout
uint16_t GetTimeout(void) const
Return the timeout.
Definition: mgt-headers.cc:1588
ns3::HtCapabilities::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: ht-capabilities.cc:264
ns3::MgtProbeRequestHeader::m_heCapability
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:624
ns3::MgtAssocResponseHeader::SetMuEdcaParameterSet
void SetMuEdcaParameterSet(MuEdcaParameterSet muEdcaParameterSet)
Set the MU EDCA Parameter Set.
Definition: mgt-headers.cc:1064
ns3::HeCapabilities::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: he-capabilities.cc:121
ns3::MgtAssocResponseHeader::m_code
StatusCode m_code
Status code.
Definition: mgt-headers.h:509
ns3::StatusCode
Status code for association response.
Definition: status-code.h:32
ns3::Buffer::Iterator::ReadLsbtohU16
uint16_t ReadLsbtohU16(void)
Definition: buffer.cc:1066
ns3::MgtProbeResponseHeader::GetHeCapabilities
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:298
ns3::CapabilityInformation
Capability information.
Definition: capability-information.h:34
ns3::MgtDelBaHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:1818
ns3::MgtAddBaResponseHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
Definition: mgt-headers.cc:1797
ns3::MgtAddBaResponseHeader
Implement the header for management frames of type Add Block Ack response.
Definition: mgt-headers.h:1150
ns3::MgtAssocRequestHeader
Implement the header for management frames of type association request.
Definition: mgt-headers.h:50
ns3::Header::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)=0
Deserialize the object from a buffer iterator.
ns3::MgtAddBaResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:1652
ns3::MgtAssocResponseHeader::SetAssociationId
void SetAssociationId(uint16_t aid)
Set the association ID.
Definition: mgt-headers.cc:1034
ns3::MuEdcaParameterSet::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const
This information element is a bit special in that it is only included if the STA is an HE STA.
Definition: mu-edca-parameter-set.cc:159
ns3::WifiActionHeader::MDA_SETUP_REPLY
@ MDA_SETUP_REPLY
Definition: mgt-headers.h:932
ns3::MgtReassocRequestHeader::SetListenInterval
void SetListenInterval(uint16_t interval)
Set the listen interval.
Definition: mgt-headers.cc:729
ns3::MgtAddBaRequestHeader::SetAmsduSupport
void SetAmsduSupport(bool supported)
Enable or disable A-MSDU support.
Definition: mgt-headers.cc:1570
ns3::WifiActionHeader::VENDOR_SPECIFIC_ACTION
@ VENDOR_SPECIFIC_ACTION
Definition: mgt-headers.h:904
ns3::MgtProbeResponseHeader::GetVhtOperation
VhtOperation GetVhtOperation(void) const
Return the VHT operation.
Definition: mgt-headers.cc:286
ns3::MgtAssocResponseHeader::SetErpInformation
void SetErpInformation(ErpInformation erpInformation)
Set the ERP information.
Definition: mgt-headers.cc:1046
ns3::Buffer::Iterator
iterator in a Buffer instance
Definition: buffer.h:99
ns3::MgtProbeResponseHeader::m_heOperation
HeOperation m_heOperation
HE operation.
Definition: mgt-headers.h:850
ns3::MgtAddBaRequestHeader::m_dialogToken
uint8_t m_dialogToken
Not used for now.
Definition: mgt-headers.h:1135
ns3::SupportedRates::extended
ExtendedSupportedRatesIE extended
extended supported rates info element
Definition: supported-rates.h:202
ns3::ExtendedCapabilities
The Extended Capabilities Information Element.
Definition: extended-capabilities.h:35
ns3::MgtDelBaHeader
Implement the header for management frames of type Delete Block Ack.
Definition: mgt-headers.h:1271
ns3::MgtProbeResponseHeader::SetBeaconIntervalUs
void SetBeaconIntervalUs(uint64_t us)
Set the beacon interval in microseconds unit.
Definition: mgt-headers.cc:322
ns3::MgtProbeResponseHeader::MgtProbeResponseHeader
MgtProbeResponseHeader()
Definition: mgt-headers.cc:187
ns3::MgtAssocRequestHeader::SetHeCapabilities
void SetHeCapabilities(HeCapabilities heCapabilities)
Set the HE capabilities.
Definition: mgt-headers.cc:596
timeout
ns3::Time timeout
Definition: openflow-switch.cc:52
ns3::MgtAssocRequestHeader::m_ssid
Ssid m_ssid
Service Set ID (SSID)
Definition: mgt-headers.h:166
ns3::MgtAddBaResponseHeader::GetStatusCode
StatusCode GetStatusCode(void) const
Return the status code.
Definition: mgt-headers.cc:1750
ns3::EdcaParameterSet::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: edca-parameter-set.cc:307
ns3::MgtProbeResponseHeader
Implement the header for management frames of type probe response.
Definition: mgt-headers.h:633
ns3::MgtAssocResponseHeader::m_erpInformation
ErpInformation m_erpInformation
ERP information.
Definition: mgt-headers.h:516
ns3::MgtProbeRequestHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:154
ns3::WifiActionHeader::MULTIHOP
@ MULTIHOP
Definition: mgt-headers.h:900
ns3::MgtAssocResponseHeader::m_aid
uint16_t m_aid
AID.
Definition: mgt-headers.h:510
ns3::MgtReassocRequestHeader::SetSsid
void SetSsid(Ssid ssid)
Set the Service Set Identifier (SSID).
Definition: mgt-headers.cc:717
ns3::WifiActionHeader::GetCategory
CategoryValue GetCategory()
Return the category value.
Definition: mgt-headers.cc:1226
ns3::MgtAssocResponseHeader::MgtAssocResponseHeader
MgtAssocResponseHeader()
Definition: mgt-headers.cc:904
ns3::WifiActionHeader::SetAction
void SetAction(CategoryValue type, ActionValue action)
Set action for this Action header.
Definition: mgt-headers.cc:1192
ns3::MgtAssocResponseHeader::m_heOperation
HeOperation m_heOperation
HE operation.
Definition: mgt-headers.h:519
ns3::MgtDelBaHeader::SetParameterSet
void SetParameterSet(uint16_t params)
Set the parameter set from the given raw value.
Definition: mgt-headers.cc:1908
ns3::MgtAddBaRequestHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:1484
ns3::MgtProbeResponseHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:250
ns3::MgtProbeRequestHeader::GetVhtCapabilities
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:88
ns3::MgtProbeResponseHeader::SetHeOperation
void SetHeOperation(HeOperation heOperation)
Set the HE operation.
Definition: mgt-headers.cc:304
ns3::EdcaParameterSet::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: edca-parameter-set.cc:317
ns3::WifiActionHeader::m_actionValue
uint8_t m_actionValue
Action value.
Definition: mgt-headers.h:1009
ns3::MgtProbeResponseHeader::m_edcaParameterSet
EdcaParameterSet m_edcaParameterSet
EDCA Parameter Set.
Definition: mgt-headers.h:852
ns3::MgtAssocRequestHeader::m_heCapability
HeCapabilities m_heCapability
HE capabilities.
Definition: mgt-headers.h:172
ns3::MgtReassocRequestHeader::MgtReassocRequestHeader
MgtReassocRequestHeader()
Definition: mgt-headers.cc:707
ns3::MgtAddBaRequestHeader::GetParameterSet
uint16_t GetParameterSet(void) const
Return the raw parameter set.
Definition: mgt-headers.cc:1618
ns3::MgtProbeRequestHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:106
ns3::WriteTo
void WriteTo(Buffer::Iterator &i, Ipv4Address ad)
Write an Ipv4Address to a Buffer.
Definition: address-utils.cc:28
third.ssid
ssid
Definition: third.py:100
ns3::MgtProbeResponseHeader::GetCapabilities
CapabilityInformation GetCapabilities(void) const
Return the Capability information.
Definition: mgt-headers.cc:226
ns3::MgtAssocResponseHeader::SetHtOperation
void SetHtOperation(HtOperation htOperation)
Set the HT operation.
Definition: mgt-headers.cc:974
ns3::MgtReassocRequestHeader::GetHeCapabilities
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities.
Definition: mgt-headers.cc:789
ns3::MgtAssocResponseHeader::GetEdcaParameterSet
EdcaParameterSet GetEdcaParameterSet(void) const
Return the EDCA Parameter Set.
Definition: mgt-headers.cc:1070
ns3::MgtAssocResponseHeader::m_vhtCapability
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:514
ns3::MgtAssocRequestHeader::GetSsid
Ssid GetSsid(void) const
Return the Service Set Identifier (SSID).
Definition: mgt-headers.cc:608
ns3::MgtAddBaRequestHeader::GetBufferSize
uint16_t GetBufferSize(void) const
Return the buffer size.
Definition: mgt-headers.cc:1594
ns3::MgtProbeResponseHeader::GetExtendedCapabilities
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:238
ns3::MgtAddBaRequestHeader::m_policy
uint8_t m_policy
Block Ack policy.
Definition: mgt-headers.h:1137
ns3::MgtReassocRequestHeader::SetCapabilities
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:735
ns3::MgtAssocResponseHeader::SetCapabilities
void SetCapabilities(CapabilityInformation capabilities)
Set the Capability information.
Definition: mgt-headers.cc:938
ns3::CapabilityInformation::Deserialize
Buffer::Iterator Deserialize(Buffer::Iterator start)
Deserialize capability information from the given buffer.
Definition: capability-information.cc:133
ns3::WifiActionHeader::PROXY_UPDATE_CONFIRMATION
@ PROXY_UPDATE_CONFIRMATION
Definition: mgt-headers.h:921
ns3::MgtAssocResponseHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:932
ns3::MgtAddBaRequestHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:1490
ns3::MgtReassocRequestHeader::~MgtReassocRequestHeader
~MgtReassocRequestHeader()
Definition: mgt-headers.cc:712
ns3::VhtOperation::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: vht-operation.cc:127
ns3::MgtReassocRequestHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:853
ns3::MgtAssocRequestHeader::GetInstanceTypeId
TypeId GetInstanceTypeId(void) const override
Get the most derived TypeId for this Object.
Definition: mgt-headers.cc:637
ns3::MgtProbeResponseHeader::GetHtOperation
HtOperation GetHtOperation(void) const
Return the HT operation.
Definition: mgt-headers.cc:262
ns3::WifiActionHeader::GetSerializedSize
uint32_t GetSerializedSize() const
Definition: mgt-headers.cc:1437
ns3::HtOperation
The HT Operation Information Element.
Definition: ht-operation.h:51
ns3::MgtProbeResponseHeader::m_vhtCapability
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:847
ns3::MgtProbeRequestHeader::m_vhtCapability
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:623
ns3::WifiActionHeader::BLOCK_ACK_DELBA
@ BLOCK_ACK_DELBA
Definition: mgt-headers.h:948
ns3::MgtAddBaRequestHeader::SetStartingSequenceControl
void SetStartingSequenceControl(uint16_t seqControl)
Set sequence control with the given raw value.
Definition: mgt-headers.cc:1564
ns3::MgtAssocRequestHeader::~MgtAssocRequestHeader
~MgtAssocRequestHeader()
Definition: mgt-headers.cc:525
ns3::ErpInformation
The ErpInformation Information Element.
Definition: erp-information.h:35
ns3::MgtProbeRequestHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:52
ns3::MgtProbeResponseHeader::GetVhtCapabilities
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:274
ns3::MgtProbeRequestHeader::SetExtendedCapabilities
void SetExtendedCapabilities(ExtendedCapabilities extendedCapabilities)
Set the extended capabilities.
Definition: mgt-headers.cc:58
ns3::MgtAssocRequestHeader::Print
void Print(std::ostream &os) const override
Definition: mgt-headers.cc:659
ns3::MgtAssocResponseHeader::GetVhtCapabilities
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:992
ns3::MgtReassocRequestHeader::m_vhtCapability
VhtCapabilities m_vhtCapability
VHT capabilities.
Definition: mgt-headers.h:309
ns3::MgtReassocRequestHeader::GetListenInterval
uint16_t GetListenInterval(void) const
Return the listen interval.
Definition: mgt-headers.cc:807
ns3::MgtProbeResponseHeader::SetEdcaParameterSet
void SetEdcaParameterSet(EdcaParameterSet edcaParameterSet)
Set the EDCA Parameter Set.
Definition: mgt-headers.cc:358
ns3::MgtAddBaRequestHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:1473
ns3::WifiActionHeader::PORTAL_ANNOUNCEMENT
@ PORTAL_ANNOUNCEMENT
Definition: mgt-headers.h:929
ns3::VhtOperation::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: vht-operation.cc:117
ns3::MgtProbeResponseHeader::m_rates
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:841
ns3::MgtProbeRequestHeader::GetExtendedCapabilities
ExtendedCapabilities GetExtendedCapabilities(void) const
Return the extended capabilities.
Definition: mgt-headers.cc:64
ns3::MgtAssocResponseHeader::GetAssociationId
uint16_t GetAssociationId(void) const
Return the association ID.
Definition: mgt-headers.cc:1040
ns3::MgtProbeRequestHeader::~MgtProbeRequestHeader
~MgtProbeRequestHeader()
Definition: mgt-headers.cc:35
ns3::MgtAddBaResponseHeader::m_code
StatusCode m_code
Status code.
Definition: mgt-headers.h:1257
ns3::MgtProbeResponseHeader::GetSupportedRates
SupportedRates GetSupportedRates(void) const
Return the supported rates.
Definition: mgt-headers.cc:214
ns3::MgtAddBaResponseHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:1669
ns3::MgtAssocRequestHeader::m_htCapability
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:170
ns3::MgtAddBaResponseHeader::Serialize
void Serialize(Buffer::Iterator start) const
Definition: mgt-headers.cc:1686
ns3::VhtCapabilities::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: vht-capabilities.cc:90
ns3::VhtCapabilities::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: vht-capabilities.cc:80
ns3::MgtReassocRequestHeader::GetVhtCapabilities
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:777
ns3::MgtAddBaRequestHeader::m_timeoutValue
uint16_t m_timeoutValue
Timeout.
Definition: mgt-headers.h:1140
ns3::MgtProbeResponseHeader::SetMuEdcaParameterSet
void SetMuEdcaParameterSet(MuEdcaParameterSet muEdcaParameterSet)
Set the MU EDCA Parameter Set.
Definition: mgt-headers.cc:364
ns3::MgtAddBaResponseHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:1675
ns3::MgtAssocResponseHeader::m_htCapability
HtCapabilities m_htCapability
HT capabilities.
Definition: mgt-headers.h:512
ns3::MgtProbeResponseHeader::m_extendedCapability
ExtendedCapabilities m_extendedCapability
extended capabilities
Definition: mgt-headers.h:844
ns3::MuEdcaParameterSet::GetSerializedSize
uint16_t GetSerializedSize() const
Return the serialized size of this EDCA Parameter Set.
Definition: mu-edca-parameter-set.cc:169
ns3::WifiActionHeader::BLOCK_ACK_ADDBA_RESPONSE
@ BLOCK_ACK_ADDBA_RESPONSE
Definition: mgt-headers.h:947
ns3::WifiActionHeader::WifiActionHeader
WifiActionHeader()
Definition: mgt-headers.cc:1183
ns3::MgtReassocRequestHeader::SetCurrentApAddress
void SetCurrentApAddress(Mac48Address currentApAddr)
Set the address of the current access point.
Definition: mgt-headers.cc:813
ns3::MgtAddBaResponseHeader::m_policy
uint8_t m_policy
Block ACK policy.
Definition: mgt-headers.h:1259
ns3::WifiActionHeader::GROUP_KEY_INFORM
@ GROUP_KEY_INFORM
Definition: mgt-headers.h:913
ns3::ExtendedSupportedRatesIE::Serialize
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
Definition: supported-rates.cc:258
ns3::MgtAssocResponseHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:1099
ns3::MgtReassocRequestHeader
Implement the header for management frames of type reassociation request.
Definition: mgt-headers.h:182
ns3::MgtProbeResponseHeader::m_dsssParameterSet
DsssParameterSet m_dsssParameterSet
DSSS Parameter Set.
Definition: mgt-headers.h:843
ns3::MgtAddBaResponseHeader::SetBufferSize
void SetBufferSize(uint16_t size)
Set buffer size.
Definition: mgt-headers.cc:1732
ns3::MgtAssocResponseHeader::SetStatusCode
void SetStatusCode(StatusCode code)
Set the status code.
Definition: mgt-headers.cc:926
ns3::HeCapabilities::GetSerializedSize
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
Definition: he-capabilities.cc:131
ns3::MgtProbeResponseHeader::SetSupportedRates
void SetSupportedRates(SupportedRates rates)
Set the supported rates.
Definition: mgt-headers.cc:328
ns3::MgtProbeRequestHeader::GetSerializedSize
uint32_t GetSerializedSize(void) const
Definition: mgt-headers.cc:112
ns3::MgtAssocRequestHeader::m_rates
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:167
ns3::WifiActionHeader::BLOCK_ACK
@ BLOCK_ACK
Definition: mgt-headers.h:898
ns3::MgtProbeResponseHeader::GetTypeId
static TypeId GetTypeId(void)
Register this type.
Definition: mgt-headers.cc:382
ns3::MgtAssocResponseHeader
Implement the header for management frames of type association and reassociation response.
Definition: mgt-headers.h:320
ns3::MgtDelBaHeader::IsByOriginator
bool IsByOriginator(void) const
Check if the initiator bit in the DELBA is set.
Definition: mgt-headers.cc:1866
ns3::MgtProbeResponseHeader::Print
void Print(std::ostream &os) const
Definition: mgt-headers.cc:423
ns3::WifiActionHeader::PEER_LINK_CLOSE
@ PEER_LINK_CLOSE
Definition: mgt-headers.h:912
ns3::MgtAddBaResponseHeader::m_bufferSize
uint16_t m_bufferSize
Buffer size.
Definition: mgt-headers.h:1261
ns3::MuEdcaParameterSet
The MU EDCA Parameter Set.
Definition: mu-edca-parameter-set.h:37
ns3::MgtProbeRequestHeader::m_rates
SupportedRates m_rates
List of supported rates.
Definition: mgt-headers.h:620
ns3::MgtAddBaResponseHeader::SetImmediateBlockAck
void SetImmediateBlockAck()
Enable immediate BlockAck.
Definition: mgt-headers.cc:1713
ns3::MgtAssocRequestHeader::GetVhtCapabilities
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities.
Definition: mgt-headers.cc:590
ns3::MgtReassocRequestHeader::GetHtCapabilities
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities.
Definition: mgt-headers.cc:765
ns3::ReadFrom
void ReadFrom(Buffer::Iterator &i, Ipv4Address &ad)
Read an Ipv4Address from a Buffer.
Definition: address-utils.cc:70
ns3::MgtAddBaResponseHeader::SetAmsduSupport
void SetAmsduSupport(bool supported)
Enable or disable A-MSDU support.
Definition: mgt-headers.cc:1744