ns-3
|
A record of an IPv6 route. More...
#include <ipv6-routing-table-entry.h>
Public Member Functions | |
Ipv6RoutingTableEntry () | |
Constructor. | |
Ipv6RoutingTableEntry (Ipv6RoutingTableEntry const &route) | |
Copy constructor. | |
Ipv6RoutingTableEntry (Ipv6RoutingTableEntry const *route) | |
Copy constructor. | |
~Ipv6RoutingTableEntry () | |
Destructor. | |
bool | IsHost () const |
Is the route entry correspond to a host ? | |
Ipv6Address | GetDest () const |
Get the destination. | |
Ipv6Address | GetPrefixToUse () const |
Get the prefix to use (for multihomed link). | |
void | SetPrefixToUse (Ipv6Address prefix) |
Set the prefix to use. | |
bool | IsNetwork () const |
Is the route entry correspond to a network ? | |
Ipv6Address | GetDestNetwork () const |
Get the destination network. | |
Ipv6Prefix | GetDestNetworkPrefix () const |
Get the destination prefix. | |
bool | IsDefault () const |
Is it the default route ? | |
bool | IsGateway () const |
Is it the gateway ? | |
Ipv6Address | GetGateway () const |
Get the gateway. | |
uint32_t | GetInterface () const |
Get the interface index. | |
Static Public Member Functions | |
static Ipv6RoutingTableEntry | CreateHostRouteTo (Ipv6Address dest, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse=Ipv6Address()) |
Create a route to a host. | |
static Ipv6RoutingTableEntry | CreateHostRouteTo (Ipv6Address dest, uint32_t interface) |
Create a route to a host. | |
static Ipv6RoutingTableEntry | CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface) |
Create a route to a network. | |
static Ipv6RoutingTableEntry | CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse) |
Create a route to a network. | |
static Ipv6RoutingTableEntry | CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, uint32_t interface) |
Create a route to a network. | |
static Ipv6RoutingTableEntry | CreateDefaultRoute (Ipv6Address nextHop, uint32_t interface) |
Create a default route. |
A record of an IPv6 route.
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry | ( | Ipv6RoutingTableEntry const & | route | ) |
Copy constructor.
route | the route to copy |
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry | ( | Ipv6RoutingTableEntry const * | route | ) |
Copy constructor.
route | the route to copy |
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateDefaultRoute | ( | Ipv6Address | nextHop, |
uint32_t | interface | ||
) | [static] |
Create a default route.
nextHop | next hop address to route the packet |
interface | interface index |
References ns3::Ipv6Address::GetZero(), and Ipv6RoutingTableEntry().
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateHostRouteTo | ( | Ipv6Address | dest, |
Ipv6Address | nextHop, | ||
uint32_t | interface, | ||
Ipv6Address | prefixToUse = Ipv6Address () |
||
) | [static] |
Create a route to a host.
dest | destination address |
nextHop | next hop address to route the packet |
interface | interface index |
prefixToUse | prefix that should be used for source address for this destination |
References ns3::Ipv6Prefix::GetOnes(), and Ipv6RoutingTableEntry().
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateHostRouteTo | ( | Ipv6Address | dest, |
uint32_t | interface | ||
) | [static] |
Create a route to a host.
dest | destination address |
interface | interface index |
References Ipv6RoutingTableEntry().
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo | ( | Ipv6Address | network, |
Ipv6Prefix | networkPrefix, | ||
Ipv6Address | nextHop, | ||
uint32_t | interface | ||
) | [static] |
Create a route to a network.
network | network address |
networkPrefix | network prefix |
nextHop | next hop address to route the packet |
interface | interface index |
References Ipv6RoutingTableEntry().
Referenced by ns3::Ipv6StaticRouting::AddNetworkRouteTo(), and ns3::Ipv6StaticRouting::SetDefaultMulticastRoute().
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo | ( | Ipv6Address | network, |
Ipv6Prefix | networkPrefix, | ||
Ipv6Address | nextHop, | ||
uint32_t | interface, | ||
Ipv6Address | prefixToUse | ||
) | [static] |
Create a route to a network.
network | network address |
networkPrefix | network prefix |
nextHop | next hop address to route the packet |
interface | interface index |
prefixToUse | prefix that should be used for source address for this destination |
References Ipv6RoutingTableEntry().
Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo | ( | Ipv6Address | network, |
Ipv6Prefix | networkPrefix, | ||
uint32_t | interface | ||
) | [static] |
Create a route to a network.
network | network address |
networkPrefix | network prefix |
interface | interface index |
References Ipv6RoutingTableEntry().
Ipv6Address ns3::Ipv6RoutingTableEntry::GetDest | ( | void | ) | const |
Get the destination.
Referenced by ns3::Ipv6StaticRouting::RemoveRoute().
Ipv6Address ns3::Ipv6RoutingTableEntry::GetDestNetwork | ( | void | ) | const |
Get the destination network.
Referenced by ns3::Ipv6StaticRouting::GetDefaultRoute(), ns3::Ipv6StaticRouting::HasNetworkDest(), ns3::Ipv6StaticRouting::NotifyRemoveAddress(), and ns3::Ipv6StaticRouting::NotifyRemoveRoute().
Get the destination prefix.
Referenced by ns3::Ipv6StaticRouting::GetDefaultRoute(), ns3::Ipv6StaticRouting::HasNetworkDest(), ns3::Ipv6StaticRouting::NotifyRemoveAddress(), and ns3::Ipv6StaticRouting::NotifyRemoveRoute().
Ipv6Address ns3::Ipv6RoutingTableEntry::GetGateway | ( | void | ) | const |
Get the gateway.
uint32_t ns3::Ipv6RoutingTableEntry::GetInterface | ( | void | ) | const |
Get the interface index.
Referenced by ns3::Ipv6StaticRouting::HasNetworkDest(), ns3::Ipv6StaticRouting::NotifyInterfaceDown(), ns3::Ipv6StaticRouting::NotifyRemoveAddress(), ns3::Ipv6StaticRouting::NotifyRemoveRoute(), and ns3::Ipv6StaticRouting::RemoveRoute().
Get the prefix to use (for multihomed link).
Referenced by ns3::Ipv6StaticRouting::RemoveRoute().
bool ns3::Ipv6RoutingTableEntry::IsDefault | ( | void | ) | const |
Is it the default route ?
References ns3::Ipv6Address::GetZero(), and ns3::Ipv6Address::IsEqual().
bool ns3::Ipv6RoutingTableEntry::IsGateway | ( | void | ) | const |
Is it the gateway ?
References ns3::Ipv6Address::GetZero(), and ns3::Ipv6Address::IsEqual().
bool ns3::Ipv6RoutingTableEntry::IsHost | ( | void | ) | const |
Is the route entry correspond to a host ?
References ns3::Ipv6Prefix::GetOnes(), and ns3::Ipv6Prefix::IsEqual().
Referenced by IsNetwork().
bool ns3::Ipv6RoutingTableEntry::IsNetwork | ( | void | ) | const |
Is the route entry correspond to a network ?
References IsHost().
Referenced by ns3::Ipv6StaticRouting::NotifyRemoveAddress().
void ns3::Ipv6RoutingTableEntry::SetPrefixToUse | ( | Ipv6Address | prefix | ) |
Set the prefix to use.
prefix | prefix to use |