|
INET Framework for OMNeT++/OMNEST
|
IPv4 unicast route in IIPv4RoutingTable. More...
#include <IPv4Route.h>
Public Types | |
| 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 | |
| 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 |
Protected Member Functions | |
| void | changed (int fieldCode) |
Private Member Functions | |
| IPv4Route (const IPv4Route &obj) | |
| IPv4Route & | operator= (const IPv4Route &obj) |
Private Attributes | |
| IIPv4RoutingTable * | rt |
| the routing table in which this route is inserted, or nullptr More... | |
| IPv4Address | dest |
| Destination. More... | |
| IPv4Address | netmask |
| Route mask. More... | |
| IPv4Address | gateway |
| Next hop. More... | |
| InterfaceEntry * | interfacePtr |
| interface More... | |
| SourceType | sourceType |
| manual, routing prot, etc. More... | |
| unsigned int | adminDist |
| Cisco like administrative distance. More... | |
| int | metric |
| Metric ("cost" to reach the destination) More... | |
| cObject * | source |
| Object identifying the source. More... | |
| cObject * | protocolData |
| Routing Protocol specific data. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from inet::IRoute | |
| static const char * | sourceTypeName (SourceType sourceType) |
IPv4 unicast route in IIPv4RoutingTable.
Cisco like administrative distances.
| Enumerator | |
|---|---|
| dDirectlyConnected | |
| dStatic | |
| dEIGRPSummary | |
| dBGPExternal | |
| dEIGRPInternal | |
| dIGRP | |
| dOSPF | |
| dISIS | |
| dRIP | |
| dEGP | |
| dODR | |
| dEIGRPExternal | |
| dBGPInternal | |
| dDHCPlearned | |
| dUnknown | |
|
private |
|
inline |
|
virtual |
|
protected |
Referenced by inet::IPv4MulticastRoute::addOutInterface(), inet::IPv4MulticastRoute::clearOutInterfaces(), inet::IPv4MulticastRoute::removeOutInterface(), and inet::IPv4MulticastRoute::setInInterface().
|
overridevirtual |
| bool inet::IPv4Route::equals | ( | const IPv4Route & | route | ) | const |
|
inline |
Route source specific preference value.
Referenced by inet::PIMSM::addNewRouteG(), inet::PIMSM::addNewRouteSG(), inet::IPv4RoutingTable::routeLessThan(), and inet::PIMDM::unroutableMulticastPacketArrived().
|
inline |
Destination address prefix to match.
Referenced by inet::ospf::Router::addExternalRouteInIPTable(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::bgp::BGPRouting::checkExternalRoute(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::bgp::BGPRouting::deleteBGPRoutingEntry(), inet::IPv4NetworkConfigurator::dumpConfig(), inet::NetworkInfo::dumpRoutingInfo(), inet::LDP::findPeerAddrFromInterface(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::DHCPClient::finish(), inet::ospf::Router::getRoutesToASBoundaryRouter(), inet::ospf::Router::hasRouteToASBoundaryRouter(), inet::IPv4RoutingTable::internalAddRoute(), inet::bgp::BGPRouting::isInRoutingTable(), inet::bgp::BGPRouting::isInTable(), inet::ospf::Router::lookup(), inet::bgp::operator<<(), inet::ospf::operator<<(), inet::ospf::RoutingTableEntry::operator==(), inet::ospf::Area::originateSummaryLSA(), inet::IPv4RoutingTable::printRoutingTable(), inet::LDP::rebuildFecList(), inet::TED::rebuildRoutingTable(), inet::PIMDM::receiveSignal(), inet::ospf::Area::recheckSummaryLSAs(), inet::visualizer::RoutingTableVisualizerBase::DirectiveResolver::resolveDirective(), inet::IPv4RoutingTable::routeLessThan(), inet::bgp::RoutingTableEntry::RoutingTableEntry(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::bgp::BGPRouting::updateSendProcess().
|
inlineoverridevirtual |
Destination address prefix to match.
Implements inet::IRoute.
|
inline |
Next hop address.
Referenced by inet::PIMSM::addNewRouteG(), inet::PIMSM::addNewRouteSG(), inet::visualizer::RoutingTableVisualizerBase::addRouteVisualizations(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::IPv4NetworkConfigurator::dumpConfig(), inet::NetworkInfo::dumpRoutingInfo(), inet::DHCPClient::finish(), inet::bgp::operator<<(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::IPv4RoutingTable::printRoutingTable(), inet::LDP::rebuildFecList(), inet::TED::rebuildRoutingTable(), inet::visualizer::RoutingTableVisualizerBase::DirectiveResolver::resolveDirective(), inet::IPv4NetworkConfigurator::routesHaveSameColor(), inet::IPv4::routeUnicastPacket(), inet::bgp::RoutingTableEntry::RoutingTableEntry(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::PIMDM::unroutableMulticastPacketArrived(), and inet::PIMSM::unroutableMulticastPacketArrived().
|
inlineoverridevirtual |
Next hop interface.
Implements inet::IRoute.
Referenced by inet::PIMSM::addNewRouteG(), inet::PIMSM::addNewRouteSG(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::IPv4RoutingTable::deleteInterfaceRoutes(), inet::IPv4::determineOutgoingInterfaceForMulticastDatagram(), inet::NetworkInfo::dumpRoutingInfo(), inet::LDP::findPeerAddrFromInterface(), inet::IPv4RoutingTable::internalAddRoute(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::IPv4RoutingTable::printRoutingTable(), inet::PIMDM::receiveSignal(), inet::visualizer::RoutingTableVisualizerBase::DirectiveResolver::resolveDirective(), inet::IPv4NetworkConfigurator::routesHaveSameColor(), inet::IPv4::routeUnicastPacket(), inet::bgp::RoutingTableEntry::RoutingTableEntry(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::PIMDM::rpfInterfaceHasChanged(), inet::PIMDM::unroutableMulticastPacketArrived(), and inet::PIMSM::unroutableMulticastPacketArrived().
| const char * inet::IPv4Route::getInterfaceName | ( | ) | const |
Convenience method.
Referenced by inet::IPv4NetworkConfigurator::dumpConfig(), inet::NetworkInfo::dumpRoutingInfo(), inet::DHCPClient::finish(), inet::ospf::operator<<(), and inet::TED::rebuildRoutingTable().
|
inlineoverridevirtual |
"Cost" to reach the destination
Implements inet::IRoute.
Referenced by inet::PIMSM::addNewRouteG(), inet::PIMSM::addNewRouteSG(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::IPv4NetworkConfigurator::dumpConfig(), inet::NetworkInfo::dumpRoutingInfo(), inet::DHCPClient::finish(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::IPv4RoutingTable::printRoutingTable(), inet::IPv4RoutingTable::routeLessThan(), inet::IPv4NetworkConfigurator::routesHaveSameColor(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), and inet::PIMDM::unroutableMulticastPacketArrived().
|
inline |
Represents length of prefix to match.
Referenced by inet::ospf::Router::addExternalRouteInIPTable(), inet::ospf::Area::calculateInterAreaRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::bgp::BGPRouting::deleteBGPRoutingEntry(), inet::IPv4NetworkConfigurator::dumpConfig(), inet::NetworkInfo::dumpRoutingInfo(), inet::ospf::Area::findSameOrWorseCostRoute(), inet::DHCPClient::finish(), inet::IPv4RoutingTable::internalAddRoute(), inet::bgp::BGPRouting::isInRoutingTable(), inet::bgp::BGPRouting::isInTable(), inet::ospf::Router::lookup(), inet::bgp::operator<<(), inet::ospf::operator<<(), inet::ospf::RoutingTableEntry::operator==(), inet::ospf::Area::originateSummaryLSA(), inet::IPv4RoutingTable::printRoutingTable(), inet::LDP::rebuildFecList(), inet::PIMDM::receiveSignal(), inet::visualizer::RoutingTableVisualizerBase::DirectiveResolver::resolveDirective(), inet::IPv4RoutingTable::routeLessThan(), inet::bgp::RoutingTableEntry::RoutingTableEntry(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::bgp::BGPRouting::updateSendProcess().
|
inlineoverridevirtual |
Next hop address.
Implements inet::IRoute.
|
inlineoverridevirtual |
Represents length of prefix to match.
Implements inet::IRoute.
|
inlineoverridevirtual |
Implements inet::IRoute.
|
inline |
Referenced by inet::IPv4RoutingTable::deleteInterfaceRoutes(), inet::IPv4RoutingTable::deleteRoute(), getRoutingTableAsGeneric(), inet::IPv4MulticastRoute::getRoutingTableAsGeneric(), inet::IPv4RoutingTable::purge(), inet::IPv4RoutingTable::removeRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
overridevirtual |
The routing table in which this route is inserted, or nullptr.
Implements inet::IRoute.
|
inlineoverridevirtual |
Source of route.
Implements inet::IRoute.
Referenced by inet::IPv4NetworkConfigurator::configureRoutingTable().
|
inlineoverridevirtual |
Source of route.
MANUAL (read from file), from routing protocol, etc
Implements inet::IRoute.
Referenced by inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::NetworkInfo::dumpRoutingInfo(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::bgp::BGPRouting::ospfExist(), inet::IPv4NetworkConfigurator::routesHaveSameColor(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::PIMDM::rpfInterfaceHasChanged(), and inet::PIMDM::unroutableMulticastPacketArrived().
|
overridevirtual |
Referenced by inet::IPv4RoutingTable::addRoute(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::IPv4RoutingTable::deleteRoute(), inet::IPv4MulticastRoute::detailedInfo(), inet::operator<<(), inet::IPv4RoutingTable::removeRoute(), and inet::visualizer::RoutingTableVisualizerBase::DirectiveResolver::resolveDirective().
|
inlinevirtual |
|
inline |
|
inline |
|
inlinevirtual |
Referenced by inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlinevirtual |
Referenced by inet::FlatNetworkConfigurator::addDefaultRoutes(), inet::ospf::Router::addExternalRouteInIPTable(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::DHCPClient::bindLease(), inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::bgp::BGPRouting::decisionProcess(), inet::FlatNetworkConfigurator::fillRoutingTables(), inet::bgp::BGPRouting::loadASConfig(), inet::ospf::Router::lookup(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::bgp::BGPRouting::processMessage(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Implements inet::IRoute.
Referenced by setDestination().
|
inlinevirtual |
Referenced by inet::ospf::RoutingTableEntry::addNextHop(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::DHCPClient::bindLease(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Implements inet::IRoute.
Referenced by inet::FlatNetworkConfigurator::addDefaultRoutes(), inet::ospf::Router::addExternalRouteInIPTable(), inet::ospf::RoutingTableEntry::addNextHop(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::DHCPClient::bindLease(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::FlatNetworkConfigurator::fillRoutingTables(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Implements inet::IRoute.
Referenced by inet::ospf::Router::addExternalRouteInIPTable(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::RoutingTableEntry::setCost(), inet::ospf::RoutingTableEntry::setPathType(), inet::ospf::RoutingTableEntry::setType2Cost(), inet::ospf::Router::updateExternalRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlinevirtual |
Referenced by inet::FlatNetworkConfigurator::addDefaultRoutes(), inet::ospf::Router::addExternalRouteInIPTable(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::DHCPClient::bindLease(), inet::ospf::Router::calculateASExternalRoutes(), inet::ospf::Area::calculateShortestPathTree(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::ospf::Area::createRoutingTableEntryFromSummaryLSA(), inet::bgp::BGPRouting::decisionProcess(), inet::FlatNetworkConfigurator::fillRoutingTables(), inet::bgp::BGPRouting::loadASConfig(), inet::ospf::Router::lookup(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::bgp::BGPRouting::processMessage(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Implements inet::IRoute.
|
inlineoverridevirtual |
Implements inet::IRoute.
|
inlineoverridevirtual |
Implements inet::IRoute.
|
inlinevirtual |
To be called by the routing table when this route is added or removed from it.
Referenced by inet::IPv4RoutingTable::internalAddRoute(), inet::IPv4RoutingTable::removeRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Implements inet::IRoute.
Referenced by inet::IPv4NetworkConfigurator::configureRoutingTable(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
inlineoverridevirtual |
Referenced by inet::FlatNetworkConfigurator::addDefaultRoutes(), inet::ospf::Router::addExternalRouteInIPTable(), inet::IPv4NetworkConfigurator::addStaticRoutes(), inet::DHCPClient::bindLease(), inet::IPv4NetworkConfigurator::configureRoutingTable(), inet::bgp::BGPRouting::decisionProcess(), inet::FlatNetworkConfigurator::fillRoutingTables(), inet::IPv4NetworkConfigurator::optimizeRoutes(), inet::RoutingTableParser::parseRouting(), inet::IPv4NetworkConfigurator::readManualRouteConfiguration(), inet::TED::rebuildRoutingTable(), inet::ospf::RoutingTableEntry::RoutingTableEntry(), inet::ospf::Router::updateExternalRoute(), and inet::IPv4RoutingTable::updateNetmaskRoutes().
|
private |
Cisco like administrative distance.
|
private |
|
private |
|
private |
interface
Referenced by equals(), getInterfaceName(), and info().
|
private |
Metric ("cost" to reach the destination)
Referenced by equals(), info(), and inet::IPv4MulticastRoute::info().
|
private |
|
private |
Routing Protocol specific data.
Referenced by info(), and ~IPv4Route().
|
private |
the routing table in which this route is inserted, or nullptr
Referenced by changed(), inet::IPv4MulticastRoute::changed(), and equals().
|
private |
Object identifying the source.
|
private |
manual, routing prot, etc.
Referenced by equals(), info(), and inet::IPv4MulticastRoute::info().