A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::RipNgRoutingTableEntry Class Reference

RipNg Routing Table Entry. More...

#include <ripng.h>

+ Inheritance diagram for ns3::RipNgRoutingTableEntry:
+ Collaboration diagram for ns3::RipNgRoutingTableEntry:

Public Types

enum  Status_e { RIPNG_VALID, RIPNG_INVALID }
 Route status. More...
 

Public Member Functions

 RipNgRoutingTableEntry (void)
 
 RipNgRoutingTableEntry (Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse)
 Constructor. More...
 
 RipNgRoutingTableEntry (Ipv6Address network, Ipv6Prefix networkPrefix, uint32_t interface)
 Constructor. More...
 
virtual ~RipNgRoutingTableEntry ()
 
uint8_t GetRouteMetric (void) const
 Get the route metric. More...
 
Status_e GetRouteStatus (void) const
 Get the route status. More...
 
uint16_t GetRouteTag (void) const
 Get the route tag. More...
 
bool IsRouteChanged (void) const
 Get the route changed status. More...
 
void SetRouteChanged (bool changed)
 Set the route as changed. More...
 
void SetRouteMetric (uint8_t routeMetric)
 Set the route metric. More...
 
void SetRouteStatus (Status_e status)
 Set the route status. More...
 
void SetRouteTag (uint16_t routeTag)
 Set the route tag. More...
 
- Public Member Functions inherited from ns3::Ipv6RoutingTableEntry
 Ipv6RoutingTableEntry ()
 Constructor. More...
 
 Ipv6RoutingTableEntry (Ipv6RoutingTableEntry const &route)
 Copy constructor. More...
 
 Ipv6RoutingTableEntry (Ipv6RoutingTableEntry const *route)
 Copy constructor. More...
 
virtual ~Ipv6RoutingTableEntry ()
 Destructor. More...
 
Ipv6Address GetDest () const
 Get the destination. More...
 
Ipv6Address GetDestNetwork () const
 Get the destination network. More...
 
Ipv6Prefix GetDestNetworkPrefix () const
 Get the destination prefix. More...
 
Ipv6Address GetGateway () const
 Get the gateway. More...
 
uint32_t GetInterface () const
 Get the interface index. More...
 
Ipv6Address GetPrefixToUse () const
 Get the prefix to use (for multihomed link). More...
 
bool IsDefault () const
 Is it the default route ? More...
 
bool IsGateway () const
 Is it the gateway ? More...
 
bool IsHost () const
 Is the route entry correspond to a host ? More...
 
bool IsNetwork () const
 Is the route entry correspond to a network ? More...
 
void SetPrefixToUse (Ipv6Address prefix)
 Set the prefix to use. More...
 

Private Attributes

bool m_changed
 route has been updated More...
 
uint8_t m_metric
 route metric More...
 
Status_e m_status
 route status More...
 
uint16_t m_tag
 route tag More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ns3::Ipv6RoutingTableEntry
static Ipv6RoutingTableEntry CreateDefaultRoute (Ipv6Address nextHop, uint32_t interface)
 Create a default route. More...
 
static Ipv6RoutingTableEntry CreateHostRouteTo (Ipv6Address dest, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse=Ipv6Address())
 Create a route to a host. More...
 
static Ipv6RoutingTableEntry CreateHostRouteTo (Ipv6Address dest, uint32_t interface)
 Create a route to a host. More...
 
static Ipv6RoutingTableEntry CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface)
 Create a route to a network. More...
 
static Ipv6RoutingTableEntry CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse)
 Create a route to a network. More...
 
static Ipv6RoutingTableEntry CreateNetworkRouteTo (Ipv6Address network, Ipv6Prefix networkPrefix, uint32_t interface)
 Create a route to a network. More...
 

Detailed Description

RipNg Routing Table Entry.

Definition at line 62 of file ripng.h.

Member Enumeration Documentation

Route status.

Enumerator
RIPNG_VALID 
RIPNG_INVALID 

Definition at line 69 of file ripng.h.

Constructor & Destructor Documentation

ns3::RipNgRoutingTableEntry::RipNgRoutingTableEntry ( void  )

Definition at line 1297 of file ripng.cc.

ns3::RipNgRoutingTableEntry::RipNgRoutingTableEntry ( Ipv6Address  network,
Ipv6Prefix  networkPrefix,
Ipv6Address  nextHop,
uint32_t  interface,
Ipv6Address  prefixToUse 
)

Constructor.

Parameters
networknetwork address
networkPrefixnetwork prefix
nextHopnext hop address to route the packet
interfaceinterface index
prefixToUseprefix that should be used for source address for this destination

Definition at line 1302 of file ripng.cc.

ns3::RipNgRoutingTableEntry::RipNgRoutingTableEntry ( Ipv6Address  network,
Ipv6Prefix  networkPrefix,
uint32_t  interface 
)

Constructor.

Parameters
networknetwork address
networkPrefixnetwork prefix
interfaceinterface index

Definition at line 1308 of file ripng.cc.

ns3::RipNgRoutingTableEntry::~RipNgRoutingTableEntry ( )
virtual

Definition at line 1314 of file ripng.cc.

Member Function Documentation

uint8_t ns3::RipNgRoutingTableEntry::GetRouteMetric ( void  ) const

Get the route metric.

Returns
the route metric

Definition at line 1342 of file ripng.cc.

References m_metric.

Referenced by ns3::operator<<(), and ns3::RipNg::PrintRoutingTable().

+ Here is the caller graph for this function:

RipNgRoutingTableEntry::Status_e ns3::RipNgRoutingTableEntry::GetRouteStatus ( void  ) const

Get the route status.

Returns
the route status

Definition at line 1356 of file ripng.cc.

References m_status.

Referenced by ns3::RipNg::Lookup(), and ns3::RipNg::PrintRoutingTable().

+ Here is the caller graph for this function:

uint16_t ns3::RipNgRoutingTableEntry::GetRouteTag ( void  ) const

Get the route tag.

Returns
the route tag

Definition at line 1328 of file ripng.cc.

References m_tag.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

bool ns3::RipNgRoutingTableEntry::IsRouteChanged ( void  ) const

Get the route changed status.

Returns
true if route is changed

Definition at line 1366 of file ripng.cc.

References m_changed.

void ns3::RipNgRoutingTableEntry::SetRouteChanged ( bool  changed)

Set the route as changed.

The changed routes are scheduled for a Triggered Update. After a Triggered Update, all the changed flags are cleared from the routing table.

Parameters
trueif route is changed

Definition at line 1361 of file ripng.cc.

References m_changed.

Referenced by ns3::RipNg::AddNetworkRouteTo(), ns3::RipNg::HandleResponses(), and ns3::RipNg::InvalidateRoute().

+ Here is the caller graph for this function:

void ns3::RipNgRoutingTableEntry::SetRouteMetric ( uint8_t  routeMetric)

Set the route metric.

Parameters
routeMetricthe route metric

Definition at line 1333 of file ripng.cc.

References m_changed, and m_metric.

Referenced by ns3::RipNg::AddNetworkRouteTo(), ns3::RipNg::HandleResponses(), and ns3::RipNg::InvalidateRoute().

+ Here is the caller graph for this function:

void ns3::RipNgRoutingTableEntry::SetRouteStatus ( Status_e  status)

Set the route status.

Parameters
statusthe route status

Definition at line 1347 of file ripng.cc.

References m_changed, and m_status.

Referenced by ns3::RipNg::AddNetworkRouteTo(), ns3::RipNg::HandleResponses(), and ns3::RipNg::InvalidateRoute().

+ Here is the caller graph for this function:

void ns3::RipNgRoutingTableEntry::SetRouteTag ( uint16_t  routeTag)

Set the route tag.

Parameters
routeTagthe route tag

Definition at line 1319 of file ripng.cc.

References m_changed, and m_tag.

Referenced by ns3::RipNg::HandleResponses().

+ Here is the caller graph for this function:

Member Data Documentation

bool ns3::RipNgRoutingTableEntry::m_changed
private

route has been updated

Definition at line 154 of file ripng.h.

Referenced by IsRouteChanged(), SetRouteChanged(), SetRouteMetric(), SetRouteStatus(), and SetRouteTag().

uint8_t ns3::RipNgRoutingTableEntry::m_metric
private

route metric

Definition at line 152 of file ripng.h.

Referenced by GetRouteMetric(), and SetRouteMetric().

Status_e ns3::RipNgRoutingTableEntry::m_status
private

route status

Definition at line 153 of file ripng.h.

Referenced by GetRouteStatus(), and SetRouteStatus().

uint16_t ns3::RipNgRoutingTableEntry::m_tag
private

route tag

Definition at line 151 of file ripng.h.

Referenced by GetRouteTag(), and SetRouteTag().


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