#include <SCTPAssociation.h>
Definition at line 367 of file SCTPAssociation.h.
SCTPStateVariables::SCTPStateVariables | ( | ) |
Definition at line 187 of file SCTPAssociationBase.cc.
{ active = false; fork = false; initReceived = false; cookieEchoReceived = false; ackPointAdvanced = false; swsAvoidanceInvoked = false; firstChunkReceived = false; probingIsAllowed = false; zeroWindowProbing = true; alwaysBundleSack = true; fastRecoverySupported = true; reactivatePrimaryPath = false; newChunkReceived = false; dataChunkReceived = false; sackAllowed = false; resetPending = false; stopReceiving = false; stopOldData = false; stopSending = false; inOut = false; queueUpdate = false; firstDataSent = false; peerWindowFull = false; zeroWindow = false; appSendAllowed = true; noMoreOutstanding = false; primaryPath = NULL; lastDataSourceAddress = IPvXAddress("0.0.0.0"); shutdownChunk = NULL; initChunk = NULL; cookieChunk = NULL; sctpmsg = NULL; sctpMsg = NULL; bytesToRetransmit = 0; initRexmitTimeout = SCTP_TIMEOUT_INIT_REXMIT; localRwnd = SCTP_DEFAULT_ARWND; errorCount = 0; initRetransCounter = 0; nextTSN = 0; cTsnAck = 0; lastTsnAck = 0; highestTsnReceived = 0; highestTsnAcked = 0; highestTsnStored = 0; nextRSid = 0; ackState = 0; lastStreamScheduled = 0; peerRwnd = 0; initialPeerRwnd = 0; assocPmtu = 0; outstandingBytes = 0; messagesToPush = 0; pushMessagesLeft = 0; numGaps = 0; msgNum = 0; bytesRcvd = 0; sendBuffer = 0; queuedReceivedBytes = 0; lastSendQueueAbated = simTime(); queuedMessages = 0; queueLimit = 0; probingTimeout = 1; numRequests = 0; numMsgsReq.resize(65536); for (unsigned int i = 0; i < 65536; i++) { numMsgsReq[i] = 0; } for (unsigned int i = 0; i < MAX_GAP_COUNT; i++) { gapStartList[i] = 0; gapStopList[i] = 0; } for (unsigned int i = 0; i < 32; i++) { localTieTag[i] = 0; peerTieTag[i] = 0; } count = 0; }
SCTPStateVariables::~SCTPStateVariables | ( | ) |
Definition at line 267 of file SCTPAssociationBase.cc.
{ }
SCTPPathVariables* SCTPStateVariables::getPrimaryPath | ( | ) | const [inline] |
Definition at line 382 of file SCTPAssociation.h.
Referenced by SCTPAssociation::getNextDestination(), SCTPAssociation::process_ABORT(), SCTPAssociation::process_CLOSE(), SCTPAssociation::process_RCV_Message(), SCTPAssociation::process_TIMEOUT_HEARTBEAT(), SCTPAssociation::sendOnPath(), SCTPAssociation::stateEntered(), and SCTPAssociation::updateCounters().
{ return(primaryPath); }
const IPvXAddress& SCTPStateVariables::getPrimaryPathIndex | ( | ) | const [inline] |
Definition at line 376 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_SEND(), SCTPAssociation::process_TIMEOUT_HEARTBEAT(), SCTPAssociation::process_TIMEOUT_RTX(), and SCTPAssociation::processHeartbeatAckArrived().
{ if(primaryPath != NULL) { return(primaryPath->remoteAddress); } return(SCTPDataVariables::zeroAddress); }
void SCTPStateVariables::setPrimaryPath | ( | SCTPPathVariables * | path | ) | [inline] |
Definition at line 373 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_PRIMARY(), SCTPAssociation::process_TIMEOUT_HEARTBEAT(), SCTPAssociation::process_TIMEOUT_RTX(), SCTPAssociation::processHeartbeatAckArrived(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), SCTPAssociation::sendInit(), SCTPAssociation::sendInitAck(), and SCTPAssociation::updateCounters().
{ primaryPath = path; }
Definition at line 388 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
uint32 SCTPStateVariables::ackState |
Definition at line 429 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_RCV_Message(), SCTPAssociation::processDataArrived(), SCTPAssociation::processTimer(), SCTPAssociation::scheduleSack(), SCTPStateVariables(), SCTPAssociation::sendOnPath(), SCTPAssociation::sendSack(), and SCTPAssociation::timeForSack().
Definition at line 386 of file SCTPAssociation.h.
Referenced by SCTPAssociation::cloneAssociation(), SCTPAssociation::process_ASSOCIATE(), and SCTPStateVariables().
Definition at line 397 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 466 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueAckedChunks(), SCTPAssociation::process_SEND(), and SCTPStateVariables().
Definition at line 436 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueOutboundDataMsg(), SCTPAssociation::nextChunkFitsIntoPacket(), SCTPAssociation::pmStartPathManagement(), SCTPAssociation::processHeartbeatAckArrived(), SCTPAssociation::pushUlp(), and SCTPStateVariables().
Definition at line 476 of file SCTPAssociation.h.
Definition at line 438 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processDataArrived(), and SCTPStateVariables().
Definition at line 440 of file SCTPAssociation.h.
Referenced by SCTPStateVariables(), and SCTPAssociation::sendOnPath().
Definition at line 473 of file SCTPAssociation.h.
Referenced by SCTPAssociation::loadPacket(), and SCTPAssociation::storePacket().
SCTPCookieEchoChunk* SCTPStateVariables::cookieChunk |
pointer to the cookie chunk data structure (for retransmissions)
Definition at line 459 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processCookieAckArrived(), SCTPAssociation::retransmitCookieEcho(), SCTPStateVariables(), and SCTPAssociation::sendCookieEcho().
Definition at line 391 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 452 of file SCTPAssociation.h.
uint32 SCTPStateVariables::count |
Definition at line 443 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
uint32 SCTPStateVariables::cTsnAck |
Definition at line 423 of file SCTPAssociation.h.
Referenced by SCTPAssociation::advanceCtsna(), SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), SCTPAssociation::processTimer(), SCTPAssociation::removeFromGapList(), SCTPStateVariables(), SCTPAssociation::sendInitAck(), SCTPAssociation::sendShutdown(), and SCTPAssociation::updateGapList().
Definition at line 389 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 474 of file SCTPAssociation.h.
Referenced by SCTPAssociation::loadPacket(), and SCTPAssociation::storePacket().
std::list<uint32> SCTPStateVariables::dupList |
Definition at line 416 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPAssociation::timeForSack(), and SCTPAssociation::tsnIsDuplicate().
Definition at line 471 of file SCTPAssociation.h.
Referenced by SCTPAssociation::pmDataIsSentOn(), and SCTPAssociation::stateEntered().
Definition at line 417 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_TIMEOUT_HEARTBEAT(), SCTPAssociation::process_TIMEOUT_RTX(), SCTPAssociation::process_TIMEOUT_SHUTDOWN(), SCTPStateVariables(), and SCTPAssociation::updateCounters().
Definition at line 398 of file SCTPAssociation.h.
Referenced by SCTPAssociation::cwndUpdateAfterSack(), SCTPStateVariables(), and SCTPAssociation::stateEntered().
Definition at line 393 of file SCTPAssociation.h.
Referenced by SCTPAssociation::scheduleSack(), and SCTPStateVariables().
Definition at line 406 of file SCTPAssociation.h.
Referenced by SCTPAssociation::bytesAllowedToSend(), SCTPStateVariables(), and SCTPAssociation::sendOnPath().
Definition at line 387 of file SCTPAssociation.h.
Referenced by SCTPAssociation::cloneAssociation(), SCTPAssociation::process_OPEN_PASSIVE(), SCTPAssociation::processInitArrived(), and SCTPStateVariables().
uint32 SCTPStateVariables::gapStartList[MAX_GAP_COUNT] |
Definition at line 431 of file SCTPAssociation.h.
Referenced by SCTPAssociation::advanceCtsna(), SCTPAssociation::createSack(), SCTPAssociation::removeFromGapList(), SCTPStateVariables(), SCTPAssociation::tsnIsDuplicate(), and SCTPAssociation::updateGapList().
uint32 SCTPStateVariables::gapStopList[MAX_GAP_COUNT] |
Definition at line 432 of file SCTPAssociation.h.
Referenced by SCTPAssociation::advanceCtsna(), SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPAssociation::removeFromGapList(), SCTPStateVariables(), SCTPAssociation::tsnIsDuplicate(), and SCTPAssociation::updateGapList().
uint16 SCTPStateVariables::header |
Definition at line 449 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueOutboundDataMsg(), SCTPAssociation::process_SEND(), and SCTPAssociation::stateEntered().
Definition at line 425 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processSackArrived(), and SCTPStateVariables().
Definition at line 424 of file SCTPAssociation.h.
Referenced by SCTPAssociation::makeRoomForTsn(), SCTPAssociation::processDataArrived(), SCTPAssociation::processTimer(), SCTPAssociation::removeFromGapList(), and SCTPStateVariables().
Definition at line 426 of file SCTPAssociation.h.
Referenced by SCTPAssociation::makeRoomForTsn(), SCTPAssociation::processDataArrived(), SCTPStateVariables(), and SCTPAssociation::updateGapList().
SCTPInitChunk* SCTPStateVariables::initChunk |
pointer to the init chunk data structure (for retransmissions)
Definition at line 457 of file SCTPAssociation.h.
Referenced by SCTPAssociation::retransmitInit(), SCTPStateVariables(), SCTPAssociation::sendInit(), and SCTPAssociation::stateEntered().
Definition at line 419 of file SCTPAssociation.h.
Referenced by SCTPAssociation::moveChunkToOtherPath(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), SCTPAssociation::processSackArrived(), and SCTPStateVariables().
Definition at line 413 of file SCTPAssociation.h.
Referenced by SCTPAssociation::pmStartPathManagement(), SCTPAssociation::processHeartbeatAckArrived(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), and SCTPAssociation::sendInitAck().
Definition at line 390 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processInitArrived(), and SCTPStateVariables().
Counter for init and cookie retransmissions
Definition at line 454 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_TIMEOUT_INIT_REXMIT(), SCTPStateVariables(), SCTPAssociation::sendShutdown(), and SCTPAssociation::sendShutdownAck().
simtime_t SCTPStateVariables::initRexmitTimeout |
Definition at line 455 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_ASSOCIATE(), SCTPAssociation::process_RCV_Message(), SCTPAssociation::process_TIMEOUT_INIT_REXMIT(), SCTPAssociation::process_TIMEOUT_SHUTDOWN(), SCTPAssociation::processInitAckArrived(), SCTPStateVariables(), SCTPAssociation::sendShutdown(), and SCTPAssociation::sendShutdownAck().
Definition at line 410 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 414 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPStateVariables(), SCTPAssociation::sendOnPath(), and SCTPAssociation::sendSack().
Definition at line 470 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueOutboundDataMsg(), and SCTPAssociation::nextChunkFitsIntoPacket().
simtime_t SCTPStateVariables::lastSendQueueAbated |
Definition at line 467 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueAckedChunks(), and SCTPStateVariables().
Definition at line 435 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueOutboundDataMsg(), SCTPAssociation::nextChunkFitsIntoPacket(), SCTPStateVariables(), and SCTPAssociation::streamScheduler().
uint32 SCTPStateVariables::lastTSN |
Definition at line 428 of file SCTPAssociation.h.
Referenced by SCTPAssociation::performStateTransition(), SCTPAssociation::sendInit(), and SCTPAssociation::sendInitAck().
Definition at line 422 of file SCTPAssociation.h.
Referenced by SCTPAssociation::cwndUpdateAfterSack(), SCTPAssociation::makeRoomForTsn(), SCTPAssociation::process_RCV_Message(), SCTPAssociation::processSackArrived(), SCTPAssociation::pushUlp(), SCTPAssociation::removeFromGapList(), and SCTPStateVariables().
Definition at line 427 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processDataArrived(), and SCTPAssociation::processTimer().
Definition at line 415 of file SCTPAssociation.h.
Referenced by SCTPAssociation::pmStartPathManagement(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), SCTPAssociation::sendInit(), and SCTPAssociation::sendInitAck().
Definition at line 420 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::pmStartPathManagement(), SCTPAssociation::process_ASSOCIATE(), SCTPAssociation::process_OPEN_PASSIVE(), SCTPAssociation::processDataArrived(), SCTPAssociation::pushUlp(), SCTPStateVariables(), SCTPAssociation::sendInit(), SCTPAssociation::sendInitAck(), and SCTPAssociation::updateGapList().
uint8 SCTPStateVariables::localTieTag[32] |
Definition at line 444 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processCookieEchoArrived(), SCTPStateVariables(), and SCTPAssociation::sendInitAck().
uint32 SCTPStateVariables::maxBurst |
Definition at line 478 of file SCTPAssociation.h.
Referenced by SCTPAssociation::cwndUpdateMaxBurst(), and SCTPAssociation::stateEntered().
Definition at line 447 of file SCTPAssociation.h.
Definition at line 441 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_OPEN_PASSIVE(), SCTPAssociation::pushUlp(), and SCTPStateVariables().
uint32 SCTPStateVariables::msgNum |
Definition at line 437 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_SEND(), and SCTPStateVariables().
Definition at line 399 of file SCTPAssociation.h.
Referenced by SCTPAssociation::sendOnPath(), and SCTPAssociation::stateEntered().
Definition at line 392 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processDataArrived(), SCTPStateVariables(), and SCTPAssociation::updateGapList().
uint32 SCTPStateVariables::nextRSid |
Definition at line 468 of file SCTPAssociation.h.
Referenced by SCTPAssociation::pushUlp(), and SCTPStateVariables().
uint32 SCTPStateVariables::nextTSN |
Definition at line 421 of file SCTPAssociation.h.
Referenced by SCTPAssociation::performStateTransition(), SCTPStateVariables(), SCTPAssociation::sendInit(), SCTPAssociation::sendInitAck(), and SCTPAssociation::sendOnPath().
Definition at line 411 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 412 of file SCTPAssociation.h.
Referenced by SCTPAssociation::handleChunkReportedAsMissing(), and SCTPAssociation::stateEntered().
uint32 SCTPStateVariables::numGaps |
Definition at line 430 of file SCTPAssociation.h.
Referenced by SCTPAssociation::advanceCtsna(), SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPAssociation::processTimer(), SCTPAssociation::removeFromGapList(), SCTPStateVariables(), SCTPAssociation::timeForSack(), SCTPAssociation::tsnIsDuplicate(), and SCTPAssociation::updateGapList().
std::vector<int32> SCTPStateVariables::numMsgsReq |
Definition at line 451 of file SCTPAssociation.h.
Referenced by SCTPAssociation::initStreams(), SCTPAssociation::process_RECEIVE_REQUEST(), SCTPAssociation::pushUlp(), and SCTPStateVariables().
Definition at line 439 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_ASSOCIATE(), SCTPAssociation::process_OPEN_PASSIVE(), SCTPStateVariables(), SCTPAssociation::sendInit(), and SCTPAssociation::sendInitAck().
Definition at line 433 of file SCTPAssociation.h.
Referenced by SCTPAssociation::decreaseOutstandingBytes(), SCTPAssociation::increaseOutstandingBytes(), SCTPAssociation::moveChunkToOtherPath(), and SCTPStateVariables().
Definition at line 475 of file SCTPAssociation.h.
Referenced by SCTPAssociation::loadPacket(), SCTPAssociation::sendOnPath(), and SCTPAssociation::storePacket().
uint64 SCTPStateVariables::peerRwnd |
Definition at line 418 of file SCTPAssociation.h.
Referenced by SCTPAssociation::bytesAllowedToSend(), SCTPAssociation::calculateBytesToSendOnPath(), SCTPAssociation::initCCParameters(), SCTPAssociation::moveChunkToOtherPath(), SCTPAssociation::processHeartbeatAckArrived(), SCTPAssociation::processInitAckArrived(), SCTPAssociation::processInitArrived(), SCTPAssociation::processSackArrived(), SCTPStateVariables(), and SCTPAssociation::sendOnPath().
uint8 SCTPStateVariables::peerTieTag[32] |
Definition at line 445 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processCookieEchoArrived(), SCTPStateVariables(), and SCTPAssociation::sendInitAck().
Definition at line 407 of file SCTPAssociation.h.
Referenced by SCTPAssociation::bytesAllowedToSend(), SCTPAssociation::processSackArrived(), and SCTPStateVariables().
SCTPPathVariables* SCTPStateVariables::primaryPath [private] |
Definition at line 483 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 395 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 450 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 442 of file SCTPAssociation.h.
Referenced by SCTPAssociation::pushUlp(), and SCTPStateVariables().
Definition at line 446 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueOutboundDataMsg(), SCTPAssociation::process_SEND(), SCTPStateVariables(), and SCTPAssociation::sendOnPath().
Definition at line 434 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::makeRoomForTsn(), SCTPAssociation::makeVarFromMsg(), SCTPAssociation::processDataArrived(), SCTPAssociation::pushUlp(), SCTPAssociation::putInDeliveryQ(), SCTPStateVariables(), and SCTPAssociation::updateGapList().
Definition at line 448 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_QUEUE_MSGS_LIMIT(), SCTPAssociation::process_SEND(), SCTPStateVariables(), and SCTPAssociation::sendOnPath().
Definition at line 405 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_SEND(), SCTPStateVariables(), and SCTPAssociation::sendOnPath().
Definition at line 401 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processHeartbeatAckArrived(), SCTPStateVariables(), and SCTPAssociation::stateEntered().
Definition at line 402 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 400 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_RCV_Message(), SCTPStateVariables(), SCTPAssociation::sendOnPath(), and SCTPAssociation::timeForSack().
Definition at line 472 of file SCTPAssociation.h.
Referenced by SCTPAssociation::loadPacket(), SCTPStateVariables(), SCTPAssociation::sendOnPath(), and SCTPAssociation::storePacket().
Definition at line 463 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_RCV_Message(), and SCTPStateVariables().
Definition at line 465 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueAckedChunks(), SCTPAssociation::process_SEND(), and SCTPStateVariables().
Definition at line 464 of file SCTPAssociation.h.
Referenced by SCTPAssociation::dequeueAckedChunks(), SCTPAssociation::process_QUEUE_BYTES_LIMIT(), SCTPAssociation::process_SEND(), SCTPAssociation::sendEstabIndicationToApp(), and SCTPAssociation::stateEntered().
SCTPShutdownAckChunk* SCTPStateVariables::shutdownAckChunk |
Definition at line 462 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_RCV_Message(), SCTPAssociation::retransmitShutdownAck(), and SCTPAssociation::sendShutdownAck().
SCTPShutdownChunk* SCTPStateVariables::shutdownChunk |
pointer to the resetChunk (for retransmission)
Definition at line 461 of file SCTPAssociation.h.
Referenced by SCTPAssociation::process_RCV_Message(), SCTPAssociation::processTimer(), SCTPAssociation::retransmitShutdown(), SCTPStateVariables(), and SCTPAssociation::sendShutdown().
Definition at line 480 of file SCTPAssociation.h.
Referenced by SCTPAssociation::streamScheduler().
Definition at line 479 of file SCTPAssociation.h.
Referenced by SCTPAssociation::streamScheduler().
Definition at line 404 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 403 of file SCTPAssociation.h.
Referenced by SCTPAssociation::processDataArrived(), and SCTPStateVariables().
Definition at line 409 of file SCTPAssociation.h.
Referenced by SCTPAssociation::performStateTransition(), and SCTPStateVariables().
Definition at line 394 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::processDataArrived(), SCTPAssociation::pushUlp(), and SCTPStateVariables().
uint32 SCTPStateVariables::swsLimit |
Definition at line 469 of file SCTPAssociation.h.
Referenced by SCTPAssociation::createSack(), SCTPAssociation::processSackArrived(), SCTPAssociation::pushUlp(), and SCTPAssociation::stateEntered().
Definition at line 408 of file SCTPAssociation.h.
Referenced by SCTPStateVariables().
Definition at line 396 of file SCTPAssociation.h.
Referenced by SCTPAssociation::bytesAllowedToSend(), SCTPAssociation::process_TIMEOUT_RTX(), SCTPAssociation::processSackArrived(), and SCTPStateVariables().