All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | List of all members
CSiriusTCP Class Reference

#include <sir_tcp.h>

Inheritance diagram for CSiriusTCP:
Inheritance graph
Collaboration diagram for CSiriusTCP:
Collaboration graph

Public Member Functions

void Init (int iInstance, void *pCSiriusI, void *pCSirius)
 
bool TCP_Timing ()
 
uint16_t GetEphemeralPort (void)
 
bool FreeEphemeralPort (uint16_t ui16EphemeralPort)
 
bool Handle_TCP_Packet (sir_tcp_tcb *pTCB, sir_tcp_parse *tTcpParse, CSiriusMemList *ptMemList)
 
sir_tcp_tcbHandle_TCP_UserCalls (ETcp_User_Calls eTcp_User_Calls, sir_tcp_tcb *ptTCB)
 
void Notification (sir_tcp_tcb *pTCB)
 
- Public Member Functions inherited from CSiriusSYNCache
void SynCache_Init (int iInstance)
 
sir_tcp_tcbSynCache_Search (T5Tuple &tTupleID)
 
sir_tcp_tcbSynCache_Insert (sir_tcp_tcb *pTCB, T5Tuple &tTupleID, sir_tcp_parse *ptTcpParse, bool bUserEvent)
 
bool SynCache_Remove (sir_tcp_tcb *ptTCB)
 
int SYNCache_Send_TCP (sir_tcp_tcb *ptTCB, int iFlags, uint32_t ui32SEQ, uint32_t ui32ACK, sir_memlist_seg *ptMember, bool bRetransmit)
 
sir_tcp_tcbSynCache_Search_NewConnection (int fd)
 
uint32_t SynCache_Handle_ACK_RTQ (sir_tcp_tcb *pTCB, sir_tcp_parse *ptTcpParse)
 
bool SynCache_SetSendWindow (uint32_t ui32ReceiveWindow)
 
int SynCache_CreateTCPHeader (CSiriusMemList *pMemList, sir_tcp_tcb *ptTCB, int iFlags, uint32_t ui32SEQ, uint32_t ui32ACK, int &iTCPHeaderSize)
 
int GetAndAddResourcesInUse (int iIncrement)
 
int GetAndAddShadowResourcesInUse (int iIncrement)
 

Static Public Member Functions

static CSiriusTCPInstance (void)
 
static int TCPParseIncoming (sir_tcp_parse *ptTcpParse, CSiriusMemList *ptMemList)
 
- Static Public Member Functions inherited from CSiriusSYNCache
static bool SYNCache_Handle_Unused_Static (cvmx_wqe_t *pWQE, void *pThis)
 
static bool SYNCache_Handle_UnusedRTQ_Static (cvmx_wqe_t *pWQE, void *pThis)
 
static int SynCache_TCPOptionsHeaderSize (sir_tcp_tcb *ptTCB)
 
static void FreeResourcesTCB (sir_tcp_tcb *ptTCB)
 
static int TCPHeaderSize ()
 
static uint32_t CalcUsableWindow (sir_tcp_tcb *ptTCB, bool bAccountForRTXQueue=true)
 

Additional Inherited Members

- Public Attributes inherited from CSiriusSYNCache
uint32_t m_ui32AcceptTag
 
- Static Public Attributes inherited from CSiriusSYNCache
static CVMX_SHARED int m_iTcp_KeepAlive_Probes
 
static CVMX_SHARED int m_iTcp_KeepAlive_Time
 
static CVMX_SHARED int m_iTcp_KeepAlive_IntVl
 
static CVMX_SHARED int m_iTcp_KeepAlive_Idle
 
- Protected Member Functions inherited from CSiriusSYNCache
uint32_t GetISN ()
 
bool ProcessRTXQueue (sir_tcp_tcb *ptTCB, bool bForceRetransmit)
 
bool UpdateRTTMax (sir_tcp_tcb *ptTCB, uint32_t ui32TimeStampEcho, sir_timer_t tOrgTime)
 
sir_timer_t GetRTO (sir_tcp_tcb *ptTCB)
 
void EnableTimeStamp (bool bTimeStampOn)
 
bool TimeStampEnabled ()
 
void EnableSACK (bool bSACKOn)
 
bool SACKEnabled ()
 
- Protected Attributes inherited from CSiriusSYNCache
CTashTable< T5Tuple, sizeof(sir_tcp_tcb)> m_cSynCacheHash
 
CTashTable< T5Tuple, sizeof(sir_shadow_cache)> m_cShadowCache
 
uint32_t m_ui32InitialWindowSize
 
uint32_t m_ui32MinimumWindowsSize
 
int m_iInstance
 
uint16_t m_ui16SegWinScale
 
bool m_bTimeStampAllowed
 
bool m_bSACKAllowed
 

Detailed Description

Definition at line 18 of file sir_tcp.h.

Member Function Documentation

bool CSiriusTCP::FreeEphemeralPort ( uint16_t  ui16EphemeralPort)
uint16_t CSiriusTCP::GetEphemeralPort ( void  )
bool CSiriusTCP::Handle_TCP_Packet ( sir_tcp_tcb pTCB,
sir_tcp_parse tTcpParse,
CSiriusMemList ptMemList 
)
virtual

Implements CSiriusSYNCache.

sir_tcp_tcb* CSiriusTCP::Handle_TCP_UserCalls ( ETcp_User_Calls  eTcp_User_Calls,
sir_tcp_tcb ptTCB 
)
void CSiriusTCP::Init ( int  iInstance,
void *  pCSiriusI,
void *  pCSirius 
)
static CSiriusTCP* CSiriusTCP::Instance ( void  )
static
void CSiriusTCP::Notification ( sir_tcp_tcb pTCB)
virtual

Implements CSiriusSYNCache.

bool CSiriusTCP::TCP_Timing ( )
static int CSiriusTCP::TCPParseIncoming ( sir_tcp_parse ptTcpParse,
CSiriusMemList ptMemList 
)
static

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