Il TCP stabilisce una connessione con un 3-way handshake, la chiude con un 4-way teardown e mantiene il flusso di dati in sicurezza grazie a flow control e congestion control. L'handshake sincronizza il sequence number iniziale di ciascun lato così che entrambi possano tracciare e confermare (ACK) ogni byte:
3-WAY HANDSHAKE (open) 4-WAY TEARDOWN (close)
Client Server Client Server
│──── SYN ───────▶│ │──── FIN ───────▶│
│◀── SYN, ACK ────│ │◀──── ACK ───────│
│──── ACK ───────▶│ │◀──── FIN ───────│
│ connected │ │──── ACK ───────▶│
