Ein TCP-Segment ist die Übertragungseinheit des TCP. TCP behandelt Daten als kontinuierlichen Bytestrom und teilt diesen Strom in Segmente, deren Größe durch die MSS begrenzt ist. Jedes Segment besteht aus einem TCP-Header und den Nutzdaten und wird in ein Netzwerkpaket eingebettet (IPv4-Protokollnummer 6).

Aufbau des TCP-Headers

Der TCP-Header ist mindestens 20 Byte lang und enthält unter anderem:

  • Quell- und Zielport (je 16 Bit) - sie adressieren die Anwendungen auf den beiden Hosts
  • Sequenznummer (32 Bit) - nummeriert die Bytes des Datenstroms
  • Bestätigungsnummer (32 Bit) - quittiert empfangene Bytes
  • Steuerflags wie SYN, ACK, FIN, RST, PSH und URG
  • Fenstergröße (16 Bit) - Grundlage der Flusskontrolle
  • Checksumme sowie Optionen wie MSS, Window Scale, SACK und Timestamps

Segmentgröße und MTU

Wie groß ein Segment sein darf, hängt von der MTU der darunterliegenden Netze ab: Bei IPv4 gilt MSS = MTU - 40. Anders als TCP-Segmente bieten UDP-Datagramme (UDP) keine Zuverlässigkeit: TCP sichert Reihenfolge und Vollständigkeit des Datenstroms über Fehlerkontrolle und Überlaststeuerung.

Verwandte Grundlagen: Go-Back-N, Selective Repeat, Congestion Window, Netzwerkprotokoll.