Protocol Analysis::TCP::TCP State Descriptions
Thanks to: http://www.tcpipguide.com
This is the default
Passive Open: A server
A device (normally a server)
Receive Client SYN,Send SYN+ACK: The server device receives a SYN from
Receive SYN, Send ACK: If the device that has sent its SYN message receives a SYN from the other device but not an ACK for its own SYN, it acknowledges the SYN it receives and
Receive SYN+ACK, Send ACK: If the device that sent the SYN receives both an acknowledgment to its SYN and also a SYN from the other device, it acknowledges the SYN received and then moves straight to the ESTABLISHED state.
The device has both received a SYN (connection request) from its partner and sent its own SYN. It is now waiting for an ACK to
Receive ACK: When the device receives the ACK to the SYN it sent, it transitions to the ESTABLISHED state.
The steady state of an open TCP connection. Data can be exchanged freely once both devices in the connection enter this state. This will continue until the connection is closed for one reason or another.
Close, Send FIN: A device can close the connection by sending a message with the FIN(finish) bit sent and transition to the FIN-WAIT-1 state.
Receive FIN: A device may receive a FIN message from its connection partner asking that the connection be closed. It will acknowledge this message and transition to the CLOSE-WAIT state.
The device has received a close request (FIN) from the other device. It must now wait for the application on the local device to acknowledge this request and generate a matching request.
Close, Send FIN:The application using TCP, having been informed the other process wants to shut down, sends a close request to the TCP layer on the machine upon which it is running. TCP then sends a FIN to the remote device that already asked to terminate the connection. This device now
A device that has already received a close request and acknowledged it, has sent its own FIN and is waiting for an ACK to this request.
Receive ACK for FIN: The device receives an acknowledgment for its close request. We have now sent our FIN and had it acknowledged, and received the other device's FIN and acknowledged it, so we
A device in this state is waiting for an ACK for a FIN it has sent, or is waiting for a connection termination request from the other device.
Receive ACK for FIN:The device receives an acknowledgment for its close request. It transitions to the FIN-WAIT-2 state.
Receive FIN, Send ACK: The device does not receive an ACKfor its own FIN, but receives a FIN from the other device. It acknowledges it, and moves to the CLOSING state.
A device in this state has received
Receive FIN, Send ACK:
The device has received a FIN from the other device and sent an ACK for it, but not yet received an ACK for its own FIN message.
ReceiveACK for FIN: The device receives an acknowledgment for its close request. It transitions to the TIME-WAIT state.
The device has now received aFIN from the other device and acknowledged it, and sent its ownFIN and received an ACK for it. We are done, except for waiting to ensure the ACK is received and prevent potential overlap with new connections.
Timer Expiration: After a designated wait period, device transitions to the CLOSED state.