Home | deutsch  | Impressum | Data Protection | Sitemap | KIT

Ressourcen-Management in zukünftigen Netzen mit Linux Containers

Ressourcen-Management in zukünftigen Netzen mit Linux Containers
chair:Future Internet
type:Studien-/Bachelorarbeit
advisor:

Helge Backhaus, Denis Martin, Hans Wippel

person in charge:(offen)

Beschreibung

Im Rahmen der Forschung an verschiedenen Future Internet Projekten wurde am Institut ein Prototyp (http://nena.intend-net.org) entwickelt. Dieser ermöglicht ein Future Internet Szenario, in dem sich Knoten gleichzeitig mit einer Vielzahl von virtuellen Netzen verbinden, welche jeweils für bestimmte Anwendungen oder Einsatzszenarien optimiert sind. Beispiele solcher Netze sind spezielle IPTV-, Online-Banking-, Gaming-, oder File-Sharing-Netze. In diesem Szenario müssen die verfügbaren Ressourcen eines Knotens auf verschiedene virtuelle Netze und deren lokal auf dem Knoten instantiierten Komponenten aufgeteilt werden. Dabei werden zum Beispiel den verwendeten Protokollen Ressourcen wie CPU-Anteil, Speicher oder Bandbreite zugeordnet. Je nach dem Ressourcen-Bedarf der Protokolle müssen diese Ressourcen auch zur Laufzeit umverteilt werden.

Aufgabenstellung

Container-Konzepte, wie z.B. LXC Linux Containers (http://lxc.sourceforge.net), erlauben die Virtualisierung und das Management von Ressourcen eines Netz-Knoten mit relativ geringem Overhead. Daher soll im Rahmen dieser Arbeit der bestehende Prototyp um ein auf LXC basierendes Virtualisierungssystem samt Ressourcen-Management erweitert werden. Dabei sollen geeignete Management-Schnittstellen und -Funktionen entworfen werden, mit denen den Containern Ressourcen zur Laufzeit hinzugefügt und entzogen werden können. Anschließend soll das entworfene Gesamtsystem experimentell evaluiert werden. Hierbei soll vor allem untersucht werden, wie das Gesamtsystem auf das Verändern der Ressourcen-Zuteilungen zur Laufzeit reagiert.

Arbeitsumgebung

Klimatisierter Rechner-Pool, GLUCK-System (Kaffee und andere Getränke), zahlreiche Testbett-Rechner

Voraussetzungen

Grundlegende Programmierkenntnisse in C/C++ und Bereitschaft sich in bestehenden Code einzuarbeiten