PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Win 7 x64 - Frage zur Größe von Frame Fragmenten


Geldmann3
2012-12-06, 20:28:30
Wenn ich im Netzwerk einen anderen Rechner anpinge
ping [Rechner IP] -l 5000
(Ich sende also 5000 Bytes)
und das ganze mit Wireshark mitschneide, stelle ich erstens fest, dass das gesendete Packet in 4 Frames geteilt wurde.

Ich nehme mal an, das liegt daran, dass IP v4 immer nur maximal 1500Byte Pakete sendet?? Oder ist das Limit woanders.

Des weiteren scheinen die eintreffenden Pakete zusammen 5008Bytes groß zu sein. Warum sind das jetzt bitte 8 Bytes mehr?

Danke

Bringhimup
2012-12-08, 20:01:14
Ich weiß es nicht, könnte mir aber Folgendes vorstellen:

Da die Pakete auf unterschiedlichen Wegen ihr Ziel finden können und damit auch Paket 3 vor Paket 2 ankommen kann (weil dessen Weg einfach kürzer war), ist noch eine Information vorhanden, um welches Paket es sich jeweils handelt, um sie dann beim Ziel wieder korrekt zusammen zu setzen.

Gast
2012-12-08, 20:28:46
Mit der Option -f werden die Pakete nicht mehr fragmentiert.
tools.ietf.org/html/rfc1574

Geldmann3
2012-12-08, 20:41:11
Ich weiß es nicht, könnte mir aber Folgendes vorstellen:

Da die Pakete auf unterschiedlichen Wegen ihr Ziel finden können und damit auch Paket 3 vor Paket 2 ankommen kann (weil dessen Weg einfach kürzer war), ist noch eine Information vorhanden, um welches Paket es sich jeweils handelt, um sie dann beim Ziel wieder korrekt zusammen zu setzen.

Ja, so eine Information befindet sich immer im IPv4 Header.
"Identifikation" ist eine eindeutige ID, um die Zusammengehörigkeit von Fragmenten zu detektieren und sie wieder zusammenzusetzen.
"Flags" gibt unter anderem an, ob noch weitere Fragmente folgen.
Und das "Fragment Offset" besagt, ab welcher Position innerhalb des Paketes das Fragment anfängt.
http://s7.directupload.net/images/121208/7vby37s2.png
Quelle: Wikipedia (http://de.wikipedia.org/wiki/Ipv4)

Doch ich verstehe dennoch nicht, warum es 8 Byte mehr sind. Wenn jedes der 5 entstehenden Fragmente nochmal einen IPv4 Header bekommt, der in etwa 20 Bytes groß ist, dann müssten es doch insgesamt 100 Bytes mehr sein, aber warum sind es nur 8?

Darf der Header überhaupt zählen? Der Ethernet Datenframe zählt immerhin auch nicht... Das wäre ja was, wenn man den ganzen Overhead mitzählen würde.

Mit der Option -f werden die Pakete nicht mehr fragmentiert.
tools.ietf.org/html/rfc1574

Mit
ping heise.de -l 5000 -f
kommt es zu einer Zeitüberschreitung der Anforderung.
Wireshark zeigt hier nichts mehr an. Kann IPv4 5000 Bytes überhaupt ohne Fragmentierung übertragen?

Dr.Doom
2012-12-08, 21:08:52
MTU, Pakete und Frames: http://de.wikipedia.org/wiki/Maximum_Transmission_Unit