|
INET Framework for OMNeT++/OMNEST
|
Base class of PIMSM and PIMDM modules. More...
#include <PIMBase.h>
Classes | |
| struct | AssertMetric |
| struct | Interface |
| struct | RouteEntry |
| struct | SourceAndGroup |
Public Member Functions | |
| PIMBase (PIMInterface::PIMMode mode) | |
| virtual | ~PIMBase () |
Public Member Functions inherited from inet::OperationalBase | |
| OperationalBase () | |
Public Member Functions inherited from inet::ILifecycle | |
| virtual | ~ILifecycle () |
Protected Types | |
| enum | PIMTimerKind { HelloTimer = 1, TriggeredHelloDelay, AssertTimer, PruneTimer, PrunePendingTimer, GraftRetryTimer, UpstreamOverrideTimer, PruneLimitTimer, SourceActiveTimer, StateRefreshTimer, KeepAliveTimer, RegisterStopTimer, ExpiryTimer, JoinTimer } |
Protected Member Functions | |
| virtual int | numInitStages () const override |
| virtual void | initialize (int stage) override |
| void | sendHelloPackets () |
| void | sendHelloPacket (PIMInterface *pimInterface) |
| void | processHelloTimer (cMessage *timer) |
| void | processHelloPacket (PIMHello *pkt) |
| virtual bool | isInitializeStage (int stage) override |
| virtual bool | isNodeStartStage (int stage) override |
| virtual bool | isNodeShutdownStage (int stage) override |
| virtual bool | handleNodeStart (IDoneCallback *doneCallback) override |
| virtual bool | handleNodeShutdown (IDoneCallback *doneCallback) override |
| virtual void | handleNodeCrash () override |
Protected Member Functions inherited from inet::OperationalBase | |
| virtual void | handleMessage (cMessage *msg) override |
| virtual void | handleMessageWhenDown (cMessage *msg) |
| virtual void | handleMessageWhenUp (cMessage *msg)=0 |
| virtual bool | handleOperationStage (LifecycleOperation *operation, int stage, IDoneCallback *doneCallback) override |
| Perform one stage of a lifecycle operation. More... | |
| virtual void | setOperational (bool isOperational) |
Protected Attributes | |
| IIPv4RoutingTable * | rt = nullptr |
| IInterfaceTable * | ift = nullptr |
| PIMInterfaceTable * | pimIft = nullptr |
| PIMNeighborTable * | pimNbt = nullptr |
| bool | isUp = false |
| bool | isEnabled = false |
| const char * | hostname = nullptr |
| double | helloPeriod = 0 |
| double | holdTime = 0 |
| int | designatedRouterPriority = 0 |
| PIMInterface::PIMMode | mode = (PIMInterface::PIMMode)0 |
| uint32_t | generationID = 0 |
| cMessage * | helloTimer = nullptr |
Protected Attributes inherited from inet::OperationalBase | |
| bool | isOperational |
| simtime_t | lastChange |
Static Protected Attributes | |
| static const IPv4Address | ALL_PIM_ROUTERS_MCAST |
| static simsignal_t | sentHelloPkSignal = registerSignal("sentHelloPk") |
| static simsignal_t | rcvdHelloPkSignal = registerSignal("rcvdHelloPk") |
|
protected |
|
inline |
|
virtual |
|
overrideprotectedvirtual |
Reimplemented from inet::OperationalBase.
Reimplemented in inet::PIMDM, and inet::PIMSM.
Referenced by inet::PIMSM::handleNodeCrash(), and inet::PIMDM::handleNodeCrash().
|
overrideprotectedvirtual |
Reimplemented from inet::OperationalBase.
Reimplemented in inet::PIMDM, and inet::PIMSM.
Referenced by inet::PIMSM::handleNodeShutdown(), and inet::PIMDM::handleNodeShutdown().
|
overrideprotectedvirtual |
Reimplemented from inet::OperationalBase.
Reimplemented in inet::PIMDM, and inet::PIMSM.
Referenced by inet::PIMSM::handleNodeStart(), and inet::PIMDM::handleNodeStart().
|
overrideprotectedvirtual |
Reimplemented from inet::OperationalBase.
Reimplemented in inet::PIMDM, and inet::PIMSM.
Referenced by inet::PIMSM::initialize(), and inet::PIMDM::initialize().
|
inlineoverrideprotectedvirtual |
Implements inet::OperationalBase.
|
inlineoverrideprotectedvirtual |
Implements inet::OperationalBase.
|
inlineoverrideprotectedvirtual |
Implements inet::OperationalBase.
|
inlineoverrideprotectedvirtual |
|
protected |
Referenced by inet::PIMSM::handleMessageWhenUp().
|
protected |
Referenced by inet::PIMSM::handleMessageWhenUp().
|
protected |
|
protected |
|
staticprotected |
Referenced by inet::PIMSM::sendPIMAssert(), inet::PIMSM::sendPIMJoin(), and inet::PIMSM::sendPIMPrune().
|
protected |
Referenced by inet::PIMSM::updateDesignatedRouterAddress().
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by inet::PIMSM::processJoinPrunePacket().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
Referenced by inet::PIMSM::addNewRouteG(), inet::PIMSM::addNewRouteSG(), inet::PIMSM::clearRoutes(), inet::PIMSM::deleteMulticastRoute(), inet::PIMSM::findIPv4Route(), inet::PIMSM::multicastPacketForwarded(), inet::PIMSM::sendPIMJoin(), inet::PIMSM::sendPIMPrune(), inet::PIMSM::sendPIMRegisterNull(), inet::PIMSM::sendPIMRegisterStop(), and inet::PIMSM::unroutableMulticastPacketArrived().
|
staticprotected |