DsrRouteCacheEntry class for entries in the route cache. More...
#include "dsr-rcache.h"
 Collaboration diagram for ns3::dsr::DsrRouteCacheEntry:
 Collaboration diagram for ns3::dsr::DsrRouteCacheEntry:| Public Types | |
| typedef std::vector< Ipv4Address > | IP_VECTOR | 
| Define the vector to hold Ip address. | |
| typedef std::vector< Ipv4Address >::iterator | Iterator | 
| Define the iterator. | |
| Public Member Functions | |
| DsrRouteCacheEntry (IP_VECTOR const &ip=IP_VECTOR(), Ipv4Address dst=Ipv4Address(), Time exp=Simulator::Now()) | |
| Constructor. | |
| virtual | ~DsrRouteCacheEntry () | 
| Time | GetBlacklistTimeout () const | 
| Get blacklist timeout. | |
| Ipv4Address | GetDestination () const | 
| Get destination address. | |
| Time | GetExpireTime () const | 
| Get expire time. | |
| IP_VECTOR | GetVector () const | 
| Get the IP vector. | |
| void | Invalidate (Time badLinkLifetime) | 
| Mark entry as "down" (i.e. | |
| bool | IsUnidirectional () const | 
| Get unidirectional flag. | |
| bool | operator== (const DsrRouteCacheEntry &o) const | 
| Compare the route cache entry. | |
| void | Print (std::ostream &os) const | 
| Print necessary fields. | |
| void | SetBlacklistTimeout (Time t) | 
| Set blacklist timeout. | |
| void | SetDestination (Ipv4Address d) | 
| Set destination address. | |
| void | SetExpireTime (Time exp) | 
| Set expire time. | |
| void | SetUnidirectional (bool u) | 
| Set unidirectional flag. | |
| void | SetVector (IP_VECTOR v) | 
| Sets the IP vector. | |
| Private Attributes | |
| Timer | m_ackTimer | 
| RREP_ACK timer. | |
| bool | m_blackListState | 
| Indicate if this entry is in "blacklist". | |
| Time | m_blackListTimeout | 
| Time for which the node is put into the blacklist. | |
| Ipv4Address | m_dst | 
| The destination Ip address. | |
| Time | m_expire | 
| Expire time for queue entry. | |
| Ipv4InterfaceAddress | m_iface | 
| Output interface address. | |
| Ptr< Ipv4 > | m_ipv4 | 
| The Ipv4 layer 3. | |
| Ptr< Ipv4Route > | m_ipv4Route | 
| The Ipv4 route. | |
| IP_VECTOR | m_path | 
| brief The IP address constructed route | |
| uint8_t | m_reqCount | 
| Number of route requests. | |
DsrRouteCacheEntry class for entries in the route cache.
Definition at line 217 of file dsr-rcache.h.
| typedef std::vector<Ipv4Address> ns3::dsr::DsrRouteCacheEntry::IP_VECTOR | 
Define the vector to hold Ip address.
Definition at line 220 of file dsr-rcache.h.
| typedef std::vector<Ipv4Address>::iterator ns3::dsr::DsrRouteCacheEntry::Iterator | 
Define the iterator.
Definition at line 221 of file dsr-rcache.h.
| ns3::dsr::DsrRouteCacheEntry::DsrRouteCacheEntry | ( | IP_VECTOR const & | ip = IP_VECTOR(), | 
| Ipv4Address | dst = Ipv4Address(), | ||
| Time | exp = Simulator::Now() ) | 
Constructor.
| ip | IP_VECTOR | 
| dst | destination IPv4 address | 
| exp | expiration time | 
Definition at line 104 of file dsr-rcache.cc.
References m_ackTimer, m_blackListState, m_blackListTimeout, m_dst, m_expire, m_path, m_reqCount, and ns3::Now().
Referenced by operator==().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | virtual | 
Definition at line 115 of file dsr-rcache.cc.
| 
 | inline | 
Get blacklist timeout.
Definition at line 271 of file dsr-rcache.h.
References m_blackListTimeout.
| 
 | inline | 
Get destination address.
Definition at line 280 of file dsr-rcache.h.
References m_dst.
Referenced by ns3::dsr::DsrRouteCache::AddRoute(), DsrCacheEntryTest::DoRun(), and ns3::dsr::DsrRouteCache::FindSameRoute().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get expire time.
Definition at line 325 of file dsr-rcache.h.
References m_expire, and ns3::Simulator::Now().
Referenced by ns3::dsr::DsrRouteCache::AddRoute(), ns3::dsr::CompareRoutesBoth(), ns3::dsr::CompareRoutesExpire(), DsrCacheEntryTest::DoRun(), and ns3::dsr::DsrRouteCache::FindSameRoute().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get the IP vector.
Definition at line 298 of file dsr-rcache.h.
References m_path.
Referenced by ns3::dsr::DsrRouteCache::AddRoute(), ns3::dsr::DsrRouting::AddRoute(), ns3::dsr::DsrRouting::CheckSendBuffer(), ns3::dsr::CompareRoutesBoth(), ns3::dsr::CompareRoutesHops(), DsrCacheEntryTest::DoRun(), ns3::dsr::DsrRouteCache::FindSameRoute(), ns3::dsr::DsrRouteCache::LookupRoute_Link(), ns3::dsr::DsrRouting::PacketNewRoute(), ns3::dsr::DsrOptionRreq::Process(), ns3::dsr::DsrRouting::RouteRequestTimerExpire(), ns3::dsr::DsrRouting::SalvagePacket(), ns3::dsr::DsrRouting::Send(), ns3::dsr::DsrRouting::SendErrorRequest(), and ns3::dsr::DsrRouting::SendUnreachError().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| void ns3::dsr::DsrRouteCacheEntry::Invalidate | ( | Time | badLinkLifetime | ) | 
Mark entry as "down" (i.e.
disable it)
| badLinkLifetime | Time before purging the link for real. | 
Definition at line 120 of file dsr-rcache.cc.
References m_expire, m_reqCount, and ns3::Simulator::Now().
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | inline | 
Get unidirectional flag.
Definition at line 253 of file dsr-rcache.h.
References m_blackListState.
| 
 | inline | 
Compare the route cache entry.
Only the paths are compared.
| o | entry to compare | 
Definition at line 341 of file dsr-rcache.h.
References DsrRouteCacheEntry(), and m_path.
 Here is the call graph for this function:
 Here is the call graph for this function:| void ns3::dsr::DsrRouteCacheEntry::Print | ( | std::ostream & | os | ) | const | 
Print necessary fields.
| os | the output stream | 
Definition at line 127 of file dsr-rcache.cc.
References m_dst, m_expire, ns3::Simulator::Now(), and ns3::Time::S.
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | inline | 
Set blacklist timeout.
| t | the blacklist timeout | 
Definition at line 262 of file dsr-rcache.h.
References m_blackListTimeout.
| 
 | inline | 
Set destination address.
| d | the destination IP address | 
Definition at line 289 of file dsr-rcache.h.
References m_dst.
Referenced by ns3::dsr::DsrRouteCache::DeleteAllRoutesIncludeLink(), DsrCacheEntryTest::DoRun(), ns3::dsr::DsrRouteCache::LookupRoute(), and ns3::dsr::DsrRouteCache::LookupRoute_Link().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Set expire time.
| exp | the expire time | 
Definition at line 316 of file dsr-rcache.h.
References m_expire, and ns3::Simulator::Now().
Referenced by ns3::dsr::DsrRouteCache::DeleteAllRoutesIncludeLink(), DsrCacheEntryTest::DoRun(), ns3::dsr::DsrRouteCache::LookupRoute(), ns3::dsr::DsrRouteCache::LookupRoute_Link(), and ns3::dsr::DsrRouteCache::UpdateRouteEntry().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Set unidirectional flag.
| u | the unidirectional flag | 
Definition at line 244 of file dsr-rcache.h.
References m_blackListState.
| 
 | inline | 
Sets the IP vector.
| v | the IP vector | 
Definition at line 307 of file dsr-rcache.h.
References m_path.
Referenced by ns3::dsr::DsrRouteCache::DeleteAllRoutesIncludeLink(), DsrCacheEntryTest::DoRun(), ns3::dsr::DsrRouteCache::LookupRoute(), and ns3::dsr::DsrRouteCache::LookupRoute_Link().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
| 
 | private | 
Indicate if this entry is in "blacklist".
Definition at line 353 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), IsUnidirectional(), and SetUnidirectional().
| 
 | private | 
Time for which the node is put into the blacklist.
Definition at line 354 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), GetBlacklistTimeout(), and SetBlacklistTimeout().
| 
 | private | 
The destination Ip address.
Definition at line 348 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), GetDestination(), Print(), and SetDestination().
| 
 | private | 
Expire time for queue entry.
Definition at line 350 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), GetExpireTime(), Invalidate(), Print(), and SetExpireTime().
| 
 | private | 
Output interface address.
Definition at line 351 of file dsr-rcache.h.
The Ipv4 layer 3.
Definition at line 356 of file dsr-rcache.h.
The Ipv4 route.
Definition at line 355 of file dsr-rcache.h.
| 
 | private | 
brief The IP address constructed route
Definition at line 349 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), GetVector(), operator==(), and SetVector().
| 
 | private | 
Number of route requests.
Definition at line 352 of file dsr-rcache.h.
Referenced by DsrRouteCacheEntry(), and Invalidate().