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 pathErrorCount
 
uint32 pathErrorThreshold
 
uint32 pmtu
 
uint32 cwnd
 
uint32 tempCwnd
 
uint32 ssthresh
 
uint32 partialBytesAcked
 
uint32 queuedBytes
 
uint32 outstandingBytes
 
uint32 outstandingBytesBeforeUpdate
 
uint32 newlyAckedBytes
 
bool fastRecoveryActive
 
uint32 fastRecoveryExitPoint
 
simtime_t fastRecoveryEnteringTime
 
bool findLowestTSN
 
bool lowestTSNRetransmitted
 
cMessage * HeartbeatTimer
 
cMessage * HeartbeatIntervalTimer
 
cMessage * CwndTimer
 
cMessage * T3_RtxTimer
 
cMessage * BlockingTimer
 
cMessage * ResetTimer
 
cMessage * AsconfTimer
 
unsigned int highSpeedCCThresholdIdx
 
uint32 packetsInBurst
 
bool sawNewAck
 
uint32 lowestNewAckInSack
 
uint32 highestNewAckInSack
 
bool findPseudoCumAck
 
bool newPseudoCumAck
 
uint32 pseudoCumAck
 
bool findRTXPseudoCumAck
 
bool newRTXPseudoCumAck
 
uint32 rtxPseudoCumAck
 
uint32 oldestChunkTSN
 
simtime_t oldestChunkSendTime
 
simtime_t newOldestChunkSendTime
 
simtime_t lastTransmission
 
unsigned int sendAllRandomizer
 
unsigned int cmtCCGroup
 
unsigned int cmtGroupPaths
 
uint32 utilizedCwnd
 
uint32 cmtGroupTotalUtilizedCwnd
 
uint32 cmtGroupTotalCwnd
 
uint32 cmtGroupTotalSsthresh
 
double cmtGroupTotalCwndBandwidth
 
double cmtGroupTotalUtilizedCwndBandwidth
 
double cmtGroupAlpha
 
simtime_t blockingTimeout
 
bool waitingForRTTCalculaton
 
simtime_t txTimeForRTTCalculation
 
uint32 tsnForRTTCalculation
 
uint32 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 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

inet::sctp::SCTPPathVariables::SCTPPathVariables ( const L3Address addr,
SCTPAssociation assoc,
const IRoutingTable rt 
)
35 {
36  // ====== Path Variable Initialization ===================================
37  association = assoc;
38  remoteAddress = addr;
39  activePath = true;
40  confirmed = false;
41  primaryPathCandidate = false;
42  pathErrorCount = 0;
43  const InterfaceEntry *rtie;
44  pathErrorThreshold = assoc->getSctpMain()->getPathMaxRetrans();
45 
46  if (!pathErrorThreshold) {
48  }
49 
50  pathRto = assoc->getSctpMain()->getRtoInitial();
52  double interval = (double)assoc->getSctpMain()->par("hbInterval");
53 
54  if (!interval) {
55  interval = HB_INTERVAL;
56  }
57 
58  heartbeatIntervalTimeout = pathRto + interval;
59  srtt = pathRto;
60  lastAckTime = 0;
61  forceHb = false;
63  queuedBytes = 0;
64  outstandingBytes = 0;
65 
66  rtie = rt->getOutputInterfaceForDestination(remoteAddress);
67 
68  if (rtie == nullptr) {
69  throw cRuntimeError("No interface for remote address %s found!", remoteAddress.str().c_str());
70  }
71 
72  pmtu = rtie->getMTU();
73  rttvar = 0.0;
74 
76  cwnd = 0;
77  ssthresh = 0;
78  tempCwnd = 0;
79  rttUpdateTime = 0.0;
81  fastRecoveryActive = false;
82 
83  cmtCCGroup = 0;
84  lastTransmission = simTime();
85  sendAllRandomizer = RNGCONTEXT uniform(0, (1 << 31));
86  pseudoCumAck = 0;
87  newPseudoCumAck = false;
88  findPseudoCumAck = true; // Set findPseudoCumAck to TRUE for new destination.
89  rtxPseudoCumAck = 0;
90  newRTXPseudoCumAck = false;
91  findRTXPseudoCumAck = true; // Set findRTXPseudoCumAck to TRUE for new destination.
92  oldestChunkTSN = 0;
93  oldestChunkSendTime = simTime();
99  blockingTimeout = simTime();
100  packetsInBurst = 0;
102 
103  requiresRtx = false;
104  newCumAck = false;
106  newlyAckedBytes = 0;
107  findLowestTSN = true;
108  lowestTSNRetransmitted = false;
109  sawNewAck = false;
110  cmtGroupPaths = 0;
111  utilizedCwnd = 0;
113  cmtGroupTotalCwnd = 0;
117  cmtGroupAlpha = 0.0;
121 
122  oliaSentBytes = 0;
129  numberOfDuplicates = 0;
131 
132  // ====== Path Info ======================================================
133  SCTPPathInfo *pinfo = new SCTPPathInfo("pinfo");
134  pinfo->setRemoteAddress(addr);
135 
136  // ====== Timers =========================================================
137  char str[128];
138  snprintf(str, sizeof(str), "HB_TIMER %d:%s", assoc->assocId, addr.str().c_str());
139  HeartbeatTimer = new cMessage(str);
140  snprintf(str, sizeof(str), "HB_INT_TIMER %d:%s", assoc->assocId, addr.str().c_str());
141  HeartbeatIntervalTimer = new cMessage(str);
142  snprintf(str, sizeof(str), "CWND_TIMER %d:%s", assoc->assocId, addr.str().c_str());
143  CwndTimer = new cMessage(str);
144  snprintf(str, sizeof(str), "RTX_TIMER %d:%s", assoc->assocId, addr.str().c_str());
145  T3_RtxTimer = new cMessage(str);
146  snprintf(str, sizeof(str), "Reset_TIMER %d:%s", assoc->assocId, addr.str().c_str());
147  ResetTimer = new cPacket(str);
148  ResetTimer->setContextPointer(association);
149  snprintf(str, sizeof(str), "ASCONF_TIMER %d:%s", assoc->assocId, addr.str().c_str());
150  AsconfTimer = new cMessage(str);
151  AsconfTimer->setContextPointer(association);
152  snprintf(str, sizeof(str), "BLOCKING_TIMER %d:%s", assoc->assocId, addr.str().c_str());
153  BlockingTimer = new cMessage(str);
154  HeartbeatTimer->setContextPointer(association);
155  HeartbeatIntervalTimer->setContextPointer(association);
156  CwndTimer->setContextPointer(association);
157  T3_RtxTimer->setContextPointer(association);
158  T3_RtxTimer->setControlInfo(pinfo);
159  HeartbeatTimer->setControlInfo(pinfo->dup());
160  HeartbeatIntervalTimer->setControlInfo(pinfo->dup());
161  CwndTimer->setControlInfo(pinfo->dup());
162  ResetTimer->setControlInfo(pinfo->dup());
163  AsconfTimer->setControlInfo(pinfo->dup());
164  BlockingTimer->setControlInfo(pinfo->dup());
165 
166  snprintf(str, sizeof(str), "RTO %d:%s", assoc->assocId, addr.str().c_str());
167  statisticsPathRTO = new cOutVector(str);
168  snprintf(str, sizeof(str), "RTT %d:%s", assoc->assocId, addr.str().c_str());
169  statisticsPathRTT = new cOutVector(str);
170 
171  snprintf(str, sizeof(str), "Slow Start Threshold %d:%s", assoc->assocId, addr.str().c_str());
172  statisticsPathSSthresh = new cOutVector(str);
173  snprintf(str, sizeof(str), "Congestion Window %d:%s", assoc->assocId, addr.str().c_str());
174  statisticsPathCwnd = new cOutVector(str);
175  snprintf(str, sizeof(str), "Bandwidth %d:%s", assoc->assocId, addr.str().c_str());
176  statisticsPathBandwidth = new cOutVector(str);
177 
178  snprintf(str, sizeof(str), "TSN Sent %d:%s", assoc->assocId, addr.str().c_str());
179  vectorPathSentTSN = new cOutVector(str);
180  snprintf(str, sizeof(str), "TSN Received %d:%s", assoc->assocId, addr.str().c_str());
181  vectorPathReceivedTSN = new cOutVector(str);
182 
183  snprintf(str, sizeof(str), "HB Sent %d:%s", assoc->assocId, addr.str().c_str());
184  vectorPathHb = new cOutVector(str);
185  snprintf(str, sizeof(str), "HB ACK Sent %d:%s", assoc->assocId, addr.str().c_str());
186  vectorPathHbAck = new cOutVector(str);
187  snprintf(str, sizeof(str), "HB Received %d:%s", assoc->assocId, addr.str().c_str());
188  vectorPathRcvdHb = new cOutVector(str);
189  snprintf(str, sizeof(str), "HB ACK Received %d:%s", assoc->assocId, addr.str().c_str());
190  vectorPathRcvdHbAck = new cOutVector(str);
191 
192  snprintf(str, sizeof(str), "Queued Sent Bytes %d:%s", assoc->assocId, addr.str().c_str());
193  statisticsPathQueuedSentBytes = new cOutVector(str);
194  snprintf(str, sizeof(str), "Outstanding Bytes %d:%s", assoc->assocId, addr.str().c_str());
195  statisticsPathOutstandingBytes = new cOutVector(str);
196  snprintf(str, sizeof(str), "Sender Blocking Fraction %d:%s", assoc->assocId, addr.str().c_str());
197  statisticsPathSenderBlockingFraction = new cOutVector(str);
198  snprintf(str, sizeof(str), "Receiver Blocking Fraction %d:%s", assoc->assocId, addr.str().c_str());
199  statisticsPathReceiverBlockingFraction = new cOutVector(str);
200  snprintf(str, sizeof(str), "Number of Gap Acked Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
201  statisticsPathGapAckedChunksInLastSACK = new cOutVector(str);
202  snprintf(str, sizeof(str), "Number of Non-Revokable Gap Acked Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
203  statisticsPathGapNRAckedChunksInLastSACK = new cOutVector(str);
204  snprintf(str, sizeof(str), "Number of Gap Missed Chunks in Last SACK %d:%s", assoc->assocId, addr.str().c_str());
205  statisticsPathGapUnackedChunksInLastSACK = new cOutVector(str);
206 
207  snprintf(str, sizeof(str), "Partial Bytes Acked %d:%s", assoc->assocId, addr.str().c_str());
208  vectorPathPbAcked = new cOutVector(str);
209 
210  snprintf(str, sizeof(str), "Fast Recovery State %d:%s", assoc->assocId, addr.str().c_str());
211  vectorPathFastRecoveryState = new cOutVector(str);
212  vectorPathFastRecoveryState->record(0);
213 
214  snprintf(str, sizeof(str), "TSN Sent Fast RTX %d:%s", assoc->assocId, addr.str().c_str());
215  vectorPathTSNFastRTX = new cOutVector(str);
216  snprintf(str, sizeof(str), "TSN Sent Timer-Based RTX %d:%s", assoc->assocId, addr.str().c_str());
217  vectorPathTSNTimerBased = new cOutVector(str);
218  snprintf(str, sizeof(str), "TSN Acked CumAck %d:%s", assoc->assocId, addr.str().c_str());
219  vectorPathAckedTSNCumAck = new cOutVector(str);
220  snprintf(str, sizeof(str), "TSN Acked GapAck %d:%s", assoc->assocId, addr.str().c_str());
221  vectorPathAckedTSNGapAck = new cOutVector(str);
222 
223  snprintf(str, sizeof(str), "TSN PseudoCumAck %d:%s", assoc->assocId, addr.str().c_str());
224  vectorPathPseudoCumAck = new cOutVector(str);
225  snprintf(str, sizeof(str), "TSN RTXPseudoCumAck %d:%s", assoc->assocId, addr.str().c_str());
226  vectorPathRTXPseudoCumAck = new cOutVector(str);
227  snprintf(str, sizeof(str), "Blocking TSNs Moved %d:%s", assoc->assocId, addr.str().c_str());
228  vectorPathBlockingTSNsMoved = new cOutVector(str);
229 }
uint32 outstandingBytes
Definition: SCTPAssociation.h:308
bool newCumAck
Definition: SCTPAssociation.h:297
simtime_t blockingTimeout
Definition: SCTPAssociation.h:361
uint32 highestNewAckInSack
Definition: SCTPAssociation.h:335
unsigned int highSpeedCCThresholdIdx
Definition: SCTPAssociation.h:329
cOutVector * vectorPathPbAcked
Definition: SCTPAssociation.h:394
cMessage * HeartbeatIntervalTimer
Definition: SCTPAssociation.h:322
bool fastRecoveryActive
Definition: SCTPAssociation.h:313
uint32 newlyAckedBytes
Definition: SCTPAssociation.h:311
unsigned int numberOfHeartbeatAcksSent
Definition: SCTPAssociation.h:387
simtime_t cwndTimeout
Definition: SCTPAssociation.h:372
uint32 cmtGroupTotalCwnd
Definition: SCTPAssociation.h:355
simtime_t heartbeatIntervalTimeout
Definition: SCTPAssociation.h:370
bool activePath
Definition: SCTPAssociation.h:287
uint32 queuedBytes
Definition: SCTPAssociation.h:307
simtime_t txTimeForRTTCalculation
Definition: SCTPAssociation.h:364
bool lowestTSNRetransmitted
Definition: SCTPAssociation.h:318
bool newPseudoCumAck
Definition: SCTPAssociation.h:338
uint32 ssthresh
Definition: SCTPAssociation.h:305
uint32 fastRecoveryExitPoint
Definition: SCTPAssociation.h:314
unsigned int numberOfDuplicates
Definition: SCTPAssociation.h:383
uint32 utilizedCwnd
Definition: SCTPAssociation.h:353
cOutVector * statisticsPathQueuedSentBytes
Definition: SCTPAssociation.h:413
cMessage * T3_RtxTimer
Definition: SCTPAssociation.h:324
cMessage * HeartbeatTimer
Definition: SCTPAssociation.h:321
std::string str() const
Definition: L3Address.cc:86
#define PATH_MAX_RETRANS
Definition: SCTPAssociation.h:243
simtime_t oldestChunkSendTime
Definition: SCTPAssociation.h:345
cOutVector * vectorPathRcvdHb
Definition: SCTPAssociation.h:405
uint32 pathErrorThreshold
Definition: SCTPAssociation.h:300
uint32 partialBytesAcked
Definition: SCTPAssociation.h:306
cOutVector * statisticsPathSSthresh
Definition: SCTPAssociation.h:410
#define RNGCONTEXT
Definition: INETDefs.h:85
uint32 pathErrorCount
Definition: SCTPAssociation.h:299
uint64 numberOfBytesReceived
Definition: SCTPAssociation.h:390
cOutVector * statisticsPathCwnd
Definition: SCTPAssociation.h:411
cMessage * CwndTimer
Definition: SCTPAssociation.h:323
cOutVector * vectorPathTSNFastRTX
Definition: SCTPAssociation.h:395
unsigned int cmtGroupPaths
Definition: SCTPAssociation.h:352
unsigned int gapNRAckedChunksInLastSACK
Definition: SCTPAssociation.h:381
uint32 oldestChunkTSN
Definition: SCTPAssociation.h:344
cOutVector * vectorPathReceivedTSN
Definition: SCTPAssociation.h:403
uint32 pmtu
Definition: SCTPAssociation.h:301
double cmtGroupTotalCwndBandwidth
Definition: SCTPAssociation.h:357
uint32 cmtGroupTotalUtilizedCwnd
Definition: SCTPAssociation.h:354
simtime_t lastTransmission
Definition: SCTPAssociation.h:348
bool sawNewAck
Definition: SCTPAssociation.h:333
#define HB_INTERVAL
Definition: SCTPAssociation.h:242
cOutVector * statisticsPathReceiverBlockingFraction
Definition: SCTPAssociation.h:415
double cmtGroupAlpha
Definition: SCTPAssociation.h:359
unsigned int sendAllRandomizer
Definition: SCTPAssociation.h:349
cOutVector * vectorPathHb
Definition: SCTPAssociation.h:404
cOutVector * statisticsPathRTT
Definition: SCTPAssociation.h:409
unsigned int gapUnackedChunksInLastSACK
Definition: SCTPAssociation.h:382
simtime_t lastAckTime
Definition: SCTPAssociation.h:374
double cmtGroupTotalUtilizedCwndBandwidth
Definition: SCTPAssociation.h:358
bool confirmed
Definition: SCTPAssociation.h:288
cOutVector * statisticsPathBandwidth
Definition: SCTPAssociation.h:419
unsigned int numberOfFastRetransmissions
Definition: SCTPAssociation.h:384
simtime_t rttUpdateTime
Definition: SCTPAssociation.h:373
cMessage * BlockingTimer
Definition: SCTPAssociation.h:325
cOutVector * statisticsPathSenderBlockingFraction
Definition: SCTPAssociation.h:414
uint32 pseudoCumAck
Definition: SCTPAssociation.h:339
SCTPAssociation * association
Definition: SCTPAssociation.h:283
unsigned int cmtCCGroup
Definition: SCTPAssociation.h:351
unsigned int gapAckedChunksInLastSACK
Definition: SCTPAssociation.h:380
cOutVector * vectorPathAckedTSNCumAck
Definition: SCTPAssociation.h:397
bool findPseudoCumAck
Definition: SCTPAssociation.h:337
unsigned int numberOfHeartbeatsRcvd
Definition: SCTPAssociation.h:388
cOutVector * statisticsPathOutstandingBytes
Definition: SCTPAssociation.h:412
unsigned int numberOfTimerBasedRetransmissions
Definition: SCTPAssociation.h:385
bool forceHb
Definition: SCTPAssociation.h:291
cOutVector * vectorPathRTXPseudoCumAck
Definition: SCTPAssociation.h:400
uint32 tempCwnd
Definition: SCTPAssociation.h:304
bool findRTXPseudoCumAck
Definition: SCTPAssociation.h:341
unsigned int numberOfHeartbeatAcksRcvd
Definition: SCTPAssociation.h:389
uint32 tsnForRTTCalculation
Definition: SCTPAssociation.h:365
bool findLowestTSN
Definition: SCTPAssociation.h:317
bool waitingForRTTCalculaton
Definition: SCTPAssociation.h:363
cOutVector * vectorPathRcvdHbAck
Definition: SCTPAssociation.h:407
cOutVector * vectorPathFastRecoveryState
Definition: SCTPAssociation.h:393
uint32 oliaSentBytes
Definition: SCTPAssociation.h:367
L3Address remoteAddress
Definition: SCTPAssociation.h:284
uint32 rtxPseudoCumAck
Definition: SCTPAssociation.h:343
simtime_t pathRto
Definition: SCTPAssociation.h:375
bool requiresRtx
Definition: SCTPAssociation.h:289
simtime_t heartbeatTimeout
Definition: SCTPAssociation.h:369
cMessage * ResetTimer
Definition: SCTPAssociation.h:326
bool primaryPathCandidate
Definition: SCTPAssociation.h:290
bool newRTXPseudoCumAck
Definition: SCTPAssociation.h:342
uint32 cmtGroupTotalSsthresh
Definition: SCTPAssociation.h:356
uint32 packetsInBurst
Definition: SCTPAssociation.h:331
cOutVector * vectorPathHbAck
Definition: SCTPAssociation.h:406
cOutVector * vectorPathAckedTSNGapAck
Definition: SCTPAssociation.h:398
cMessage * AsconfTimer
Definition: SCTPAssociation.h:327
cOutVector * statisticsPathGapNRAckedChunksInLastSACK
Definition: SCTPAssociation.h:417
simtime_t rttvar
Definition: SCTPAssociation.h:377
cOutVector * statisticsPathRTO
Definition: SCTPAssociation.h:408
cOutVector * vectorPathSentTSN
Definition: SCTPAssociation.h:402
cOutVector * vectorPathPseudoCumAck
Definition: SCTPAssociation.h:399
uint32 lowestNewAckInSack
Definition: SCTPAssociation.h:334
cOutVector * vectorPathTSNTimerBased
Definition: SCTPAssociation.h:396
cOutVector * statisticsPathGapUnackedChunksInLastSACK
Definition: SCTPAssociation.h:418
cOutVector * vectorPathBlockingTSNsMoved
Definition: SCTPAssociation.h:401
cOutVector * statisticsPathGapAckedChunksInLastSACK
Definition: SCTPAssociation.h:416
uint32 outstandingBytesBeforeUpdate
Definition: SCTPAssociation.h:310
simtime_t srtt
Definition: SCTPAssociation.h:376
unsigned int numberOfHeartbeatsSent
Definition: SCTPAssociation.h:386
uint32 cwnd
Definition: SCTPAssociation.h:303
inet::sctp::SCTPPathVariables::~SCTPPathVariables ( )
232 {
233  delete statisticsPathSSthresh;
234  delete statisticsPathCwnd;
236  delete statisticsPathRTO;
237  delete statisticsPathRTT;
238 
239  delete vectorPathSentTSN;
240  delete vectorPathReceivedTSN;
241  delete vectorPathHb;
242  delete vectorPathRcvdHb;
243  delete vectorPathHbAck;
244  delete vectorPathRcvdHbAck;
245 
253 
254  delete vectorPathPbAcked;
256 
257  delete vectorPathTSNFastRTX;
261 
262  delete vectorPathPseudoCumAck;
265 }
cOutVector * vectorPathPbAcked
Definition: SCTPAssociation.h:394
cOutVector * statisticsPathQueuedSentBytes
Definition: SCTPAssociation.h:413
cOutVector * vectorPathRcvdHb
Definition: SCTPAssociation.h:405
cOutVector * statisticsPathSSthresh
Definition: SCTPAssociation.h:410
cOutVector * statisticsPathCwnd
Definition: SCTPAssociation.h:411
cOutVector * vectorPathTSNFastRTX
Definition: SCTPAssociation.h:395
cOutVector * vectorPathReceivedTSN
Definition: SCTPAssociation.h:403
cOutVector * statisticsPathReceiverBlockingFraction
Definition: SCTPAssociation.h:415
cOutVector * vectorPathHb
Definition: SCTPAssociation.h:404
cOutVector * statisticsPathRTT
Definition: SCTPAssociation.h:409
cOutVector * statisticsPathBandwidth
Definition: SCTPAssociation.h:419
cOutVector * statisticsPathSenderBlockingFraction
Definition: SCTPAssociation.h:414
cOutVector * vectorPathAckedTSNCumAck
Definition: SCTPAssociation.h:397
cOutVector * statisticsPathOutstandingBytes
Definition: SCTPAssociation.h:412
cOutVector * vectorPathRTXPseudoCumAck
Definition: SCTPAssociation.h:400
cOutVector * vectorPathRcvdHbAck
Definition: SCTPAssociation.h:407
cOutVector * vectorPathFastRecoveryState
Definition: SCTPAssociation.h:393
cOutVector * vectorPathHbAck
Definition: SCTPAssociation.h:406
cOutVector * vectorPathAckedTSNGapAck
Definition: SCTPAssociation.h:398
cOutVector * statisticsPathGapNRAckedChunksInLastSACK
Definition: SCTPAssociation.h:417
cOutVector * statisticsPathRTO
Definition: SCTPAssociation.h:408
cOutVector * vectorPathSentTSN
Definition: SCTPAssociation.h:402
cOutVector * vectorPathPseudoCumAck
Definition: SCTPAssociation.h:399
cOutVector * vectorPathTSNTimerBased
Definition: SCTPAssociation.h:396
cOutVector * statisticsPathGapUnackedChunksInLastSACK
Definition: SCTPAssociation.h:418
cOutVector * vectorPathBlockingTSNsMoved
Definition: SCTPAssociation.h:401
cOutVector * statisticsPathGapAckedChunksInLastSACK
Definition: SCTPAssociation.h:416

Member Data Documentation

SCTPAssociation* inet::sctp::SCTPPathVariables::association

Referenced by SCTPPathVariables().

unsigned int inet::sctp::SCTPPathVariables::cmtGroupPaths
uint32 inet::sctp::SCTPPathVariables::cmtGroupTotalUtilizedCwnd
double inet::sctp::SCTPPathVariables::cmtGroupTotalUtilizedCwndBandwidth
simtime_t inet::sctp::SCTPPathVariables::cwndTimeout
simtime_t inet::sctp::SCTPPathVariables::fastRecoveryEnteringTime
unsigned int inet::sctp::SCTPPathVariables::gapAckedChunksInLastSACK
unsigned int inet::sctp::SCTPPathVariables::gapNRAckedChunksInLastSACK
unsigned int inet::sctp::SCTPPathVariables::gapUnackedChunksInLastSACK
simtime_t inet::sctp::SCTPPathVariables::heartbeatIntervalTimeout
simtime_t inet::sctp::SCTPPathVariables::lastSACKSent
simtime_t inet::sctp::SCTPPathVariables::lastTransmission
simtime_t inet::sctp::SCTPPathVariables::newOldestChunkSendTime
uint64 inet::sctp::SCTPPathVariables::numberOfBytesReceived
unsigned int inet::sctp::SCTPPathVariables::numberOfDuplicates
unsigned int inet::sctp::SCTPPathVariables::numberOfFastRetransmissions
unsigned int inet::sctp::SCTPPathVariables::numberOfHeartbeatAcksRcvd
unsigned int inet::sctp::SCTPPathVariables::numberOfHeartbeatAcksSent
unsigned int inet::sctp::SCTPPathVariables::numberOfHeartbeatsRcvd
unsigned int inet::sctp::SCTPPathVariables::numberOfHeartbeatsSent
unsigned int inet::sctp::SCTPPathVariables::numberOfTimerBasedRetransmissions
simtime_t inet::sctp::SCTPPathVariables::oldestChunkSendTime
uint32 inet::sctp::SCTPPathVariables::pathErrorThreshold

Referenced by SCTPPathVariables().

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::getSortedPathMap(), 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::pathStreamSchedulerMapToPath(), 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().

simtime_t inet::sctp::SCTPPathVariables::rttUpdateTime
simtime_t inet::sctp::SCTPPathVariables::rtxTimeout
unsigned int inet::sctp::SCTPPathVariables::sendAllRandomizer
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathBandwidth
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathCwnd
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathGapAckedChunksInLastSACK
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathGapNRAckedChunksInLastSACK
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathGapUnackedChunksInLastSACK
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathOutstandingBytes
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathReceiverBlockingFraction
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathRTT
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathSenderBlockingFraction
cOutVector* inet::sctp::SCTPPathVariables::statisticsPathSSthresh
cOutVector* inet::sctp::SCTPPathVariables::vectorPathAckedTSNCumAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathAckedTSNGapAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathBlockingTSNsMoved
cOutVector* inet::sctp::SCTPPathVariables::vectorPathFastRecoveryState
cOutVector* inet::sctp::SCTPPathVariables::vectorPathHb
cOutVector* inet::sctp::SCTPPathVariables::vectorPathHbAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathPseudoCumAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathRcvdHb
cOutVector* inet::sctp::SCTPPathVariables::vectorPathRcvdHbAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathReceivedTSN
cOutVector* inet::sctp::SCTPPathVariables::vectorPathRTXPseudoCumAck
cOutVector* inet::sctp::SCTPPathVariables::vectorPathSentTSN
cOutVector* inet::sctp::SCTPPathVariables::vectorPathTSNFastRTX
cOutVector* inet::sctp::SCTPPathVariables::vectorPathTSNTimerBased

The documentation for this class was generated from the following files: