INET Framework for OMNeT++/OMNEST
|
#include <OSPFRoutingTableEntry.h>
Public Types | |
enum | RoutingPathType { INTRAAREA = 0, INTERAREA = 1, TYPE1_EXTERNAL = 2, TYPE2_EXTERNAL = 3 } |
typedef unsigned char | RoutingDestinationType |
Public Types inherited from inet::IPv4Route | |
enum | RouteAdminDist { dDirectlyConnected = 0, dStatic = 1, dEIGRPSummary = 5, dBGPExternal = 20, dEIGRPInternal = 90, dIGRP = 100, dOSPF = 110, dISIS = 115, dRIP = 120, dEGP = 140, dODR = 160, dEIGRPExternal = 170, dBGPInternal = 200, dDHCPlearned = 254, dUnknown = 255 } |
Cisco like administrative distances. More... | |
Public Types inherited from inet::IRoute | |
enum | SourceType { MANUAL, IFACENETMASK, ROUTER_ADVERTISEMENT, OWN_ADV_PREFIX, ICMP_REDIRECT, RIP, OSPF, BGP, ZEBRA, MANET, MANET2, DYMO, AODV } |
Specifies where the route comes from. More... | |
enum | ChangeCodes { F_DESTINATION, F_PREFIX_LENGTH, F_NEXTHOP, F_IFACE, F_SOURCE, F_TYPE, F_ADMINDIST, F_METRIC, F_EXPIRYTIME, F_LAST } |
Field codes for NB_ROUTE_CHANGED notifications. More... | |
Public Member Functions | |
RoutingTableEntry (IInterfaceTable *ift) | |
RoutingTableEntry (const RoutingTableEntry &entry) | |
virtual | ~RoutingTableEntry () |
bool | operator== (const RoutingTableEntry &entry) const |
bool | operator!= (const RoutingTableEntry &entry) const |
void | setDestinationType (RoutingDestinationType type) |
RoutingDestinationType | getDestinationType () const |
void | setOptionalCapabilities (OSPFOptions options) |
OSPFOptions | getOptionalCapabilities () const |
void | setArea (AreaID source) |
AreaID | getArea () const |
void | setPathType (RoutingPathType type) |
RoutingPathType | getPathType () const |
void | setCost (Metric pathCost) |
Metric | getCost () const |
void | setType2Cost (Metric pathCost) |
Metric | getType2Cost () const |
void | setLinkStateOrigin (const OSPFLSA *lsa) |
const OSPFLSA * | getLinkStateOrigin () const |
void | addNextHop (NextHop hop) |
void | clearNextHops () |
unsigned int | getNextHopCount () const |
NextHop | getNextHop (unsigned int index) const |
Public Member Functions inherited from inet::IPv4Route | |
IPv4Route () | |
virtual | ~IPv4Route () |
virtual std::string | info () const override |
virtual std::string | detailedInfo () const override |
bool | operator== (const IPv4Route &route) const |
bool | operator!= (const IPv4Route &route) const |
bool | equals (const IPv4Route &route) const |
virtual void | setRoutingTable (IIPv4RoutingTable *rt) |
To be called by the routing table when this route is added or removed from it. More... | |
IIPv4RoutingTable * | getRoutingTable () const |
virtual bool | isValid () const |
test validity of route entry, e.g. More... | |
virtual void | setDestination (IPv4Address _dest) |
virtual void | setNetmask (IPv4Address _netmask) |
virtual void | setGateway (IPv4Address _gateway) |
virtual void | setInterface (InterfaceEntry *_interfacePtr) override |
virtual void | setSourceType (SourceType _source) override |
virtual void | setAdminDist (unsigned int _adminDist) |
virtual void | setMetric (int _metric) override |
IPv4Address | getDestination () const |
Destination address prefix to match. More... | |
IPv4Address | getNetmask () const |
Represents length of prefix to match. More... | |
IPv4Address | getGateway () const |
Next hop address. More... | |
InterfaceEntry * | getInterface () const override |
Next hop interface. More... | |
const char * | getInterfaceName () const |
Convenience method. More... | |
SourceType | getSourceType () const override |
Source of route. More... | |
unsigned int | getAdminDist () const |
Route source specific preference value. More... | |
int | getMetric () const override |
"Cost" to reach the destination More... | |
void | setSource (cObject *_source) override |
cObject * | getSource () const override |
Source of route. More... | |
cObject * | getProtocolData () const override |
void | setProtocolData (cObject *protocolData) override |
virtual IRoutingTable * | getRoutingTableAsGeneric () const override |
The routing table in which this route is inserted, or nullptr. More... | |
virtual void | setDestination (const L3Address &dest) override |
virtual void | setPrefixLength (int len) override |
virtual void | setNextHop (const L3Address &nextHop) override |
virtual L3Address | getDestinationAsGeneric () const override |
Destination address prefix to match. More... | |
virtual int | getPrefixLength () const override |
Represents length of prefix to match. More... | |
virtual L3Address | getNextHopAsGeneric () const override |
Next hop address. More... | |
Public Member Functions inherited from inet::IRoute | |
virtual | ~IRoute () |
virtual void | setSourceType (SourceType type)=0 |
Static Public Attributes | |
static const unsigned char | NETWORK_DESTINATION = 0 |
static const unsigned char | AREA_BORDER_ROUTER_DESTINATION = 1 |
static const unsigned char | AS_BOUNDARY_ROUTER_DESTINATION = 2 |
Private Attributes | |
IInterfaceTable * | ift = nullptr |
RoutingDestinationType | destinationType = 0 |
OSPFOptions | optionalCapabilities |
AreaID | area |
RoutingPathType | pathType = (RoutingPathType)-1 |
Metric | cost = 0 |
Metric | type2Cost = 0 |
const OSPFLSA * | linkStateOrigin = nullptr |
std::vector< NextHop > | nextHops |
Additional Inherited Members | |
Static Public Member Functions inherited from inet::IRoute | |
static const char * | sourceTypeName (SourceType sourceType) |
Protected Member Functions inherited from inet::IPv4Route | |
void | changed (int fieldCode) |
typedef unsigned char inet::ospf::RoutingTableEntry::RoutingDestinationType |
inet::ospf::RoutingTableEntry::RoutingTableEntry | ( | IInterfaceTable * | ift | ) |
inet::ospf::RoutingTableEntry::RoutingTableEntry | ( | const RoutingTableEntry & | entry | ) |
void inet::ospf::RoutingTableEntry::addNextHop | ( | NextHop | hop | ) |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), inet::ospf::Area::recheckSummaryLSAs(), and inet::ospf::Router::selectLeastCostRoutingEntry().
|
inline |
Referenced by inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::Router::getRoutesToASBoundaryRouter(), inet::ospf::Router::hasRouteToASBoundaryRouter(), inet::ospf::Router::lookup(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::operator<<(), and inet::ospf::Area::originateSummaryLSA().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::Router::getPreferredEntry(), inet::ospf::Router::lookup(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), and inet::ospf::operator<<().
|
inline |
bool inet::ospf::RoutingTableEntry::operator== | ( | const RoutingTableEntry & | entry | ) | const |
|
inline |
void inet::ospf::RoutingTableEntry::setCost | ( | Metric | pathCost | ) |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), and inet::ospf::Area::createRoutingTableEntryFromSummaryLSA().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), and inet::ospf::Router::lookup().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), and inet::ospf::Area::createRoutingTableEntryFromSummaryLSA().
|
inline |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), and inet::ospf::Area::createRoutingTableEntryFromSummaryLSA().
void inet::ospf::RoutingTableEntry::setPathType | ( | RoutingPathType | type | ) |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), and inet::ospf::Router::lookup().
void inet::ospf::RoutingTableEntry::setType2Cost | ( | Metric | pathCost | ) |
Referenced by inet::ospf::Router::calculateASExternalRoutes().
|
private |
Referenced by operator==().
|
static |
Referenced by inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::Router::installASExternalLSA(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
static |
Referenced by inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::Router::getRoutesToASBoundaryRouter(), inet::ospf::Router::hasRouteToASBoundaryRouter(), inet::ospf::Router::installASExternalLSA(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), and inet::ospf::Area::recheckSummaryLSAs().
|
private |
Referenced by operator==(), setCost(), setPathType(), and setType2Cost().
|
private |
Referenced by operator==().
|
private |
Referenced by addNextHop().
|
private |
Referenced by operator==().
|
static |
Referenced by inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::ospf::Router::lookup(), inet::ospf::Router::notifyAboutRoutingTableChanges(), inet::ospf::operator<<(), inet::ospf::Area::originateSummaryLSA(), inet::ospf::Router::rebuildRoutingTable(), and inet::ospf::Area::recheckSummaryLSAs().
|
private |
Referenced by addNextHop(), and operator==().
|
private |
Referenced by operator==().
|
private |
Referenced by operator==(), setCost(), setPathType(), and setType2Cost().
|
private |
Referenced by operator==(), setCost(), setPathType(), and setType2Cost().