A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
dsr-option-header.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2011 Yufei Cheng
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation;
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program; if not, write to the Free Software
15
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
*
17
* Author: Yufei Cheng <yfcheng@ittc.ku.edu>
18
*
19
* James P.G. Sterbenz <jpgs@ittc.ku.edu>, director
20
* ResiliNets Research Group https://resilinets.org/
21
* Information and Telecommunication Technology Center (ITTC)
22
* and Department of Electrical Engineering and Computer Science
23
* The University of Kansas Lawrence, KS USA.
24
*
25
* Work supported in part by NSF FIND (Future Internet Design) Program
26
* under grant CNS-0626918 (Postmodern Internet Architecture),
27
* NSF grant CNS-1050226 (Multilayer Network Resilience Analysis and Experimentation on GENI),
28
* US Department of Defense (DoD), and ITTC at The University of Kansas.
29
*/
30
31
#ifndef DSR_OPTION_HEADER_H
32
#define DSR_OPTION_HEADER_H
33
34
#include "ns3/header.h"
35
#include "ns3/ipv4-address.h"
36
#include "ns3/simulator.h"
37
38
#include <algorithm>
39
#include <ostream>
40
41
namespace
ns3
42
{
43
44
class
Time
;
45
46
namespace
dsr
47
{
52
class
DsrOptionHeader
:
public
Header
53
{
54
public
:
59
struct
Alignment
60
{
61
uint8_t
factor
;
62
uint8_t
offset
;
63
};
64
69
static
TypeId
GetTypeId
();
74
TypeId
GetInstanceTypeId
()
const override
;
78
DsrOptionHeader
();
82
~DsrOptionHeader
()
override
;
87
void
SetType
(uint8_t
type
);
92
uint8_t
GetType
()
const
;
97
void
SetLength
(uint8_t length);
102
uint8_t
GetLength
()
const
;
107
void
Print
(std::ostream& os)
const override
;
112
uint32_t
GetSerializedSize
()
const override
;
117
void
Serialize
(
Buffer::Iterator
start
)
const override
;
123
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
131
virtual
Alignment
GetAlignment
()
const
;
132
133
private
:
137
uint8_t
m_type
;
141
uint8_t
m_length
;
145
Buffer
m_data
;
146
};
147
152
class
DsrOptionPad1Header
:
public
DsrOptionHeader
153
{
154
public
:
159
static
TypeId
GetTypeId
();
164
TypeId
GetInstanceTypeId
()
const override
;
168
DsrOptionPad1Header
();
172
~DsrOptionPad1Header
()
override
;
177
void
Print
(std::ostream& os)
const override
;
182
uint32_t
GetSerializedSize
()
const override
;
187
void
Serialize
(
Buffer::Iterator
start
)
const override
;
193
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
194
};
195
200
class
DsrOptionPadnHeader
:
public
DsrOptionHeader
201
{
202
public
:
207
static
TypeId
GetTypeId
();
212
TypeId
GetInstanceTypeId
()
const override
;
217
DsrOptionPadnHeader
(uint32_t pad = 2);
221
~DsrOptionPadnHeader
()
override
;
226
void
Print
(std::ostream& os)
const override
;
231
uint32_t
GetSerializedSize
()
const override
;
236
void
Serialize
(
Buffer::Iterator
start
)
const override
;
242
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
243
};
244
272
class
DsrOptionRreqHeader
:
public
DsrOptionHeader
273
{
274
public
:
279
static
TypeId
GetTypeId
();
284
TypeId
GetInstanceTypeId
()
const override
;
288
DsrOptionRreqHeader
();
292
~DsrOptionRreqHeader
()
override
;
297
void
SetNumberAddress
(uint8_t n);
302
Ipv4Address
GetTarget
();
307
void
SetTarget
(
Ipv4Address
target);
312
void
SetNodesAddress
(std::vector<Ipv4Address> ipv4Address);
317
std::vector<Ipv4Address>
GetNodesAddresses
()
const
;
322
uint32_t
GetNodesNumber
()
const
;
327
void
AddNodeAddress
(
Ipv4Address
ipv4
);
333
void
SetNodeAddress
(uint8_t index,
Ipv4Address
addr);
339
Ipv4Address
GetNodeAddress
(uint8_t index)
const
;
344
void
SetId
(uint16_t identification);
349
uint16_t
GetId
()
const
;
354
void
Print
(std::ostream& os)
const override
;
359
uint32_t
GetSerializedSize
()
const override
;
364
void
Serialize
(
Buffer::Iterator
start
)
const override
;
370
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
375
Alignment
GetAlignment
()
const override
;
376
377
private
:
381
uint16_t
m_identification
;
385
Ipv4Address
m_target
;
389
Ipv4Address
m_address
;
393
typedef
std::vector<Ipv4Address>
VectorIpv4Address_t
;
397
VectorIpv4Address_t
m_ipv4Address
;
398
};
399
425
// The Route Reply header modified for ns-3 implementation
446
class
DsrOptionRrepHeader
:
public
DsrOptionHeader
447
{
448
public
:
453
static
TypeId
GetTypeId
();
458
TypeId
GetInstanceTypeId
()
const override
;
462
DsrOptionRrepHeader
();
466
~DsrOptionRrepHeader
()
override
;
471
void
SetNumberAddress
(uint8_t n);
476
void
SetNodesAddress
(std::vector<Ipv4Address> ipv4Address);
481
std::vector<Ipv4Address>
GetNodesAddress
()
const
;
487
Ipv4Address
GetTargetAddress
(std::vector<Ipv4Address> ipv4Address)
const
;
493
void
SetNodeAddress
(uint8_t index,
Ipv4Address
addr);
499
Ipv4Address
GetNodeAddress
(uint8_t index)
const
;
504
void
Print
(std::ostream& os)
const override
;
509
uint32_t
GetSerializedSize
()
const override
;
514
void
Serialize
(
Buffer::Iterator
start
)
const override
;
520
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
525
Alignment
GetAlignment
()
const override
;
526
527
private
:
531
Ipv4Address
m_address
;
535
typedef
std::vector<Ipv4Address>
VectorIpv4Address_t
;
539
VectorIpv4Address_t
m_ipv4Address
;
540
};
541
567
class
DsrOptionSRHeader
:
public
DsrOptionHeader
568
{
569
public
:
574
static
TypeId
GetTypeId
();
579
TypeId
GetInstanceTypeId
()
const override
;
583
DsrOptionSRHeader
();
587
~DsrOptionSRHeader
()
override
;
592
void
SetSegmentsLeft
(uint8_t segmentsLeft);
597
uint8_t
GetSegmentsLeft
()
const
;
602
void
SetNumberAddress
(uint8_t n);
607
void
SetNodesAddress
(std::vector<Ipv4Address> ipv4Address);
612
std::vector<Ipv4Address>
GetNodesAddress
()
const
;
617
uint8_t
GetNodeListSize
()
const
;
623
void
SetNodeAddress
(uint8_t index,
Ipv4Address
addr);
629
Ipv4Address
GetNodeAddress
(uint8_t index)
const
;
634
void
SetSalvage
(uint8_t salvage);
639
uint8_t
GetSalvage
()
const
;
644
void
Print
(std::ostream& os)
const override
;
649
uint32_t
GetSerializedSize
()
const override
;
654
void
Serialize
(
Buffer::Iterator
start
)
const override
;
660
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
665
Alignment
GetAlignment
()
const override
;
666
672
typedef
void (*
TracedCallback
)(
const
DsrOptionSRHeader
& header);
673
674
private
:
678
Ipv4Address
m_address
;
682
uint8_t
m_segmentsLeft
;
686
uint8_t
m_salvage
;
690
typedef
std::vector<Ipv4Address>
VectorIpv4Address_t
;
694
VectorIpv4Address_t
m_ipv4Address
;
695
};
696
723
enum
ErrorType
724
{
725
NODE_UNREACHABLE
= 1,
// !< NODE_UNREACHABLE
726
FLOW_STATE_NOT_SUPPORTED
= 2,
// !< FLOW_STATE_NOT_SUPPORTED
727
OPTION_NOT_SUPPORTED
= 3,
// !< OPTION_NOT_SUPPORTED
728
};
729
730
class
DsrOptionRerrHeader
:
public
DsrOptionHeader
731
{
732
public
:
737
static
TypeId
GetTypeId
();
742
TypeId
GetInstanceTypeId
()
const override
;
746
DsrOptionRerrHeader
();
750
~DsrOptionRerrHeader
()
override
;
755
void
SetErrorType
(uint8_t errorType);
760
uint8_t
GetErrorType
()
const
;
765
virtual
void
SetErrorSrc
(
Ipv4Address
errorSrcAddress);
770
virtual
Ipv4Address
GetErrorSrc
()
const
;
775
virtual
void
SetSalvage
(uint8_t salvage);
780
virtual
uint8_t
GetSalvage
()
const
;
785
virtual
void
SetErrorDst
(
Ipv4Address
errorDstAddress);
790
virtual
Ipv4Address
GetErrorDst
()
const
;
795
void
Print
(std::ostream& os)
const override
;
800
uint32_t
GetSerializedSize
()
const override
;
805
void
Serialize
(
Buffer::Iterator
start
)
const override
;
811
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
816
Alignment
GetAlignment
()
const override
;
817
818
private
:
822
uint8_t
m_errorType
;
826
uint8_t
m_salvage
;
830
uint16_t
m_errorLength
;
834
Ipv4Address
m_errorSrcAddress
;
838
Ipv4Address
m_errorDstAddress
;
842
Buffer
m_errorData
;
843
};
844
864
/*
865
* \brief The type-specific info field
866
* \verbatim
867
| 0 | 1 | 2 | 3 |
868
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
869
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
870
| Unreachable Node Address |
871
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
872
\endverbatim
873
*/
874
875
class
DsrOptionRerrUnreachHeader
:
public
DsrOptionRerrHeader
876
{
877
public
:
882
static
TypeId
GetTypeId
();
887
TypeId
GetInstanceTypeId
()
const override
;
891
DsrOptionRerrUnreachHeader
();
895
~DsrOptionRerrUnreachHeader
()
override
;
900
void
SetErrorSrc
(
Ipv4Address
errorSrcAddress)
override
;
905
Ipv4Address
GetErrorSrc
()
const override
;
910
void
SetSalvage
(uint8_t salvage)
override
;
915
uint8_t
GetSalvage
()
const override
;
920
void
SetErrorDst
(
Ipv4Address
errorDstAddress)
override
;
925
Ipv4Address
GetErrorDst
()
const override
;
930
void
SetUnreachNode
(
Ipv4Address
unreachNode);
935
Ipv4Address
GetUnreachNode
()
const
;
940
void
SetOriginalDst
(
Ipv4Address
originalDst);
945
Ipv4Address
GetOriginalDst
()
const
;
950
void
Print
(std::ostream& os)
const override
;
955
uint32_t
GetSerializedSize
()
const override
;
960
void
Serialize
(
Buffer::Iterator
start
)
const override
;
966
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
971
Alignment
GetAlignment
()
const override
;
972
973
private
:
977
uint8_t
m_errorType
;
981
uint8_t
m_salvage
;
985
Ipv4Address
m_errorSrcAddress
;
989
Ipv4Address
m_errorDstAddress
;
993
Ipv4Address
m_unreachNode
;
997
Ipv4Address
m_originalDst
;
998
};
999
1019
/*
1020
* \brief The type-specific info field
1021
* \unsupported option
1022
* \verbatim
1023
| 0 |
1024
0 1 2 3 4 5 6 7
1025
+-+-+-+-+-+-+-+-+
1026
|Unsupported Opt|
1027
+-+-+-+-+-+-+-+-+
1028
\endverbatim
1029
*/
1030
1031
class
DsrOptionRerrUnsupportedHeader
:
public
DsrOptionRerrHeader
1032
{
1033
public
:
1038
static
TypeId
GetTypeId
();
1043
TypeId
GetInstanceTypeId
()
const override
;
1047
DsrOptionRerrUnsupportedHeader
();
1051
~DsrOptionRerrUnsupportedHeader
()
override
;
1056
void
SetErrorSrc
(
Ipv4Address
errorSrcAddress)
override
;
1061
Ipv4Address
GetErrorSrc
()
const override
;
1066
void
SetSalvage
(uint8_t salvage)
override
;
1071
uint8_t
GetSalvage
()
const override
;
1076
void
SetErrorDst
(
Ipv4Address
errorDstAddress)
override
;
1081
Ipv4Address
GetErrorDst
()
const override
;
1086
void
SetUnsupported
(uint16_t optionType);
1091
uint16_t
GetUnsupported
()
const
;
1096
void
Print
(std::ostream& os)
const override
;
1101
uint32_t
GetSerializedSize
()
const override
;
1106
void
Serialize
(
Buffer::Iterator
start
)
const override
;
1112
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
1117
Alignment
GetAlignment
()
const override
;
1118
1119
private
:
1123
uint8_t
m_errorType
;
1127
uint8_t
m_salvage
;
1131
Ipv4Address
m_errorSrcAddress
;
1135
Ipv4Address
m_errorDstAddress
;
1139
uint16_t
m_unsupported
;
1140
};
1141
1159
class
DsrOptionAckReqHeader
:
public
DsrOptionHeader
1160
{
1161
public
:
1166
static
TypeId
GetTypeId
();
1171
TypeId
GetInstanceTypeId
()
const override
;
1175
DsrOptionAckReqHeader
();
1179
~DsrOptionAckReqHeader
()
override
;
1184
void
SetAckId
(uint16_t identification);
1189
uint16_t
GetAckId
()
const
;
1194
void
Print
(std::ostream& os)
const override
;
1199
uint32_t
GetSerializedSize
()
const override
;
1204
void
Serialize
(
Buffer::Iterator
start
)
const override
;
1210
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
1215
Alignment
GetAlignment
()
const override
;
1216
1217
private
:
1221
uint16_t
m_identification
;
1222
};
1223
1245
class
DsrOptionAckHeader
:
public
DsrOptionHeader
1246
{
1247
public
:
1252
static
TypeId
GetTypeId
();
1257
TypeId
GetInstanceTypeId
()
const override
;
1261
DsrOptionAckHeader
();
1265
~DsrOptionAckHeader
()
override
;
1270
void
SetAckId
(uint16_t identification);
1275
uint16_t
GetAckId
()
const
;
1280
void
SetRealSrc
(
Ipv4Address
realSrcAddress);
1285
Ipv4Address
GetRealSrc
()
const
;
1290
void
SetRealDst
(
Ipv4Address
realDstAddress);
1295
Ipv4Address
GetRealDst
()
const
;
1300
void
Print
(std::ostream& os)
const override
;
1305
uint32_t
GetSerializedSize
()
const override
;
1310
void
Serialize
(
Buffer::Iterator
start
)
const override
;
1316
uint32_t
Deserialize
(
Buffer::Iterator
start
)
override
;
1321
Alignment
GetAlignment
()
const override
;
1322
1323
private
:
1327
uint16_t
m_identification
;
1331
Ipv4Address
m_realSrcAddress
;
1335
Ipv4Address
m_realDstAddress
;
1336
};
1337
1338
[[maybe_unused]]
static
inline
std::ostream&
1339
operator<<
(std::ostream& os,
const
DsrOptionSRHeader
& sr)
1340
{
1341
sr.
Print
(os);
1342
return
os;
1343
}
1344
1345
}
// namespace dsr
1346
}
// namespace ns3
1347
1348
#endif
/* DSR_OPTION_HEADER_H */
ns3::Buffer::Iterator
iterator in a Buffer instance
Definition:
buffer.h:100
ns3::Buffer
automatically resized byte buffer
Definition:
buffer.h:94
ns3::Header
Protocol header serialization and deserialization.
Definition:
header.h:44
ns3::Header::Deserialize
virtual uint32_t Deserialize(Buffer::Iterator start)=0
Deserialize the object from a buffer iterator.
ns3::Ipv4Address
Ipv4 addresses are stored in host order in this class.
Definition:
ipv4-address.h:42
ns3::TracedCallback
Forward calls to a chain of Callback.
Definition:
traced-callback.h:54
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
ns3::dsr::DsrOptionAckHeader
Acknowledgement (ACK) Message Format.
Definition:
dsr-option-header.h:1246
ns3::dsr::DsrOptionAckHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:1230
ns3::dsr::DsrOptionAckHeader::SetAckId
void SetAckId(uint16_t identification)
Set the Ack id number.
Definition:
dsr-option-header.cc:1247
ns3::dsr::DsrOptionAckHeader::GetAckId
uint16_t GetAckId() const
Set the Ack id number.
Definition:
dsr-option-header.cc:1253
ns3::dsr::DsrOptionAckHeader::m_identification
uint16_t m_identification
identification field
Definition:
dsr-option-header.h:1327
ns3::dsr::DsrOptionAckHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:1220
ns3::dsr::DsrOptionAckHeader::SetRealSrc
void SetRealSrc(Ipv4Address realSrcAddress)
Set Error source ip address.
Definition:
dsr-option-header.cc:1259
ns3::dsr::DsrOptionAckHeader::SetRealDst
void SetRealDst(Ipv4Address realDstAddress)
Set Error source ip address.
Definition:
dsr-option-header.cc:1271
ns3::dsr::DsrOptionAckHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:1297
ns3::dsr::DsrOptionAckHeader::m_realDstAddress
Ipv4Address m_realDstAddress
ack destination address
Definition:
dsr-option-header.h:1335
ns3::dsr::DsrOptionAckHeader::GetRealDst
Ipv4Address GetRealDst() const
Get Error source ip address.
Definition:
dsr-option-header.cc:1277
ns3::dsr::DsrOptionAckHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:1323
ns3::dsr::DsrOptionAckHeader::DsrOptionAckHeader
DsrOptionAckHeader()
Constructor.
Definition:
dsr-option-header.cc:1235
ns3::dsr::DsrOptionAckHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:1291
ns3::dsr::DsrOptionAckHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:1283
ns3::dsr::DsrOptionAckHeader::m_realSrcAddress
Ipv4Address m_realSrcAddress
ack source address
Definition:
dsr-option-header.h:1331
ns3::dsr::DsrOptionAckHeader::GetRealSrc
Ipv4Address GetRealSrc() const
Get Error source ip address.
Definition:
dsr-option-header.cc:1265
ns3::dsr::DsrOptionAckHeader::~DsrOptionAckHeader
~DsrOptionAckHeader() override
Destructor.
Definition:
dsr-option-header.cc:1242
ns3::dsr::DsrOptionAckReqHeader
Acknowledgement Request (ACK_RREQ) Message Format.
Definition:
dsr-option-header.h:1160
ns3::dsr::DsrOptionAckReqHeader::~DsrOptionAckReqHeader
~DsrOptionAckReqHeader() override
Destructor.
Definition:
dsr-option-header.cc:1159
ns3::dsr::DsrOptionAckReqHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:1189
ns3::dsr::DsrOptionAckReqHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:1176
ns3::dsr::DsrOptionAckReqHeader::DsrOptionAckReqHeader
DsrOptionAckReqHeader()
Constructor.
Definition:
dsr-option-header.cc:1151
ns3::dsr::DsrOptionAckReqHeader::SetAckId
void SetAckId(uint16_t identification)
Set the Ack request id number.
Definition:
dsr-option-header.cc:1164
ns3::dsr::DsrOptionAckReqHeader::m_identification
uint16_t m_identification
The identification field.
Definition:
dsr-option-header.h:1221
ns3::dsr::DsrOptionAckReqHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:1183
ns3::dsr::DsrOptionAckReqHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:1211
ns3::dsr::DsrOptionAckReqHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:1146
ns3::dsr::DsrOptionAckReqHeader::GetAckId
uint16_t GetAckId() const
Set the Ack request id number.
Definition:
dsr-option-header.cc:1170
ns3::dsr::DsrOptionAckReqHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:1136
ns3::dsr::DsrOptionHeader
Header for Dsr Options.
Definition:
dsr-option-header.h:53
ns3::dsr::DsrOptionHeader::GetAlignment
virtual Alignment GetAlignment() const
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:142
ns3::dsr::DsrOptionHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:52
ns3::dsr::DsrOptionHeader::m_data
Buffer m_data
The anonymous data of this option.
Definition:
dsr-option-header.h:145
ns3::dsr::DsrOptionHeader::GetType
uint8_t GetType() const
Get the type of the option.
Definition:
dsr-option-header.cc:84
ns3::dsr::DsrOptionHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:114
ns3::dsr::DsrOptionHeader::~DsrOptionHeader
~DsrOptionHeader() override
Destructor.
Definition:
dsr-option-header.cc:73
ns3::dsr::DsrOptionHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:62
ns3::dsr::DsrOptionHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:102
ns3::dsr::DsrOptionHeader::SetType
void SetType(uint8_t type)
Set the type of the option.
Definition:
dsr-option-header.cc:78
ns3::dsr::DsrOptionHeader::m_length
uint8_t m_length
The option length.
Definition:
dsr-option-header.h:141
ns3::dsr::DsrOptionHeader::m_type
uint8_t m_type
The type of the option.
Definition:
dsr-option-header.h:137
ns3::dsr::DsrOptionHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:108
ns3::dsr::DsrOptionHeader::DsrOptionHeader
DsrOptionHeader()
Constructor.
Definition:
dsr-option-header.cc:67
ns3::dsr::DsrOptionHeader::SetLength
void SetLength(uint8_t length)
Set the option length.
Definition:
dsr-option-header.cc:90
ns3::dsr::DsrOptionHeader::GetLength
uint8_t GetLength() const
Get the option length.
Definition:
dsr-option-header.cc:96
ns3::dsr::DsrOptionPad1Header
Header of Dsr Option Pad1.
Definition:
dsr-option-header.h:153
ns3::dsr::DsrOptionPad1Header::~DsrOptionPad1Header
~DsrOptionPad1Header() override
Destructor.
Definition:
dsr-option-header.cc:171
ns3::dsr::DsrOptionPad1Header::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:188
ns3::dsr::DsrOptionPad1Header::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:176
ns3::dsr::DsrOptionPad1Header::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:182
ns3::dsr::DsrOptionPad1Header::DsrOptionPad1Header
DsrOptionPad1Header()
Constructor.
Definition:
dsr-option-header.cc:166
ns3::dsr::DsrOptionPad1Header::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:161
ns3::dsr::DsrOptionPad1Header::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:151
ns3::dsr::DsrOptionPadnHeader
Header of Dsr Option Padn.
Definition:
dsr-option-header.h:201
ns3::dsr::DsrOptionPadnHeader::DsrOptionPadnHeader
DsrOptionPadnHeader(uint32_t pad=2)
Constructor.
Definition:
dsr-option-header.cc:223
ns3::dsr::DsrOptionPadnHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:241
ns3::dsr::DsrOptionPadnHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:218
ns3::dsr::DsrOptionPadnHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:235
ns3::dsr::DsrOptionPadnHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:208
ns3::dsr::DsrOptionPadnHeader::~DsrOptionPadnHeader
~DsrOptionPadnHeader() override
Destructor.
Definition:
dsr-option-header.cc:230
ns3::dsr::DsrOptionPadnHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:247
ns3::dsr::DsrOptionRerrHeader
Header of Dsr Option Route Error.
Definition:
dsr-option-header.h:731
ns3::dsr::DsrOptionRerrHeader::GetErrorType
uint8_t GetErrorType() const
Get the route error type.
Definition:
dsr-option-header.cc:761
ns3::dsr::DsrOptionRerrHeader::m_errorData
Buffer m_errorData
The anonymous data of this option.
Definition:
dsr-option-header.h:842
ns3::dsr::DsrOptionRerrHeader::SetSalvage
virtual void SetSalvage(uint8_t salvage)
Set the salvage value of the packet.
Definition:
dsr-option-header.cc:767
ns3::dsr::DsrOptionRerrHeader::GetErrorSrc
virtual Ipv4Address GetErrorSrc() const
Get the route error source address.
Definition:
dsr-option-header.cc:785
ns3::dsr::DsrOptionRerrHeader::SetErrorType
void SetErrorType(uint8_t errorType)
Set the route error type.
Definition:
dsr-option-header.cc:755
ns3::dsr::DsrOptionRerrHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:811
ns3::dsr::DsrOptionRerrHeader::m_errorSrcAddress
Ipv4Address m_errorSrcAddress
The error source address.
Definition:
dsr-option-header.h:834
ns3::dsr::DsrOptionRerrHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:726
ns3::dsr::DsrOptionRerrHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:817
ns3::dsr::DsrOptionRerrHeader::m_salvage
uint8_t m_salvage
The salavage field.
Definition:
dsr-option-header.h:826
ns3::dsr::DsrOptionRerrHeader::DsrOptionRerrHeader
DsrOptionRerrHeader()
Constructor.
Definition:
dsr-option-header.cc:741
ns3::dsr::DsrOptionRerrHeader::~DsrOptionRerrHeader
~DsrOptionRerrHeader() override
Destructor.
Definition:
dsr-option-header.cc:750
ns3::dsr::DsrOptionRerrHeader::SetErrorDst
virtual void SetErrorDst(Ipv4Address errorDstAddress)
Set the error destination ip address.
Definition:
dsr-option-header.cc:791
ns3::dsr::DsrOptionRerrHeader::GetErrorDst
virtual Ipv4Address GetErrorDst() const
Get the error destination ip address.
Definition:
dsr-option-header.cc:797
ns3::dsr::DsrOptionRerrHeader::m_errorDstAddress
Ipv4Address m_errorDstAddress
The error destination address.
Definition:
dsr-option-header.h:838
ns3::dsr::DsrOptionRerrHeader::m_errorLength
uint16_t m_errorLength
The specific error message length.
Definition:
dsr-option-header.h:830
ns3::dsr::DsrOptionRerrHeader::m_errorType
uint8_t m_errorType
The error type or route error option.
Definition:
dsr-option-header.h:822
ns3::dsr::DsrOptionRerrHeader::GetSalvage
virtual uint8_t GetSalvage() const
Get the salvage value of the packet.
Definition:
dsr-option-header.cc:773
ns3::dsr::DsrOptionRerrHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:853
ns3::dsr::DsrOptionRerrHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:803
ns3::dsr::DsrOptionRerrHeader::SetErrorSrc
virtual void SetErrorSrc(Ipv4Address errorSrcAddress)
Set the route error source address.
Definition:
dsr-option-header.cc:779
ns3::dsr::DsrOptionRerrHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:736
ns3::dsr::DsrOptionRerrUnreachHeader
Route Error (RERR) Unreachable node address option Message Format.
Definition:
dsr-option-header.h:876
ns3::dsr::DsrOptionRerrUnreachHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:872
ns3::dsr::DsrOptionRerrUnreachHeader::SetOriginalDst
void SetOriginalDst(Ipv4Address originalDst)
Set the unreachable node ip address.
Definition:
dsr-option-header.cc:938
ns3::dsr::DsrOptionRerrUnreachHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:965
ns3::dsr::DsrOptionRerrUnreachHeader::GetErrorSrc
Ipv4Address GetErrorSrc() const override
Get the route error source address.
Definition:
dsr-option-header.cc:908
ns3::dsr::DsrOptionRerrUnreachHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:862
ns3::dsr::DsrOptionRerrUnreachHeader::SetErrorDst
void SetErrorDst(Ipv4Address errorDstAddress) override
Set the error destination ip address.
Definition:
dsr-option-header.cc:914
ns3::dsr::DsrOptionRerrUnreachHeader::SetErrorSrc
void SetErrorSrc(Ipv4Address errorSrcAddress) override
Set the route error source address.
Definition:
dsr-option-header.cc:902
ns3::dsr::DsrOptionRerrUnreachHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:959
ns3::dsr::DsrOptionRerrUnreachHeader::GetSalvage
uint8_t GetSalvage() const override
Get the salvage value of the packet.
Definition:
dsr-option-header.cc:896
ns3::dsr::DsrOptionRerrUnreachHeader::m_unreachNode
Ipv4Address m_unreachNode
The unreachable node address.
Definition:
dsr-option-header.h:993
ns3::dsr::DsrOptionRerrUnreachHeader::GetOriginalDst
Ipv4Address GetOriginalDst() const
Get the unreachable node ip address.
Definition:
dsr-option-header.cc:944
ns3::dsr::DsrOptionRerrUnreachHeader::~DsrOptionRerrUnreachHeader
~DsrOptionRerrUnreachHeader() override
Destructor.
Definition:
dsr-option-header.cc:885
ns3::dsr::DsrOptionRerrUnreachHeader::DsrOptionRerrUnreachHeader
DsrOptionRerrUnreachHeader()
Constructor.
Definition:
dsr-option-header.cc:877
ns3::dsr::DsrOptionRerrUnreachHeader::SetUnreachNode
void SetUnreachNode(Ipv4Address unreachNode)
Set the unreachable node ip address.
Definition:
dsr-option-header.cc:926
ns3::dsr::DsrOptionRerrUnreachHeader::SetSalvage
void SetSalvage(uint8_t salvage) override
Set the salvage value of the packet.
Definition:
dsr-option-header.cc:890
ns3::dsr::DsrOptionRerrUnreachHeader::m_errorType
uint8_t m_errorType
The error type or route error option.
Definition:
dsr-option-header.h:977
ns3::dsr::DsrOptionRerrUnreachHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:997
ns3::dsr::DsrOptionRerrUnreachHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:950
ns3::dsr::DsrOptionRerrUnreachHeader::m_errorSrcAddress
Ipv4Address m_errorSrcAddress
The error source address.
Definition:
dsr-option-header.h:985
ns3::dsr::DsrOptionRerrUnreachHeader::m_salvage
uint8_t m_salvage
The salavage field.
Definition:
dsr-option-header.h:981
ns3::dsr::DsrOptionRerrUnreachHeader::m_originalDst
Ipv4Address m_originalDst
The original destination address.
Definition:
dsr-option-header.h:997
ns3::dsr::DsrOptionRerrUnreachHeader::m_errorDstAddress
Ipv4Address m_errorDstAddress
The error destination address.
Definition:
dsr-option-header.h:989
ns3::dsr::DsrOptionRerrUnreachHeader::GetUnreachNode
Ipv4Address GetUnreachNode() const
Get the unreachable node ip address.
Definition:
dsr-option-header.cc:932
ns3::dsr::DsrOptionRerrUnreachHeader::GetErrorDst
Ipv4Address GetErrorDst() const override
Get the error destination ip address.
Definition:
dsr-option-header.cc:920
ns3::dsr::DsrOptionRerrUnsupportedHeader
Route Error (RERR) Unsupported option Message Format.
Definition:
dsr-option-header.h:1032
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetErrorDst
Ipv4Address GetErrorDst() const override
Get the error destination ip address.
Definition:
dsr-option-header.cc:1064
ns3::dsr::DsrOptionRerrUnsupportedHeader::SetErrorSrc
void SetErrorSrc(Ipv4Address errorSrcAddress) override
Set the route error source address.
Definition:
dsr-option-header.cc:1046
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetUnsupported
uint16_t GetUnsupported() const
Get the unsupported option type value.
Definition:
dsr-option-header.cc:1076
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:1006
ns3::dsr::DsrOptionRerrUnsupportedHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:1097
ns3::dsr::DsrOptionRerrUnsupportedHeader::m_errorType
uint8_t m_errorType
The error type or route error option.
Definition:
dsr-option-header.h:1123
ns3::dsr::DsrOptionRerrUnsupportedHeader::SetSalvage
void SetSalvage(uint8_t salvage) override
Set the salvage value of the packet.
Definition:
dsr-option-header.cc:1034
ns3::dsr::DsrOptionRerrUnsupportedHeader::m_errorDstAddress
Ipv4Address m_errorDstAddress
The error destination address.
Definition:
dsr-option-header.h:1135
ns3::dsr::DsrOptionRerrUnsupportedHeader::~DsrOptionRerrUnsupportedHeader
~DsrOptionRerrUnsupportedHeader() override
Destructor.
Definition:
dsr-option-header.cc:1029
ns3::dsr::DsrOptionRerrUnsupportedHeader::SetUnsupported
void SetUnsupported(uint16_t optionType)
Set the unsupported option type value.
Definition:
dsr-option-header.cc:1070
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:1091
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:1016
ns3::dsr::DsrOptionRerrUnsupportedHeader::m_salvage
uint8_t m_salvage
The salavage field.
Definition:
dsr-option-header.h:1127
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:1127
ns3::dsr::DsrOptionRerrUnsupportedHeader::SetErrorDst
void SetErrorDst(Ipv4Address errorDstAddress) override
Set the error destination ip address.
Definition:
dsr-option-header.cc:1058
ns3::dsr::DsrOptionRerrUnsupportedHeader::DsrOptionRerrUnsupportedHeader
DsrOptionRerrUnsupportedHeader()
Constructor.
Definition:
dsr-option-header.cc:1021
ns3::dsr::DsrOptionRerrUnsupportedHeader::m_errorSrcAddress
Ipv4Address m_errorSrcAddress
The error source address.
Definition:
dsr-option-header.h:1131
ns3::dsr::DsrOptionRerrUnsupportedHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:1082
ns3::dsr::DsrOptionRerrUnsupportedHeader::m_unsupported
uint16_t m_unsupported
The unsupported option.
Definition:
dsr-option-header.h:1139
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetErrorSrc
Ipv4Address GetErrorSrc() const override
Get the route error source address.
Definition:
dsr-option-header.cc:1052
ns3::dsr::DsrOptionRerrUnsupportedHeader::GetSalvage
uint8_t GetSalvage() const override
Get the salvage value of the packet.
Definition:
dsr-option-header.cc:1040
ns3::dsr::DsrOptionRrepHeader
Route Reply (RREP) Message Format.
Definition:
dsr-option-header.h:447
ns3::dsr::DsrOptionRrepHeader::GetTargetAddress
Ipv4Address GetTargetAddress(std::vector< Ipv4Address > ipv4Address) const
Get the target node Ip address.
Definition:
dsr-option-header.cc:496
ns3::dsr::DsrOptionRrepHeader::DsrOptionRrepHeader
DsrOptionRrepHeader()
Constructor.
Definition:
dsr-option-header.cc:452
ns3::dsr::DsrOptionRrepHeader::m_address
Ipv4Address m_address
The Ip address to write to when deserialize the packet.
Definition:
dsr-option-header.h:531
ns3::dsr::DsrOptionRrepHeader::SetNodeAddress
void SetNodeAddress(uint8_t index, Ipv4Address addr)
Set a Node IPv4 Address.
Definition:
dsr-option-header.cc:484
ns3::dsr::DsrOptionRrepHeader::SetNumberAddress
void SetNumberAddress(uint8_t n)
Set the number of ipv4 address.
Definition:
dsr-option-header.cc:464
ns3::dsr::DsrOptionRrepHeader::GetNodesAddress
std::vector< Ipv4Address > GetNodesAddress() const
Get the vector of ipv4 address.
Definition:
dsr-option-header.cc:478
ns3::dsr::DsrOptionRrepHeader::~DsrOptionRrepHeader
~DsrOptionRrepHeader() override
Destructor.
Definition:
dsr-option-header.cc:459
ns3::dsr::DsrOptionRrepHeader::m_ipv4Address
VectorIpv4Address_t m_ipv4Address
The vector of Nodes' IPv4 Address.
Definition:
dsr-option-header.h:539
ns3::dsr::DsrOptionRrepHeader::GetNodeAddress
Ipv4Address GetNodeAddress(uint8_t index) const
Get a Node IPv4 Address.
Definition:
dsr-option-header.cc:490
ns3::dsr::DsrOptionRrepHeader::VectorIpv4Address_t
std::vector< Ipv4Address > VectorIpv4Address_t
type def A vector of IPv4 Address.
Definition:
dsr-option-header.h:535
ns3::dsr::DsrOptionRrepHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:437
ns3::dsr::DsrOptionRrepHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:560
ns3::dsr::DsrOptionRrepHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:447
ns3::dsr::DsrOptionRrepHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:521
ns3::dsr::DsrOptionRrepHeader::SetNodesAddress
void SetNodesAddress(std::vector< Ipv4Address > ipv4Address)
Set the vector of ipv4 address.
Definition:
dsr-option-header.cc:471
ns3::dsr::DsrOptionRrepHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:515
ns3::dsr::DsrOptionRrepHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:502
ns3::dsr::DsrOptionRreqHeader
Route Request (RREQ) Message Format.
Definition:
dsr-option-header.h:273
ns3::dsr::DsrOptionRreqHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:274
ns3::dsr::DsrOptionRreqHeader::SetNodesAddress
void SetNodesAddress(std::vector< Ipv4Address > ipv4Address)
Set the vector of ipv4 address.
Definition:
dsr-option-header.cc:327
ns3::dsr::DsrOptionRreqHeader::m_target
Ipv4Address m_target
Ipv4 address of target node.
Definition:
dsr-option-header.h:385
ns3::dsr::DsrOptionRreqHeader::SetNumberAddress
void SetNumberAddress(uint8_t n)
Set the number of ipv4 address.
Definition:
dsr-option-header.cc:301
ns3::dsr::DsrOptionRreqHeader::m_address
Ipv4Address m_address
Ipv4 address to write when desearizing the packet.
Definition:
dsr-option-header.h:389
ns3::dsr::DsrOptionRreqHeader::SetNodeAddress
void SetNodeAddress(uint8_t index, Ipv4Address addr)
Set a Node IPv4 Address.
Definition:
dsr-option-header.cc:346
ns3::dsr::DsrOptionRreqHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:284
ns3::dsr::DsrOptionRreqHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:389
ns3::dsr::DsrOptionRreqHeader::~DsrOptionRreqHeader
~DsrOptionRreqHeader() override
Destructor.
Definition:
dsr-option-header.cc:296
ns3::dsr::DsrOptionRreqHeader::GetNodeAddress
Ipv4Address GetNodeAddress(uint8_t index) const
Get a Node IPv4 Address.
Definition:
dsr-option-header.cc:352
ns3::dsr::DsrOptionRreqHeader::VectorIpv4Address_t
std::vector< Ipv4Address > VectorIpv4Address_t
A vector of IPv4 Address.
Definition:
dsr-option-header.h:393
ns3::dsr::DsrOptionRreqHeader::m_identification
uint16_t m_identification
Identifier of the packet.
Definition:
dsr-option-header.h:381
ns3::dsr::DsrOptionRreqHeader::SetTarget
void SetTarget(Ipv4Address target)
Set the target ipv4 address.
Definition:
dsr-option-header.cc:314
ns3::dsr::DsrOptionRreqHeader::GetTarget
Ipv4Address GetTarget()
Get the target ipv4 address.
Definition:
dsr-option-header.cc:308
ns3::dsr::DsrOptionRreqHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:428
ns3::dsr::DsrOptionRreqHeader::DsrOptionRreqHeader
DsrOptionRreqHeader()
Constructor.
Definition:
dsr-option-header.cc:289
ns3::dsr::DsrOptionRreqHeader::GetNodesAddresses
std::vector< Ipv4Address > GetNodesAddresses() const
Get the vector of ipv4 address.
Definition:
dsr-option-header.cc:334
ns3::dsr::DsrOptionRreqHeader::m_ipv4Address
VectorIpv4Address_t m_ipv4Address
The vector of Nodes' IPv4 Address.
Definition:
dsr-option-header.h:397
ns3::dsr::DsrOptionRreqHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:370
ns3::dsr::DsrOptionRreqHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:383
ns3::dsr::DsrOptionRreqHeader::GetNodesNumber
uint32_t GetNodesNumber() const
Get the number of nodes.
Definition:
dsr-option-header.cc:340
ns3::dsr::DsrOptionRreqHeader::AddNodeAddress
void AddNodeAddress(Ipv4Address ipv4)
Add one node address.
Definition:
dsr-option-header.cc:320
ns3::dsr::DsrOptionRreqHeader::GetId
uint16_t GetId() const
Set the request id number.
Definition:
dsr-option-header.cc:364
ns3::dsr::DsrOptionRreqHeader::SetId
void SetId(uint16_t identification)
Set the request id number.
Definition:
dsr-option-header.cc:358
ns3::dsr::DsrOptionSRHeader
Source Route (SR) Message Format.
Definition:
dsr-option-header.h:568
ns3::dsr::DsrOptionSRHeader::GetNodeAddress
Ipv4Address GetNodeAddress(uint8_t index) const
Get a Node IPv4 Address.
Definition:
dsr-option-header.cc:647
ns3::dsr::DsrOptionSRHeader::m_segmentsLeft
uint8_t m_segmentsLeft
Number of left segments.
Definition:
dsr-option-header.h:682
ns3::dsr::DsrOptionSRHeader::Serialize
void Serialize(Buffer::Iterator start) const override
Serialize the packet.
Definition:
dsr-option-header.cc:678
ns3::dsr::DsrOptionSRHeader::GetNodesAddress
std::vector< Ipv4Address > GetNodesAddress() const
Get the vector of ipv4 address.
Definition:
dsr-option-header.cc:635
ns3::dsr::DsrOptionSRHeader::m_address
Ipv4Address m_address
The ip address header deserilize to.
Definition:
dsr-option-header.h:678
ns3::dsr::DsrOptionSRHeader::SetNumberAddress
void SetNumberAddress(uint8_t n)
Set the number of ipv4 address.
Definition:
dsr-option-header.cc:621
ns3::dsr::DsrOptionSRHeader::GetTypeId
static TypeId GetTypeId()
Get the type identificator.
Definition:
dsr-option-header.cc:569
ns3::dsr::DsrOptionSRHeader::SetSalvage
void SetSalvage(uint8_t salvage)
Set the salvage value for a packet.
Definition:
dsr-option-header.cc:609
ns3::dsr::DsrOptionSRHeader::Print
void Print(std::ostream &os) const override
Print some information about the packet.
Definition:
dsr-option-header.cc:659
ns3::dsr::DsrOptionSRHeader::m_ipv4Address
VectorIpv4Address_t m_ipv4Address
The vector of Nodes' IPv4 Address.
Definition:
dsr-option-header.h:694
ns3::dsr::DsrOptionSRHeader::GetSerializedSize
uint32_t GetSerializedSize() const override
Get the serialized size of the packet.
Definition:
dsr-option-header.cc:672
ns3::dsr::DsrOptionSRHeader::SetNodeAddress
void SetNodeAddress(uint8_t index, Ipv4Address addr)
Set a Node IPv4 Address.
Definition:
dsr-option-header.cc:641
ns3::dsr::DsrOptionSRHeader::SetSegmentsLeft
void SetSegmentsLeft(uint8_t segmentsLeft)
Set the number of segments left to send.
Definition:
dsr-option-header.cc:597
ns3::dsr::DsrOptionSRHeader::VectorIpv4Address_t
std::vector< Ipv4Address > VectorIpv4Address_t
A vector of IPv4 Address.
Definition:
dsr-option-header.h:690
ns3::dsr::DsrOptionSRHeader::GetSalvage
uint8_t GetSalvage() const
Get the salvage value for a packet.
Definition:
dsr-option-header.cc:615
ns3::dsr::DsrOptionSRHeader::GetNodeListSize
uint8_t GetNodeListSize() const
Get the node list size which is the number of ip address of the route.
Definition:
dsr-option-header.cc:653
ns3::dsr::DsrOptionSRHeader::m_salvage
uint8_t m_salvage
Number of savlage times for a packet.
Definition:
dsr-option-header.h:686
ns3::dsr::DsrOptionSRHeader::DsrOptionSRHeader
DsrOptionSRHeader()
Constructor.
Definition:
dsr-option-header.cc:584
ns3::dsr::DsrOptionSRHeader::GetAlignment
Alignment GetAlignment() const override
Get the Alignment requirement of this option header.
Definition:
dsr-option-header.cc:717
ns3::dsr::DsrOptionSRHeader::SetNodesAddress
void SetNodesAddress(std::vector< Ipv4Address > ipv4Address)
Set the vector of ipv4 address.
Definition:
dsr-option-header.cc:628
ns3::dsr::DsrOptionSRHeader::GetSegmentsLeft
uint8_t GetSegmentsLeft() const
Get the number of segments left to send.
Definition:
dsr-option-header.cc:603
ns3::dsr::DsrOptionSRHeader::GetInstanceTypeId
TypeId GetInstanceTypeId() const override
Get the instance type ID.
Definition:
dsr-option-header.cc:579
ns3::dsr::DsrOptionSRHeader::~DsrOptionSRHeader
~DsrOptionSRHeader() override
Destructor.
Definition:
dsr-option-header.cc:592
ns3::dsr::ErrorType
ErrorType
Route Error (RERR) Message Format.
Definition:
dsr-option-header.h:724
ns3::dsr::FLOW_STATE_NOT_SUPPORTED
@ FLOW_STATE_NOT_SUPPORTED
Definition:
dsr-option-header.h:726
ns3::dsr::NODE_UNREACHABLE
@ NODE_UNREACHABLE
Definition:
dsr-option-header.h:725
ns3::dsr::OPTION_NOT_SUPPORTED
@ OPTION_NOT_SUPPORTED
Definition:
dsr-option-header.h:727
check-style-clang-format.type
type
Definition:
check-style-clang-format.py:704
ns3::TracedValueCallback::Time
void(* Time)(Time oldValue, Time newValue)
TracedValue callback signature for Time.
Definition:
nstime.h:839
ns3::dsr::operator<<
static std::ostream & operator<<(std::ostream &os, const DsrRoutingHeader &dsr)
Definition:
dsr-fs-header.h:323
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
nsclick-simple-lan.ipv4
ipv4
Definition:
nsclick-simple-lan.py:57
two-ray-to-three-gpp-ch-calibration.start
start
Definition:
two-ray-to-three-gpp-ch-calibration.py:520
ns3::dsr::DsrOptionHeader::Alignment
represents the alignment requirements of an option header
Definition:
dsr-option-header.h:60
ns3::dsr::DsrOptionHeader::Alignment::factor
uint8_t factor
Factor.
Definition:
dsr-option-header.h:61
ns3::dsr::DsrOptionHeader::Alignment::offset
uint8_t offset
Offset.
Definition:
dsr-option-header.h:62
src
dsr
model
dsr-option-header.h
Generated on Sun Mar 3 2024 17:10:56 for ns-3 by
1.9.1