Aufgabe 1 - Fingerübungen mit Mininet
Aufgabe 1 - Fingerübungen mit Mininet
Zunächst ein paar Fingerübungen, um mit Mininet vertraut zu werden. Wir werden Mininet ab jetzt auch in den folgenden Praktika nutzen, daher ist der sichere Umgang damit wichtig.
Wir benutzen Mininet heute mit einer einfachen Topologie, bei der drei Hosts mit einem Switch verbunden sind.
sudo mn --switch lxbr --topo single,3 --link tc,bw=10,max_queue_size=200,delay=10ms
Was hier erzeugt wird, sollte Sie nun wissen.
Bearbeiten Sie nun folgende Aufgaben in der Mininet-Topologie:
- Testen Sie die Konnektivität unter den Hosts (z.B. mit
pingall
) und sehen Sie sich die Information aller Hosts (nodes
) der Links (links
) und Netzwerkschnittstellen (intfs
) an. Nutzen Sie auch das ping Programm, um die Latenz zwischenh1
undh3
zu testen. Entspricht die Latenz Ihren Erwartungen? Sie sollte im Bereich von 40ms liegen. Warum ist das so? - Öffnen sein ein Terminal auf Host 1 (
xterm h1
). Pingen Sie von diesem Host aus die anderen beiden Hosts an (nicht vergessen, Sie müssen die IP Adressen nutzen, die symbolischen Namenh1
,h2
… sind nur in der Mininet-CLI verfügbar). - Schließen Sie das xterm-Fenster wieder und nutzen Sie die Mininet-CLI, um einen Webserver (eingebaut in Python) zu starten (
h1 python3 -m http.server 80 &
). Mit dem ihnen schon bekannten Toolcurl
können Sie nun die Webseiteanfragen (h2 curl h1
). Wie sie sehen haben Sie ein virtuelles Netz auf Ihrem PC und können dort beliebige Programme starten und über dieses Netz darauf zugreifen. Jetzt sind Sie bereit sich TCP genauer anzuschauen. Lassen Sie Mininet für die weiteren Aufgaben laufen. Beenden Sie aber den Webserver mit:h1 killall python3
.