Integration von virtuellen Maschinen mit Windows-Betriebssystem in eine Simulationsbibliothek
Methoden
Themengebiete
Programmierung in C
Programmierung in Java
Beschreibung
Hintergrund
Für Protokolle in Kommunitkationsnetzen existieren zwar oft Standards der IETF, wie z.B. RFC 793 & 5681 für TCP, aber die tatsächlich im Internet genutzten Implementierungen und deren Algorithmen sind oft nicht bekannt bzw. ändern sich in Details sehr schnell. Aus diesem Grund wurde am IKR eine Bibliothek für ereignisgesteuerte Simulationen (in Java) um die Integration von Virtuellen Maschinen (VMs) auf qemu-Basis erweitert. Dafür wird die Verwaltung der Systemzeit der VM inkl. Interrupthandling in die Simulation verschoben. Derzeit existiert für Linux auch ein User Space Programm, das es erlaubt, durch Simulationsereignisse TCP-Übertragungen zu triggern. Die Regulation der Senderate wird dabei dann von der Implementierung des eingesetzen Linux-Kernels übernommen. Dieser Mechanismus ist in Windows anders implementiert, was je nach Szenario wichtig sein kann.
Aufgabenstellung
Die bestehende Bibliothek soll um die Integration von Windows-Instanzen erweitert werden. Dazu sind folgende Schritte nötig:
•
Implementierung eines User Space Programms in Windows, das wie das Linux-Pendant gesteuert werden kann
•
Analyse der qemu-Einbindung von Festplatten
•
Entwurf einer Integration von Windows in den angepassten qemu-Virtualisierer
•
Implementierung dieser Architektur
•
Evaluation der Implementierung
Erworbene Kenntnisse und Fähigkeiten
Sie arbeiten mit großen Softwareprojekten und lernen die Funktionsweise einer ereignisgesteuerten Simulation kennen. Sie erweitern Ihre Kenntnisse in der Programmierung in C, außerdem bekommen Sie Einblick in die Congestion Control moderner Betriebssysteme.
Voraussetzungen
Programmierkenntnisse in C
Kontakt
Dipl.-Ing. Sebastian Scholz,
Raum 1.319 (ETI II),
Telefon 685-67968, [homepage, E-Mail]