TCP steht für Transmission Control Protocol und ist ein verbindungsorientiertes, paketvermittelndes Transportprotokoll in Netzwerken. Es setzt oft auf dem IP (Internet Protokoll) auf, weshalb man von TCP/IP spricht. TCP selbst ist in RFC 793 definiert.
TCP etabliert einen Kanal zwischen den beiden Endpunkten einer Kommunikation und erlaubt die Übertragung von Daten in beide Richtungen. Dabei wird der Datenstrom in Pakete, sog. TCP/IP-Pakete, zerteilt, die einzeln übermittelt werden.
Jedes Paket kann dabei eine andere Route zum Ziel nehmen. Daher kommen die Pakete mitunter in anderer Reihenfolge an. Am Ziel angekommen werden Sie in die richtigen Reihenfolge gebracht und wieder zusammengefügt.
Ein TCP/IP-Paket besteht dabei aus dem Kopf und den eigentlichen Nutzdaten. Der Kopf trägt verwaltende Informationen zum Paket, zum Beispiel die Ports von Sender und Empfänger aber auch die Sequenznummer des Paketes, die zur Wiederherstellung der richtigen Reihenfolge der Pakete beim Empfänger benötigt wird.
Größe des TCP/IP-Pakets
Die Größe eines TCP/IP-Pakets ist relativ frei wählbar, muss jedoch in die Übertragungsschicht passen. Diese Größe wird MTU für Maximum Transmission Unit genannt. Ein IP-Paket selbst ist bis 64KB (65536 Bytes) spezifiziert (IPv4). Bei IPv6 sind größere Pakete möglich. Da es jedoch meist über Ethernet übertragen wird, gilt eh die dort festgelegte Übertragungsgröße von 1500 Bytes.
Da viele Internet-Anschlüsse DSL verwenden, werden für das Point-to-Point Protocol (PPP) zwischen IP und Ethernet acht Bytes benötigt, was die Übertragungsgröße auf 1492 Bytes senkt.
Von diesen 1492 Bytes sind 20 Bytes für den TCP-Kopf und ebenfalls 20 Bytes für den IP-Kopf abzuziehen, womit 1452 Bytes für die Nutzdaten verbleiben. Diese 1452 Bytes werden MSS für Maximum Segment Size genannt.