Inhaltsverzeichnis
Im Gegensatz zu UDP braucht TCP als stream orientiertes Protokoll immer Informationen, an welcher Stelle des Datenstroms das Segment eingefügt werden soll. Außerdem ist Information über die Größe des Empfänger Buffers nötig, um zu verhindern, dass es zu Überläufen kommt. Es ist also ein entsprechend komplexer Header nötig:
Absender Portnummer bezeichnet die Portnummer (/etc/services) des Anwenderschichtprotokolls, von dem der Datenstrom abgeschickt wurde.
Empfänger Portnummer bezeichnet die Portnummer des Empfängerprotokolls auf der Anwendungsschicht.
Sequenznummer Gibt die Position im Datenstrom an, an der dieses Segment eingefügt werden soll.
Bestätigungsnummer Dient zur Bestätigung des Empfangs eines Segments. Dieses Feld enthält immer die Nummer, die im nächsten Segment als Sequenznummer stehen soll.
Daten-Offset Gibt die Größe des Headers in 32 Bit Worten an. Ohne Optionen sind es 5. Damit kann genau bestimmt werden, wo der Datenbereich des Segments beginnt.
Flags Verschiedene Flags zur Kommunikationssteuerung
Fenster Mit diesem Wert wird die Größe des Buffers angezeigt, der von einem Endknoten für diese Verbindung reserviert wurde. Der sendende Knoten darf keinesfalls mehr Daten als die angegebene Puffergröße senden, ohne auf den Eingang einer Bestätigung zu warten.
Prüfsumme Eine Prüfsumme über das gesamte Segment (Daten und Header)
Dringlichkeitszeiger Wird bei besonders dringend zu verarbeitenden Paketen gesetzt. Wenn gesetzt enthält dieses Feld als Wert die Endadresse des Datenfeldes, das als dringlich gilt.
Optionen Verschiedene Optionen zur Kommunikation wie etwa die maximale Segmentgröße
Füllzeichen Zum Auffüllen der Optionszeile auf 32 Bit. Weiter mit dem nächsten Thema
Grundsätzliche Vorteile und Funktionen von TCP
Die Datenübertragung mit TCP funktioniert reibungslos und ohne Packet Verlust. Die wichtigsten Funktionen von TCP sind:
- Segmentierung: Zerlegung der Anwendungsdaten in Pakete zur Übertragung, anschließende Wiederherstellung zu einer Datei oder einem Datenstrom
- Verbindungsmanagement: Jede Verbindung wird sauber abgebaut
- Fehlerbehandlung: jedes verworfene Packet wird erneut übertragen inkl. Zeitüberwachung der Packte
- Flusssteuerung: Die komplette und maximale Auslastung der Netzwerkstrecke
- Anwendungsunterstützung: Der Verbindungsaufbau der Anwendungen erfolgt Port basiernd.