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

Private Attributes

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

Additional Inherited Members

- Static Public Member Functions inherited from ns3::Ipv6RoutingTableEntry
static Ipv6RoutingTableEntry CreateDefaultRoute (Ipv6Address nextHop, uint32_t interface)
 Create a default route.
 
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.
 

Detailed Description

RipNg Routing Table Entry.

Definition at line 53 of file ripng.h.

Member Enumeration Documentation

◆ Status_e

Route status.

Enumerator
RIPNG_VALID 
RIPNG_INVALID 

Definition at line 59 of file ripng.h.

Constructor & Destructor Documentation

◆ RipNgRoutingTableEntry() [1/3]

ns3::RipNgRoutingTableEntry::RipNgRoutingTableEntry ( )

Definition at line 1400 of file ripng.cc.

◆ RipNgRoutingTableEntry() [2/3]

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 1408 of file ripng.cc.

◆ RipNgRoutingTableEntry() [3/3]

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

Constructor.

Parameters
networknetwork address
networkPrefixnetwork prefix
interfaceinterface index

Definition at line 1425 of file ripng.cc.

◆ ~RipNgRoutingTableEntry()

ns3::RipNgRoutingTableEntry::~RipNgRoutingTableEntry ( )
override

Definition at line 1437 of file ripng.cc.

Member Function Documentation

◆ GetRouteMetric()

uint8_t ns3::RipNgRoutingTableEntry::GetRouteMetric ( ) const

Get the route metric.

Returns
the route metric

Definition at line 1468 of file ripng.cc.

References m_metric.

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

+ Here is the caller graph for this function:

◆ GetRouteStatus()

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

Get the route status.

Returns
the route status

Definition at line 1484 of file ripng.cc.

References m_status.

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

+ Here is the caller graph for this function:

◆ GetRouteTag()

uint16_t ns3::RipNgRoutingTableEntry::GetRouteTag ( ) const

Get the route tag.

Returns
the route tag

Definition at line 1452 of file ripng.cc.

References m_tag.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

◆ IsRouteChanged()

bool ns3::RipNgRoutingTableEntry::IsRouteChanged ( ) const

Get the route changed status.

Returns
true if route is changed

Definition at line 1496 of file ripng.cc.

References m_changed.

◆ SetRouteChanged()

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
changedtrue if route is changed

Definition at line 1490 of file ripng.cc.

References m_changed.

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

+ Here is the caller graph for this function:

◆ SetRouteMetric()

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

Set the route metric.

Parameters
routeMetricthe route metric

Definition at line 1458 of file ripng.cc.

References m_changed, and m_metric.

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

+ Here is the caller graph for this function:

◆ SetRouteStatus()

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

Set the route status.

Parameters
statusthe route status

Definition at line 1474 of file ripng.cc.

References m_changed, and m_status.

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

+ Here is the caller graph for this function:

◆ SetRouteTag()

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

Set the route tag.

Parameters
routeTagthe route tag

Definition at line 1442 of file ripng.cc.

References m_changed, and m_tag.

Member Data Documentation

◆ m_changed

bool ns3::RipNgRoutingTableEntry::m_changed
private

route has been updated

Definition at line 149 of file ripng.h.

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

◆ m_metric

uint8_t ns3::RipNgRoutingTableEntry::m_metric
private

route metric

Definition at line 147 of file ripng.h.

Referenced by GetRouteMetric(), and SetRouteMetric().

◆ m_status

Status_e ns3::RipNgRoutingTableEntry::m_status
private

route status

Definition at line 148 of file ripng.h.

Referenced by GetRouteStatus(), and SetRouteStatus().

◆ m_tag

uint16_t ns3::RipNgRoutingTableEntry::m_tag
private

route tag

Definition at line 146 of file ripng.h.

Referenced by GetRouteTag(), and SetRouteTag().


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