INET Framework for OMNeT++/OMNEST
inet::sctp::SctpPathVariables Class Reference

#include <SctpAssociation.h>

Inheritance diagram for inet::sctp::SctpPathVariables:

Public Member Functions

 SctpPathVariables (const L3Address &addr, SctpAssociation *assoc, const IRoutingTable *rt)
 
 ~SctpPathVariables ()
 

Public Attributes

SctpAssociationassociation
 
L3Address remoteAddress
 
bool activePath
 
bool confirmed
 
bool requiresRtx
 
bool primaryPathCandidate
 
bool forceHb
 
simtime_t lastSACKSent
 
bool newCumAck
 
uint32_t pathErrorCount
 
uint32_t pathErrorThreshold
 
uint32_t pmtu
 
uint32_t cwnd
 
uint32_t tempCwnd
 
uint32_t ssthresh
 
uint32_t partialBytesAcked
 
uint32_t queuedBytes
 
uint32_t outstandingBytes
 
uint32_t outstandingBytesBeforeUpdate
 
uint32_t newlyAckedBytes
 
bool fastRecoveryActive
 
uint32_t fastRecoveryExitPoint
 
simtime_t fastRecoveryEnteringTime
 
bool findLowestTsn
 
bool lowestTsnRetransmitted
 
cMessage * HeartbeatTimer
 
cMessage * HeartbeatIntervalTimer
 
cMessage * CwndTimer
 
cMessage * T3_RtxTimer
 
cMessage * BlockingTimer
 
cPacket * ResetTimer
 
cMessage * AsconfTimer
 
unsigned int highSpeedCCThresholdIdx
 
uint32_t packetsInBurst
 
bool sawNewAck
 
uint32_t lowestNewAckInSack
 
uint32_t highestNewAckInSack
 
bool findPseudoCumAck
 
bool newPseudoCumAck
 
uint32_t pseudoCumAck
 
bool findRTXPseudoCumAck
 
bool newRTXPseudoCumAck
 
uint32_t rtxPseudoCumAck
 
uint32_t oldestChunkTsn
 
simtime_t oldestChunkSendTime
 
simtime_t newOldestChunkSendTime
 
simtime_t lastTransmission
 
unsigned int sendAllRandomizer
 
unsigned int cmtCCGroup
 
unsigned int cmtGroupPaths
 
uint32_t utilizedCwnd
 
uint32_t cmtGroupTotalUtilizedCwnd
 
uint32_t cmtGroupTotalCwnd
 
uint32_t cmtGroupTotalSsthresh
 
double cmtGroupTotalCwndBandwidth
 
double cmtGroupTotalUtilizedCwndBandwidth
 
double cmtGroupAlpha
 
simtime_t blockingTimeout
 
bool waitingForRTTCalculaton
 
simtime_t txTimeForRTTCalculation
 
uint32_t tsnForRTTCalculation
 
uint32_t oliaSentBytes
 
simtime_t heartbeatTimeout
 
simtime_t heartbeatIntervalTimeout
 
simtime_t rtxTimeout
 
simtime_t cwndTimeout
 
simtime_t rttUpdateTime
 
simtime_t lastAckTime
 
simtime_t pathRto
 
simtime_t srtt
 
simtime_t rttvar
 
unsigned int gapAckedChunksInLastSACK
 
unsigned int gapNRAckedChunksInLastSACK
 
unsigned int gapUnackedChunksInLastSACK
 
unsigned int numberOfDuplicates
 
unsigned int numberOfFastRetransmissions
 
unsigned int numberOfTimerBasedRetransmissions
 
unsigned int numberOfHeartbeatsSent
 
unsigned int numberOfHeartbeatAcksSent
 
unsigned int numberOfHeartbeatsRcvd
 
unsigned int numberOfHeartbeatAcksRcvd
 
uint64_t numberOfBytesReceived
 
cOutVector * vectorPathFastRecoveryState
 
cOutVector * vectorPathPbAcked
 
cOutVector * vectorPathTsnFastRTX
 
cOutVector * vectorPathTsnTimerBased
 
cOutVector * vectorPathAckedTsnCumAck
 
cOutVector * vectorPathAckedTsnGapAck
 
cOutVector * vectorPathPseudoCumAck
 
cOutVector * vectorPathRTXPseudoCumAck
 
cOutVector * vectorPathBlockingTsnsMoved
 
cOutVector * vectorPathSentTsn
 
cOutVector * vectorPathReceivedTsn
 
cOutVector * vectorPathHb
 
cOutVector * vectorPathRcvdHb
 
cOutVector * vectorPathHbAck
 
cOutVector * vectorPathRcvdHbAck
 
cOutVector * statisticsPathRTO
 
cOutVector * statisticsPathRTT
 
cOutVector * statisticsPathSSthresh
 
cOutVector * statisticsPathCwnd
 
cOutVector * statisticsPathOutstandingBytes
 
cOutVector * statisticsPathQueuedSentBytes
 
cOutVector * statisticsPathSenderBlockingFraction
 
cOutVector * statisticsPathReceiverBlockingFraction
 
cOutVector * statisticsPathGapAckedChunksInLastSACK
 
cOutVector * statisticsPathGapNRAckedChunksInLastSACK
 
cOutVector * statisticsPathGapUnackedChunksInLastSACK
 
cOutVector * statisticsPathBandwidth
 

Constructor & Destructor Documentation

◆ SctpPathVariables()

inet::sctp::SctpPathVariables::SctpPathVariables ( const L3Address addr,
SctpAssociation assoc,
const IRoutingTable rt 
)
26 {
27  // ====== Path Variable Initialization ===================================
28  association = assoc;
29  remoteAddress = addr;
30  activePath = true;
31  confirmed = false;
32  primaryPathCandidate = false;
33  pathErrorCount = 0;
34  const NetworkInterface *rtie;
35  pathErrorThreshold = assoc->getSctpMain()->getPathMaxRetrans();
36 
37  if (!pathErrorThreshold) {
39  }
40 
41  pathRto = assoc->getSctpMain()->getRtoInitial();
43  double interval = assoc->getSctpMain()->par("hbInterval");
44 
45  if (!interval) {
46  interval = HB_INTERVAL;
47  }
48 
49  heartbeatIntervalTimeout = pathRto + interval;
50  srtt = pathRto;
51  lastAckTime = 0;
52  forceHb = false;
54  queuedBytes = 0;
55  outstandingBytes = 0;
56 
57  rtie = rt->getOutputInterfaceForDestination(remoteAddress);
58 
59  if (rtie == nullptr) {
60  throw cRuntimeError("No interface for remote address %s found!", remoteAddress.str().c_str());
61  }
62 
63  pmtu = rtie->getMtu();
64  rttvar = 0.0;
65 
67  cwnd = 0;
68  ssthresh = 0;
69  tempCwnd = 0;
70  rttUpdateTime = 0.0;
72  fastRecoveryActive = false;
73 
74  cmtCCGroup = 0;
75  lastTransmission = simTime();
76  sendAllRandomizer = RNGCONTEXT uniform(0, (1 << 31));
77  pseudoCumAck = 0;
78  newPseudoCumAck = false;
79  findPseudoCumAck = true; // Set findPseudoCumAck to TRUE for new destination.
80  rtxPseudoCumAck = 0;
81  newRTXPseudoCumAck = false;
82  findRTXPseudoCumAck = true; // Set findRTXPseudoCumAck to TRUE for new destination.
83  oldestChunkTsn = 0;
84  oldestChunkSendTime = simTime();
90  blockingTimeout = simTime();
91  packetsInBurst = 0;
93 
94  requiresRtx = false;
95  newCumAck = false;
97  newlyAckedBytes = 0;
98  findLowestTsn = true;
99  lowestTsnRetransmitted = false;
100  sawNewAck = false;
101  cmtGroupPaths = 0;
102  utilizedCwnd = 0;
104  cmtGroupTotalCwnd = 0;
108  cmtGroupAlpha = 0.0;
112 
113  oliaSentBytes = 0;
120  numberOfDuplicates = 0;
122 
123  // ====== Path Info ======================================================
124  SctpPathInfo *pinfo = new SctpPathInfo("pinfo");
125  pinfo->setRemoteAddress(addr);
126 
127  // ====== Timers =========================================================
128  char str[128];
129  snprintf(str, sizeof(str), "HB_TIMER %d:%s", assoc->assocId, addr.str().c_str());
130  HeartbeatTimer = new cMessage(str);
131  snprintf(str, sizeof(str), "HB_INT_TIMER %d:%s", assoc->assocId, addr.str().c_str());
132  HeartbeatIntervalTimer = new cMessage(str);
133  snprintf(str, sizeof(str), "CWND_TIMER %d:%s", assoc->assocId, addr.str().c_str());
134  CwndTimer = new cMessage(str);
135  snprintf(str, sizeof(str), "RTX_TIMER %d:%s", assoc->assocId, addr.str().c_str());
136  T3_RtxTimer = new cMessage(str);
137  snprintf(str, sizeof(str), "Reset_TIMER %d:%s", assoc->assocId, addr.str().c_str());
138  ResetTimer = new cPacket(str);
139  ResetTimer->setContextPointer(association);
140  snprintf(str, sizeof(str), "ASCONF_TIMER %d:%s", assoc->assocId, addr.str().c_str());
141  AsconfTimer = new cMessage(str);
142  AsconfTimer->setContextPointer(association);
143  snprintf(str, sizeof(str), "BLOCKING_TIMER %d:%s", assoc->assocId, addr.str().c_str());
144  BlockingTimer = new cMessage(str);
145  HeartbeatTimer->setContextPointer(association);
146  HeartbeatIntervalTimer->setContextPointer(association);
147  CwndTimer->setContextPointer(association);
148  T3_RtxTimer->setContextPointer(association);
149  T3_RtxTimer->setControlInfo(pinfo);
150  HeartbeatTimer->setControlInfo(pinfo->dup());
151  HeartbeatIntervalTimer->setControlInfo(pinfo->dup());
152  CwndTimer->setControlInfo(pinfo->dup());
153  ResetTimer->setControlInfo(pinfo->dup());
154  AsconfTimer->setControlInfo(pinfo->dup());
155  BlockingTimer->setControlInfo(pinfo->dup());
156 
157  snprintf(str, sizeof(str), "RTO %d:%s", assoc->assocId, addr.str().c_str());
158  statisticsPathRTO = new cOutVector(str);
159  snprintf(str, sizeof(str), "RTT %d:%s", assoc->assocId, addr.str().c_str());
160  statisticsPathRTT = new cOutVector(str);
161 
162  snprintf(str, sizeof(str), "Slow Start Threshold %d:%s", assoc->assocId, addr.str().c_str());
163  statisticsPathSSthresh = new cOutVector(str);
164  snprintf(str, sizeof(str), "Congestion Window %d:%s", assoc->assocId, addr.str().c_str());
165  statisticsPathCwnd = new cOutVector(str);
166  snprintf(str, sizeof(str), "Bandwidth %d:%s", assoc->assocId, addr.str().c_str());
167  statisticsPathBandwidth = new cOutVector(str);
168 
169  snprintf(str, sizeof(str), "TSN Sent %d:%s", assoc->assocId, addr.str().c_str());
170  vectorPathSentTsn = new cOutVector(str);
171  snprintf(str, sizeof(str), "TSN Received %d:%s", assoc->assocId, addr.str().c_str());
172  vectorPathReceivedTsn = new cOutVector(str);
173 
174  snprintf(str, sizeof(str), "HB Sent %d:%s", assoc->assocId, addr.str().c_str());
175  vectorPathHb = new cOutVector(str);
176  snprintf(str, sizeof(str), "HB ACK Sent %d:%s", assoc->assocId, addr.str().c_str());
177  vectorPathHbAck = new cOutVector(str);
178  snprintf(str, sizeof(str), "HB Received %d:%s", assoc->assocId, addr.str().c_str());
179  vectorPathRcvdHb = new cOutVector(str);
180  snprintf(str, sizeof(str), "HB ACK Received %d:%s", assoc->assocId, addr.str().c_str());
181  vectorPathRcvdHbAck = new cOutVector(str);
182 
183  snprintf(str, sizeof(str), "Queued Sent Bytes %d:%s", assoc->assocId, addr.str().c_str());
184  statisticsPathQueuedSentBytes = new cOutVector(str);
185  snprintf(str, sizeof(str), "Outstanding Bytes %d:%s", assoc->assocId, addr.str().c_str());
186  statisticsPathOutstandingBytes = new cOutVector(str);
187  snprintf(str, sizeof(str), "Sender Blocking Fraction %d:%s", assoc->assocId, addr.str().c_str());
188  statisticsPathSenderBlockingFraction = new cOutVector(str);
189  snprintf(str, sizeof(str), "Receiver Blocking Fraction %d:%s", assoc->assocId, addr.str().c_str());
190  statisticsPathReceiverBlockingFraction = new cOutVector(str);
191  snprintf(str, sizeof(str), "Number of Gap Acked Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
192  statisticsPathGapAckedChunksInLastSACK = new cOutVector(str);
193  snprintf(str, sizeof(str), "Number of Non-Revokable Gap Acked Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
194  statisticsPathGapNRAckedChunksInLastSACK = new cOutVector(str);
195  snprintf(str, sizeof(str), "Number of Gap Missed Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
196  statisticsPathGapUnackedChunksInLastSACK = new cOutVector(str);
197 
198  snprintf(str, sizeof(str), "Partial Bytes Acked %d:%s", assoc->assocId, addr.str().c_str());
199  vectorPathPbAcked = new cOutVector(str);
200 
201  snprintf(str, sizeof(str), "Fast Recovery State %d:%s", assoc->assocId, addr.str().c_str());
202  vectorPathFastRecoveryState = new cOutVector(str);
203  vectorPathFastRecoveryState->record(0);
204 
205  snprintf(str, sizeof(str), "TSN Sent Fast RTX %d:%s", assoc->assocId, addr.str().c_str());
206  vectorPathTsnFastRTX = new cOutVector(str);
207  snprintf(str, sizeof(str), "TSN Sent Timer-Based RTX %d:%s", assoc->assocId, addr.str().c_str());
208  vectorPathTsnTimerBased = new cOutVector(str);
209  snprintf(str, sizeof(str), "TSN Acked CumAck %d:%s", assoc->assocId, addr.str().c_str());
210  vectorPathAckedTsnCumAck = new cOutVector(str);
211  snprintf(str, sizeof(str), "TSN Acked GapAck %d:%s", assoc->assocId, addr.str().c_str());
212  vectorPathAckedTsnGapAck = new cOutVector(str);
213 
214  snprintf(str, sizeof(str), "TSN PseudoCumAck %d:%s", assoc->assocId, addr.str().c_str());
215  vectorPathPseudoCumAck = new cOutVector(str);
216  snprintf(str, sizeof(str), "TSN RTXPseudoCumAck %d:%s", assoc->assocId, addr.str().c_str());
217  vectorPathRTXPseudoCumAck = new cOutVector(str);
218  snprintf(str, sizeof(str), "Blocking TSNs Moved %d:%s", assoc->assocId, addr.str().c_str());
219  vectorPathBlockingTsnsMoved = new cOutVector(str);
220 }

◆ ~SctpPathVariables()

inet::sctp::SctpPathVariables::~SctpPathVariables ( )
223 {
224  delete statisticsPathSSthresh;
225  delete statisticsPathCwnd;
227  delete statisticsPathRTO;
228  delete statisticsPathRTT;
229 
230  delete vectorPathSentTsn;
231  delete vectorPathReceivedTsn;
232  delete vectorPathHb;
233  delete vectorPathRcvdHb;
234  delete vectorPathHbAck;
235  delete vectorPathRcvdHbAck;
236 
244 
245  delete vectorPathPbAcked;
247 
248  delete vectorPathTsnFastRTX;
252 
253  delete vectorPathPseudoCumAck;
256 }

Member Data Documentation

◆ activePath

◆ AsconfTimer

◆ association

SctpAssociation* inet::sctp::SctpPathVariables::association

Referenced by SctpPathVariables().

◆ blockingTimeout

◆ BlockingTimer

◆ cmtCCGroup

◆ cmtGroupAlpha

◆ cmtGroupPaths

unsigned int inet::sctp::SctpPathVariables::cmtGroupPaths

◆ cmtGroupTotalCwnd

◆ cmtGroupTotalCwndBandwidth

◆ cmtGroupTotalSsthresh

◆ cmtGroupTotalUtilizedCwnd

uint32_t inet::sctp::SctpPathVariables::cmtGroupTotalUtilizedCwnd

◆ cmtGroupTotalUtilizedCwndBandwidth

double inet::sctp::SctpPathVariables::cmtGroupTotalUtilizedCwndBandwidth

◆ confirmed

◆ cwnd

◆ cwndTimeout

simtime_t inet::sctp::SctpPathVariables::cwndTimeout

◆ CwndTimer

◆ fastRecoveryActive

◆ fastRecoveryEnteringTime

simtime_t inet::sctp::SctpPathVariables::fastRecoveryEnteringTime

◆ fastRecoveryExitPoint

◆ findLowestTsn

◆ findPseudoCumAck

◆ findRTXPseudoCumAck

◆ forceHb

◆ gapAckedChunksInLastSACK

unsigned int inet::sctp::SctpPathVariables::gapAckedChunksInLastSACK

◆ gapNRAckedChunksInLastSACK

unsigned int inet::sctp::SctpPathVariables::gapNRAckedChunksInLastSACK

◆ gapUnackedChunksInLastSACK

unsigned int inet::sctp::SctpPathVariables::gapUnackedChunksInLastSACK

◆ heartbeatIntervalTimeout

simtime_t inet::sctp::SctpPathVariables::heartbeatIntervalTimeout

◆ HeartbeatIntervalTimer

◆ heartbeatTimeout

◆ HeartbeatTimer

◆ highestNewAckInSack

◆ highSpeedCCThresholdIdx

◆ lastAckTime

◆ lastSACKSent

simtime_t inet::sctp::SctpPathVariables::lastSACKSent

◆ lastTransmission

simtime_t inet::sctp::SctpPathVariables::lastTransmission

◆ lowestNewAckInSack

◆ lowestTsnRetransmitted

◆ newCumAck

◆ newlyAckedBytes

uint32_t inet::sctp::SctpPathVariables::newlyAckedBytes

◆ newOldestChunkSendTime

simtime_t inet::sctp::SctpPathVariables::newOldestChunkSendTime

◆ newPseudoCumAck

◆ newRTXPseudoCumAck

◆ numberOfBytesReceived

uint64_t inet::sctp::SctpPathVariables::numberOfBytesReceived

◆ numberOfDuplicates

unsigned int inet::sctp::SctpPathVariables::numberOfDuplicates

◆ numberOfFastRetransmissions

unsigned int inet::sctp::SctpPathVariables::numberOfFastRetransmissions

◆ numberOfHeartbeatAcksRcvd

unsigned int inet::sctp::SctpPathVariables::numberOfHeartbeatAcksRcvd

◆ numberOfHeartbeatAcksSent

unsigned int inet::sctp::SctpPathVariables::numberOfHeartbeatAcksSent

◆ numberOfHeartbeatsRcvd

unsigned int inet::sctp::SctpPathVariables::numberOfHeartbeatsRcvd

◆ numberOfHeartbeatsSent

unsigned int inet::sctp::SctpPathVariables::numberOfHeartbeatsSent

◆ numberOfTimerBasedRetransmissions

unsigned int inet::sctp::SctpPathVariables::numberOfTimerBasedRetransmissions

◆ oldestChunkSendTime

simtime_t inet::sctp::SctpPathVariables::oldestChunkSendTime

◆ oldestChunkTsn

uint32_t inet::sctp::SctpPathVariables::oldestChunkTsn

◆ oliaSentBytes

◆ outstandingBytes

◆ outstandingBytesBeforeUpdate

◆ packetsInBurst

uint32_t inet::sctp::SctpPathVariables::packetsInBurst

◆ partialBytesAcked

◆ pathErrorCount

◆ pathErrorThreshold

uint32_t inet::sctp::SctpPathVariables::pathErrorThreshold

Referenced by SctpPathVariables().

◆ pathRto

◆ pmtu

◆ primaryPathCandidate

◆ pseudoCumAck

◆ queuedBytes

uint32_t inet::sctp::SctpPathVariables::queuedBytes

◆ remoteAddress

L3Address inet::sctp::SctpPathVariables::remoteAddress

Referenced by inet::sctp::SctpAssociation::bytesAllowedToSend(), inet::sctp::SctpAssociation::checkPseudoCumAck(), inet::sctp::SctpAssociation::choosePathForRetransmission(), inet::sctp::SctpAssociation::chunkReschedulingControl(), inet::sctp::SctpAssociation::cwndUpdateAfterCwndTimeout(), inet::sctp::SctpAssociation::cwndUpdateAfterRtxTimeout(), inet::sctp::SctpAssociation::cwndUpdateAfterSack(), inet::sctp::SctpAssociation::cwndUpdateBytesAcked(), inet::sctp::SctpAssociation::cwndUpdateMaxBurst(), inet::sctp::SctpAssociation::decreaseOutstandingBytes(), inet::sctp::SctpAssociation::getNextAddress(), inet::sctp::SctpAssociation::getNextDestination(), inet::sctp::SctpAssociation::getOutboundDataChunk(), inet::sctp::SctpAssociation::handleChunkReportedAsAcked(), inet::sctp::SctpAssociation::handleChunkReportedAsMissing(), inet::sctp::SctpAssociation::increaseOutstandingBytes(), inet::sctp::SctpAssociation::initCcParameters(), inet::sctp::SctpAssociation::loadPacket(), inet::sctp::SctpAssociation::makeDataVarFromDataMsg(), inet::sctp::SctpAssociation::pathStatusIndication(), inet::sctp::SctpAssociation::pmClearPathCounter(), inet::sctp::SctpAssociation::pmDataIsSentOn(), inet::sctp::SctpAssociation::pmStartPathManagement(), inet::sctp::SctpAssociation::printSctpPathMap(), inet::sctp::SctpAssociation::process_TIMEOUT_BLOCKING(), inet::sctp::SctpAssociation::process_TIMEOUT_HEARTBEAT(), inet::sctp::SctpAssociation::process_TIMEOUT_HEARTBEAT_INTERVAL(), inet::sctp::SctpAssociation::process_TIMEOUT_RTX(), inet::sctp::SctpAssociation::processHeartbeatAckArrived(), inet::sctp::SctpAssociation::processInitArrived(), inet::sctp::SctpAssociation::processSackArrived(), inet::sctp::Sctp::removeAssociation(), inet::sctp::SctpAssociation::removePath(), inet::sctp::SctpAssociation::rpPathBlockingControl(), SctpPathVariables(), inet::sctp::SctpAssociation::sendHeartbeat(), inet::sctp::SctpAssociation::sendOnPath(), inet::sctp::SctpAssociation::sendSACKviaSelectedPath(), inet::sctp::SctpAssociation::storePacket(), inet::sctp::SctpAssociation::updateCounters(), and inet::sctp::SctpAssociation::updateFastRecoveryStatus().

◆ requiresRtx

◆ ResetTimer

◆ rttUpdateTime

simtime_t inet::sctp::SctpPathVariables::rttUpdateTime

◆ rttvar

◆ rtxPseudoCumAck

◆ rtxTimeout

simtime_t inet::sctp::SctpPathVariables::rtxTimeout

◆ sawNewAck

◆ sendAllRandomizer

unsigned int inet::sctp::SctpPathVariables::sendAllRandomizer

◆ srtt

◆ ssthresh

◆ statisticsPathBandwidth

cOutVector* inet::sctp::SctpPathVariables::statisticsPathBandwidth

◆ statisticsPathCwnd

cOutVector* inet::sctp::SctpPathVariables::statisticsPathCwnd

◆ statisticsPathGapAckedChunksInLastSACK

cOutVector* inet::sctp::SctpPathVariables::statisticsPathGapAckedChunksInLastSACK

◆ statisticsPathGapNRAckedChunksInLastSACK

cOutVector* inet::sctp::SctpPathVariables::statisticsPathGapNRAckedChunksInLastSACK

◆ statisticsPathGapUnackedChunksInLastSACK

cOutVector* inet::sctp::SctpPathVariables::statisticsPathGapUnackedChunksInLastSACK

◆ statisticsPathOutstandingBytes

cOutVector* inet::sctp::SctpPathVariables::statisticsPathOutstandingBytes

◆ statisticsPathQueuedSentBytes

cOutVector* inet::sctp::SctpPathVariables::statisticsPathQueuedSentBytes

◆ statisticsPathReceiverBlockingFraction

cOutVector* inet::sctp::SctpPathVariables::statisticsPathReceiverBlockingFraction

◆ statisticsPathRTO

◆ statisticsPathRTT

cOutVector* inet::sctp::SctpPathVariables::statisticsPathRTT

◆ statisticsPathSenderBlockingFraction

cOutVector* inet::sctp::SctpPathVariables::statisticsPathSenderBlockingFraction

◆ statisticsPathSSthresh

cOutVector* inet::sctp::SctpPathVariables::statisticsPathSSthresh

◆ T3_RtxTimer

◆ tempCwnd

◆ tsnForRTTCalculation

◆ txTimeForRTTCalculation

◆ utilizedCwnd

◆ vectorPathAckedTsnCumAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathAckedTsnCumAck

◆ vectorPathAckedTsnGapAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathAckedTsnGapAck

◆ vectorPathBlockingTsnsMoved

cOutVector* inet::sctp::SctpPathVariables::vectorPathBlockingTsnsMoved

◆ vectorPathFastRecoveryState

cOutVector* inet::sctp::SctpPathVariables::vectorPathFastRecoveryState

◆ vectorPathHb

cOutVector* inet::sctp::SctpPathVariables::vectorPathHb

◆ vectorPathHbAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathHbAck

◆ vectorPathPbAcked

◆ vectorPathPseudoCumAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathPseudoCumAck

◆ vectorPathRcvdHb

cOutVector* inet::sctp::SctpPathVariables::vectorPathRcvdHb

◆ vectorPathRcvdHbAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathRcvdHbAck

◆ vectorPathReceivedTsn

cOutVector* inet::sctp::SctpPathVariables::vectorPathReceivedTsn

◆ vectorPathRTXPseudoCumAck

cOutVector* inet::sctp::SctpPathVariables::vectorPathRTXPseudoCumAck

◆ vectorPathSentTsn

cOutVector* inet::sctp::SctpPathVariables::vectorPathSentTsn

◆ vectorPathTsnFastRTX

cOutVector* inet::sctp::SctpPathVariables::vectorPathTsnFastRTX

◆ vectorPathTsnTimerBased

cOutVector* inet::sctp::SctpPathVariables::vectorPathTsnTimerBased

◆ waitingForRTTCalculaton


The documentation for this class was generated from the following files:
inet::sctp::SctpPathVariables::cmtGroupTotalUtilizedCwnd
uint32_t cmtGroupTotalUtilizedCwnd
Definition: SctpAssociation.h:345
inet::sctp::SctpPathVariables::statisticsPathQueuedSentBytes
cOutVector * statisticsPathQueuedSentBytes
Definition: SctpAssociation.h:404
inet::sctp::SctpPathVariables::vectorPathSentTsn
cOutVector * vectorPathSentTsn
Definition: SctpAssociation.h:393
inet::sctp::SctpPathVariables::gapAckedChunksInLastSACK
unsigned int gapAckedChunksInLastSACK
Definition: SctpAssociation.h:371
inet::sctp::SctpPathVariables::cmtGroupTotalCwnd
uint32_t cmtGroupTotalCwnd
Definition: SctpAssociation.h:346
inet::sctp::SctpPathVariables::highestNewAckInSack
uint32_t highestNewAckInSack
Definition: SctpAssociation.h:326
inet::sctp::SctpPathVariables::vectorPathHb
cOutVector * vectorPathHb
Definition: SctpAssociation.h:395
inet::sctp::SctpPathVariables::vectorPathRTXPseudoCumAck
cOutVector * vectorPathRTXPseudoCumAck
Definition: SctpAssociation.h:391
inet::sctp::SctpPathVariables::statisticsPathGapUnackedChunksInLastSACK
cOutVector * statisticsPathGapUnackedChunksInLastSACK
Definition: SctpAssociation.h:409
inet::sctp::SctpPathVariables::ssthresh
uint32_t ssthresh
Definition: SctpAssociation.h:296
inet::sctp::SctpPathVariables::waitingForRTTCalculaton
bool waitingForRTTCalculaton
Definition: SctpAssociation.h:354
inet::sctp::SctpPathVariables::pathErrorCount
uint32_t pathErrorCount
Definition: SctpAssociation.h:290
inet::sctp::SctpPathVariables::blockingTimeout
simtime_t blockingTimeout
Definition: SctpAssociation.h:352
inet::sctp::SctpPathVariables::rtxPseudoCumAck
uint32_t rtxPseudoCumAck
Definition: SctpAssociation.h:334
inet::sctp::SctpPathVariables::cwndTimeout
simtime_t cwndTimeout
Definition: SctpAssociation.h:363
inet::sctp::SctpPathVariables::tempCwnd
uint32_t tempCwnd
Definition: SctpAssociation.h:295
inet::sctp::SctpPathVariables::lowestTsnRetransmitted
bool lowestTsnRetransmitted
Definition: SctpAssociation.h:309
inet::sctp::SctpPathVariables::cwnd
uint32_t cwnd
Definition: SctpAssociation.h:294
RNGCONTEXT
#define RNGCONTEXT
Definition: INETDefs.h:82
inet::sctp::SctpPathVariables::heartbeatTimeout
simtime_t heartbeatTimeout
Definition: SctpAssociation.h:360
inet::sctp::SctpPathVariables::vectorPathTsnFastRTX
cOutVector * vectorPathTsnFastRTX
Definition: SctpAssociation.h:386
inet::sctp::SctpPathVariables::vectorPathAckedTsnCumAck
cOutVector * vectorPathAckedTsnCumAck
Definition: SctpAssociation.h:388
inet::sctp::SctpPathVariables::BlockingTimer
cMessage * BlockingTimer
Definition: SctpAssociation.h:316
inet::sctp::SctpPathVariables::statisticsPathGapAckedChunksInLastSACK
cOutVector * statisticsPathGapAckedChunksInLastSACK
Definition: SctpAssociation.h:407
inet::sctp::SctpPathVariables::rttUpdateTime
simtime_t rttUpdateTime
Definition: SctpAssociation.h:364
inet::sctp::SctpPathVariables::pathRto
simtime_t pathRto
Definition: SctpAssociation.h:366
inet::sctp::SctpPathVariables::txTimeForRTTCalculation
simtime_t txTimeForRTTCalculation
Definition: SctpAssociation.h:355
inet::L3Address::str
std::string str() const
Definition: L3Address.cc:88
inet::sctp::SctpPathVariables::numberOfHeartbeatsRcvd
unsigned int numberOfHeartbeatsRcvd
Definition: SctpAssociation.h:379
inet::sctp::SctpPathVariables::partialBytesAcked
uint32_t partialBytesAcked
Definition: SctpAssociation.h:297
inet::sctp::SctpPathVariables::pmtu
uint32_t pmtu
Definition: SctpAssociation.h:292
inet::sctp::SctpPathVariables::lowestNewAckInSack
uint32_t lowestNewAckInSack
Definition: SctpAssociation.h:325
inet::sctp::SctpPathVariables::statisticsPathBandwidth
cOutVector * statisticsPathBandwidth
Definition: SctpAssociation.h:410
inet::sctp::SctpPathVariables::findPseudoCumAck
bool findPseudoCumAck
Definition: SctpAssociation.h:328
inet::sctp::SctpPathVariables::numberOfBytesReceived
uint64_t numberOfBytesReceived
Definition: SctpAssociation.h:381
inet::sctp::SctpPathVariables::gapNRAckedChunksInLastSACK
unsigned int gapNRAckedChunksInLastSACK
Definition: SctpAssociation.h:372
PATH_MAX_RETRANS
#define PATH_MAX_RETRANS
Definition: SctpAssociation.h:234
inet::sctp::SctpPathVariables::statisticsPathGapNRAckedChunksInLastSACK
cOutVector * statisticsPathGapNRAckedChunksInLastSACK
Definition: SctpAssociation.h:408
inet::sctp::SctpPathVariables::rttvar
simtime_t rttvar
Definition: SctpAssociation.h:368
inet::sctp::SctpPathVariables::primaryPathCandidate
bool primaryPathCandidate
Definition: SctpAssociation.h:281
inet::sctp::SctpPathVariables::ResetTimer
cPacket * ResetTimer
Definition: SctpAssociation.h:317
inet::sctp::SctpPathVariables::vectorPathPseudoCumAck
cOutVector * vectorPathPseudoCumAck
Definition: SctpAssociation.h:390
inet::sctp::SctpPathVariables::outstandingBytes
uint32_t outstandingBytes
Definition: SctpAssociation.h:299
inet::sctp::SctpPathVariables::newCumAck
bool newCumAck
Definition: SctpAssociation.h:288
inet::sctp::SctpPathVariables::vectorPathReceivedTsn
cOutVector * vectorPathReceivedTsn
Definition: SctpAssociation.h:394
inet::sctp::SctpPathVariables::srtt
simtime_t srtt
Definition: SctpAssociation.h:367
inet::sctp::SctpPathVariables::heartbeatIntervalTimeout
simtime_t heartbeatIntervalTimeout
Definition: SctpAssociation.h:361
inet::sctp::SctpPathVariables::vectorPathHbAck
cOutVector * vectorPathHbAck
Definition: SctpAssociation.h:397
inet::sctp::SctpPathVariables::newPseudoCumAck
bool newPseudoCumAck
Definition: SctpAssociation.h:329
inet::sctp::SctpPathVariables::numberOfFastRetransmissions
unsigned int numberOfFastRetransmissions
Definition: SctpAssociation.h:375
inet::sctp::SctpPathVariables::numberOfHeartbeatsSent
unsigned int numberOfHeartbeatsSent
Definition: SctpAssociation.h:377
inet::sctp::SctpPathVariables::requiresRtx
bool requiresRtx
Definition: SctpAssociation.h:280
inet::sctp::SctpPathVariables::vectorPathRcvdHb
cOutVector * vectorPathRcvdHb
Definition: SctpAssociation.h:396
inet::sctp::SctpPathVariables::vectorPathBlockingTsnsMoved
cOutVector * vectorPathBlockingTsnsMoved
Definition: SctpAssociation.h:392
inet::sctp::SctpPathVariables::activePath
bool activePath
Definition: SctpAssociation.h:278
inet::sctp::SctpPathVariables::vectorPathRcvdHbAck
cOutVector * vectorPathRcvdHbAck
Definition: SctpAssociation.h:398
inet::sctp::SctpPathVariables::CwndTimer
cMessage * CwndTimer
Definition: SctpAssociation.h:314
inet::sctp::SctpPathVariables::cmtGroupTotalCwndBandwidth
double cmtGroupTotalCwndBandwidth
Definition: SctpAssociation.h:348
inet::sctp::SctpPathVariables::numberOfHeartbeatAcksSent
unsigned int numberOfHeartbeatAcksSent
Definition: SctpAssociation.h:378
inet::sctp::SctpPathVariables::vectorPathFastRecoveryState
cOutVector * vectorPathFastRecoveryState
Definition: SctpAssociation.h:384
inet::sctp::SctpPathVariables::fastRecoveryExitPoint
uint32_t fastRecoveryExitPoint
Definition: SctpAssociation.h:305
inet::sctp::SctpPathVariables::tsnForRTTCalculation
uint32_t tsnForRTTCalculation
Definition: SctpAssociation.h:356
inet::sctp::SctpPathVariables::remoteAddress
L3Address remoteAddress
Definition: SctpAssociation.h:275
inet::sctp::SctpPathVariables::HeartbeatTimer
cMessage * HeartbeatTimer
Definition: SctpAssociation.h:312
inet::sctp::SctpPathVariables::statisticsPathRTT
cOutVector * statisticsPathRTT
Definition: SctpAssociation.h:400
inet::sctp::SctpPathVariables::newlyAckedBytes
uint32_t newlyAckedBytes
Definition: SctpAssociation.h:302
inet::sctp::SctpPathVariables::oldestChunkSendTime
simtime_t oldestChunkSendTime
Definition: SctpAssociation.h:336
inet::sctp::SctpPathVariables::lastTransmission
simtime_t lastTransmission
Definition: SctpAssociation.h:339
inet::sctp::SctpPathVariables::T3_RtxTimer
cMessage * T3_RtxTimer
Definition: SctpAssociation.h:315
inet::sctp::SctpPathVariables::statisticsPathSSthresh
cOutVector * statisticsPathSSthresh
Definition: SctpAssociation.h:401
inet::sctp::SctpPathVariables::lastAckTime
simtime_t lastAckTime
Definition: SctpAssociation.h:365
inet::sctp::SctpPathVariables::oliaSentBytes
uint32_t oliaSentBytes
Definition: SctpAssociation.h:358
inet::sctp::SctpPathVariables::sendAllRandomizer
unsigned int sendAllRandomizer
Definition: SctpAssociation.h:340
inet::sctp::SctpPathVariables::vectorPathTsnTimerBased
cOutVector * vectorPathTsnTimerBased
Definition: SctpAssociation.h:387
inet::sctp::SctpPathVariables::oldestChunkTsn
uint32_t oldestChunkTsn
Definition: SctpAssociation.h:335
inet::sctp::SctpPathVariables::queuedBytes
uint32_t queuedBytes
Definition: SctpAssociation.h:298
inet::sctp::SctpPathVariables::cmtGroupTotalUtilizedCwndBandwidth
double cmtGroupTotalUtilizedCwndBandwidth
Definition: SctpAssociation.h:349
inet::sctp::SctpPathVariables::highSpeedCCThresholdIdx
unsigned int highSpeedCCThresholdIdx
Definition: SctpAssociation.h:320
inet::sctp::SctpPathVariables::numberOfTimerBasedRetransmissions
unsigned int numberOfTimerBasedRetransmissions
Definition: SctpAssociation.h:376
inet::sctp::SctpPathVariables::newRTXPseudoCumAck
bool newRTXPseudoCumAck
Definition: SctpAssociation.h:333
inet::sctp::SctpPathVariables::utilizedCwnd
uint32_t utilizedCwnd
Definition: SctpAssociation.h:344
inet::sctp::SctpPathVariables::statisticsPathSenderBlockingFraction
cOutVector * statisticsPathSenderBlockingFraction
Definition: SctpAssociation.h:405
inet::sctp::SctpPathVariables::numberOfDuplicates
unsigned int numberOfDuplicates
Definition: SctpAssociation.h:374
inet::sctp::SctpPathVariables::statisticsPathReceiverBlockingFraction
cOutVector * statisticsPathReceiverBlockingFraction
Definition: SctpAssociation.h:406
inet::sctp::SctpPathVariables::gapUnackedChunksInLastSACK
unsigned int gapUnackedChunksInLastSACK
Definition: SctpAssociation.h:373
inet::sctp::SctpPathVariables::forceHb
bool forceHb
Definition: SctpAssociation.h:282
inet::sctp::SctpPathVariables::statisticsPathRTO
cOutVector * statisticsPathRTO
Definition: SctpAssociation.h:399
inet::sctp::SctpPathVariables::outstandingBytesBeforeUpdate
uint32_t outstandingBytesBeforeUpdate
Definition: SctpAssociation.h:301
inet::sctp::SctpPathVariables::cmtGroupAlpha
double cmtGroupAlpha
Definition: SctpAssociation.h:350
inet::sctp::SctpPathVariables::cmtCCGroup
unsigned int cmtCCGroup
Definition: SctpAssociation.h:342
inet::sctp::SctpPathVariables::packetsInBurst
uint32_t packetsInBurst
Definition: SctpAssociation.h:322
inet::sctp::SctpPathVariables::AsconfTimer
cMessage * AsconfTimer
Definition: SctpAssociation.h:318
inet::sctp::SctpPathVariables::pseudoCumAck
uint32_t pseudoCumAck
Definition: SctpAssociation.h:330
inet::sctp::SctpPathVariables::cmtGroupTotalSsthresh
uint32_t cmtGroupTotalSsthresh
Definition: SctpAssociation.h:347
inet::sctp::SctpPathVariables::findLowestTsn
bool findLowestTsn
Definition: SctpAssociation.h:308
HB_INTERVAL
#define HB_INTERVAL
Definition: SctpAssociation.h:233
inet::sctp::SctpPathVariables::HeartbeatIntervalTimer
cMessage * HeartbeatIntervalTimer
Definition: SctpAssociation.h:313
inet::sctp::SctpPathVariables::association
SctpAssociation * association
Definition: SctpAssociation.h:274
inet::sctp::SctpPathVariables::numberOfHeartbeatAcksRcvd
unsigned int numberOfHeartbeatAcksRcvd
Definition: SctpAssociation.h:380
inet::sctp::SctpPathVariables::pathErrorThreshold
uint32_t pathErrorThreshold
Definition: SctpAssociation.h:291
inet::sctp::SctpPathVariables::fastRecoveryActive
bool fastRecoveryActive
Definition: SctpAssociation.h:304
inet::sctp::SctpPathVariables::vectorPathAckedTsnGapAck
cOutVector * vectorPathAckedTsnGapAck
Definition: SctpAssociation.h:389
inet::sctp::SctpPathVariables::statisticsPathCwnd
cOutVector * statisticsPathCwnd
Definition: SctpAssociation.h:402
inet::sctp::SctpPathVariables::cmtGroupPaths
unsigned int cmtGroupPaths
Definition: SctpAssociation.h:343
inet::sctp::SctpPathVariables::statisticsPathOutstandingBytes
cOutVector * statisticsPathOutstandingBytes
Definition: SctpAssociation.h:403
inet::sctp::SctpPathVariables::findRTXPseudoCumAck
bool findRTXPseudoCumAck
Definition: SctpAssociation.h:332
inet::sctp::SctpPathVariables::sawNewAck
bool sawNewAck
Definition: SctpAssociation.h:324
inet::sctp::SctpPathVariables::vectorPathPbAcked
cOutVector * vectorPathPbAcked
Definition: SctpAssociation.h:385
inet::sctp::SctpPathVariables::confirmed
bool confirmed
Definition: SctpAssociation.h:279