A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::dsr::RouteCacheEntry Class Reference

#include <dsr-rcache.h>

+ Collaboration diagram for ns3::dsr::RouteCacheEntry:

Public Types

typedef std::vector< Ipv4AddressIP_VECTOR
 Define the vector to hold Ip address. More...
 
typedef std::vector
< Ipv4Address >::iterator 
Iterator
 Define the iterator. More...
 

Public Member Functions

 RouteCacheEntry (IP_VECTOR const &ip=IP_VECTOR(), Ipv4Address dst=Ipv4Address(), Time exp=Simulator::Now())
 
virtual ~RouteCacheEntry ()
 
void Invalidate (Time badLinkLifetime)
 Mark entry as "down" (i.e. disable it) More...
 
bool operator== (RouteCacheEntry const &o) const
 Compare the route cache entry. More...
 
void Print (std::ostream &os) const
 Print necessary fields. More...
 
Fields
void SetUnidirectional (bool u)
 
bool IsUnidirectional () const
 
void SetBlacklistTimeout (Time t)
 
Time GetBlacklistTimeout () const
 
Ipv4Address GetDestination () const
 
void SetDestination (Ipv4Address d)
 
IP_VECTOR GetVector () const
 
void SetVector (IP_VECTOR v)
 
void SetExpireTime (Time exp)
 
Time GetExpireTime () const
 

Private Attributes

Timer m_ackTimer
 RREP_ACK timer. More...
 
bool m_blackListState
 Indicate if this entry is in "blacklist". More...
 
Time m_blackListTimeout
 Time for which the node is put into the blacklist. More...
 
Ipv4Address m_dst
 The destination Ip address. More...
 
Time m_expire
 Expire time for queue entry. More...
 
Ipv4InterfaceAddress m_iface
 Output interface address. More...
 
Ptr< Ipv4m_ipv4
 The Ipv4 layer 3. More...
 
Ptr< Ipv4Routem_ipv4Route
 The Ipv4 route. More...
 
IP_VECTOR m_path
 brief The IP address constructed route More...
 
uint8_t m_reqCount
 Number of route requests. More...
 

Detailed Description

Definition at line 174 of file dsr-rcache.h.

Member Typedef Documentation

Define the vector to hold Ip address.

Definition at line 177 of file dsr-rcache.h.

typedef std::vector<Ipv4Address>::iterator ns3::dsr::RouteCacheEntry::Iterator

Define the iterator.

Definition at line 178 of file dsr-rcache.h.

Constructor & Destructor Documentation

ns3::dsr::RouteCacheEntry::RouteCacheEntry ( IP_VECTOR const &  ip = IP_VECTOR (),
Ipv4Address  dst = Ipv4Address (),
Time  exp = Simulator::Now () 
)

Definition at line 105 of file dsr-rcache.cc.

ns3::dsr::RouteCacheEntry::~RouteCacheEntry ( )
virtual

Definition at line 116 of file dsr-rcache.cc.

Member Function Documentation

Time ns3::dsr::RouteCacheEntry::GetBlacklistTimeout ( ) const
inline

Definition at line 199 of file dsr-rcache.h.

References m_blackListTimeout.

Ipv4Address ns3::dsr::RouteCacheEntry::GetDestination ( ) const
inline

Definition at line 203 of file dsr-rcache.h.

References m_dst.

Referenced by ns3::dsr::RouteCache::AddRoute(), DsrCacheEntryTest::DoRun(), and ns3::dsr::RouteCache::FindSameRoute().

+ Here is the caller graph for this function:

Time ns3::dsr::RouteCacheEntry::GetExpireTime ( ) const
inline

Definition at line 223 of file dsr-rcache.h.

References m_expire, and ns3::Simulator::Now().

Referenced by ns3::dsr::RouteCache::AddRoute(), ns3::dsr::CompareRoutesBoth(), ns3::dsr::CompareRoutesExpire(), DsrCacheEntryTest::DoRun(), and ns3::dsr::RouteCache::FindSameRoute().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dsr::RouteCacheEntry::Invalidate ( Time  badLinkLifetime)

Mark entry as "down" (i.e. disable it)

Definition at line 121 of file dsr-rcache.cc.

References m_expire, m_reqCount, and ns3::Simulator::Now().

+ Here is the call graph for this function:

bool ns3::dsr::RouteCacheEntry::IsUnidirectional ( ) const
inline

Definition at line 191 of file dsr-rcache.h.

References m_blackListState.

bool ns3::dsr::RouteCacheEntry::operator== ( RouteCacheEntry const &  o) const
inline

Compare the route cache entry.

Returns
true if equal

Definition at line 236 of file dsr-rcache.h.

References m_path, and NS_ASSERT.

void ns3::dsr::RouteCacheEntry::Print ( std::ostream &  os) const

Print necessary fields.

Definition at line 128 of file dsr-rcache.cc.

References m_dst, m_expire, and ns3::Simulator::Now().

+ Here is the call graph for this function:

void ns3::dsr::RouteCacheEntry::SetBlacklistTimeout ( Time  t)
inline

Definition at line 195 of file dsr-rcache.h.

References m_blackListTimeout.

void ns3::dsr::RouteCacheEntry::SetDestination ( Ipv4Address  d)
inline

Definition at line 207 of file dsr-rcache.h.

References m_dst.

Referenced by ns3::dsr::RouteCache::DeleteAllRoutesIncludeLink(), DsrCacheEntryTest::DoRun(), ns3::dsr::RouteCache::LookupRoute(), and ns3::dsr::RouteCache::LookupRoute_Link().

+ Here is the caller graph for this function:

void ns3::dsr::RouteCacheEntry::SetExpireTime ( Time  exp)
inline

Definition at line 219 of file dsr-rcache.h.

References m_expire, and ns3::Simulator::Now().

Referenced by ns3::dsr::RouteCache::DeleteAllRoutesIncludeLink(), DsrCacheEntryTest::DoRun(), ns3::dsr::RouteCache::LookupRoute(), ns3::dsr::RouteCache::LookupRoute_Link(), and ns3::dsr::RouteCache::UpdateRouteEntry().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dsr::RouteCacheEntry::SetUnidirectional ( bool  u)
inline

Definition at line 187 of file dsr-rcache.h.

References m_blackListState.

void ns3::dsr::RouteCacheEntry::SetVector ( IP_VECTOR  v)
inline

Member Data Documentation

Timer ns3::dsr::RouteCacheEntry::m_ackTimer
private

RREP_ACK timer.

Definition at line 269 of file dsr-rcache.h.

bool ns3::dsr::RouteCacheEntry::m_blackListState
private

Indicate if this entry is in "blacklist".

Definition at line 275 of file dsr-rcache.h.

Referenced by IsUnidirectional(), and SetUnidirectional().

Time ns3::dsr::RouteCacheEntry::m_blackListTimeout
private

Time for which the node is put into the blacklist.

Definition at line 276 of file dsr-rcache.h.

Referenced by GetBlacklistTimeout(), and SetBlacklistTimeout().

Ipv4Address ns3::dsr::RouteCacheEntry::m_dst
private

The destination Ip address.

Definition at line 270 of file dsr-rcache.h.

Referenced by GetDestination(), Print(), and SetDestination().

Time ns3::dsr::RouteCacheEntry::m_expire
private

Expire time for queue entry.

Definition at line 272 of file dsr-rcache.h.

Referenced by GetExpireTime(), Invalidate(), Print(), and SetExpireTime().

Ipv4InterfaceAddress ns3::dsr::RouteCacheEntry::m_iface
private

Output interface address.

Definition at line 273 of file dsr-rcache.h.

Ptr<Ipv4> ns3::dsr::RouteCacheEntry::m_ipv4
private

The Ipv4 layer 3.

Definition at line 278 of file dsr-rcache.h.

Ptr<Ipv4Route> ns3::dsr::RouteCacheEntry::m_ipv4Route
private

The Ipv4 route.

Definition at line 277 of file dsr-rcache.h.

IP_VECTOR ns3::dsr::RouteCacheEntry::m_path
private

brief The IP address constructed route

Definition at line 271 of file dsr-rcache.h.

Referenced by GetVector(), operator==(), and SetVector().

uint8_t ns3::dsr::RouteCacheEntry::m_reqCount
private

Number of route requests.

Definition at line 274 of file dsr-rcache.h.

Referenced by Invalidate().


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