TCP State Machine
Classic TCP connection state diagram.
Rendering…
Make it your own.
digraph tcp {
rankdir=LR;
graph [bgcolor=transparent];
node [shape=ellipse, fontname=Inter, style=filled, fillcolor="#dbeafe"];
CLOSED -> LISTEN [label="passive open"];
CLOSED -> SYN_SENT [label="active open"];
LISTEN -> SYN_RCVD [label="recv SYN"];
SYN_SENT -> ESTABLISHED[label="recv SYN+ACK"];
SYN_RCVD -> ESTABLISHED[label="recv ACK"];
ESTABLISHED -> FIN_WAIT_1 [label="close"];
ESTABLISHED -> CLOSE_WAIT [label="recv FIN"];
FIN_WAIT_1 -> FIN_WAIT_2 [label="recv ACK"];
FIN_WAIT_2 -> TIME_WAIT [label="recv FIN"];
CLOSE_WAIT -> LAST_ACK [label="close"];
LAST_ACK -> CLOSED [label="recv ACK"];
TIME_WAIT -> CLOSED [label="2MSL"];
}