TCP & 3-Wege-Handshake
Transport-Schicht (4)
Was ist TCP?
Das Transmission Control Protocol (TCP) ist das wichtigste Transportprotokoll im Internet. Es arbeitet auf Schicht 4 des OSI-Modells und sorgt dafür, dass Daten zuverlässig, vollständig und in der richtigen Reihenfolge beim Empfänger ankommen. TCP ist verbindungsorientiert: Bevor auch nur ein Byte Nutzdaten fließt, bauen Sender und Empfänger eine logische Verbindung auf. Protokolle wie HTTP(S), SMTP oder SSH setzen auf TCP auf, weil sie auf diese Garantien angewiesen sind.
Der 3-Wege-Handshake
Eine TCP-Verbindung beginnt immer mit dem 3-Wege-Handshake. Dabei tauschen beide Seiten Steuer-Flags und Sequenznummern aus, mit denen später jedes Byte eindeutig nummeriert wird. Der Ablauf:
| Schritt | Richtung | Flags | Bedeutung |
|---|---|---|---|
| 1 | Client → Server | SYN | Verbindungswunsch, Client sendet seine Start-Sequenznummer (ISN) |
| 2 | Server → Client | SYN, ACK | Server bestätigt und sendet eigene ISN |
| 3 | Client → Server | ACK | Client bestätigt – Verbindung steht |
So sieht ein Handshake in einem Mitschnitt vereinfacht aus:
Client > Server [SYN] Seq=1000 Server > Client [SYN,ACK] Seq=5000 Ack=1001 Client > Server [ACK] Seq=1001 Ack=5001 ... ab hier fließen Nutzdaten ...
Sequenz- und Bestätigungsnummern
Jedes gesendete Byte erhält eine Sequenznummer. Der Empfänger antwortet mit einer Acknowledgement-Nummer (ACK), die angibt, welches Byte er als Nächstes erwartet. Geht ein Segment verloren, bleibt die Bestätigung aus und der Sender überträgt es nach Ablauf eines Timers erneut. Dadurch erkennt und repariert TCP Paketverluste automatisch – das ist der Kern der Zuverlässigkeit.
Verbindungsabbau (Teardown)
Geordnet beendet wird eine Verbindung mit FIN-Segmenten. Da jede Richtung getrennt geschlossen wird, spricht man oft vom 4-Wege-Teardown:
Client > Server [FIN, ACK] Server > Client [ACK] Server > Client [FIN, ACK] Client > Server [ACK]
Soll eine Verbindung abrupt abgebrochen werden, sendet eine Seite ein RST (Reset). Das passiert z. B., wenn ein Port geschlossen ist.
Welche Flag-Folge kennzeichnet den TCP-3-Wege-Handshake?
Sicherheitsbezug
Der Handshake ist ein beliebter Angriffspunkt: Beim SYN-Flood sendet ein Angreifer massenhaft SYN-Pakete, ohne den dritten Schritt abzuschließen, und überlastet so die Verbindungstabelle des Servers (eine Form von DoS). Gegenmaßnahmen sind SYN-Cookies und Rate-Limiting. Welche Dienste auf welchen TCP-Ports lauschen, kannst du in der Port-Referenz nachschlagen.
Hinweis
TCP kostet durch Handshake, Bestätigungen und Wiederholungen etwas Overhead und Latenz. Wo Geschwindigkeit wichtiger ist als Vollständigkeit – etwa bei Live-Streaming – greift man stattdessen zu UDP. Mehr dazu im Kapitel UDP.