INET Framework for OMNeT++/OMNEST
|
Contains the Traffic Engineering Database and provides public methods to access it from MPLS signalling protocols (LDP, RSVP-TE). More...
#include <TED.h>
Classes | |
struct | edge_t |
Only used internally, during shortest path calculation: edge in the graph we build from links in TELinkStateInfoVector. More... | |
struct | vertex_t |
Only used internally, during shortest path calculation: vertex in the graph we build from links in TELinkStateInfoVector. More... | |
Public Member Functions | |
TED () | |
virtual | ~TED () |
virtual bool | handleOperationStage (LifecycleOperation *operation, int stage, IDoneCallback *doneCallback) override |
Perform one stage of a lifecycle operation. More... | |
virtual bool | checkLinkValidity (TELinkStateInfo link, TELinkStateInfo *&match) |
virtual void | updateTimestamp (TELinkStateInfo *link) |
Public interface to the Traffic Engineering Database | |
virtual IPv4Address | getInterfaceAddrByPeerAddress (IPv4Address peerIP) |
virtual IPv4Address | peerRemoteInterface (IPv4Address peerIP) |
virtual IPv4Address | getPeerByLocalAddress (IPv4Address localInf) |
virtual IPv4Address | primaryAddress (IPv4Address localInf) |
virtual bool | isLocalPeer (IPv4Address inetAddr) |
virtual bool | isLocalAddress (IPv4Address addr) |
virtual unsigned int | linkIndex (IPv4Address localInf) |
virtual unsigned int | linkIndex (IPv4Address advrouter, IPv4Address linkid) |
virtual IPAddressVector | getLocalAddress () |
virtual void | rebuildRoutingTable () |
Public Member Functions inherited from inet::ILifecycle | |
virtual | ~ILifecycle () |
Public Attributes | |
TELinkStateInfoVector | ted |
The link state database. More... | |
Protected Member Functions | |
virtual void | initialize (int stage) override |
virtual int | numInitStages () const override |
virtual void | handleMessage (cMessage *msg) override |
virtual void | initializeTED () |
virtual IPAddressVector | calculateShortestPath (IPAddressVector dest, const TELinkStateInfoVector &topology, double req_bandwidth, int priority) |
virtual int | assignIndex (std::vector< vertex_t > &vertices, IPv4Address nodeAddr) |
std::vector< vertex_t > | calculateShortestPaths (const TELinkStateInfoVector &topology, double req_bandwidth, int priority) |
Protected Attributes | |
IIPv4RoutingTable * | rt = nullptr |
IInterfaceTable * | ift = nullptr |
IPv4Address | routerId |
IPAddressVector | interfaceAddrs |
int | maxMessageId = 0 |
Contains the Traffic Engineering Database and provides public methods to access it from MPLS signalling protocols (LDP, RSVP-TE).
See NED file for more info.
|
protectedvirtual |
Referenced by calculateShortestPaths().
|
protectedvirtual |
|
protected |
Referenced by calculateShortestPath(), and rebuildRoutingTable().
|
virtual |
Referenced by inet::LinkStateRouting::processLINK_STATE_MESSAGE().
|
virtual |
Referenced by rebuildRoutingTable().
|
virtual |
|
virtual |
Referenced by rebuildRoutingTable().
|
overrideprotectedvirtual |
|
overridevirtual |
Perform one stage of a lifecycle operation.
Processing may be done entirely within this method, or may be a longer process that involves nonzero simulation time or several events, and is triggered by this method call.
Return value: true = "done"; false = "not yet done, will invoke doneCallback when done"
Implements inet::ILifecycle.
|
overrideprotectedvirtual |
|
protectedvirtual |
Referenced by handleOperationStage(), and initialize().
|
virtual |
|
virtual |
Referenced by peerRemoteInterface(), and rebuildRoutingTable().
|
virtual |
Referenced by getPeerByLocalAddress(), inet::LDP::processHelloTimeout(), and inet::LDP::processLDPHello().
|
virtual |
|
inlineoverrideprotectedvirtual |
|
virtual |
|
virtual |
|
virtual |
Referenced by initializeTED(), inet::LDP::processHelloTimeout(), inet::LDP::processLDPHello(), and inet::LinkStateRouting::processLINK_STATE_MESSAGE().
|
virtual |
Referenced by inet::LinkStateRouting::receiveSignal().
|
protected |
Referenced by initialize(), and initializeTED().
|
protected |
Referenced by getLocalAddress(), handleOperationStage(), initializeTED(), isLocalAddress(), and rebuildRoutingTable().
|
protected |
Referenced by initialize(), initializeTED(), and updateTimestamp().
|
protected |
|
protected |
Referenced by initialize(), initializeTED(), and rebuildRoutingTable().
TELinkStateInfoVector inet::TED::ted |
The link state database.
(TELinkStateInfoVector is defined in TED.msg)
Referenced by checkLinkValidity(), getInterfaceAddrByPeerAddress(), getPeerByLocalAddress(), inet::LinkStateRouting::handleMessage(), handleOperationStage(), initialize(), initializeTED(), isLocalPeer(), linkIndex(), peerRemoteInterface(), primaryAddress(), inet::LDP::processHelloTimeout(), inet::LDP::processLDPHello(), inet::LinkStateRouting::processLINK_STATE_MESSAGE(), rebuildRoutingTable(), inet::LinkStateRouting::receiveSignal(), and inet::LinkStateRouting::sendToPeers().