|
INET Framework for OMNeT++/OMNEST
|
Interface for DUAL automaton. More...
#include <IEigrpPdm.h>
Public Member Functions | |
| virtual EigrpRouteSource< IPAddress > * | updateRoute (EigrpRoute< IPAddress > *route, uint64_t dmin, bool *rtableChanged, bool removeUnreach=false)=0 |
| Function finds successors to the destination network. More... | |
| virtual void | sendUpdate (int destNeighbor, EigrpRoute< IPAddress > *route, EigrpRouteSource< IPAddress > *source, bool forcePoisonRev, const char *reason)=0 |
| Sends update message to specified neighbor. More... | |
| virtual void | sendQuery (int destNeighbor, EigrpRoute< IPAddress > *route, EigrpRouteSource< IPAddress > *source, bool forcePoisonRev=false)=0 |
| Sends query message to specified neighbor. More... | |
| virtual void | sendReply (EigrpRoute< IPAddress > *route, int destNeighbor, EigrpRouteSource< IPAddress > *source, bool forcePoisonRev=false, bool isUnreachable=false)=0 |
| Sends reply message to specified neighbor. More... | |
| virtual uint64_t | findRouteDMin (EigrpRoute< IPAddress > *route)=0 |
| Returns minimal distance to destination network. More... | |
| virtual bool | hasFeasibleSuccessor (EigrpRoute< IPAddress > *route, uint64_t &resultDmin)=0 |
| Determine whether there are Feasibles Successors for specified route. More... | |
| virtual bool | setReplyStatusTable (EigrpRoute< IPAddress > *route, EigrpRouteSource< IPAddress > *source, bool forcePoisonRev, int *neighCount, int *stubCount)=0 |
| Sets Reply Status Table for specified network. More... | |
| virtual bool | hasNeighborForUpdate (EigrpRouteSource< IPAddress > *source)=0 |
| Returns tru if there are recipients for update message, else false. More... | |
| virtual EigrpRouteSource< IPAddress > * | getBestSuccessor (EigrpRoute< IPAddress > *route)=0 |
| Returns best successor for specified network. More... | |
| virtual void | setDelayedRemove (int neighId, EigrpRouteSource< IPAddress > *src)=0 |
| After receiving Ack from neighbor with neighId will be route removed from TT. More... | |
| virtual void | sendUpdateToStubs (EigrpRouteSource< IPAddress > *succ, EigrpRouteSource< IPAddress > *oldSucc, EigrpRoute< IPAddress > *route)=0 |
| Sends update message to all stub neighbors. More... | |
Static Public Attributes | |
| static const int | UNSPEC_RECEIVER = 0 |
| Unspecified address of receiver - all neighbors. More... | |
| static const int | STUB_RECEIVER = -1 |
| All stub neighbors. More... | |
| static const int | CONNECTED_ROUTE = 0 |
| static const int | UNSPEC_SENDER = 0 |
| Unspecified address of sender - input event source. More... | |
| static const bool | RT_UNREACHABLE = true |
Interface for DUAL automaton.
|
pure virtual |
Returns minimal distance to destination network.
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Returns best successor for specified network.
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Determine whether there are Feasibles Successors for specified route.
| resultDmin | return parameter with minimal distance to the destination. |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Returns tru if there are recipients for update message, else false.
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Sends query message to specified neighbor.
| destNeighbor | ID of destination neighbor. If parameter is set to 0 then sends message to all neighbors. |
| route | route network |
| source | route |
| forcePoisonRev | apply Poison Reverse instead of Split Horizon to the route. |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
Referenced by inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition11().
|
pure virtual |
Sends reply message to specified neighbor.
| route | route network |
| destNeighbor | ID of destination neighbor. |
| source | route |
| forcePoisonRev | apply Poison Reverse rule to the route |
| isUnreachable | route in message will have inf metric (regardless of Poisson Reverse) |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Sends update message to specified neighbor.
| destNeighbor | ID of destination neighbor. If parameter is set to 0 then sends message to all neighbors. |
| route | route network |
| source | route |
| forcePoisonRev | force poison reverse rule instead of split horizon |
| reason | text description for user. |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
Referenced by inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition13(), inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition14(), inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition15(), inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition16(), and inet::eigrp::EigrpDual< inet::Ipv4Address >::processTransition2().
|
pure virtual |
Sends update message to all stub neighbors.
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
After receiving Ack from neighbor with neighId will be route removed from TT.
| neighId | ID of neighbor |
| src | route |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Sets Reply Status Table for specified network.
| route | route network |
| forcePoisonRev | use Poison Reverse instead of Split Horizon |
| neighCount | number of all neighbors. |
| stubCount | number of stub neighbors. |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
pure virtual |
Function finds successors to the destination network.
| route | destination network |
| dmin | minimal distance to the destination |
| rtableChanged | return parameter, true if occurs change in the routing table |
| removeUnreach | invalidate unreachable sources of the route. |
Implemented in inet::eigrp::EigrpIpv6Pdm, and inet::eigrp::EigrpIpv4Pdm.
|
static |
|
static |
|
static |
All stub neighbors.
Referenced by inet::eigrp::EigrpIpv4Pdm::msgToAllIfaces(), inet::eigrp::EigrpIpv6Pdm::msgToAllIfaces(), inet::eigrp::EigrpIpv4Pdm::sendUpdateToStubs(), and inet::eigrp::EigrpIpv6Pdm::sendUpdateToStubs().
|
static |
Unspecified address of receiver - all neighbors.
Referenced by inet::eigrp::EigrpIpv4Pdm::msgToIface(), and inet::eigrp::EigrpIpv6Pdm::msgToIface().
|
static |
Unspecified address of sender - input event source.
Referenced by inet::eigrp::EigrpIpv4Pdm::processRTRouteDel(), and inet::eigrp::EigrpIpv6Pdm::processRTRouteDel().