Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes

ns3::Ipv6RoutingTableEntry Class Reference

A record of an IPv6 route. More...

#include <ipv6-routing-table-entry.h>

Collaboration diagram for ns3::Ipv6RoutingTableEntry:
Collaboration graph
[legend]

List of all members.

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.

Private Member Functions

 Ipv6RoutingTableEntry (Ipv6Address network, Ipv6Prefix prefix, Ipv6Address gateway, uint32_t interface)
 Constructor.
 Ipv6RoutingTableEntry (Ipv6Address network, Ipv6Prefix prefix, uint32_t interface, Ipv6Address prefixToUse)
 Constructor.
 Ipv6RoutingTableEntry (Ipv6Address network, Ipv6Prefix prefix, Ipv6Address gateway, uint32_t interface, Ipv6Address prefixToUse)
 Constructor.
 Ipv6RoutingTableEntry (Ipv6Address dest, Ipv6Prefix prefix, uint32_t interface)
 Constructor.
 Ipv6RoutingTableEntry (Ipv6Address dest, Ipv6Address gateway, uint32_t interface)
 Constructor.
 Ipv6RoutingTableEntry (Ipv6Address dest, uint32_t interface)
 Constructor.

Private Attributes

Ipv6Address m_dest
 IPv6 address of the destination.
Ipv6Prefix m_destNetworkPrefix
 IPv6 prefix of the destination.
Ipv6Address m_gateway
 IPv6 address of the gateway.
uint32_t m_interface
 The interface index.
Ipv6Address m_prefixToUse
 Prefix to use.

Detailed Description

A record of an IPv6 route.


Constructor & Destructor Documentation

ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6RoutingTableEntry const &  route  ) 

Copy constructor.

Parameters:
route the route to copy
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6RoutingTableEntry const *  route  ) 

Copy constructor.

Parameters:
route the route to copy
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  network,
Ipv6Prefix  prefix,
Ipv6Address  gateway,
uint32_t  interface 
) [private]

Constructor.

Parameters:
network network address
prefix network prefix
gateway the gateway
interface the interface index
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  network,
Ipv6Prefix  prefix,
uint32_t  interface,
Ipv6Address  prefixToUse 
) [private]

Constructor.

Parameters:
network network address
prefix network prefix
interface the interface index
prefixToUse prefix to use
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  network,
Ipv6Prefix  prefix,
Ipv6Address  gateway,
uint32_t  interface,
Ipv6Address  prefixToUse 
) [private]

Constructor.

Parameters:
network network address
prefix network prefix
gateway the gateway
interface the interface index
prefixToUse prefix to use
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  dest,
Ipv6Prefix  prefix,
uint32_t  interface 
) [private]

Constructor.

Parameters:
dest destination address
prefix destiation prefix
interface interface index
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  dest,
Ipv6Address  gateway,
uint32_t  interface 
) [private]

Constructor.

Parameters:
dest destination address
gateway the gateway
interface interface index
ns3::Ipv6RoutingTableEntry::Ipv6RoutingTableEntry ( Ipv6Address  dest,
uint32_t  interface 
) [private]

Constructor.

Parameters:
dest destination address
interface interface index

Member Function Documentation

static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateDefaultRoute ( Ipv6Address  nextHop,
uint32_t  interface 
) [static]

Create a default route.

Parameters:
nextHop next hop address to route the packet
interface interface index
Returns:
IPv6Route object
static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateHostRouteTo ( Ipv6Address  dest,
Ipv6Address  nextHop,
uint32_t  interface,
Ipv6Address  prefixToUse = Ipv6Address() 
) [static]

Create a route to a host.

Parameters:
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
Returns:
IPv6Route object
static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateHostRouteTo ( Ipv6Address  dest,
uint32_t  interface 
) [static]

Create a route to a host.

Parameters:
dest destination address
interface interface index
Returns:
IPv6Route object
static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo ( Ipv6Address  network,
Ipv6Prefix  networkPrefix,
uint32_t  interface 
) [static]

Create a route to a network.

Parameters:
network network address
networkPrefix network prefix
interface interface index
Returns:
IPv6Route object
static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo ( Ipv6Address  network,
Ipv6Prefix  networkPrefix,
Ipv6Address  nextHop,
uint32_t  interface 
) [static]

Create a route to a network.

Parameters:
network network address
networkPrefix network prefix
nextHop next hop address to route the packet
interface interface index
Returns:
IPv6Route object
static Ipv6RoutingTableEntry ns3::Ipv6RoutingTableEntry::CreateNetworkRouteTo ( Ipv6Address  network,
Ipv6Prefix  networkPrefix,
Ipv6Address  nextHop,
uint32_t  interface,
Ipv6Address  prefixToUse 
) [static]

Create a route to a network.

Parameters:
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
Returns:
IPv6Route object
Ipv6Address ns3::Ipv6RoutingTableEntry::GetDest (  )  const

Get the destination.

Returns:
the IPv6 address of the destination of this route
Ipv6Address ns3::Ipv6RoutingTableEntry::GetDestNetwork (  )  const

Get the destination network.

Returns:
the destination network
Ipv6Prefix ns3::Ipv6RoutingTableEntry::GetDestNetworkPrefix (  )  const

Get the destination prefix.

Returns:
the destination prefix
Ipv6Address ns3::Ipv6RoutingTableEntry::GetGateway (  )  const

Get the gateway.

Returns:
the IPv6 address of the gateway
uint32_t ns3::Ipv6RoutingTableEntry::GetInterface (  )  const

Get the interface index.

Returns:
the index of the interface
Ipv6Address ns3::Ipv6RoutingTableEntry::GetPrefixToUse (  )  const

Get the prefix to use (for multihomed link).

Returns:
prefix address to use
bool ns3::Ipv6RoutingTableEntry::IsDefault (  )  const

Is it the default route ?

Returns:
true if this route is a default route, false otherwise
bool ns3::Ipv6RoutingTableEntry::IsGateway (  )  const

Is it the gateway ?

Returns:
true if this route is a gateway, false otherwise
bool ns3::Ipv6RoutingTableEntry::IsHost (  )  const

Is the route entry correspond to a host ?

Returns:
true if the route is a host, false otherwise
bool ns3::Ipv6RoutingTableEntry::IsNetwork (  )  const

Is the route entry correspond to a network ?

Returns:
true if the route is a network, false otherwise
void ns3::Ipv6RoutingTableEntry::SetPrefixToUse ( Ipv6Address  prefix  ) 

Set the prefix to use.

Parameters:
prefix prefix to use

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