Aby zakończyć połączenie, w nagłówku segmentu musi być ustawiona flaga FIN. W celu zakończenia każdej jednokierunkowej sesji TCP, używane jest podwójne uzgadnianie, składające się z segmentów FIN oraz ACK. Dlatego, aby zakończyć pojedynczą konwersację TCP, wymagane są 4 komunikaty, które kończą obydwie sesje (prezentowane na rys. 1).

Uwaga: W opisie, terminy klient i serwer są użyte dla uproszczenia sytuacji, ale proces zakończenia komunikacji między hostami może być zainicjowany przez każdego z nich:

Krok 1: Kiedy klient nie ma więcej danych do przesłania, wysyła segment z ustawioną flagą FIN.

Krok 2: Aby potwierdzić otrzymanie segmentu z ustawioną flagą FIN, serwer wysyła segment z ustawioną flagą ACK, co kończy połączenie od klienta do serwera.

Krok 3: W celu zakończenia sesji od serwera do klienta, serwer wysyła segment z ustawioną flagą FIN do klienta.

Krok 4: Aby potwierdzić otrzymanie segmentu z ustawioną flagą FIN od serwera, klient odpowiada segmentem z ustawioną flagą ACK.

Kiedy po stronie klienta nie ma więcej danych do przesłania, ustawia on flagę FIN w nagłówku segmentu. Następnie po stronie serwera wysyłany jest zwyczajny segment z ustawioną flagą ACK, używającą numeru potwierdzenia, który potwierdza, że wszystkie dane zostały otrzymane. Dopiero po otrzymaniu wszystkich potwierdzeń, sesja jest zakończona.

Sesja w odwrotnym kierunku zamykana jest przy użyciu takiego samego schematu. Host odbierający informuje, że nie ma więcej danych do przesłania przez wysłanie segmentu do źródła z ustawioną flagą FIN. Potwierdzenie otrzymane w odpowiedzi oznacza, że wszystkie dane zostały otrzymane i w związku z tym sesja jest zamykana.

Na rys. 2 i 3, zaprezentowano flagę FIN i ACK w nagłówku segmentu, a które prowadzą do zamknięcia sesji HTTP.

Możliwe jest również zakończenie sesji za pomocą uzgodniania trójetapowego. Kiedy klient nie ma więcej danych do przesłania, wysyła do serwera segment z ustawioną flagą FIN. Jeśli serwer również nie ma więcej danych do przesłania, odpowiada segmentem z ustawionymi flagami FIN oraz ACK, łącząc dwa etapy w jeden. W takim wypadku klient odpowiada ustawioną flagą ACK.