ns-3
ns3::NdiscCache::Entry Class Reference

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

#include <ndisc-cache.h>

List of all members.

Public Member Functions

 Entry (NdiscCache *nd)
 Constructor.
void MarkIncomplete (Ptr< Packet > p)
 Changes the state to this entry to INCOMPLETE.
std::list< Ptr< Packet > > MarkReachable (Address mac)
 Changes the state to this entry to REACHABLE.
void MarkProbe ()
 Changes the state to this entry to PROBE.
std::list< Ptr< Packet > > MarkStale (Address mac)
 Changes the state to this entry to STALE.
void MarkStale ()
 Changes the state to this entry to STALE.
void MarkReachable ()
 Changes the state to this entry to REACHABLE.
void MarkDelay ()
 Change the state to this entry to DELAY.
void AddWaitingPacket (Ptr< Packet > p)
 Add a packet (or replace old value) in the queue.
void ClearWaitingPacket ()
 Clear the waiting packet list.
bool IsStale () const
 Is the entry STALE.
bool IsReachable () const
 Is the entry REACHABLE.
bool IsDelay () const
 Is the entry DELAY.
bool IsIncomplete () const
 Is the entry INCOMPLETE.
bool IsProbe () const
 Is the entry PROBE.
Address GetMacAddress () const
 Get the MAC address of this entry.
void SetMacAddress (Address mac)
 Set the MAC address of this entry.
bool IsRouter () const
 If the entry is a host or a router.
void SetRouter (bool router)
 Set the node type.
uint8_t GetNSRetransmit () const
 Get the number of NS retransmit.
void IncNSRetransmit ()
 Increment NS retransmit.
void ResetNSRetransmit ()
 Reset NS retransmit (=0).
Time GetLastReachabilityConfirmation () const
 Get the time of last reachability confirmation.
void UpdateLastReachabilityconfirmation ()
 Update the time of last reachability confirmation.
void StartReachableTimer ()
 Start the reachable timer.
void StopReachableTimer ()
 Stop the reachable timer.
void StartRetransmitTimer ()
 Start retransmit timer.
void StopRetransmitTimer ()
 Stop retransmit timer.
void StartProbeTimer ()
 Start probe timer.
void StopProbeTimer ()
 Stop probe timer.
void StartDelayTimer ()
 Start delay timer.
void StopDelayTimer ()
 Stop delay timer.
void FunctionReachableTimeout ()
 Function called when reachable timer timeout.
void FunctionRetransmitTimeout ()
 Function called when retransmit timer timeout. It verify that the NS retransmit has reached the max so discard the entry otherwise it retransmit a NS.
void FunctionProbeTimeout ()
 Function called when probe timer timeout.
void FunctionDelayTimeout ()
 Function called when delay timer timeout.
void SetIpv6Address (Ipv6Address ipv6Address)
 Set the IPv6 address.

Detailed Description

A record that holds information about an NdiscCache entry.


Constructor & Destructor Documentation

Constructor.

Parameters:
ndThe NdiscCache this entry belongs to.

References NS_LOG_FUNCTION_NOARGS.


Member Function Documentation

Add a packet (or replace old value) in the queue.

Parameters:
ppacket to add

References NS_LOG_FUNCTION.

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

Get the time of last reachability confirmation.

Returns:
time

References NS_LOG_FUNCTION_NOARGS.

Get the MAC address of this entry.

Returns:
the L2 address

References NS_LOG_FUNCTION_NOARGS.

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

Get the number of NS retransmit.

Returns:
number of NS that have been retransmit

References NS_LOG_FUNCTION_NOARGS.

Is the entry DELAY.

Returns:
true if the entry is in DELAY state, false otherwise

References NS_LOG_FUNCTION_NOARGS.

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

Is the entry INCOMPLETE.

Returns:
true if the entry is in INCOMPLETE state, false otherwise

References NS_LOG_FUNCTION_NOARGS.

Is the entry PROBE.

Returns:
true if the entry is in PROBE state, false otherwise

References NS_LOG_FUNCTION_NOARGS.

Is the entry REACHABLE.

Returns:
true if the entry is in REACHABLE state, false otherwise

References NS_LOG_FUNCTION_NOARGS.

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

If the entry is a host or a router.

Returns:
true if the node is a router, 0 if it is a host

References NS_LOG_FUNCTION_NOARGS.

Is the entry STALE.

Returns:
true if the entry is in STALE state, false otherwise

References NS_LOG_FUNCTION_NOARGS.

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

Changes the state to this entry to INCOMPLETE.

Parameters:
ppacket that wait to be sent

References NS_LOG_FUNCTION.

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

Changes the state to this entry to REACHABLE.

Parameters:
macMAC address
Returns:
the list of packet waiting

References NS_LOG_FUNCTION.

Changes the state to this entry to STALE.

Parameters:
macL2 address
Returns:
the list of packet waiting

References NS_LOG_FUNCTION.

Set the IPv6 address.

Parameters:
ipv6AddressIPv6 address

References NS_LOG_FUNCTION.

Set the MAC address of this entry.

Parameters:
macthe MAC address to set

References NS_LOG_FUNCTION.

void ns3::NdiscCache::Entry::SetRouter ( bool  router)

Set the node type.

Parameters:
routertrue is a router, false means a host

References NS_LOG_FUNCTION.

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


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