Header of Dsr Option Route Request. More...
#include "dsr-option-header.h"
Inheritance diagram for ns3::dsr::DsrOptionRreqHeader:
Collaboration diagram for ns3::dsr::DsrOptionRreqHeader:Public Member Functions | |
| DsrOptionRreqHeader () | |
| Constructor. | |
| ~DsrOptionRreqHeader () override | |
| Destructor. | |
| void | AddNodeAddress (Ipv4Address ipv4) |
| Add one node address. | |
| uint32_t | Deserialize (Buffer::Iterator start) override |
| Deserialize the packet. | |
| Alignment | GetAlignment () const override |
| Get the Alignment requirement of this option header. | |
| uint16_t | GetId () const |
| Set the request id number. | |
| TypeId | GetInstanceTypeId () const override |
| Get the instance type ID. | |
| Ipv4Address | GetNodeAddress (uint8_t index) const |
| Get a Node IPv4 Address. | |
| std::vector< Ipv4Address > | GetNodesAddresses () const |
| Get the vector of ipv4 address. | |
| uint32_t | GetNodesNumber () const |
| Get the number of nodes. | |
| uint32_t | GetSerializedSize () const override |
| Get the serialized size of the packet. | |
| Ipv4Address | GetTarget () |
| Get the target ipv4 address. | |
| void | Print (std::ostream &os) const override |
| Print some information about the packet. | |
| void | Serialize (Buffer::Iterator start) const override |
| Serialize the packet. | |
| void | SetId (uint16_t identification) |
| Set the request id number. | |
| void | SetNodeAddress (uint8_t index, Ipv4Address addr) |
| Set a Node IPv4 Address. | |
| void | SetNodesAddress (std::vector< Ipv4Address > ipv4Address) |
| Set the vector of ipv4 address. | |
| void | SetNumberAddress (uint8_t n) |
| Set the number of ipv4 address. | |
| void | SetTarget (Ipv4Address target) |
| Set the target ipv4 address. | |
Public Member Functions inherited from ns3::dsr::DsrOptionHeader | |
| DsrOptionHeader () | |
| Constructor. | |
| ~DsrOptionHeader () override | |
| Destructor. | |
| uint8_t | GetLength () const |
| Get the option length. | |
| uint8_t | GetType () const |
| Get the type of the option. | |
| void | SetLength (uint8_t length) |
| Set the option length. | |
| void | SetType (uint8_t type) |
| Set the type of the option. | |
Public Member Functions inherited from ns3::Header | |
| ~Header () override | |
| virtual uint32_t | Deserialize (Buffer::Iterator start, Buffer::Iterator end) |
| Deserialize the object from a buffer iterator. | |
Public Member Functions inherited from ns3::ObjectBase | |
| virtual | ~ObjectBase () |
| Virtual destructor. | |
| void | GetAttribute (std::string name, AttributeValue &value, bool permissive=false) const |
| Get the value of an attribute, raising fatal errors if unsuccessful. | |
| bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
| Get the value of an attribute without raising errors. | |
| void | SetAttribute (std::string name, const AttributeValue &value) |
| Set a single attribute, raising fatal errors if unsuccessful. | |
| bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
| Set a single attribute without raising errors. | |
| bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
| Connect a TraceSource to a Callback with a context. | |
| bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
| Connect a TraceSource to a Callback without a context. | |
| bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected with a context. | |
| bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected without a context. | |
Static Public Member Functions | |
| static TypeId | GetTypeId () |
| Get the type identificator. | |
Static Public Member Functions inherited from ns3::dsr::DsrOptionHeader | |
| static TypeId | GetTypeId () |
| Get the type identificator. | |
Static Public Member Functions inherited from ns3::Header | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::Chunk | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::ObjectBase | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Private Types | |
| typedef std::vector< Ipv4Address > | VectorIpv4Address_t |
| A vector of IPv4 Address. | |
Private Attributes | |
| Ipv4Address | m_address |
| Ipv4 address to write when deserializing the packet. | |
| uint16_t | m_identification |
| Identifier of the packet. | |
| VectorIpv4Address_t | m_ipv4Address |
| The vector of Nodes' IPv4 Address. | |
| Ipv4Address | m_target |
| Ipv4 address of target node. | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
| void | ConstructSelf (const AttributeConstructionList &attributes) |
| Complete construction of ObjectBase; invoked by derived classes. | |
| virtual void | NotifyConstructionCompleted () |
| Notifier called once the ObjectBase is fully constructed. | |
Related Symbols inherited from ns3::ObjectBase | |
| static TypeId | GetObjectIid () |
| Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. | |
Header of Dsr Option Route Request.
Introspection did not find any typical Config paths
No Attributes are defined for this type
No TraceSources are defined for this type
Group: Dsr
Size of this type is 96 bytes (on a 64-bit architecture).
Route Request (RREQ) Message Format | 0 | 1 | 2 | 3 | 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Option Type | Opt Data Len | Identification | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Target Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Address[1] | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Address[2] | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Address[n] | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Definition at line 258 of file dsr-option-header.h.
|
private |
A vector of IPv4 Address.
Definition at line 379 of file dsr-option-header.h.
| ns3::dsr::DsrOptionRreqHeader::DsrOptionRreqHeader | ( | ) |
Constructor.
Definition at line 278 of file dsr-option-header.cc.
References m_ipv4Address, ns3::dsr::DsrOptionHeader::SetLength(), and ns3::dsr::DsrOptionHeader::SetType().
Referenced by GetTypeId().
Here is the call graph for this function:
Here is the caller graph for this function:
|
override |
Destructor.
Definition at line 285 of file dsr-option-header.cc.
| void ns3::dsr::DsrOptionRreqHeader::AddNodeAddress | ( | Ipv4Address | ipv4 | ) |
Add one node address.
| ipv4 | The ip address to add |
Definition at line 309 of file dsr-option-header.cc.
References m_ipv4Address, and ns3::dsr::DsrOptionHeader::SetLength().
Referenced by ns3::dsr::DsrRouting::SendErrorRequest(), and ns3::dsr::DsrRouting::SendInitialRequest().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Deserialize the packet.
| start | Buffer iterator |
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 396 of file dsr-option-header.cc.
References ns3::Ipv4Address::Deserialize(), GetSerializedSize(), m_address, m_identification, m_ipv4Address, m_target, ns3::Buffer::Iterator::Read(), ns3::ReadFrom(), ns3::Buffer::Iterator::ReadNtohU16(), ns3::Buffer::Iterator::ReadU8(), ns3::dsr::DsrOptionHeader::SetLength(), SetNodeAddress(), and ns3::dsr::DsrOptionHeader::SetType().
Here is the call graph for this function:
|
overridevirtual |
Get the Alignment requirement of this option header.
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 417 of file dsr-option-header.cc.
| uint16_t ns3::dsr::DsrOptionRreqHeader::GetId | ( | ) | const |
Set the request id number.
Definition at line 353 of file dsr-option-header.cc.
References m_identification.
Referenced by DsrRreqHeaderTest::DoRun(), and ns3::dsr::DsrOptionRreq::Process().
Here is the caller graph for this function:
|
overridevirtual |
Get the instance type ID.
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 273 of file dsr-option-header.cc.
References GetTypeId().
Here is the call graph for this function:| Ipv4Address ns3::dsr::DsrOptionRreqHeader::GetNodeAddress | ( | uint8_t | index | ) | const |
| index | the index of the IPv4 Address |
Definition at line 341 of file dsr-option-header.cc.
References m_ipv4Address.
Referenced by DsrRreqHeaderTest::DoRun().
Here is the caller graph for this function:| std::vector< Ipv4Address > ns3::dsr::DsrOptionRreqHeader::GetNodesAddresses | ( | ) | const |
Get the vector of ipv4 address.
Definition at line 323 of file dsr-option-header.cc.
References m_ipv4Address.
Referenced by ns3::dsr::DsrOptionRreq::Process().
Here is the caller graph for this function:| uint32_t ns3::dsr::DsrOptionRreqHeader::GetNodesNumber | ( | ) | const |
Get the number of nodes.
Definition at line 329 of file dsr-option-header.cc.
References m_ipv4Address.
|
overridevirtual |
Get the serialized size of the packet.
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 372 of file dsr-option-header.cc.
References m_ipv4Address.
Referenced by Deserialize(), and ns3::dsr::DsrOptionRreq::Process().
Here is the caller graph for this function:| Ipv4Address ns3::dsr::DsrOptionRreqHeader::GetTarget | ( | ) |
Get the target ipv4 address.
Definition at line 297 of file dsr-option-header.cc.
References m_target.
Referenced by DsrRreqHeaderTest::DoRun(), and ns3::dsr::DsrOptionRreq::Process().
Here is the caller graph for this function:
|
static |
Get the type identificator.
Definition at line 263 of file dsr-option-header.cc.
References DsrOptionRreqHeader(), and ns3::TypeId::AddConstructor().
Referenced by GetInstanceTypeId().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Print some information about the packet.
| os | output stream |
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 359 of file dsr-option-header.cc.
References ns3::dsr::DsrOptionHeader::GetLength(), ns3::dsr::DsrOptionHeader::GetType(), and m_ipv4Address.
Here is the call graph for this function:
|
overridevirtual |
Serialize the packet.
| start | Buffer iterator |
Reimplemented from ns3::dsr::DsrOptionHeader.
Definition at line 378 of file dsr-option-header.cc.
References ns3::dsr::DsrOptionHeader::GetLength(), ns3::dsr::DsrOptionHeader::GetType(), m_identification, m_ipv4Address, m_target, ns3::Buffer::Iterator::Write(), ns3::Buffer::Iterator::WriteHtonU16(), ns3::WriteTo(), and ns3::Buffer::Iterator::WriteU8().
Here is the call graph for this function:| void ns3::dsr::DsrOptionRreqHeader::SetId | ( | uint16_t | identification | ) |
Set the request id number.
| identification | the identification number |
Definition at line 347 of file dsr-option-header.cc.
References m_identification.
Referenced by DsrRreqHeaderTest::DoRun(), ns3::dsr::DsrRouting::SendErrorRequest(), and ns3::dsr::DsrRouting::SendInitialRequest().
Here is the caller graph for this function:| void ns3::dsr::DsrOptionRreqHeader::SetNodeAddress | ( | uint8_t | index, |
| Ipv4Address | addr ) |
Definition at line 335 of file dsr-option-header.cc.
References m_ipv4Address.
Referenced by Deserialize().
Here is the caller graph for this function:| void ns3::dsr::DsrOptionRreqHeader::SetNodesAddress | ( | std::vector< Ipv4Address > | ipv4Address | ) |
Set the vector of ipv4 address.
| ipv4Address | the vector of ipv4 address |
Definition at line 316 of file dsr-option-header.cc.
References m_ipv4Address, and ns3::dsr::DsrOptionHeader::SetLength().
Referenced by DsrRreqHeaderTest::DoRun(), and ns3::dsr::DsrOptionRreq::Process().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::dsr::DsrOptionRreqHeader::SetNumberAddress | ( | uint8_t | n | ) |
Set the number of ipv4 address.
| n | the number of ipv4 address |
Definition at line 290 of file dsr-option-header.cc.
References m_ipv4Address.
Referenced by DsrRreqHeaderTest::DoRun(), and ns3::dsr::DsrOptionRreq::Process().
Here is the caller graph for this function:| void ns3::dsr::DsrOptionRreqHeader::SetTarget | ( | Ipv4Address | target | ) |
Set the target ipv4 address.
| target | the target packet |
Definition at line 303 of file dsr-option-header.cc.
References m_target.
Referenced by DsrRreqHeaderTest::DoRun(), ns3::dsr::DsrRouting::SendErrorRequest(), and ns3::dsr::DsrRouting::SendInitialRequest().
Here is the caller graph for this function:
|
private |
Ipv4 address to write when deserializing the packet.
Definition at line 375 of file dsr-option-header.h.
Referenced by Deserialize().
|
private |
Identifier of the packet.
Definition at line 367 of file dsr-option-header.h.
Referenced by Deserialize(), GetId(), Serialize(), and SetId().
|
private |
The vector of Nodes' IPv4 Address.
Definition at line 383 of file dsr-option-header.h.
Referenced by DsrOptionRreqHeader(), AddNodeAddress(), Deserialize(), GetNodeAddress(), GetNodesAddresses(), GetNodesNumber(), GetSerializedSize(), Print(), Serialize(), SetNodeAddress(), SetNodesAddress(), and SetNumberAddress().
|
private |
Ipv4 address of target node.
Definition at line 371 of file dsr-option-header.h.
Referenced by Deserialize(), GetTarget(), Serialize(), and SetTarget().