INET Framework for OMNeT++/OMNEST
|
#include <OSPFNeighbor.h>
Classes | |
struct | DDPacketID |
struct | TransmittedLSA |
Public Types | |
enum | NeighborEventType { HELLO_RECEIVED = 0, START = 1, TWOWAY_RECEIVED = 2, NEGOTIATION_DONE = 3, EXCHANGE_DONE = 4, BAD_LINK_STATE_REQUEST = 5, LOADING_DONE = 6, IS_ADJACENCY_OK = 7, SEQUENCE_NUMBER_MISMATCH = 8, ONEWAY_RECEIVED = 9, KILL_NEIGHBOR = 10, INACTIVITY_TIMER = 11, POLL_TIMER = 12, LINK_DOWN = 13, DD_RETRANSMISSION_TIMER = 14, UPDATE_RETRANSMISSION_TIMER = 15, REQUEST_RETRANSMISSION_TIMER = 16 } |
enum | NeighborStateType { DOWN_STATE = 0, ATTEMPT_STATE = 1, INIT_STATE = 2, TWOWAY_STATE = 4, EXCHANGE_START_STATE = 8, EXCHANGE_STATE = 16, LOADING_STATE = 32, FULL_STATE = 64 } |
enum | DatabaseExchangeRelationshipType { MASTER = 0, SLAVE = 1 } |
Static Public Member Functions | |
static const char * | getStateString (NeighborStateType stateType) |
Private Member Functions | |
void | changeState (NeighborState *newState, NeighborState *currentState) |
Static Private Attributes | |
static unsigned long | ddSequenceNumberInitSeed = 0 |
Friends | |
class | NeighborState |
Enumerator | |
---|---|
DOWN_STATE | |
ATTEMPT_STATE | |
INIT_STATE | |
TWOWAY_STATE | |
EXCHANGE_START_STATE | |
EXCHANGE_STATE | |
LOADING_STATE | |
FULL_STATE |
inet::ospf::Neighbor::Neighbor | ( | RouterID | neighbor = NULL_ROUTERID | ) |
|
virtual |
void inet::ospf::Neighbor::addToRequestList | ( | OSPFLSAHeader * | lsaHeader | ) |
Referenced by inet::ospf::DatabaseDescriptionHandler::processDDPacket().
void inet::ospf::Neighbor::addToRetransmissionList | ( | OSPFLSA * | lsa | ) |
If the LSA is already on the retransmission list then it is replaced, else a copy of the LSA is added to the end of the retransmission list.
lsa | [in] The LSA to be added. |
void inet::ospf::Neighbor::addToTransmittedLSAList | ( | LSAKeyType | lsaKey | ) |
Referenced by inet::ospf::Interface::floodLSA().
void inet::ospf::Neighbor::ageTransmittedLSAList | ( | ) |
|
private |
Referenced by inet::ospf::NeighborState::changeState().
void inet::ospf::Neighbor::clearRequestRetransmissionTimer | ( | ) |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::DatabaseDescriptionHandler::processPacket(), removeFromRequestList(), and reset().
void inet::ospf::Neighbor::clearUpdateRetransmissionTimer | ( | ) |
Referenced by inet::ospf::LinkStateAcknowledgementHandler::processPacket(), and reset().
void inet::ospf::Neighbor::createDatabaseSummary | ( | ) |
Referenced by inet::ospf::NeighborStateExchangeStart::processEvent().
void inet::ospf::Neighbor::deleteLastSentDDPacket | ( | ) |
Referenced by inet::ospf::NeighborStateFull::processEvent(), and inet::ospf::NeighborStateLoading::processEvent().
|
inline |
Referenced by inet::ospf::HelloHandler::processPacket().
OSPFLSAHeader * inet::ospf::Neighbor::findOnRequestList | ( | LSAKeyType | lsaKey | ) |
OSPFLSA * inet::ospf::Neighbor::findOnRetransmissionList | ( | LSAKeyType | lsaKey | ) |
Referenced by inet::ospf::LinkStateAcknowledgementHandler::processPacket().
|
inline |
Referenced by inet::ospf::LinkStateUpdateHandler::acknowledgeLSA(), inet::ospf::Interface::addNeighbor(), inet::ospf::InterfaceState::calculateDesignatedRouter(), inet::ospf::Area::calculateNextHops(), inet::ospf::Area::originateRouterLSA(), inet::ospf::InterfaceStateNotDesignatedRouter::processEvent(), inet::ospf::InterfaceStateWaiting::processEvent(), inet::ospf::InterfaceStateBackup::processEvent(), inet::ospf::NeighborStateDown::processEvent(), inet::ospf::InterfaceStateDesignatedRouter::processEvent(), inet::ospf::InterfaceStatePointToPoint::processEvent(), inet::ospf::HelloHandler::processPacket(), inet::ospf::LinkStateRequestHandler::processPacket(), and inet::ospf::LinkStateUpdateHandler::processPacket().
|
inline |
Referenced by inet::ospf::InterfaceState::calculateDesignatedRouter(), and inet::ospf::HelloHandler::processPacket().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processDDPacket(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processDDPacket().
|
inline |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), and inet::ospf::NeighborStateExchangeStart::processEvent().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
Referenced by inet::ospf::InterfaceState::calculateDesignatedRouter(), and inet::ospf::HelloHandler::processPacket().
|
inline |
Referenced by inet::ospf::NeighborStateAttempt::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), and inet::ospf::NeighborStateDown::processEvent().
|
inline |
Referenced by inet::ospf::NeighborState::changeState(), inet::ospf::MessageHandler::handleTimer(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateDown::processEvent(), inet::ospf::NeighborStateAttempt::processEvent(), and inet::ospf::NeighborStateTwoWay::processEvent().
|
inline |
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
Referenced by inet::ospf::Interface::addNeighbor(), inet::ospf::InterfaceState::calculateDesignatedRouter(), inet::ospf::Area::calculateNextHops(), inet::ospf::Interface::floodLSA(), inet::ospf::Area::originateNetworkLSA(), inet::ospf::Area::originateRouterLSA(), inet::ospf::MessageHandler::printEvent(), inet::ospf::HelloHandler::processPacket(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::NeighborStateAttempt::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), and inet::ospf::NeighborStateDown::processEvent().
|
inline |
|
inline |
Referenced by inet::ospf::NeighborStateAttempt::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), and inet::ospf::NeighborStateDown::processEvent().
Neighbor::NeighborStateType inet::ospf::Neighbor::getState | ( | ) | const |
Referenced by inet::ospf::InterfaceState::calculateDesignatedRouter(), inet::ospf::Area::originateNetworkLSA(), inet::ospf::Area::originateRouterLSA(), inet::ospf::MessageHandler::printEvent(), inet::ospf::HelloHandler::processPacket(), inet::ospf::LinkStateRequestHandler::processPacket(), inet::ospf::LinkStateAcknowledgementHandler::processPacket(), inet::ospf::DatabaseDescriptionHandler::processPacket(), inet::ospf::LinkStateUpdateHandler::processPacket(), and removeFromRequestList().
|
static |
Referenced by inet::ospf::MessageHandler::printEvent().
unsigned long inet::ospf::Neighbor::getUniqueULong | ( | ) |
Referenced by initFirstAdjacency().
|
inline |
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processDDPacket(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), and inet::ospf::NeighborStateExchange::processEvent().
void inet::ospf::Neighbor::initFirstAdjacency | ( | ) |
|
inline |
bool inet::ospf::Neighbor::isLinkStateRequestListEmpty | ( | LSAKeyType | lsaKey | ) | const |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::DatabaseDescriptionHandler::processPacket(), and inet::ospf::LinkStateUpdateHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::LinkStateAcknowledgementHandler::processPacket().
bool inet::ospf::Neighbor::isLSAOnRequestList | ( | LSAKeyType | lsaKey | ) | const |
Referenced by inet::ospf::LinkStateUpdateHandler::processPacket().
bool inet::ospf::Neighbor::isOnTransmittedLSAList | ( | LSAKeyType | lsaKey | ) | const |
Referenced by inet::ospf::LinkStateUpdateHandler::processPacket().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
Referenced by inet::ospf::Interface::floodLSA().
bool inet::ospf::Neighbor::needAdjacency | ( | ) |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), and inet::ospf::NeighborStateExchangeStart::processEvent().
|
inline |
void inet::ospf::Neighbor::processEvent | ( | Neighbor::NeighborEventType | event | ) |
Referenced by inet::ospf::MessageHandler::handleTimer(), inet::ospf::DatabaseDescriptionHandler::processDDPacket(), inet::ospf::InterfaceStateDown::processEvent(), inet::ospf::LinkStateRequestHandler::processPacket(), inet::ospf::HelloHandler::processPacket(), inet::ospf::DatabaseDescriptionHandler::processPacket(), inet::ospf::LinkStateUpdateHandler::processPacket(), and removeFromRequestList().
void inet::ospf::Neighbor::removeFromRequestList | ( | LSAKeyType | lsaKey | ) |
void inet::ospf::Neighbor::removeFromRetransmissionList | ( | LSAKeyType | lsaKey | ) |
Referenced by inet::ospf::LinkStateAcknowledgementHandler::processPacket(), and inet::ospf::LinkStateUpdateHandler::processPacket().
void inet::ospf::Neighbor::reset | ( | ) |
Referenced by inet::ospf::NeighborStateAttempt::processEvent(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), and ~Neighbor().
bool inet::ospf::Neighbor::retransmitDatabaseDescriptionPacket | ( | ) |
Referenced by inet::ospf::NeighborStateExchangeStart::processEvent(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
void inet::ospf::Neighbor::retransmitUpdatePacket | ( | ) |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), and inet::ospf::NeighborStateFull::processEvent().
void inet::ospf::Neighbor::sendDatabaseDescriptionPacket | ( | bool | init = false | ) |
Referenced by inet::ospf::DatabaseDescriptionHandler::processDDPacket(), inet::ospf::NeighborStateExchangeStart::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateInit::processEvent(), inet::ospf::NeighborStateFull::processEvent(), inet::ospf::NeighborStateTwoWay::processEvent(), inet::ospf::NeighborStateExchange::processEvent(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
void inet::ospf::Neighbor::sendLinkStateRequestPacket | ( | ) |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::HelloHandler::processPacket().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::HelloHandler::processPacket().
|
inline |
Referenced by inet::ospf::Interface::addNeighbor().
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::DatabaseDescriptionHandler::processPacket().
|
inline |
|
inline |
Referenced by inet::ospf::HelloHandler::processPacket().
|
inline |
Referenced by inet::ospf::HelloHandler::processPacket().
void inet::ospf::Neighbor::startRequestRetransmissionTimer | ( | ) |
Referenced by inet::ospf::NeighborStateExchange::processEvent(), inet::ospf::NeighborStateLoading::processEvent(), and inet::ospf::DatabaseDescriptionHandler::processPacket().
void inet::ospf::Neighbor::startUpdateRetransmissionTimer | ( | ) |
Referenced by inet::ospf::Interface::floodLSA(), inet::ospf::NeighborStateLoading::processEvent(), inet::ospf::NeighborStateFull::processEvent(), and inet::ospf::NeighborStateExchange::processEvent().
|
friend |
|
private |
Referenced by sendDatabaseDescriptionPacket().
|
private |
Referenced by createDatabaseSummary(), reset(), and sendDatabaseDescriptionPacket().
|
private |
Referenced by Neighbor(), reset(), and ~Neighbor().
|
private |
Referenced by initFirstAdjacency(), and sendDatabaseDescriptionPacket().
|
staticprivate |
Referenced by getUniqueULong().
|
private |
Referenced by needAdjacency().
|
private |
Referenced by initFirstAdjacency().
|
private |
Referenced by Neighbor(), and ~Neighbor().
|
private |
Referenced by Neighbor().
|
private |
Referenced by deleteLastSentDDPacket(), reset(), retransmitDatabaseDescriptionPacket(), and sendDatabaseDescriptionPacket().
|
private |
Referenced by addToRequestList(), findOnRequestList(), isLSAOnRequestList(), removeFromRequestList(), reset(), and sendLinkStateRequestPacket().
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Referenced by needAdjacency().
|
private |
Referenced by needAdjacency().
|
private |
|
private |
Referenced by clearRequestRetransmissionTimer(), clearUpdateRetransmissionTimer(), createDatabaseSummary(), needAdjacency(), reset(), retransmitDatabaseDescriptionPacket(), retransmitUpdatePacket(), sendDatabaseDescriptionPacket(), sendLinkStateRequestPacket(), startRequestRetransmissionTimer(), startUpdateRetransmissionTimer(), and ~Neighbor().
|
private |
Referenced by Neighbor(), and ~Neighbor().
|
private |
Referenced by changeState(), Neighbor(), and ~Neighbor().
|
private |
Referenced by clearRequestRetransmissionTimer(), Neighbor(), startRequestRetransmissionTimer(), and ~Neighbor().
|
private |
Referenced by clearRequestRetransmissionTimer(), and startRequestRetransmissionTimer().
|
private |
Referenced by changeState(), getState(), Neighbor(), processEvent(), and ~Neighbor().
|
private |
Referenced by addToTransmittedLSAList(), ageTransmittedLSAList(), and isOnTransmittedLSAList().
|
private |
Referenced by clearUpdateRetransmissionTimer(), Neighbor(), startUpdateRetransmissionTimer(), and ~Neighbor().
|
private |
Referenced by clearUpdateRetransmissionTimer(), and startUpdateRetransmissionTimer().