Evaluation von VIRL, GNS3 und Mininetals Virtual Network Testbeds in der Hochschullehre
Christoph Seifert, Sven Reißmann, Sebastian Rieger, Christian PapeHochschule Fulda
Fachbereich Angewandte Informatik
11. DFN-Forum Kommunikationstechnologien, 2018, Günzburg
• Problemstellung im Netzwerk-Labor der HS-Fulda („NetLab“)
• Lösungen für reproduzierbare Netzexperimente
• Eignung Virtueller Network Testbeds für die Lehre im „NetLab“
• VIRL / CML
• Mininet
• GNS3
• Evaluation
• Fazit und Ausblick
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Netzwerk-Labor “NetLab” an der Hochschule Fulda
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Foto: Reißmann
Simulatoren Testbeds Emulatoren
Shared Custom
Realitätsnahe Funktionen
Realistisches Timing (einge‐schränkt)
Realistischer Traffic
Flexibilität der Topologien (einge‐schränkt)
Einfache Nachvollziehbarkeit
Geringe Kosten
• Physische „Custom“ Testbeds: vgl. Cisco Certified Network Associate (CCNA) Rack
• Physische „Shared“ Testbeds: z.B. im Serverraum
• Software Testbeds: z.B. VMs im Labor
• Simulatoren: z.B. PacketTracer
• Emulatoren:• Virtual Internet Routing
Lab (VIRL)• Mininet• Graphical Network
Simulator 3 (GNS3)
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Lösungen für reproduzierbare Netzexperimente im „NetLab“
Quelle: Handigol et al.: Reproducible Network Experiments Using Container‐Based Emulation
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Eignung verschiedener Lösungen für die Lehre im „NetLab“
Praktischer Einsatz/Realität
Praxis Theorie
Realistische Funktionen
Realistisches Timing
Realistischer Traffic
Einfache Nachvollziehbarkeit
Flexibilität der Topologien
Geringe Kosten
Charakteristika:
PhysischesTestbed
VirtuellesTestbed
Emulation Simulation Theoretische Modelle
++
++
++
‐‐
‐‐
‐‐
++
o
+
o
o
‐
++
o
+
+
++
o
‐‐
++
‐‐
+
++
o
‐‐
++
‐‐
++
o
++niedrig hoch
• Bewertung: Summe je Spalte aus + (+1), - (-1) und o (0) Punkten
• Fazit: Emulation kurze Rüst-/Nachbereitungszeiten, ubiquitäre/einfache Nutzung, hohe Realitätsnähe
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Eignung verschiedener Lösungen für die Lehre im „NetLab“ (2)
Praxis Theorie
Praktischer Einsatz/Realität
Didaktische Eignung:
Didaktische Reduktion
Präsenzlehre
Blended Learning
E‐Learning
Bewertung (Punkte):
PhysischesTestbed
VirtuellesTestbed
Emulation Simulation Theoretische Modelle
‐‐
‐‐
‐‐
‐‐
o
‐
o
‐‐
+
o
+
o
+
+
++
+
+
+
o
+
‐8 ‐1 8 6 5
niedrig hoch
• Direkte Unterstützung von Cisco Images (IOS, XE/XR, NX-OS, ISR, ASA, …) inkl. Lizenz
• Third-party Images: Ubuntu, Kali, … (LXC und KVM), Arista, HP, Juniper, …
• Realitätsnahes Setup inkl. Im- und Export von Configs (z.B. realer Router/Catalysts)
• VM Maestro (Eclipse-basiert) GUI, einfaches Setup (AutoNetKit) und Nutzung von Topologien (inkl. SSH Zugriff auf virtuelle Nodes, QoS Emulation, Wireshark, …)
• Topologien/Experimente als XML-File, reproduzierbares Setup, Git Integration
• Basiert auf Ubuntu/OpenStack: Clustering, Multi-User (inkl. Quota etc.), REST-API
• Bis 2017 im NetLab primär eingesetzt
• Seit Mitte 2017 VIRL nur noch als Personal Edition (PE) verfügbar• Einzelplatz $199 p.a. für max. 20 parallel genutzte Cisco Images, kein Cluster etc.• Mehrplatz-Version (Code-Basis: VIRL) CML: ~2500€ p.a.: ~20 parallel genutzte Cisco Images
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Cisco Virtual Internet Routing Lab (VIRL) und Cisco Modelling Lab (CML)
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Beispiel: VIRL
• Netzemulator, entwickelt an Stanford University, Forschungsgruppe: Nick McKeown• Open Source, GitHub Repository• U.a. für „reproducible network experiments“ realer Paper im Netzbereich nutzbar• Ubuntu-basiert, nutzt Container-basierte Emulation + Open vSwitch• Python API für eigene Topologien, Experimente etc.• Linux-typische Befehle direkt und realitätsnah in Containern nutzbar, aber keine
eigenen Images (reale OS von Netz-Equipment)• Sehr guter Support für Software-defined Networking (SDN) Experimente, in Master-
Veranstaltungen und mehreren Master- und Bachelor-Arbeiten in Verwendung (z.B. für BGP Blackholing mit DE-CIX (iSDX))
• Teilweise Anbindung an reales Netz möglich (z.B. NAT-Zugriff Internet)
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Mininet
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Beispiel: Mininet
• Graphical Network Simulator 3• Open Source (GPL), GitHub Repository• Unterstützt zahlreiche Images verschiedenster Netzwerk-Hersteller (Cisco, HP,
Juniper, Arista, …), allerdings bzgl. Cisco: Lizenzen und workaround erforderlich• Topologien können kopiert/vorbereitet werden, REST-API verfügbar• Appliance für zentrale Server (Ubuntu-basiert), vernetzbar, aber leider nicht als
Cluster, kein übergreifendes Management für Server (Scheduling etc.)• GUI für einfache Anlage und Verwendung von Topologien (inkl. SSH-Zugriff auf
virtuelle Nodes, QoS Emulation, Wireshark, …)• Nur Single-(Admin)-User Betrieb, aber mehrere Sitzungen möglich• Seit 2017 primär im NetLab in Verwendung
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
GNS3
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Beispiel: GNS3
Gewichtung
• Höchstes Gewicht auf (Lizenz-)Kosten
• Mehrere Benutzer/Sitzungen
• Realitätsnähe (Anbindung reales Netz, reale Images existierender Hardware)
• Zentrales Management
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Bewertung
• Kompatibilität, Zugänglichkeit (Tool, Konsolenverbindungen)
• Load Balancing (für große Anzahl laufender virtueller Nodes)
• QoS Emulation, VPN-Zugang zu virtuellem Netz
• Erforderliche Ressourcen (Hardware)
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Bewertung
• VIRL und CML aufgrund Lizenzmodell derzeit schwer im NetLab nutzbar
• GNS3 hat Nachteile bzgl. fehlendem Clustering und Mehrbenutzer-Support, teils auch noch „kleinere“ Fehler im Betrieb, aktuell aber trotzdem „beste“ Lösung im NetLab• Seit GNS3 2.1.x alle benötigten Features für durchgeführte Lehrveranstaltungen (QoS, …)• Dank Open-Source-Lizenz (GPL) Erweiterung von GNS3 möglich:
• Cluster/Load Balancing Support: derzeit manuell über mehrere zentrale VMs im NetLab• Fehlender Mehrbenutzer-Support: aktuell Backup, ggf. Code-Erweiterung oder REST-API-Proxy
• Mininet bleibt für SDN Veranstaltungen im Master im NetLab erste Wahl
• Tools (Benchmark, Scheduler), Topologien: https://gogs.informatik.hs-fulda.de/srieger
Vielen Dank für die Aufmerksamkeit! Gibt es Fragen?
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Fazit und Ausblick
Evaluation von VIRL, GNS3 und Mininet als Virtual Network Testbeds in der Hochschullehre
Benchmark VIRL vs GNS3
85,2
253,8
315,2
11,6 11,7
173,5
050100150200250300350
Start Active Usable
Second
s
VIRL GNS3
16,7
85,3
149,9
2,0 2,0
137,1
050100150200250300350
Start Active Usable
Second
s
VIRL GNS3
1 gestartete Topologie 5 parallel gestartete Topologien