Überprüft TCP Daten auf einmal oder als Paket durch Paketüberprüfung?


1

Ich weiß, dass TCP eine Überprüfung verwendet, um die Richtigkeit der Daten durch Senden an den Server sicherzustellen. Meine Frage ist, überprüft es alles auf einmal oder wie es hereinkommt?


Kurzes Beispiel:

Angenommen, ich lade die Superuser-Seite hier. Der Einfachheit halber kann es in 5 Pakete passen (es ist praktisch unmöglich, eine moderne Webseite in solch eine kleine Datenmenge zu packen.):

Alles auf einmal:

* Kunde: [Daten anfordern geht hier] **

Server: [Paket 1]

Server: [Paket 2]

Server: [Paket 3]

Server: [Paket 4]

Server: [Paket 5]

Client: [Paket 1]

Client: [Paket 2]

Client: [Paket 3]

Client: [Paket 4]

Client: [Paket 5]


Stück für Stück (sorry konnte diesem Wortspiel nicht widerstehen!):

* Kunde: [Daten anfordern geht hier] **

Server: [Paket 1]

Client: [Paket 1]

Server: [Paket 2]

Client: [Paket 2]

Server: [Paket 3]

Client: [Paket 3]

Server: [Paket 4]

Client: [Paket 4]

Server: [Paket 5]

Client: [Paket 5]


TCP verwendet das kumulative ACK-Senden, dh für jeweils einige Pakete wird vom Client ein ACK gesendet.
Ali Hashemi

Was meinst du mit "verifizieren"? TCP garantiert keine Datenintegrität - dafür benötigen Sie so etwas wie TLS. TCP verfügt zwar über eine Prüfsumme pro Paket, dies ist jedoch nur für das Erkennen von Leitungsrauschen von Vorteil (vorausgesetzt, die unteren Protokollschichten tun dies nicht bereits).
Ilmari Karonen

Antworten:


2

Aus Tanenbaums Computernetzwerken - 5. Ausgabe :

Das von TCP-Entitäten verwendete Basisprotokoll ist das Gleitfensterprotokoll mit einer dynamischen Fenstergröße. Wenn ein Absender ein Segment sendet, startet er auch einen Timer. Wenn das Segment am Ziel ankommt, sendet die empfangende TCP-Entität ein Segment (mit Daten, falls vorhanden, und ansonsten ohne) mit einer Bestätigungsnummer zurück, die der nächsten erwarteten Sequenznummer und der verbleibenden Fenstergröße entspricht. Wenn der Timer des Absenders vor dem Empfang der Bestätigung abläuft, sendet der Absender das Segment erneut.

Fettgedruckte Wörter bedeuten eindeutig den zweiten Fall, in dem die Pakete gesendet und Bestätigungen in der richtigen Reihenfolge empfangen werden. Es ist nicht der Fall, dass ein Großteil der Pakete gesendet wird und auf deren Bestätigungen gewartet wird.


0

TCP verwendet Sequenznummern in jedem Paket, um zu überprüfen, ob alle gesendeten Daten empfangen wurden und in der richtigen Reihenfolge vorliegen. Zu jedem Paket werden Prüfsummen hinzugefügt, um zu überprüfen, ob das Paket fehlerfrei ist.

Der TCP-Artikel auf Wikipedia beschreibt die zuverlässige Übertragung genauer.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.