User Manual, Developers Guide and API Documentation

tcp::CongestionControl Class Reference

#include <CongestionControl.hpp>

Inheritance diagram for tcp::CongestionControl:

Inheritance graph
[legend]
Collaboration diagram for tcp::CongestionControl:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void clearDuplicateACKCounter ()
 CongestionControl (const wns::pyconfig::View &_pyco)
virtual bool duplicateACKThresholdReached (unsigned long int _ackNR)
CongestionControlStrategygetCongestionControlMode ()
virtual simTimeType getRetransmissionTimeout ()
virtual unsigned long int getWindowSize ()
virtual void onRTTSample ()
virtual void onSegmentAcknowledged ()
virtual void onSegmentLoss (segmentLoss _sl, unsigned long int _ackNR)
 Implementation of the CongestionControlStrategy interface.
virtual ~CongestionControl ()

Private Member Functions

unsigned long int getSlowStartThreshold ()
 Returns the SlowStart threshold value.
std::string printMode (Mode _mode)
void setCongestionControlMode (Mode _mode)
 Changing between SlowStart mode and CongestionAvoidance mode.
virtual void setWindowSize (unsigned long int new_cwnd)

Private Attributes

CongestionAvoidanceStrategyca
 Currently active CongestionAvoidance algorithm.
wns::logger::Logger logger
 CongestionControl's logger.
Mode mode
 The current mode of congestion control.
wns::pyconfig::View pyco
SlowStartStrategyslowStart
 The SlowStart instance.

Friends

class tests::CongestionControlTest
class tests::CumulativeACKTest


Detailed Description

Definition at line 46 of file CongestionControl.hpp.


Constructor & Destructor Documentation

CongestionControl::CongestionControl ( const wns::pyconfig::View _pyco  )  [explicit]

Definition at line 35 of file CongestionControl.cpp.

CongestionControl::~CongestionControl (  )  [virtual]

Definition at line 46 of file CongestionControl.cpp.


Member Function Documentation

void CongestionControl::clearDuplicateACKCounter (  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 197 of file CongestionControl.cpp.

bool CongestionControl::duplicateACKThresholdReached ( unsigned long int  _ackNR  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 189 of file CongestionControl.cpp.

CongestionControlStrategy * CongestionControl::getCongestionControlMode (  ) 

Definition at line 142 of file CongestionControl.cpp.

simTimeType CongestionControl::getRetransmissionTimeout (  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 110 of file CongestionControl.cpp.

unsigned long int CongestionControl::getSlowStartThreshold (  )  [private]

Definition at line 182 of file CongestionControl.cpp.

unsigned long int CongestionControl::getWindowSize (  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 104 of file CongestionControl.cpp.

void CongestionControl::onRTTSample (  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 98 of file CongestionControl.cpp.

void CongestionControl::onSegmentAcknowledged (  )  [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 116 of file CongestionControl.cpp.

void CongestionControl::onSegmentLoss ( segmentLoss  _sl,
unsigned long int  _ackNR 
) [virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 53 of file CongestionControl.cpp.

std::string CongestionControl::printMode ( Mode  _mode  )  [private]

Definition at line 204 of file CongestionControl.cpp.

void CongestionControl::setCongestionControlMode ( Mode  _mode  )  [private]

Definition at line 160 of file CongestionControl.cpp.

void CongestionControl::setWindowSize ( unsigned long int  new_cwnd  )  [private, virtual]

Implements tcp::CongestionControlStrategy.

Definition at line 175 of file CongestionControl.cpp.


Friends And Related Function Documentation

friend class tests::CongestionControlTest [friend]

Reimplemented from tcp::CongestionControlStrategy.

Definition at line 49 of file CongestionControl.hpp.

friend class tests::CumulativeACKTest [friend]

Reimplemented from tcp::CongestionControlStrategy.

Definition at line 50 of file CongestionControl.hpp.


Member Data Documentation

Definition at line 106 of file CongestionControl.hpp.

Definition at line 111 of file CongestionControl.hpp.

Definition at line 96 of file CongestionControl.hpp.

Definition at line 91 of file CongestionControl.hpp.

Definition at line 101 of file CongestionControl.hpp.


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

Generated on Sat May 26 03:32:39 2012 for openWNS by  doxygen 1.5.5