ftp.performance II




Dies ist die Dokumentation unserer zweiten Netzwerkperformance, die den Namen 'ftp.performance' trägt, in Wirklichkeit aber auf dem Programm traceroute basiert.

Traceroute schickt normalerweise ein kleines Paket zu einem anderen Computer im Netz. Jeder Rechner, den das Paket unterwegs passiert, schickt ein kleines Info-Paket zurück an den Sender. So bekommt dieser zu erfahren, welchen Weg das ursprüngliche Paket nahm. Traceroute ist ein Standardwerkzeug und ist in allen gängingen Betriebssystemen enthalten.

Normalerweise sind Tracroute-Pakete leer. Ich modifizierte ein Linux-Traceroute so, dass es die gewonnenen Routinginformationen in einem zweiten Paket ebenfalls an den Zielcomputer verschickt. Doch dieses zweite Paket erzeugt wiederum eine Routinginformation, welche ebenfalls an den Zielrechner verschickt wird. Eine endlose Schleife formiert sich, getrieben von nivellierendem Streben.

Normalerweise verwirft der Zielrechner Traceroutepakete, denn sie enthalten keinerlei nützliche Informationen und sind harmlos. So schrieb ich ein kleines Programm (nennen Sie es Sniffer, Server, Empfänger, wie auch immer...), welches die Routinginformationen aus den modifizierten Paketen extrahiert. Wir haben verschiedene Anzeigeprogramme geschrieben für diese Informationen. Zunächst hatten wir einen Textviewer, später nutzten wir einen Webserver um dem Publikum zu zeigen, was vor sich geht. Nach Experimenten mit animierten GIFs (Beispielbild unten) versuchten wir einen SVG-Viewer und schrieben schliesslich ein Anzeigeprogramm in Java, welches dann am besten funktionierte.

Verwendete Technik: Bash Shell Scripting, C (, Java, SVG, HTML...). Sourcen sind auf Anfrage unter der GPL erhältlich. Etwas Material kann aber auch jetzt schon hier und hier angeschaut werden.

Bitte besuchen Sie auch THE *** INSTITUTE.

This is the documentation page of our second network performance called 'ftp.performanceII' but in fact it's based on traceroute.

The traceroute program normally sends a packet to another computer on the net. Every computer on the route of that packet sends a small notification packet back to the sender. So the sender knows which way the packet took. Traceroute is a standard tool and comes with every usual operating system.

Normally traceroute packets are empty. I modified it to send the gained routing information in the payload area of a second packet to the targeted computer. And this second packet also generates a routing information which has to be transmitted in a 3rd packet and so on. An endless loop forms.

The targeted computer normally discards traceroute packets because they contain no useful information and are harmless. So I wrote also a small program (call it sniffer, server, receiver, whatever...) which extracts the routing information from the modified traceroute packets. There are several viewers for these informations. At first we had a simple terminal/ascii viewer. Later we used a webserver to let the audience see what happens and used animated GIFs first (there is one example GIF below), tried SVG and finally wrote a JAVA viewer which works best.

Used technology: shell scripts, C (, JAVA, SVG, HTML ...). The source codes are available on request or probably later from this site and will be GPL'd. Some material is already available here and here.

Please visit also THE *** INSTITUTE.


 zurück

 main site