2009-07-13 19 views
0

Ich teste die Fähigkeit eines Netzwerkgerätetreibers, mit beschädigten Paketen fertig zu werden. Der spezielle Fall, den ich testen möchte, ist ein, wenn ein großes TCP-Paket entlang des Pfades wegen der kleineren MTU im Weg fragmentiert wird.Wie wird das Protokollattribut für IP-Fragmente festgelegt?

Was interessiert mich am meisten an der IP-Fragmentierung des großen TCP-Pakets, ist das Protokollattribut des IP-Fragment-Pakets für jedes Paket auf TCP gesetzt, oder nur das erste Fragment?

Antwort

1

Das Protokollfeld wird für jedes Fragment auf TCP (6) gesetzt.

Von RFC 791 - Internet Protocol

einen langen Internet-Datagramm fragmentieren, ein Internet-Protokoll-Modul (für Beispiel in einem Gateway), erstellt zwei neue Internet-Datagramme und kopiert die Inhalte der Internet-Header-Felder aus dem langen Datagramm in beide neuen Internet-Header. ... Diese Prozedur kann für eine n-Wege-Aufteilung verallgemeinert werden, anstatt die beschriebene Zweiwegaufteilung .

Protokoll ist Teil der Kopfzeile und wird folglich in jedes der Fragmente kopiert.

1

IP-Fragmentierung ist eine Schicht-3-Aktivität, während das Paket TCP markiert wird, die Zwischenfragmente werden nicht von TCP verwendet werden können. Die TCP-Schicht muss auf eine erneute Assemblierung des tatsächlichen IP-Pakets (unfragmentiert) warten, bevor es es verarbeiten kann.

Wikipedia IP Fragmentation Referenz.


Path MTU-Discovery in der Regel die Quelle MTU und TCP-Pakete (tatsächlich Segmente) mit nicht-Fragmentierung auf dem Weg führen beschränkt Größen gesendet werden aktualisiert

Verwandte Themen