Public Member Functions | Protected Member Functions | Protected Attributes

SctpAgent Class Reference

Inheritance diagram for SctpAgent:
Agent Connector NsObject Handler HbAfterRtoSctpAgent MultipleFastRtxSctpAgent NewRenoSctpAgent SctpCMTAgent TimestampSctpAgent MfrHbAfterRtoSctpAgent MfrTimestampSctpAgent

List of all members.

Public Member Functions

virtual void recv (Packet *pkt, Handler *)
virtual void sendmsg (int nbytes, const char *flags=0)
virtual int command (int argc, const char *const *argv)
void T1InitTimerExpiration ()
void T1CookieTimerExpiration ()
virtual void Timeout (SctpChunkType_E, SctpDest_S *)
virtual void CwndDegradeTimerExpiration (SctpDest_S *)
virtual void HeartbeatGenTimerExpiration (double)
void SackGenTimerExpiration ()
void RouteCacheFlushTimerExpiration (SctpDest_S *)
void RouteCalcDelayTimerExpiration (SctpDest_S *)

Protected Member Functions

virtual void delay_bind_init_all ()
virtual int delay_bind_dispatch (const char *varName, const char *localName, TclObject *tracer)
void SetDebugOutFile ()
virtual void Reset ()
virtual void OptionReset ()
virtual u_int ControlChunkReservation ()
virtual void TraceVar (const char *)
virtual void TraceAll ()
void trace (TracedVar *)
void InsertNode (List_S *, Node_S *, Node_S *, Node_S *)
void DeleteNode (List_S *, Node_S *)
void ClearList (List_S *)
void AddInterface (int, int, NsObject *, NsObject *)
void AddDestination (int, int)
int SetPrimary (int)
int ForceSource (int)
int SetLossrate (int, float)
virtual int GenChunk (SctpChunkType_E, u_char *)
u_int GetNextDataChunkSize ()
int GenOneDataChunk (u_char *)
virtual int GenMultipleDataChunks (u_char *, int)
virtual int BundleControlChunks (u_char *)
void StartT3RtxTimer (SctpDest_S *)
void StopT3RtxTimer (SctpDest_S *)
virtual void AddToSendBuffer (SctpDataChunkHdr_S *, int, u_int, SctpDest_S *)
void RttUpdate (double, SctpDest_S *)
virtual void SendBufferDequeueUpTo (u_int)
virtual void AdjustCwnd (SctpDest_S *)
void AdvancePeerAckPoint ()
virtual u_int GetHighestOutstandingTsn ()
virtual void FastRtx ()
void TimeoutRtx (SctpDest_S *)
void MarkChunkForRtx (SctpSendBufferNode_S *, MarkedForRtx_E)
Boolean_E AnyMarkedChunks ()
virtual void RtxMarkedChunks (SctpRtxLimit_E)
void SendHeartbeat (SctpDest_S *)
SctpDest_SGetNextDest (SctpDest_S *)
double CalcHeartbeatTime (double)
void SetSource (SctpDest_S *)
void SetDestination (SctpDest_S *)
void SendPacket (u_char *, int, SctpDest_S *)
SctpDest_SGetReplyDestination (hdr_ip *)
u_int TotalOutstanding ()
virtual void SendMuch ()
Boolean_E UpdateHighestTsn (u_int)
Boolean_E IsDuplicateChunk (u_int)
void InsertDuplicateTsn (u_int)
void UpdateCumAck ()
void UpdateRecvTsnBlocks (u_int)
void PassToUpperLayer (SctpDataChunkHdr_S *)
void InsertInStreamBuffer (List_S *, SctpDataChunkHdr_S *)
void PassToStream (SctpDataChunkHdr_S *)
void UpdateAllStreams ()
void ProcessInitChunk (u_char *)
void ProcessInitAckChunk (u_char *)
void ProcessCookieEchoChunk (SctpCookieEchoChunk_S *)
void ProcessCookieAckChunk (SctpCookieAckChunk_S *)
void ProcessDataChunk (SctpDataChunkHdr_S *)
virtual Boolean_E ProcessGapAckBlocks (u_char *, Boolean_E)
virtual void ProcessSackChunk (u_char *)
void ProcessForwardTsnChunk (SctpForwardTsnChunk_S *)
void ProcessHeartbeatAckChunk (SctpHeartbeatChunk_S *)
virtual void ProcessOptionChunk (u_char *)
virtual int ProcessChunk (u_char *, u_char **)
void NextChunk (u_char **, int *)
void Close ()
void DumpSendBuffer ()

Protected Attributes

SctpState_E eState
List_S sAppLayerBuffer
ClassifieropCoreTarget
List_S sInterfaceList
List_S sDestList
SctpDest_SspPrimaryDest
SctpDest_SspNewTxDest
SctpDest_SspReplyDest
Boolean_E eForceSource
int iAssocErrorCount
HeartbeatGenTimeropHeartbeatGenTimer
T1InitTimeropT1InitTimer
T1CookieTimeropT1CookieTimer
int iInitTryCount
u_int uiNextTsn
u_short usNextStreamId
SctpOutStream_SspOutStreams
u_int uiPeerRwnd
u_int uiCumAckPoint
u_int uiAdvancedPeerAckPoint
u_int uiHighestTsnNewlyAcked
u_int uiRecover
List_S sSendBuffer
Boolean_E eForwardTsnNeeded
Boolean_E eSendNewDataChunks
Boolean_E eMarkedChunksPending
Boolean_E eApplyMaxBurst
DataSource_E eDataSource
u_int uiBurstLength
u_int uiMyRwnd
u_int uiCumAck
u_int uiHighestRecvTsn
List_S sRecvTsnBlockList
List_S sDupTsnList
int iNumInStreams
SctpInStream_SspInStreams
Boolean_E eStartOfPacket
int iDataPktCountSinceLastSack
Boolean_E eSackChunkNeeded
SackGenTimeropSackGenTimer
u_int uiDebugMask
int iDebugFileIndex
u_int uiPathMaxRetrans
u_int uiChangePrimaryThresh
u_int uiAssociationMaxRetrans
u_int uiMaxInitRetransmits
u_int uiHeartbeatInterval
u_int uiMtu
u_int uiInitialRwnd
int iInitialSsthresh
u_int uiIpHeaderSize
u_int uiDataChunkSize
u_int uiNumOutStreams
Boolean_E eUseDelayedSacks
double dSackDelay
MaxBurstUsage_E eUseMaxBurst
int iInitialCwnd
double dInitialRto
double dMinRto
double dMaxRto
int iFastRtxTrigger
u_int uiNumUnrelStreams
u_int uiReliability
Boolean_E eUnordered
RtxToAlt_E eRtxToAlt
DormantAction_E eDormantAction
double dRouteCacheLifetime
double dRouteCalcDelay
Boolean_E eTraceAll
TracedInt tiCwnd
TracedInt tiRwnd
TracedDouble tdRto
TracedInt tiErrorCount
TracedInt tiFrCount
TracedInt tiTimeoutCount
TracedInt tiRcdCount
u_int uiMaxPayloadSize
u_int uiMaxDataSize
FILE * fhpDebugFile
u_int uiNumChunks
SctpTrace_SspSctpTrace

Member Function Documentation

void SctpAgent::UpdateRecvTsnBlocks ( u_int  uiTsn  )  [protected]

Helper function to do the correct update the received tsn blocks. This function will also call UpdateCumAck() when necessary.


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