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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 105436
Url: https://administrator.de/contentid/105436
Ausgedruckt am: 16.11.2024 um 05:11 Uhr
5 Kommentare
Neuester Kommentar
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
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 ) einzustellen, dann kannst du davon ausgehen, dass so ziemlich jedes Paket fragmentiert werden dürfte.
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 ) einzustellen, dann kannst du davon ausgehen, dass so ziemlich jedes Paket fragmentiert werden dürfte.
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...
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...
Das solltest du lesen:
http://www.tcpipguide.com/free/t_TCPSlidingWindowAcknowledgmentSystemFo ...
bzw.
http://www.tcpipguide.com/free/t_TCPSlidingWindowDataTransferandAcknowl ...
bzw.
http://www.site.uottawa.ca/~elsaddik/abedweb/applets/Applets/Sliding_Wi ...
Damit kannst du den Effekt auf Anhieb verdeutlichen !!!
http://www.tcpipguide.com/free/t_TCPSlidingWindowAcknowledgmentSystemFo ...
bzw.
http://www.tcpipguide.com/free/t_TCPSlidingWindowDataTransferandAcknowl ...
bzw.
http://www.site.uottawa.ca/~elsaddik/abedweb/applets/Applets/Sliding_Wi ...
Damit kannst du den Effekt auf Anhieb verdeutlichen !!!