ns-3
ns3::NdiscCache Class Reference

IPv6 Neighbor Discovery cache. More...

#include <ndisc-cache.h>

Inheritance diagram for ns3::NdiscCache:
Collaboration diagram for ns3::NdiscCache:

List of all members.

Classes

class  Entry
 A record that holds information about an NdiscCache entry. More...

Public Member Functions

 NdiscCache ()
 Constructor.
 ~NdiscCache ()
 Destructor.
Ptr< NetDeviceGetDevice () const
 Get the NetDevice associated with this cache.
Ptr< Ipv6InterfaceGetInterface () const
 Get the Ipv6Interface associated with this cache.
NdiscCache::EntryLookup (Ipv6Address dst)
 Lookup in the cache.
NdiscCache::EntryAdd (Ipv6Address to)
 Add an entry.
void Remove (NdiscCache::Entry *entry)
 Delete an entry.
void Flush ()
 Flush the cache.
void SetUnresQlen (uint32_t unresQlen)
 Set the max number of waiting packet.
uint32_t GetUnresQlen ()
 Get the max number of waiting packet.
void SetDevice (Ptr< NetDevice > device, Ptr< Ipv6Interface > interface)
 Set the device and interface.
- Public Member Functions inherited from ns3::Object
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Dispose (void)
void AggregateObject (Ptr< Object > other)
AggregateIterator GetAggregateIterator (void) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount (const SimpleRefCount &o)
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
uint32_t GetReferenceCount (void) const
- Public Member Functions inherited from ns3::ObjectBase
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
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 ID.

Static Public Attributes

static const uint32_t DEFAULT_UNRES_QLEN = 3
 Default value for unres qlen.

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
virtual void NotifyNewAggregate (void)
virtual void DoStart (void)
 Object (const Object &o)

Detailed Description

IPv6 Neighbor Discovery cache.


Member Function Documentation

NdiscCache::Entry * ns3::NdiscCache::Add ( Ipv6Address  to)

Add an entry.

Parameters:
toaddress to add
Returns:
an new Entry

References NS_ASSERT, and NS_LOG_FUNCTION.

Referenced by ns3::Icmpv6L4Protocol::Lookup().

Ptr< NetDevice > ns3::NdiscCache::GetDevice ( void  ) const

Get the NetDevice associated with this cache.

Returns:
NetDevice

References NS_LOG_FUNCTION_NOARGS.

Referenced by ns3::Icmpv6L4Protocol::Lookup().

TypeId ns3::NdiscCache::GetTypeId ( void  )
static

Get the type ID.

This method returns the TypeId associated to ns3::NdiscCache.

Returns:
type ID

Attributes defined for this type:

  • UnresolvedQueueSize: Size of the queue for packets pending an NA reply.

No TraceSources defined for this type.

Reimplemented from ns3::Object.

References DEFAULT_UNRES_QLEN, and ns3::TypeId::SetParent().

uint32_t ns3::NdiscCache::GetUnresQlen ( )

Get the max number of waiting packet.

Returns:
max number

References NS_LOG_FUNCTION_NOARGS.

NdiscCache::Entry * ns3::NdiscCache::Lookup ( Ipv6Address  dst)

Lookup in the cache.

Parameters:
dstdestination address
Returns:
the entry if found, 0 otherwise

References NS_LOG_FUNCTION.

Referenced by ns3::Icmpv6L4Protocol::Lookup().

void ns3::NdiscCache::Remove ( NdiscCache::Entry entry)

Delete an entry.

Parameters:
entrypointer to delete from the list.

References ns3::NdiscCache::Entry::ClearWaitingPacket(), and NS_LOG_FUNCTION_NOARGS.

Referenced by ns3::Icmpv6L4Protocol::Lookup().

void ns3::NdiscCache::SetDevice ( Ptr< NetDevice device,
Ptr< Ipv6Interface interface 
)

Set the device and interface.

Parameters:
devicethe device
interfacethe IPv6 interface

References NS_LOG_FUNCTION.

Referenced by ns3::Icmpv6L4Protocol::CreateCache().

void ns3::NdiscCache::SetUnresQlen ( uint32_t  unresQlen)

Set the max number of waiting packet.

Parameters:
unresQlenvalue to set

References NS_LOG_FUNCTION.


The documentation for this class was generated from the following files: