Das Transmission Control Protocol (TCP) ist ein verbindungsorientiertes Protokoll, das definiert, wie eine Netzwerkkonversation aufgebaut und aufrechterhalten wird. Alles wichtige hierzu erfährst du in diesem Beitrag und im Video !
Inhaltsübersicht
TCP einfach erklärt
Das Transmission Control Protocol (TCP) ist ein Standard, der festlegt, wie der Austausch von Daten zwischen Netzwerkkomponenten erfolgen soll. Folgende Funktionen soll das TCP erfüllen:
- Verhinderung von Datenverlusten
- Aufteilung von Datenströmen
- Zuordnung der Datenpakete zu den Anwendungen
Die aufgebaute Verbindung wird so lange aufrechterhalten, bis die Anwendungen auf beiden Seiten den Nachrichtenaustausch abgeschlossen haben.
Das Protokoll arbeitet mit dem Internet-Protokoll (IP) zusammen, der für den Transfer der Datenpakete im Computer verantwortlich ist. Zusammen bilden TCP und IP die Grundregeln der Datenübertragung im Internet.
Aufgaben und Funktionen von TCP
Damit die Datenübertragung mit TCP reibungslos funktioniert, hat das Protokoll einige Aufgaben. Die wichtigsten Aufgaben von TCP sind:
- Segmentierung: Zerlegung der Anwendungsdaten in Pakete zur Übertragung, anschließende Wiederherstellung zu einer Datei oder einem Datenstrom
- Verbindungsmanagement: Verbindungsauf- und abbau
- Fehlerbehandlung: erneute Übertragung von verworfenen oder verstümmelten Paketen sowie Zeitüberwachung
- Flusssteuerung: Dynamische Auslastung der Übertragungsstrecke
- Anwendungsunterstützung: Adressierung spezifischer Anwendungen und Verbindungen durch Port-Nummern
Studyflix vernetzt: Hier ein Video aus einem anderen Bereich
Nach Beantwortung speichern wir deine Antwort, um Studyflix zu verbessern. Mehr dazu erfährst du in unserer Datenschutzerklärung.
Segmentierung (Data Segmenting)
Bei der Segmentierung teilen sich die Datenströme in kleinere Pakete bzw. Segmente auf. Die einzelnen Segmente werden mit Headern versehen, die Steuer- und Kontroll-Informationen enthalten.
Anschließend werden die Segmente zum Internet Protokoll (IP) gesendet. Beim IP-Routing können aber durch unterschiedliche Wege Zeitverzögerungen entstehen, sodass die Datenpakete in einer anderen Reihenfolge ankommen als vorgesehen.
Die Fragmente müssen beim Empfänger daher erst in die richtige Reihenfolge gebracht werden, bevor der Datenstrom zur adressierten Anwendung gelangt. Die Segmente erhalten daher eine spezifische Sequenznummer.
Verbindungsmanagement (Connection Establishment and Termination)
Das verbindungsorientierte TCP bzw. das Verbindungsmanagement ist für den Aufbau und Abbau der Kommunikation verantwortlich. Die Leitung erfolgt dabei zwischen zwei Stationen einer End-to-End-Kommunikation. Dadurch stehen Sender und Empfänger stets in Verbindung.
Fehlerbehandlung (Error Detection)
Auch bei einer virtuellen Verbindung werden während der Datenübertragung Kontrollmeldungen ausgetauscht. Es findet also eine Fehlerbehandlung statt. Dabei bestätigt der Empfänger dem Sender jedes erhaltene Datenpaket. Trifft jedoch keine Bestätigung beim Absender ein, wird das Paket nochmal verschickt.
Alle TCP-Pakete und TCP-Meldungen werden mit einer fortlaufenden Sequenznummer gekennzeichnet. Denn so sind Sender und Empfänger bei Übertragungsproblemen in der Lage, die Reihenfolge und Zuordnung der Datenpakete und Meldungen zu erkennen.
Flusssteuerung (Flow Control)
Ist die zeitliche Zuordnung und der Übertragungsweg bei einer paketorientierten Übertragung unbekannt, erhält das Transport-Protokoll vom Übertragungssystem keine Information über die verfügbare Bandbreite.
Durch die Flusssteuerung werden beliebig langsame oder schnelle Übertragungsstrecken dynamisch ausgelastet und auf unerwartete Engpässe und Verzögerungen reagiert. TCP regelt also, wie schnell und wo die Datenpakete versendet werden.
Anwendungsunterstützung (Application Support)
TCP-Ports sind eine Software-Abstraktion zur Unterscheidung der Kommunikationsverbindungen. Genau wie die IP-Adressen Rechner in Netzwerken adressieren, zielen Ports auf spezifische Anwendungen oder Verbindungen, die auf einem Rechner laufen, ab. Die letzte Aufgabe des TCP ist also die Anwendungsunterstützung.
Vergleich UDP vs. TCP
Abgesehen vom verbindungsorientierten TCP existiert das verbindungslose unsichere UDP (User Datagram Protocol). Genau wie das TCP gehört das UDP zur vierten, also zurTransportschicht des OSI-Modells.
Das UDP wird als verbindungslos eingestuft, weil das Protokoll nicht erkennt, ob beide Anwendungen ihre Kommunikation beendet haben. Das führt dazu, dass das UDP ungültige Datenpakete verwirft, anstatt diese für die weitere Verwendung zu beheben.
Der UDP-Header enthält also aufgrund der fehlenden Kontrollfunktionen viel weniger Informationen als ein TCP-Header. Somit wird der UDP-Header wegen der fehlenden Kontrolle weniger genutzt, um die Verzögerung zu verringern.
TCP ermöglicht die Organisation von Daten, damit die sichere Übertragung gewährleistet ist. Das Transmission Control Protokoll garantiert also die Integrität der über das Netz gesendeten Daten, unabhängig von ihrer Menge.
Es dient zur Übertragung von Daten aus anderen übergeordneten Protokollen, bei denen alle übermittelten Daten ankommen müssen.
Aufbau TCP-Header
Jedes von TCP verschickte Datenpaket enthält einen zusätzlichen Header, der die folgenden Daten enthält
- Sender-Port
- Empfänger-Port
- Paket-Reihenfolge (Nummer)
- Prüfsumme
- Quittierungsnummer
- Flags (Statusindikator, zur Kennzeichnung bestimmter Zustände)
So besteht ein TCP-Header aus einem Header-Bereich und einem Daten-Bereich. Im Header finden sich Informationen, die für eine gesicherte TCP-Verbindung wichtig sind.
Der TCP-Header ist in mehrere 32-Bit Blöcke aufgebaut, wobei jeder mindestens 5 solcher Blöcke besitzt. Das führt dazu, dass ein Header eine Länge von mindestens 20 Byte besitzt.
Bedeutung der Felder im TCP-Header
Im Folgenden haben wir dir die Feldinhalte des Headers mit den entsprechenden Bitgrößen zusammengefasst:
| Feldinhalt | Bit | Beschreibung |
| Quell-Port (Source-Port) | 16 |
|
| Ziel-Port (Destination Port) | 16 |
|
| Sequenznummer | 32 |
|
| Acknowledgement-Nummer | 32 |
|
| Data Offset | 4 |
|
| Reserviert | 6 |
|
| Flags | 6 |
|
| Window-Größe | 16 |
|
| Check-Summe | 16 |
|
| Urgent-Pointer | 16 |
|
| Optionen/Füllbits (Options/Padding) | je 16 |
|
TCP/IP-Modell vs. OSI Modell
Das OSI Modell und das TCP/IP -Modell unterscheiden sich primär im Grad der Spezifität: Das OSI Modell ist hinsichtlich der Art und Weise des Datenaustauschs viel abstrakter. Es beschränkt sich demnach nicht auf ein bestimmtes Protokoll.
Merke: Das OSI-Modell besitzt sieben Schichten, während das TCP/IP-Modell nur vier Schichten umfasst.
Das TCP/IP-Modell ist vergleichsweise viel spezifischer und beschränkt sich weitgehend auf Protokolle für den Datenaustausch. Das Protokoll ist konkret und protokollbasiert, wohingegen das OSI Modell vielmehr auf Funktionalität basiert.
Stärken und Schwächen des TCP-Modells
In der folgenden Tabelle sind die Stärken und Schwächen des TCP-Modells zusammengefasst:
| Stärken | Schwächen |
|
|
OSI Modell
Nun weißt du alles Wichtige zum TCP und ordnest das TCP-Protokoll zur vierten Schicht des OSI Modells zu. Alles wichtige dazu erfährst hier in unserem Video dazu!
TCP — häufigste Fragen
(ausklappen)
TCP — häufigste Fragen
(ausklappen)-
Was macht TCP?TCP regelt eine zuverlässige, verbindungsorientierte Datenübertragung zwischen zwei Anwendungen im Netzwerk. TCP zerlegt Daten in Segmente und setzt sie beim Empfänger wieder korrekt zusammen. Außerdem verhindert TCP Datenverluste durch Bestätigungen und erneutes Senden fehlender Pakete und ordnet Verbindungen über Port-Nummern Anwendungen zu.
-
Wie funktioniert TCP?TCP funktioniert, indem Anwendungsdaten in Segmente zerlegt und mit einem Header für Steuer- und Kontrollinformationen versehen werden. Sequenznummern helfen, Pakete nach dem Transport über IP beim Empfänger in die richtige Reihenfolge zu bringen. Bestätigungen (ACK) und erneutes Senden sorgen für Fehlerbehandlung. Die Window-Größe steuert den Datenfluss, Ports die Zuordnung zur Anwendung.
-
Was ist der Three-Way-Handshake bei TCP?Der Three-Way-Handshake ist das dreistufige Verfahren, mit dem TCP eine Verbindung aufbaut. Dabei sendet der Client „SYN“, der Server antwortet mit „SYN-ACK“, und der Client bestätigt mit „ACK“. So werden die Verbindung bestätigt und Startwerte wie Sequenznummern abgestimmt, bevor Daten übertragen werden.
-
Was ist besser, UDP oder TCP?Besser ist UDP oder TCP je nachdem, ob Zuverlässigkeit oder geringe Verzögerung wichtiger ist. TCP ist verbindungsorientiert und stellt durch Bestätigungen und erneute Übertragung sicher, dass Daten vollständig und in Reihenfolge ankommen. UDP ist verbindungslos und verwirft fehlerhafte Pakete, wodurch weniger Kontrollaufwand entsteht.
Netzwerkprotokolle verstehen
TCP ist ein zentrales Protokoll in Rechnernetzen und gehört zur Transportschicht. Du ordnest typische Protokolle wie TCP und UDP in Schichtenmodelle ein und vergleichst ihre Aufgaben in der Datenübertragung. So erkennst du, warum manche Anwendungen eine sichere Übertragung brauchen und andere vor allem schnell reagieren müssen. Zu diesem Thema und mehr findest du passende Videos in unserem Informatikbereich.