|
INET Framework for OMNeT++/OMNEST
|
#include <omnetpp.h>#include "INETDefs.h"#include "IPvXAddress.h"#include "TCP.h"#include "TCPSegment.h"| #define DUPTHRESH 3 |
| #define MAX_SACK_BLOCKS 60 |
Referenced by TCPConnection::addSacks().
| #define MAX_SYN_REXMIT_COUNT 12 |
| #define PAWS_IDLE_TIME_THRESH 24*24*3600 |
Referenced by TCPConnection::processSegment1stThru8th(), and TCPConnection::processTSOption().
| #define TCP_MAX_WIN 65535 |
| #define TCP_OPTION_TS_SIZE 12 |
Referenced by TCPConnection::nextSeg(), TCPConnection::sendData(), and TCPConnection::setPipe().
| #define TCP_TIMEOUT_2MSL 240 |
| #define TCP_TIMEOUT_CONN_ESTAB 75 |
| #define TCP_TIMEOUT_FIN_WAIT_2 600 |
| #define TCP_TIMEOUT_SYN_REXMIT 3 |
Referenced by tcp_old::TCPConnection::startSynRexmitTimer(), and TCPConnection::startSynRexmitTimer().
| #define TCP_TIMEOUT_SYN_REXMIT_MAX 240 |
| enum TCPEventCode |
{
TCP_E_IGNORE,
// app commands
// (Note: no RECEIVE command, data are automatically passed up)
TCP_E_OPEN_ACTIVE,
TCP_E_OPEN_PASSIVE,
TCP_E_SEND,
TCP_E_CLOSE,
TCP_E_ABORT,
TCP_E_STATUS,
// TPDU types
TCP_E_RCV_DATA,
TCP_E_RCV_ACK,
TCP_E_RCV_SYN,
TCP_E_RCV_SYN_ACK,
TCP_E_RCV_FIN,
TCP_E_RCV_FIN_ACK,
TCP_E_RCV_RST, // covers RST+ACK too
TCP_E_RCV_UNEXP_SYN, // unexpected SYN
// timers
TCP_E_TIMEOUT_2MSL, // RFC 793, a.k.a. TIME-WAIT timer
TCP_E_TIMEOUT_CONN_ESTAB,
TCP_E_TIMEOUT_FIN_WAIT_2,
// All other timers (REXMT, PERSIST, DELAYED-ACK, KEEP-ALIVE, etc.),
// are handled in TCPAlgorithm.
};
| enum TcpState |
| TCP_S_INIT | |
| TCP_S_CLOSED | |
| TCP_S_LISTEN | |
| TCP_S_SYN_SENT | |
| TCP_S_SYN_RCVD | |
| TCP_S_ESTABLISHED | |
| TCP_S_CLOSE_WAIT | |
| TCP_S_LAST_ACK | |
| TCP_S_FIN_WAIT_1 | |
| TCP_S_FIN_WAIT_2 | |
| TCP_S_CLOSING | |
| TCP_S_TIME_WAIT |
{
TCP_S_INIT = 0,
TCP_S_CLOSED = FSM_Steady(1),
TCP_S_LISTEN = FSM_Steady(2),
TCP_S_SYN_SENT = FSM_Steady(3),
TCP_S_SYN_RCVD = FSM_Steady(4),
TCP_S_ESTABLISHED = FSM_Steady(5),
TCP_S_CLOSE_WAIT = FSM_Steady(6),
TCP_S_LAST_ACK = FSM_Steady(7),
TCP_S_FIN_WAIT_1 = FSM_Steady(8),
TCP_S_FIN_WAIT_2 = FSM_Steady(9),
TCP_S_CLOSING = FSM_Steady(10),
TCP_S_TIME_WAIT = FSM_Steady(11)
};