INET Framework for OMNeT++/OMNEST
inet::sctp::SCTPAlgorithm Class Referenceabstract

Abstract base class for SCTP algorithms which encapsulate all behaviour during data transfer state: flavour of congestion control, fast retransmit/recovery, selective acknowledgement etc. More...

#include <SCTPAlgorithm.h>

Inheritance diagram for inet::sctp::SCTPAlgorithm:
inet::sctp::SCTPAlg

Public Member Functions

 SCTPAlgorithm ()
 Ctor. More...
 
virtual ~SCTPAlgorithm ()
 Virtual dtor. More...
 
void setAssociation (SCTPAssociation *_assoc)
 
virtual void initialize ()
 
virtual SCTPStateVariablescreateStateVariables ()=0
 
virtual void established (bool active)=0
 
virtual void connectionClosed ()=0
 
virtual void processTimer (cMessage *timer, SCTPEventCode &event)=0
 
virtual void sendCommandInvoked (SCTPPathVariables *path)=0
 
virtual void receivedDataAck (uint32 firstSeqAcked)=0
 
virtual void receivedDuplicateAck ()=0
 
virtual void receivedAckForDataNotYetSent (uint32 seq)=0
 
virtual void sackSent ()=0
 
virtual void dataSent (uint32 fromseq)=0
 

Protected Attributes

SCTPAssociationassoc
 
SCTPQueuetransmissionQ
 
SCTPQueueretransmissionQ
 

Detailed Description

Abstract base class for SCTP algorithms which encapsulate all behaviour during data transfer state: flavour of congestion control, fast retransmit/recovery, selective acknowledgement etc.

Subclasses may implement various sets and flavours of the above algorithms.

Constructor & Destructor Documentation

inet::sctp::SCTPAlgorithm::SCTPAlgorithm ( )
inline

Ctor.

47 { assoc = nullptr; transmissionQ = nullptr; retransmissionQ = nullptr; }
SCTPQueue * transmissionQ
Definition: SCTPAlgorithm.h:40
SCTPQueue * retransmissionQ
Definition: SCTPAlgorithm.h:41
SCTPAssociation * assoc
Definition: SCTPAlgorithm.h:39
virtual inet::sctp::SCTPAlgorithm::~SCTPAlgorithm ( )
inlinevirtual

Virtual dtor.

52 {}

Member Function Documentation

virtual void inet::sctp::SCTPAlgorithm::connectionClosed ( )
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual SCTPStateVariables* inet::sctp::SCTPAlgorithm::createStateVariables ( )
pure virtual
virtual void inet::sctp::SCTPAlgorithm::dataSent ( uint32  fromseq)
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::established ( bool  active)
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::initialize ( )
inlinevirtual
virtual void inet::sctp::SCTPAlgorithm::processTimer ( cMessage *  timer,
SCTPEventCode event 
)
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::receivedAckForDataNotYetSent ( uint32  seq)
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::receivedDataAck ( uint32  firstSeqAcked)
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::receivedDuplicateAck ( )
pure virtual

Implemented in inet::sctp::SCTPAlg.

virtual void inet::sctp::SCTPAlgorithm::sackSent ( )
pure virtual
virtual void inet::sctp::SCTPAlgorithm::sendCommandInvoked ( SCTPPathVariables path)
pure virtual
void inet::sctp::SCTPAlgorithm::setAssociation ( SCTPAssociation _assoc)
inline

Referenced by inet::sctp::SCTPAssociation::cloneAssociation(), and inet::sctp::SCTPAssociation::initAssociation().

55  {
56  assoc = _assoc;
59  }
SCTPQueue * getTransmissionQueue() const
Definition: SCTPAssociation.h:1019
SCTPQueue * transmissionQ
Definition: SCTPAlgorithm.h:40
SCTPQueue * retransmissionQ
Definition: SCTPAlgorithm.h:41
SCTPAssociation * assoc
Definition: SCTPAlgorithm.h:39
SCTPQueue * getRetransmissionQueue() const
Definition: SCTPAssociation.h:1020

Member Data Documentation

SCTPAssociation* inet::sctp::SCTPAlgorithm::assoc
protected
SCTPQueue* inet::sctp::SCTPAlgorithm::retransmissionQ
protected
SCTPQueue* inet::sctp::SCTPAlgorithm::transmissionQ
protected

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