A record of an IPv4 routing table entry for Ipv4GlobalRouting and Ipv4StaticRouting. More...
#include "ipv4-routing-table-entry.h"
Public Member Functions | |
Ipv4RoutingTableEntry () | |
This constructor does nothing. More... | |
Ipv4RoutingTableEntry (Ipv4RoutingTableEntry const &route) | |
Copy Constructor. More... | |
Ipv4RoutingTableEntry (Ipv4RoutingTableEntry const *route) | |
Copy Constructor. More... | |
Ipv4Address | GetDest (void) const |
Ipv4Address | GetDestNetwork (void) const |
Ipv4Mask | GetDestNetworkMask (void) const |
Ipv4Address | GetGateway (void) const |
uint32_t | GetInterface (void) const |
bool | IsDefault (void) const |
bool | IsGateway (void) const |
bool | IsHost (void) const |
bool | IsNetwork (void) const |
Static Public Member Functions | |
static Ipv4RoutingTableEntry | CreateDefaultRoute (Ipv4Address nextHop, uint32_t interface) |
static Ipv4RoutingTableEntry | CreateHostRouteTo (Ipv4Address dest, Ipv4Address nextHop, uint32_t interface) |
static Ipv4RoutingTableEntry | CreateHostRouteTo (Ipv4Address dest, uint32_t interface) |
static Ipv4RoutingTableEntry | CreateNetworkRouteTo (Ipv4Address network, Ipv4Mask networkMask, Ipv4Address nextHop, uint32_t interface) |
static Ipv4RoutingTableEntry | CreateNetworkRouteTo (Ipv4Address network, Ipv4Mask networkMask, uint32_t interface) |
Private Member Functions | |
Ipv4RoutingTableEntry (Ipv4Address network, Ipv4Mask mask, Ipv4Address gateway, uint32_t interface) | |
Constructor. More... | |
Ipv4RoutingTableEntry (Ipv4Address dest, Ipv4Mask mask, uint32_t interface) | |
Constructor. More... | |
Ipv4RoutingTableEntry (Ipv4Address dest, Ipv4Address gateway, uint32_t interface) | |
Constructor. More... | |
Ipv4RoutingTableEntry (Ipv4Address dest, uint32_t interface) | |
Constructor. More... | |
Private Attributes | |
Ipv4Address | m_dest |
destination address More... | |
Ipv4Mask | m_destNetworkMask |
destination network mask More... | |
Ipv4Address | m_gateway |
gateway More... | |
uint32_t | m_interface |
output interface More... | |
A record of an IPv4 routing table entry for Ipv4GlobalRouting and Ipv4StaticRouting.
This is not a reference counted object.
Definition at line 37 of file ipv4-routing-table-entry.h.
ns3::Ipv4RoutingTableEntry::Ipv4RoutingTableEntry | ( | ) |
This constructor does nothing.
Definition at line 33 of file ipv4-routing-table-entry.cc.
References NS_LOG_FUNCTION.
Referenced by CreateDefaultRoute(), CreateHostRouteTo(), and CreateNetworkRouteTo().
ns3::Ipv4RoutingTableEntry::Ipv4RoutingTableEntry | ( | Ipv4RoutingTableEntry const & | route | ) |
Copy Constructor.
route | The route to copy |
Definition at line 38 of file ipv4-routing-table-entry.cc.
References NS_LOG_FUNCTION.
ns3::Ipv4RoutingTableEntry::Ipv4RoutingTableEntry | ( | Ipv4RoutingTableEntry const * | route | ) |
Copy Constructor.
route | The route to copy |
Definition at line 47 of file ipv4-routing-table-entry.cc.
References NS_LOG_FUNCTION.
|
private |
Constructor.
network | network address |
mask | network mask |
gateway | the gateway |
interface | the interface index |
Definition at line 73 of file ipv4-routing-table-entry.cc.
References NS_LOG_FUNCTION.
|
private |
Constructor.
dest | destination address |
mask | network mask |
interface | the interface index |
Definition at line 84 of file ipv4-routing-table-entry.cc.
References NS_LOG_FUNCTION.
|
private |
Constructor.
dest | destination address |
gateway | the gateway |
interface | the interface index |
Definition at line 56 of file ipv4-routing-table-entry.cc.
|
private |
Constructor.
dest | destination address |
interface | the interface index |
Definition at line 65 of file ipv4-routing-table-entry.cc.
|
static |
nextHop | Ipv4Address of the next hop |
interface | Outgoing interface |
Definition at line 206 of file ipv4-routing-table-entry.cc.
References ns3::Ipv4Address::GetZero(), ns3::Ipv4Mask::GetZero(), Ipv4RoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.
|
static |
dest | Ipv4Address of the destination |
nextHop | Ipv4Address of the next hop |
interface | Outgoing interface |
Definition at line 172 of file ipv4-routing-table-entry.cc.
References Ipv4RoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::Ipv4GlobalRouting::AddHostRouteTo().
|
static |
dest | Ipv4Address of the destination |
interface | Outgoing interface |
Definition at line 180 of file ipv4-routing-table-entry.cc.
References Ipv4RoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.
|
static |
network | Ipv4Address of the destination network |
networkMask | Ipv4Mask of the destination network mask |
nextHop | Ipv4Address of the next hop |
interface | Outgoing interface |
Definition at line 187 of file ipv4-routing-table-entry.cc.
References Ipv4RoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.
Referenced by ns3::Ipv4GlobalRouting::AddASExternalRouteTo(), ns3::Ipv4StaticRouting::AddNetworkRouteTo(), ns3::Ipv4GlobalRouting::AddNetworkRouteTo(), and ns3::Ipv4StaticRouting::SetDefaultMulticastRoute().
|
static |
network | Ipv4Address of the destination network |
networkMask | Ipv4Mask of the destination network mask |
interface | Outgoing interface |
Definition at line 197 of file ipv4-routing-table-entry.cc.
References Ipv4RoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.
Ipv4Address ns3::Ipv4RoutingTableEntry::GetDest | ( | void | ) | const |
Definition at line 109 of file ipv4-routing-table-entry.cc.
References m_dest, and NS_LOG_FUNCTION.
Referenced by LinkTest::DoRun(), LanTest::DoRun(), TwoLinkTest::DoRun(), TwoLanTest::DoRun(), BridgeTest::DoRun(), TwoBridgeTest::DoRun(), ns3::Rip::Lookup(), ns3::Ipv4GlobalRouting::LookupGlobal(), ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), ns3::operator==(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), and ns3::Rip::PrintRoutingTable().
Ipv4Address ns3::Ipv4RoutingTableEntry::GetDestNetwork | ( | void | ) | const |
Definition at line 134 of file ipv4-routing-table-entry.cc.
References m_dest, and NS_LOG_FUNCTION.
Referenced by ns3::Rip::Lookup(), ns3::operator<<(), ns3::olsr::RoutingProtocol::RoutingTableComputation(), and ns3::olsr::RoutingProtocol::SetRoutingTableAssociation().
Ipv4Mask ns3::Ipv4RoutingTableEntry::GetDestNetworkMask | ( | void | ) | const |
Definition at line 140 of file ipv4-routing-table-entry.cc.
References m_destNetworkMask, and NS_LOG_FUNCTION.
Referenced by ns3::Rip::Lookup(), ns3::operator<<(), ns3::operator==(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), ns3::Rip::PrintRoutingTable(), ns3::olsr::RoutingProtocol::RoutingTableComputation(), and ns3::olsr::RoutingProtocol::SetRoutingTableAssociation().
Ipv4Address ns3::Ipv4RoutingTableEntry::GetGateway | ( | void | ) | const |
Definition at line 159 of file ipv4-routing-table-entry.cc.
References m_gateway, and NS_LOG_FUNCTION.
Referenced by LinkTest::DoRun(), LanTest::DoRun(), TwoLinkTest::DoRun(), TwoLanTest::DoRun(), BridgeTest::DoRun(), TwoBridgeTest::DoRun(), ns3::Rip::Lookup(), ns3::Ipv4GlobalRouting::LookupGlobal(), ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), ns3::operator==(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), and ns3::Rip::PrintRoutingTable().
uint32_t ns3::Ipv4RoutingTableEntry::GetInterface | ( | void | ) | const |
Definition at line 165 of file ipv4-routing-table-entry.cc.
References m_interface, and NS_LOG_FUNCTION.
Referenced by ns3::Rip::Lookup(), ns3::Ipv4GlobalRouting::LookupGlobal(), ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), ns3::operator==(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), ns3::Rip::PrintRoutingTable(), and ns3::olsr::RoutingProtocol::UsesNonOlsrOutgoingInterface().
bool ns3::Ipv4RoutingTableEntry::IsDefault | ( | void | ) | const |
Definition at line 121 of file ipv4-routing-table-entry.cc.
References ns3::Ipv4Address::GetZero(), ns3::Ipv4Address::IsEqual(), m_dest, and NS_LOG_FUNCTION.
Referenced by ns3::operator<<().
bool ns3::Ipv4RoutingTableEntry::IsGateway | ( | void | ) | const |
Definition at line 146 of file ipv4-routing-table-entry.cc.
References ns3::Ipv4Address::GetZero(), ns3::Ipv4Address::IsEqual(), m_gateway, and NS_LOG_FUNCTION.
Referenced by ns3::operator<<(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), and ns3::Rip::PrintRoutingTable().
bool ns3::Ipv4RoutingTableEntry::IsHost | ( | void | ) | const |
Definition at line 96 of file ipv4-routing-table-entry.cc.
References ns3::Ipv4Mask::GetOnes(), ns3::Ipv4Mask::IsEqual(), m_destNetworkMask, and NS_LOG_FUNCTION.
Referenced by IsNetwork(), ns3::operator<<(), ns3::Ipv4StaticRouting::PrintRoutingTable(), ns3::Ipv4GlobalRouting::PrintRoutingTable(), and ns3::Rip::PrintRoutingTable().
bool ns3::Ipv4RoutingTableEntry::IsNetwork | ( | void | ) | const |
This method is implemented as !IsHost ().
Definition at line 115 of file ipv4-routing-table-entry.cc.
References IsHost(), and NS_LOG_FUNCTION.
Referenced by ns3::operator<<().
|
private |
destination address
Definition at line 175 of file ipv4-routing-table-entry.h.
Referenced by GetDest(), GetDestNetwork(), and IsDefault().
|
private |
destination network mask
Definition at line 176 of file ipv4-routing-table-entry.h.
Referenced by GetDestNetworkMask(), and IsHost().
|
private |
gateway
Definition at line 177 of file ipv4-routing-table-entry.h.
Referenced by GetGateway(), and IsGateway().
|
private |
output interface
Definition at line 178 of file ipv4-routing-table-entry.h.
Referenced by GetInterface().