IPv6 Extension Loose Routing. More...
#include <introspected-doxygen.h>
Public Member Functions | |
Ipv6ExtensionLooseRouting () | |
Constructor. | |
~Ipv6ExtensionLooseRouting () | |
Destructor. | |
virtual uint8_t | GetTypeRouting () const |
Get the type of routing. More... | |
virtual uint8_t | Process (Ptr< Packet > &packet, uint8_t offset, Ipv6Header const &ipv6Header, Ipv6Address dst, uint8_t *nextHeader, bool &isDropped) |
Process method. More... | |
Public Member Functions inherited from ns3::Ipv6ExtensionRouting | |
Ipv6ExtensionRouting () | |
Constructor. | |
~Ipv6ExtensionRouting () | |
Destructor. | |
virtual uint8_t | GetExtensionNumber () const |
Get the extension number. More... | |
Public Member Functions inherited from ns3::Ipv6Extension | |
Ipv6Extension () | |
Constructor. | |
virtual | ~Ipv6Extension () |
Destructor. | |
int64_t | AssignStreams (int64_t stream) |
Ptr< Node > | GetNode () const |
Get the node. More... | |
virtual uint8_t | ProcessOptions (Ptr< Packet > &packet, uint8_t offset, uint8_t length, Ipv6Header const &ipv6Header, Ipv6Address dst, uint8_t *nextHeader, bool &isDropped) |
Process options Called by implementing classes to process the options. More... | |
void | SetNode (Ptr< Node > node) |
Set the node. More... | |
Public Member Functions inherited from ns3::Object | |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Public Member Functions inherited from ns3::ObjectBase | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type identificator. More... | |
Static Public Member Functions inherited from ns3::Ipv6ExtensionRouting | |
static TypeId | GetTypeId () |
Get the type identificator. More... | |
Static Public Member Functions inherited from ns3::Ipv6Extension | |
static TypeId | GetTypeId () |
Get the type identificator. More... | |
Static Public Member Functions inherited from ns3::Object | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
static void | Cleanup (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Static Public Attributes | |
static const uint8_t | TYPE_ROUTING = 0 |
Routing type. | |
Static Public Attributes inherited from ns3::Ipv6ExtensionRouting | |
static const uint8_t | EXT_NUMBER = 43 |
Routing extension number. | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::Object | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
Protected Attributes inherited from ns3::Ipv6Extension | |
TracedCallback< Ptr< const Packet > > | m_dropTrace |
Drop trace callback. | |
Ptr< UniformRandomVariable > | m_uvar |
Provides uniform random variables. | |
IPv6 Extension Loose Routing.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 541 of file ipv6-extension.h.
|
static |
Get the type identificator.
Definition at line 847 of file ipv6-extension.cc.
References ns3::TypeId::SetParent().
|
virtual |
Get the type of routing.
Reimplemented from ns3::Ipv6ExtensionRouting.
Definition at line 866 of file ipv6-extension.cc.
References NS_LOG_FUNCTION_NOARGS.
|
virtual |
Process method.
Called from Ipv6L3Protocol::Receive.
packet | the packet |
offset | the offset of the extension to process |
ipv6Header | the IPv6 header of packet received |
dst | destination address of the packet received (i.e. us) |
nextHeader | the next header |
isDropped | if the packet must be dropped |
Reimplemented from ns3::Ipv6ExtensionRouting.
Definition at line 873 of file ipv6-extension.cc.
References ns3::Buffer::AddAtStart(), ns3::Packet::AddHeader(), ns3::Buffer::Begin(), ns3::Packet::Copy(), ns3::Packet::CopyData(), ns3::Ipv6Header::Deserialize(), ns3::Ipv6Header::GetDestinationAddress(), ns3::Ipv6Header::GetHopLimit(), ns3::Ipv6ExtensionHeader::GetLength(), ns3::Ipv6ExtensionHeader::GetNextHeader(), ns3::Ipv6Extension::GetNode(), ns3::Object::GetObject(), ns3::Ipv6ExtensionLooseRoutingHeader::GetRouterAddress(), ns3::Ipv6ExtensionRoutingHeader::GetSegmentsLeft(), ns3::Ipv6Header::GetSerializedSize(), ns3::Ipv6ExtensionLooseRoutingHeader::GetSerializedSize(), ns3::Ipv6Header::GetSourceAddress(), ns3::Ipv6Address::IsMulticast(), ns3::Ipv6Extension::m_dropTrace, NS_ASSERT, NS_LOG_FUNCTION, NS_LOG_INFO, NS_LOG_LOGIC, ns3::Packet::RemoveAtStart(), ns3::Packet::RemoveHeader(), ns3::Ipv6Header::Serialize(), ns3::Ipv6Header::SetDestinationAddress(), ns3::Ipv6Header::SetHopLimit(), ns3::Ipv6ExtensionHeader::SetLength(), ns3::Ipv6ExtensionLooseRoutingHeader::SetNumberAddress(), ns3::Ipv6ExtensionLooseRoutingHeader::SetRouterAddress(), and ns3::Ipv6ExtensionRoutingHeader::SetSegmentsLeft().