Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals

# TCP configuration options
[Configuration options for uIP]

## Defines
#define | UIP_ACTIVE_OPEN
| Determines if support for opening connections from uIP should be compiled in.
#define | UIP_CONNS
| The maximum number of simultaneously open TCP connections.
#define | UIP_LISTENPORTS
| The maximum number of simultaneously listening TCP ports.
#define | UIP_RECEIVE_WINDOW
| The size of the advertised receiver's window.
#define | UIP_URGDATA
| Determines if support for TCP urgent data notification should be compiled in.
#define | UIP_RTO 3
| The initial retransmission timeout counted in timer pulses.
#define | UIP_MAXRTX 8
| The maximum number of times a segment should be retransmitted before the connection should be aborted.
#define | UIP_MAXSYNRTX 3
| The maximum number of times a SYN segment should be retransmitted before a connection request should be deemed to have been unsuccessful.
#define | UIP_TCP_MSS (UIP_BUFSIZE - UIP_LLH_LEN - 40)
| The TCP maximum segment size.
#define | UIP_TIME_WAIT_TIMEOUT 120
| How long a connection should stay in the TIME_WAIT state.

## Define Documentation

#define UIP_ACTIVE_OPEN

| Determines if support for opening connections from uIP should be compiled in. If the applications that are running on top of uIP for this project do not need to open outgoing TCP connections, this configration option can be turned off to reduce the code size of uIP.

#define UIP_CONNS

| The maximum number of simultaneously open TCP connections. Since the TCP connections are statically allocated, turning this configuration knob down results in less RAM used. Each TCP connection requires approximatly 30 bytes of memory.

#define UIP_LISTENPORTS

| The maximum number of simultaneously listening TCP ports. Each listening TCP port requires 2 bytes of memory.

#define UIP_MAXRTX 8

| The maximum number of times a segment should be retransmitted before the connection should be aborted. This should not be changed.

#define UIP_MAXSYNRTX 3

| The maximum number of times a SYN segment should be retransmitted before a connection request should be deemed to have been unsuccessful. This should not need to be changed.

#define UIP_RECEIVE_WINDOW

| The size of the advertised receiver's window. Should be set low (i.e., to the size of the uip_buf buffer) is the application is slow to process incoming data, or high (32768 bytes) if the application processes data quickly.

#define UIP_RTO 3

| The initial retransmission timeout counted in timer pulses. This should not be changed.

#define UIP_TCP_MSS (UIP_BUFSIZE - UIP_LLH_LEN - 40)

| The TCP maximum segment size. This is should not be to set to more than UIP_BUFSIZE - UIP_LLH_LEN - 40.

#define UIP_TIME_WAIT_TIMEOUT 120

| How long a connection should stay in the TIME_WAIT state. This configiration option has no real implication, and it should be left untouched.

#define UIP_URGDATA

| Determines if support for TCP urgent data notification should be compiled in. Urgent data (out-of-band data) is a rarely used TCP feature that very seldom would be required.