TCP gaat op een gestructureerde manier om met het beëindigen van verbindingen, om ervoor te zorgen dat alle betrokken partijen op de juiste manier op de hoogte worden gesteld van de beëindiging en dat er geen onnodige pakketten worden verstuurd.
Het proces van het beëindigen van een TCP-verbinding wordt ook wel aangeduid als “TCP termination” of “TCP teardown”. Er zijn vier belangrijke stappen in dit proces:
1. Fin-bericht verzenden: De initiërende partij stuurt een FIN-bericht naar de andere partij om aan te geven dat hij de verbinding wil beëindigen. Dit wordt ook wel de “active close” genoemd.
1. Fin-ack ontvangen: De andere partij stuurt een FIN-ACK-bericht terug om aan te geven dat hij de beëindiging heeft ontvangen en dat hij de verbinding zal sluiten.
1. Ack-bericht verzenden: De initiërende partij stuurt een ACK-bericht terug om de beëindiging te bevestigen. Dit wordt ook wel de “passive close” genoemd.
1. Time-wait periode: Beide partijen wachten een korte periode (meestal 2 keer de maximale segment lifetime) voordat ze de verbinding daadwerkelijk afsluiten. Dit helpt ervoor te zorgen dat eventueel achtergebleven pakketten nog worden afgeleverd.
Zodra deze stappen zijn voltooid, is de verbinding officieel beëindigd en kunnen er geen pakketten meer worden verstuurd tussen de betrokken partijen.