reinix
Goto Top

IP Fragmentierung sichtbar machen?

Hallo allerseits,

wir nehmen Gerade in der (Berufs-)Schule TCP / IP Durch.
In dem Arbeitsauftrag, den ich hier liegen habe steht, wir sollen mit Wireshark die Fragmentierung eines TCP-Stroms sichtbar machen.

Ich habe nun einen PC auf dem ein FTP-Server läuft (XP / IIS). Dessen MTU habe ich auf überdrehte 30000 gesetzt (10.1.1.0 / 255.0.0.0).
Dann habe ich einen PC mit dem ich von dem FTP-Server eine Datei laden möchte (192.168.1.0 / 255.255.255.0)
Dazwischen hängt ein Router, der die Netze verbindet.

Über den FTP-Server bekomme ich in Wireshark einfach nichts tolles zu sehen...
wenn ich allerdings einen Ping starte, der als größe 30000 hat (ping -l 30000 -t 10.1.1.103) sehe ich in wireshark wunderherrlich fragmentierte Ping-Pakete
Leider Ping != TCP

Wie kann ich mir da also irgendwas zurecht basteln, um TCP-Mäßig etwas zu sehen?
Oder forsche ich in die Total falsche richtung?

mfg
Reini

Content-ID: 105436

Url: https://administrator.de/contentid/105436

Ausgedruckt am: 16.11.2024 um 05:11 Uhr

LordGurke
LordGurke 07.01.2009 um 23:23:19 Uhr
Goto Top
Auf welchem Rechner lässt du denn Wireshark laufen? Du dürftest ja nur auf dem Rechner mit der "normalen" MTU fragmentierte Pakete sehen, weil die ja nunmal erst nach dem Router zerstückelt sind face-smile
Möglicherweise macht der FTP-Server aber auch die Pakete nicht groß genug, als dass es für eine fragmentierung reichen würde (die Paketgröße kannst du ja über Wireshark sehen) - da hilft dann vielleicht, mit VLC einen Stream zu erstellen, der mit extrem hoher Bitrate sendet.

Vielleicht hilft es auch, dem Router eine deutlich niedrigere MTU (sowas um 384 Bytes face-wink ) einzustellen, dann kannst du davon ausgehen, dass so ziemlich jedes Paket fragmentiert werden dürfte.
aqui
aqui 08.01.2009 um 09:27:07 Uhr
Goto Top
Scheinbar hast du in der Schule nicht aufgepasst oder ihr seit noch nicht soweit....
Erstmal hat Ping mit TCP nichts zu tun wie du oben schreibst ( "Leider Ping != TCP" ) sondern Ping basiert auf ICMP:
http://de.wikipedia.org/wiki/Internet_Control_Message_Protocol

Bei deiner FTP Messung machst du einen Denkfehler. Wie du ja sicher in der Schule gelernt hast macht der Client ein MTU Path Discovery vor Initiierung der TCP Session und da einigt man sich dann halt auf das maximal mögliche.
http://de.wikipedia.org/wiki/Path_MTU_Discovery
http://de.wikipedia.org/wiki/Maximum_Transmission_Unit

Da du aber nur den Server umgestellt hast und nicht den Client bleibt es bei den klassischen 1500 Byte !
Wenn dann musst du also auch den Client umstellen. Allerdings macht der ggf. auch ein Discovery mit allen Komponenten im Datenpfad auch dem Router.
Ferner solltest du darauf achten das der Client (oder der Server) nicht das Dont fragment Bit setzt, was dann auf Routern im Pfad eine Fragmentierung unterbindet !!
All das solltest du aber problemlos mit dem Wireshark sehen...
ReiniX
ReiniX 08.01.2009 um 10:15:45 Uhr
Goto Top
@maxi89

Habe Wireshark auf beiden ausprobiert (eben weil ich mir nich sicher war, wo ich etwas sehen würde)

Kann man die Paketgrößen bei irgeneinem freeware FTP-Server einstellen?

VLC-Stream? wäre der nicht UDP?

In meinem Router finde ich leider keine einstellung für die MTU face-confused ist leider nur so ein Standardrouter für den privatgebrauch/Internet

@aqui

naja machen wir uns nix vor. unser lehrer stößt uns ins kalte wasser und kann uns auch nich wirklich brauchbare auskünfte geben, wenn man ihn etwas fragt. zudem sind die aufgabenstellungen immer sehr schwamming formuliert und der kerl meint dann noch unzufrieden sein zu müssen, wenn man etwas nicht richtig verstanden hat von der aufgabenstellung her.

über MTU haben wir noch rein garnichts gemacht in der schule! wenn ich nich schon dies und das über netzwerke gelesen hätte, wüsst ich garnich wo ich anfangen soll mit ausprobieren.
Werde mal versuchen, wie das aussieht, wenn der client auch eine hohe MTU hat.

würde es eigentlich was bringen, den Router weg zu lassen und die pcs direkt über cross over zu verbinden?




ich habe jetzt hier im geschäft noch einen dlink router gefunden (auch so ein eher kleines teil)
bei dem kann ich a) die MTU des WAN-Ports einstellen b) bei erweitert -> performance eine einstellung "Fragementierung"

am wan port habe ich einen pc mit einem FTP server angeschlossen
am lan port habe ich einen pc mit dem FTP-Client und Wireshark angeschlossen

ich übertrage eine Datei mit knapp einem MB
Es wird allerdings kein Paket fragmentiert, alle Pakete enthalten das Don't Fragment Bit, die Größe der Pakete liegt bei 1260 Bytes

Wo ist das Problem?
Bzw wie müssten die MTUs dann eingestellt sein?

vielen dank schonmal!
ReiniX
ReiniX 08.01.2009 um 21:59:52 Uhr
Goto Top
Ok - Kommando zurück - Vergesst was ich bisher geschrieben habe.

Mein Lehrer hat mich vor den Ferien mit einer Falschaussage auf eine total falsche Spur geleitet.
Es geht nich um die IP-Fragmentierung sondern um das TCP-Windowing!!!
(Ja - Denkt jetzt ruhig "Oh so ne Knalltüte" - Ich werde eure Gedanken auf meinen Lehrer weiter projezieren^^)

Ok also wieder zum Thema:
Ich habe eine FTP-Übertragung. Die läuft immer in etwa so ab:
Sender -> 2100 Bytes -> Empfänger
Sender -> 2100 Bytes -> Empfänger
Empfänger -> ACK -> Sender
(ab da wiederholt es sich)

Das Windowing ist also, dass nicht jedes sondern (in diesem Fall) jedes zweite Paket bestätigt wird.
Ich würde dies nun gern deutlicher sichtbar machen:
Ich hätte gerne zwischen dem einen ACK und dem anderen ACK mehr (kleinere?) Pakete.

Ich stelle mir das so vor:
Ich erhöhe die WindowSize des Empfängers und "Überfordere" dann den Empfänger durch zu viel / zu schnell senden.

Allerdings klappt das noch nicht so ganz.
Ich habe mit DrTCP die WindowSize auf 5*64KB gesetzt. Der Empfänger arbeitet jetzt im 10Mbit Vollduplex
Der Sender Arbeitet im 100Mbit Vollduplex, mit normaler WindowSize / MTU
Beide PCs sind mit einem Switch verbunden.

Allerdings konnte ich so den Effekt nicht verdeutlichen.
Andere Ideeen?

Vielen Dank! face-smile
aqui
aqui 09.01.2009 um 15:32:17 Uhr
Goto Top