INET Framework for OMNeT++/OMNEST
|
Public Types | |
enum | Flags { HAS_CONNECTED_RECEIVERS = 0x01 } |
enum | PruneState { NO_INFO, PRUNE_PENDING, PRUNED } |
![]() | |
enum | AssertState { NO_ASSERT_INFO, I_LOST_ASSERT, I_WON_ASSERT } |
Public Member Functions | |
DownstreamInterface (Route *owner, InterfaceEntry *ie) | |
~DownstreamInterface () | |
Route * | route () const |
PIMDM * | pimdm () const |
bool | hasConnectedReceivers () const |
void | setHasConnectedReceivers (bool value) |
bool | isInOlist () const |
void | startPruneTimer (double holdTime) |
The method is used to create PIMPrune timer. More... | |
void | stopPruneTimer () |
void | startPrunePendingTimer (double overrideInterval) |
void | stopPrunePendingTimer () |
![]() | |
Interface (RouteEntry *owner, InterfaceEntry *ie) | |
virtual | ~Interface () |
bool | isFlagSet (int flag) const |
void | setFlags (int flags) |
void | clearFlag (int flag) |
void | setFlag (int flag, bool value) |
void | startAssertTimer (double assertTime) |
void | deleteAssertInfo () |
Public Attributes | |
PruneState | pruneState |
cMessage * | pruneTimer |
cMessage * | prunePendingTimer |
![]() | |
RouteEntry * | owner |
InterfaceEntry * | ie |
int | flags |
AssertState | assertState |
cMessage * | assertTimer |
AssertMetric | winnerMetric |
|
inline |
inet::PIMDM::DownstreamInterface::~DownstreamInterface | ( | ) |
|
inline |
bool inet::PIMDM::DownstreamInterface::isInOlist | ( | ) | const |
Referenced by inet::PIMDM::PIMDMOutInterface::isEnabled(), inet::PIMDM::multicastReceiverAdded(), inet::PIMDM::multicastReceiverRemoved(), and inet::PIMDM::processGraft().
|
inline |
|
inline |
Referenced by inet::PIMDM::processPrunePendingTimer(), and inet::PIMDM::processPruneTimer().
|
inline |
Referenced by inet::PIMDM::multicastReceiverAdded(), and inet::PIMDM::unroutableMulticastPacketArrived().
void inet::PIMDM::DownstreamInterface::startPrunePendingTimer | ( | double | overrideInterval | ) |
Referenced by inet::PIMDM::processPrune().
void inet::PIMDM::DownstreamInterface::startPruneTimer | ( | double | holdTime | ) |
The method is used to create PIMPrune timer.
The timer is set when outgoing interface goes to pruned state. After expiration (usually 3min) interface goes back to forwarding state. It is set to (S,G,I).
Referenced by inet::PIMDM::multicastPacketArrivedOnNonRpfInterface(), and inet::PIMDM::processPrunePendingTimer().
void inet::PIMDM::DownstreamInterface::stopPrunePendingTimer | ( | ) |
Referenced by inet::PIMDM::processGraft(), and inet::PIMDM::processJoin().
void inet::PIMDM::DownstreamInterface::stopPruneTimer | ( | ) |
Referenced by inet::PIMDM::processGraft(), inet::PIMDM::processJoin(), and inet::PIMDM::processPruneTimer().
cMessage* inet::PIMDM::DownstreamInterface::prunePendingTimer |
Referenced by inet::PIMDM::processPrunePendingTimer().
PruneState inet::PIMDM::DownstreamInterface::pruneState |
Referenced by inet::PIMDM::multicastPacketArrivedOnNonRpfInterface(), inet::PIMDM::multicastReceiverAdded(), inet::PIMDM::processGraft(), inet::PIMDM::processJoin(), inet::PIMDM::processPrune(), inet::PIMDM::processPrunePendingTimer(), inet::PIMDM::processPruneTimer(), inet::PIMDM::processStateRefreshPacket(), inet::PIMDM::processStateRefreshTimer(), and inet::PIMDM::sendStateRefreshPacket().
cMessage* inet::PIMDM::DownstreamInterface::pruneTimer |