Routing table entry. More...
#include "dsdv-rtable.h"
 Collaboration diagram for ns3::dsdv::RoutingTableEntry:
 Collaboration diagram for ns3::dsdv::RoutingTableEntry:| Public Member Functions | |
| RoutingTableEntry (Ptr< NetDevice > dev=0, Ipv4Address dst=Ipv4Address(), uint32_t seqNo=0, Ipv4InterfaceAddress iface=Ipv4InterfaceAddress(), uint32_t hops=0, Ipv4Address nextHop=Ipv4Address(), Time lifetime=Simulator::Now(), Time SettlingTime=Simulator::Now(), bool changedEntries=false) | |
| c-tor  More... | |
| ~RoutingTableEntry () | |
| Ipv4Address | GetDestination () const | 
| Get destination IP address.  More... | |
| bool | GetEntriesChanged () const | 
| Get entries changed.  More... | |
| RouteFlags | GetFlag () const | 
| Get route flags.  More... | |
| uint32_t | GetHop () const | 
| Get hop.  More... | |
| Ipv4InterfaceAddress | GetInterface () const | 
| Get interface address.  More... | |
| Time | GetLifeTime () const | 
| Get lifetime.  More... | |
| Ipv4Address | GetNextHop () const | 
| Get next hop.  More... | |
| Ptr< NetDevice > | GetOutputDevice () const | 
| Get output device.  More... | |
| Ptr< Ipv4Route > | GetRoute () const | 
| Get route.  More... | |
| uint32_t | GetSeqNo () const | 
| Get sequence number.  More... | |
| Time | GetSettlingTime () const | 
| Get settling time.  More... | |
| bool | operator== (Ipv4Address const destination) const | 
| Compare destination address.  More... | |
| void | Print (Ptr< OutputStreamWrapper > stream, Time::Unit unit=Time::S) const | 
| Print routing table entry.  More... | |
| void | SetEntriesChanged (bool entriesChanged) | 
| Set entries changed indicator.  More... | |
| void | SetFlag (RouteFlags flag) | 
| Set route flags.  More... | |
| void | SetHop (uint32_t hopCount) | 
| Set hop.  More... | |
| void | SetInterface (Ipv4InterfaceAddress iface) | 
| Set interface address.  More... | |
| void | SetLifeTime (Time lifeTime) | 
| Set lifetime.  More... | |
| void | SetNextHop (Ipv4Address nextHop) | 
| Set next hop.  More... | |
| void | SetOutputDevice (Ptr< NetDevice > device) | 
| Set output device.  More... | |
| void | SetRoute (Ptr< Ipv4Route > route) | 
| Set route.  More... | |
| void | SetSeqNo (uint32_t sequenceNumber) | 
| Set sequence number.  More... | |
| void | SetSettlingTime (Time settlingTime) | 
| Set settling time.  More... | |
| Private Attributes | |
| uint32_t | m_entriesChanged | 
| Flag to show if any of the routing table entries were changed with the routing update.  More... | |
| RouteFlags | m_flag | 
| Routing flags: valid, invalid or in search.  More... | |
| uint32_t | m_hops | 
| Hop Count (number of hops needed to reach destination)  More... | |
| Ipv4InterfaceAddress | m_iface | 
| Output interface address.  More... | |
| Ptr< Ipv4Route > | m_ipv4Route | 
| Ip route, include.  More... | |
| Time | m_lifeTime | 
| Expiration or deletion time of the route Lifetime field in the routing table plays dual role – for an active route it is the expiration time, and for an invalid route it is the deletion time.  More... | |
| uint32_t | m_seqNo | 
| Destination Sequence Number.  More... | |
| Time | m_settlingTime | 
| Time for which the node retains an update with changed metric before broadcasting it.  More... | |
Routing table entry.
Definition at line 56 of file dsdv-rtable.h.
| ns3::dsdv::RoutingTableEntry::RoutingTableEntry | ( | Ptr< NetDevice > | dev = 0, | 
| Ipv4Address | dst = Ipv4Address (), | ||
| uint32_t | seqNo = 0, | ||
| Ipv4InterfaceAddress | iface = Ipv4InterfaceAddress (), | ||
| uint32_t | hops = 0, | ||
| Ipv4Address | nextHop = Ipv4Address (), | ||
| Time | lifetime = Simulator::Now (), | ||
| Time | SettlingTime = Simulator::Now (), | ||
| bool | changedEntries = false | ||
| ) | 
c-tor
| dev | the net device | 
| dst | the destination IP address | 
| seqNo | the sequence number | 
| iface | the interface | 
| hops | the number of hops | 
| nextHop | the IP address of the next hop | 
| lifetime | the lifetime | 
| SettlingTime | the settling time | 
| changedEntries | flag for changed entries | 
Definition at line 41 of file dsdv-rtable.cc.
References ns3::Ipv4InterfaceAddress::GetLocal(), m_iface, m_ipv4Route, ns3::Ipv4Route::SetDestination(), ns3::Ipv4Route::SetGateway(), ns3::Ipv4Route::SetOutputDevice(), and ns3::Ipv4Route::SetSource().
 Here is the call graph for this function:
 Here is the call graph for this function:| ns3::dsdv::RoutingTableEntry::~RoutingTableEntry | ( | ) | 
Definition at line 64 of file dsdv-rtable.cc.
| 
 | inline | 
Get destination IP address.
Definition at line 82 of file dsdv-rtable.h.
References ns3::Ipv4Route::GetDestination(), and m_ipv4Route.
Referenced by ns3::dsdv::RoutingTable::AddRoute(), DsdvTableTestCase::DoRun(), ns3::dsdv::RoutingProtocol::LookForQueuedPackets(), ns3::dsdv::RoutingProtocol::MergeTriggerPeriodicUpdates(), and ns3::dsdv::RoutingTable::Update().
 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 entries changed.
Definition at line 262 of file dsdv-rtable.h.
References m_entriesChanged.
Referenced by ns3::dsdv::RoutingProtocol::MergeTriggerPeriodicUpdates().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get route flags.
Definition at line 244 of file dsdv-rtable.h.
References m_flag.
| 
 | inline | 
Get hop.
Definition at line 190 of file dsdv-rtable.h.
References m_hops.
Referenced by DsdvTableTestCase::DoRun(), ns3::dsdv::RoutingProtocol::LookForQueuedPackets(), and ns3::dsdv::RoutingProtocol::SendTriggeredUpdate().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get interface address.
Definition at line 145 of file dsdv-rtable.h.
References m_iface.
Referenced by DsdvTableTestCase::DoRun().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get lifetime.
Definition at line 208 of file dsdv-rtable.h.
References m_lifeTime, and ns3::Simulator::Now().
Referenced by ns3::dsdv::RoutingProtocol::GetSettlingTime().
 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 next hop.
Definition at line 118 of file dsdv-rtable.h.
References ns3::Ipv4Route::GetGateway(), and m_ipv4Route.
Referenced by ns3::dsdv::RoutingProtocol::LookForQueuedPackets(), and ns3::dsdv::RoutingProtocol::RouteInput().
 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:Get output device.
Definition at line 136 of file dsdv-rtable.h.
References ns3::Ipv4Route::GetOutputDevice(), and m_ipv4Route.
 Here is the call graph for this function:
 Here is the call graph for this function:Get route.
Definition at line 91 of file dsdv-rtable.h.
References m_ipv4Route.
Referenced by ns3::dsdv::RoutingProtocol::LookForQueuedPackets(), ns3::dsdv::RoutingProtocol::RouteInput(), and ns3::dsdv::RoutingProtocol::RouteOutput().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get sequence number.
Definition at line 172 of file dsdv-rtable.h.
References m_seqNo.
Referenced by DsdvTableTestCase::DoRun(), ns3::dsdv::RoutingProtocol::MergeTriggerPeriodicUpdates(), and ns3::dsdv::RoutingProtocol::SendTriggeredUpdate().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Get settling time.
Definition at line 226 of file dsdv-rtable.h.
References m_settlingTime.
Referenced by ns3::dsdv::RoutingProtocol::GetSettlingTime().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Compare destination address.
| destination | destination node IP address | 
Definition at line 272 of file dsdv-rtable.h.
References ns3::Ipv4Route::GetDestination(), and m_ipv4Route.
 Here is the call graph for this function:
 Here is the call graph for this function:| void ns3::dsdv::RoutingTableEntry::Print | ( | Ptr< OutputStreamWrapper > | stream, | 
| Time::Unit | unit = Time::S | ||
| ) | const | 
Print routing table entry.
| stream | the output stream | 
Definition at line 198 of file dsdv-rtable.cc.
References ns3::Time::As(), ns3::Ipv4Route::GetDestination(), ns3::Ipv4Route::GetGateway(), ns3::Ipv4InterfaceAddress::GetLocal(), ns3::OutputStreamWrapper::GetStream(), m_hops, m_iface, m_ipv4Route, m_lifeTime, m_seqNo, m_settlingTime, and ns3::Simulator::Now().
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | inline | 
Set entries changed indicator.
| entriesChanged | 
Definition at line 253 of file dsdv-rtable.h.
References m_entriesChanged.
Referenced by ns3::dsdv::RoutingProtocol::MergeTriggerPeriodicUpdates(), and ns3::dsdv::RoutingProtocol::SetIpv4().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Set route flags.
| flag | the route flags | 
Definition at line 235 of file dsdv-rtable.h.
References m_flag.
Referenced by ns3::dsdv::RoutingProtocol::MergeTriggerPeriodicUpdates(), ns3::dsdv::RoutingProtocol::RecvDsdv(), and ns3::dsdv::RoutingProtocol::SetIpv4().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Set hop.
| hopCount | the hop count | 
Definition at line 181 of file dsdv-rtable.h.
References m_hops.
| 
 | inline | 
Set interface address.
| iface | the IPv4 interface address | 
Definition at line 154 of file dsdv-rtable.h.
References m_iface.
| 
 | inline | 
Set lifetime.
| lifeTime | the lifetime value | 
Definition at line 199 of file dsdv-rtable.h.
References m_lifeTime.
| 
 | inline | 
Set next hop.
| nextHop | the IPv4 address of the next hop | 
Definition at line 109 of file dsdv-rtable.h.
References m_ipv4Route, and ns3::Ipv4Route::SetGateway().
 Here is the call graph for this function:
 Here is the call graph for this function:Set output device.
| device | the output device | 
Definition at line 127 of file dsdv-rtable.h.
References m_ipv4Route, and ns3::Ipv4Route::SetOutputDevice().
 Here is the call graph for this function:
 Here is the call graph for this function:Set route.
| route | the IPv4 route | 
Definition at line 100 of file dsdv-rtable.h.
References m_ipv4Route.
| 
 | inline | 
Set sequence number.
| sequenceNumber | the sequence number | 
Definition at line 163 of file dsdv-rtable.h.
References m_seqNo.
Referenced by ns3::dsdv::RoutingProtocol::SendPeriodicUpdate().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Set settling time.
| settlingTime | the settling time | 
Definition at line 217 of file dsdv-rtable.h.
References m_settlingTime.
| 
 | private | 
Flag to show if any of the routing table entries were changed with the routing update.
Definition at line 311 of file dsdv-rtable.h.
Referenced by GetEntriesChanged(), and SetEntriesChanged().
| 
 | private | 
Routing flags: valid, invalid or in search.
Definition at line 306 of file dsdv-rtable.h.
| 
 | private | 
Hop Count (number of hops needed to reach destination)
Definition at line 288 of file dsdv-rtable.h.
| 
 | private | 
Output interface address.
Definition at line 304 of file dsdv-rtable.h.
Referenced by GetInterface(), Print(), RoutingTableEntry(), and SetInterface().
Ip route, include.
Definition at line 302 of file dsdv-rtable.h.
Referenced by GetDestination(), GetNextHop(), GetOutputDevice(), GetRoute(), operator==(), Print(), RoutingTableEntry(), SetNextHop(), SetOutputDevice(), and SetRoute().
| 
 | private | 
Expiration or deletion time of the route Lifetime field in the routing table plays dual role – for an active route it is the expiration time, and for an invalid route it is the deletion time.
Definition at line 295 of file dsdv-rtable.h.
Referenced by GetLifeTime(), Print(), and SetLifeTime().
| 
 | private | 
Destination Sequence Number.
Definition at line 286 of file dsdv-rtable.h.
Referenced by GetSeqNo(), Print(), and SetSeqNo().
| 
 | private | 
Time for which the node retains an update with changed metric before broadcasting it.
A node does that in hope of receiving a better update.
Definition at line 309 of file dsdv-rtable.h.
Referenced by GetSettlingTime(), Print(), and SetSettlingTime().