|
INET Framework for OMNeT++/OMNEST
|
#include <TCPNoCongestionControl.h>
Public Member Functions | |
| TCPNoCongestionControl () | |
| virtual void | initialize () |
| virtual void | receivedDataAck (uint32 firstSeqAcked) |
Protected Member Functions | |
| virtual TCPStateVariables * | createStateVariables () |
| virtual void | processRexmitTimer (TCPEventCode &event) |
Protected Attributes | |
| TCPNoCongestionControlStateVariables *& | state |
TCP with no congestion control (i.e. congestion window kept very large). Can be used to demonstrate effect of lack of congestion control.
Definition at line 35 of file TCPNoCongestionControl.h.
Ctor
Definition at line 23 of file flavours/TCPNoCongestionControl.cc.
| virtual TCPStateVariables* TCPNoCongestionControl::createStateVariables | ( | ) | [inline, protected, virtual] |
Create and return a TCPNoCongestionControlStateVariables object.
Implements TCPAlgorithm.
Definition at line 41 of file TCPNoCongestionControl.h.
{
return new TCPNoCongestionControlStateVariables();
}
| void TCPNoCongestionControl::initialize | ( | ) | [virtual] |
Initialize state vars
Reimplemented from TCPBaseAlg.
Definition at line 28 of file flavours/TCPNoCongestionControl.cc.
{
TCPBaseAlg::initialize();
// set congestion window to a practically infinite value
state->snd_cwnd = 0x7fffffff;
}
| void TCPNoCongestionControl::processRexmitTimer | ( | TCPEventCode & | event | ) | [protected, virtual] |
Redefine what should happen on retransmission
Reimplemented from TCPBaseAlg.
Definition at line 36 of file flavours/TCPNoCongestionControl.cc.
{
TCPBaseAlg::processRexmitTimer(event);
if (event==TCP_E_ABORT)
return;
// Tahoe-style retransmission: only one segment
conn->retransmitOneSegment(true);
}
| void TCPNoCongestionControl::receivedDataAck | ( | uint32 | firstSeqAcked | ) | [virtual] |
Redefine what should happen when data got acked, to add congestion window management
Reimplemented from TCPBaseAlg.
Definition at line 46 of file flavours/TCPNoCongestionControl.cc.
{
TCPBaseAlg::receivedDataAck(firstSeqAcked);
// ack may have freed up some room in the window, try sending
sendData();
}
Reimplemented from TCPBaseAlg.
Definition at line 38 of file TCPNoCongestionControl.h.
Referenced by initialize().