Inhaltsverzeichnis
Transmission Control Protocol
Eigenschaften
Akronym: TCP
- verbindungsorientiert - Handshaking: Vorbereitung auf den Datentransfer vorab
- zuverlässige, in-order Übertragung von Byteströmen
- erfolgreiche Übertragung wird mit ACK (Acknowledgement, Bestätigung) bestätigt
- fehlgeschlagene Übertragung wird mit NAK (negative Bestätigung) ausgedrückt
- zustandsbehaftet
- Flusskontrolle: Nicht schneller senden, als Empfänger verarbeiten kann (nicht „überfluten“)
- Überlastkontrolle: Drosselung des Senders, wenn Netzwerk überlastet
- Full-Duplex - Datenfluss in beide Richtungen
- TCP ist „fair“ - Verhalten bei parallelen Verbinden
- Es können von Anwendung zwei parallele Verbindungen zu einem Host geöffnet werden
- Additive Steigerung solange Bandbreite nicht voll ausgenutzt ist
- Multiplikative Verringerung reduziert den Durchsatz proportional
Aufbau
TCP ACK Erzeugung
| Ereignis am Empfänger | Reaktion des Empfängers |
|---|---|
| Ankunft von Segment in Reihenfolge. Alle Segmente bis zu aktuelle SeqNr bereits bestätigt | Delayed ACK. Wenn in den nächsten 500ms kein weiteres Segment eintrifft, ACK senden. |
| Ankunft von Segment in Reihenfolge mit aktueller SeqNr. Anderes Paket noch nicht bestätigt. | Sofort kumulatives ACK für beide Segmente senden. |
| Ankunft von Segment außer der Reihe. SeqNr. größer als momentane SeqNr. Lücke entdeckt. | Sofort dupliziertes ACK mit erwarteter SeqNr. senden. |
| Ankunft von Segment, das Lücke teilweise oder vollständig füllt. | Sofortiges ACK, sofern Segment an unteres Ende der Lücke anschließt. |
