TCB Structure

Microchip TCP/IP Stack

Microchip TCP/IP Stack Help
TCB Structure
C
typedef struct {
  DWORD retryInterval;
  DWORD MySEQ;
  DWORD RemoteSEQ;
  PTR_BASE txUnackedTail;
  WORD_VAL remotePort;
  WORD_VAL localPort;
  WORD remoteWindow;
  WORD wFutureDataSize;
  union {
    NODE_INFO niRemoteMACIP;
    DWORD dwRemoteHost;
  } remote;
  SHORT sHoleSize;
  struct {
    unsigned char bFINSent : 1;
    unsigned char bSYNSent : 1;
    unsigned char bRemoteHostIsROM : 1;
    unsigned char bRXNoneACKed1 : 1;
    unsigned char bRXNoneACKed2 : 1;
    unsigned char filler : 3;
  } flags;
  WORD wRemoteMSS;
  WORD_VAL localSSLPort;
  BYTE retryCount;
  BYTE vSocketPurpose;
} TCB;
Description

Remainder of TCP Control Block data. The rest of the TCB is stored in Ethernet buffer RAM or elsewhere as defined by vMemoryMedium. Current size is 41 (PIC18), 42 (PIC24/dsPIC), or 48 bytes (PIC32)

Members
Members 
Description 
DWORD retryInterval; 
How long to wait before retrying transmission 
DWORD MySEQ; 
Local sequence number 
DWORD RemoteSEQ; 
Remote sequence number 
PTR_BASE txUnackedTail; 
TX tail pointer for data that is not yet acked 
WORD_VAL remotePort; 
Remote port number 
WORD_VAL localPort; 
Local port number 
WORD remoteWindow; 
Remote window size 
WORD wFutureDataSize; 
How much out-of-order data has been received 
NODE_INFO niRemoteMACIP; 
10 bytes for MAC and IP address 
DWORD dwRemoteHost; 
RAM or ROM pointer to a hostname string (ex: "www.microchip.com") 
SHORT sHoleSize; 
Size of the hole, or -1 for none exists. (0 indicates hole has just been filled) 
unsigned char bFINSent : 1; 
A FIN has been sent 
unsigned char bSYNSent : 1; 
A SYN has been sent 
unsigned char bRemoteHostIsROM : 1; 
Remote host is stored in ROM 
unsigned char bRXNoneACKed1 : 1; 
A duplicate ACK was likely received 
unsigned char bRXNoneACKed2 : 1; 
A second duplicate ACK was likely received 
unsigned char filler : 3; 
future use 
WORD wRemoteMSS; 
Maximum Segment Size option advirtised by the remote node during initial handshaking 
WORD_VAL localSSLPort; 
Local SSL port number (for listening sockets) 
BYTE retryCount; 
Counter for transmission retries 
BYTE vSocketPurpose; 
Purpose of socket (as defined in TCPIPConfig.h) 
Microchip TCP/IP Stack 5.42.08 - June 15, 2013
Copyright © 2012 Microchip Technology, Inc.  All rights reserved.