Please use this identifier to cite or link to this item: http://dx.doi.org/10.18419/opus-2698
Authors: Maier, Steffen Dirk
Title: Scalable computer network emulation using node virtualization and resource monitoring
Other Titles: Skalierbare Rechnernetz-Emulation durch Knotenvirtualisierung und Betriebsmittelüberwachung
Issue Date: 2011
metadata.ubs.publikation.typ: Dissertation
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-62742
http://elib.uni-stuttgart.de/handle/11682/2715
http://dx.doi.org/10.18419/opus-2698
Abstract: Ongoing development of computer network technology requires new communication protocols on all layers of the protocol stack to adapt to and to exploit technology specifics. The performance of new protocol implementations has to be evaluated before deployment. Computer network emulation enables the execution of real unmodified protocol implementations within a configurable synthetic environment. Since network properties are reproduced synthetically, emulation supports reproducible measurement results for wired and wireless networks. Meaningful evaluation scenarios typically involve a large number of communicating nodes. Reproducing the network properties of the medium access control layer can be accomplished efficiently on cheap common off the shelf computers and allows to evaluate network protocols, transport protocols, and applications. However, meaningful emulation scenario sizes often require more nodes than affordable computers. To scale the number of nodes in an emulation scenario beyond the available computers, we discuss approaches to virtualization and operating system partitioning. Focusing on the latter, we argue for virtual protocol stacks, which provide an extremely lightweight node virtualization enabling the execution of multiple instances of software to be evaluated on each physical computer. To connect virtual nodes on the same and on different computers, we design and implement a highly efficient software communication switch. A centralized emulation control component distributes dynamic network property updates which result from node mobility for instance. To handle the large number of nodes and thus increased updates, we propose a hierarchical control where the central component delegates updates to sub-components distributed over the computers of an emulation system. Extensive evaluations show the scalability of our virtualized network emulation system. Virtual nodes executed on the same computer share its limited resources. Hosting too many virtual nodes on the same computer may lead to resource contention. This can cause unrealistic measurement results and is thus undesirable. Discussing different approaches to handle resource contention, we argue for detection and recovery. We define quality criteria that allow the detection of resource contention. In order to observe those quality criteria during emulation experiments, we propose a highly lightweight monitoring approach. Our monitoring is based on instrumenting an operating system kernel and observing basic resource scheduling events. This enables the detection of even peak resource usage within a split second. Thorough evaluations demonstrate the effectiveness of quality criteria and monitoring as well as the negligible overhead of our monitoring approach.
Die voranschreitende Entwicklung von Rechnernetz-Technologien erfordert neue Kommunikationsprotokolle auf allen Schichten des Protokollstapel zur Anpassung an und Ausnutzung von Technologiespezifika. Dabei ist die Leistung neuer Protokollimplementierungen vor dem Ausbringen zu untersuchen. Rechnernetz-Emulation ermöglicht die Ausführung echter unmodifizierter Protokollimplementierungen innerhalb einer konfigurierbaren synthetischen Umgebung. Da Netzeigenschaften synthetisch nachgebildet werden, unterstützt die Emulation reproduzierbare Messergebnisse für drahtgebundene und drahtlose Netze. Aussagekräftige Evaluationsszenarien beinhalten typischerweise eine große Anzahl kommunizierender Knoten. Die Nachbildung von Netzeigenschaften der Medienzugriffssteuerungs-Schicht kann effizient auf marktüblichen Rechnern bewerkstelligt werden und erlaubt die Evaluation von Vermittlungsschicht-Protokollen, Transportschicht-Protokollen und Anwendungen. Jedoch benötigen aussagekräftige Emulationsszenarien oftmals mehr Knoten als Rechner finanziell tragbar sind. Um die Anzahl an Knoten in einem Emulationsszenario über die verfügbaren Rechner hinaus zu skalieren, werden Ansätze zur Virtualisierung und Betriebssystem-Partitionierung diskutiert. Unter Fokussierung auf letztere, wird für virtuelle Protokollstapel argumentiert, welche eine sehr leichtgewichtige Knotenvirtualisierung anbieten und dadurch die Ausführung mehrerer Instanzen von zu evaluierender Software auf jedem physischen Rechner ermöglichen. Um virtuelle Knoten auf demselben sowie auf verschiedenen Rechnern zu verbinden, wird ein hocheffizienter Software-Kommunikations-Switch entworfen und implementiert. Eine zentralisierte Emulationssteuerungs-Komponente verteilt dynamische Aktualisierungen zu Netzeigenschaften, die sich beispielsweise aus Knotenmobilität ergeben. Um eine große Knotenanzahl und die dadurch gestiegene Aktualisierungsrate bedienen zu können, wird eine hierarchische Steuerung vorgeschlagen, bei der die zentrale Komponente Aktualisierungen an Unterkomponenten delegiert, welche über die Rechner eines Emulationssystems verteilt sind. Umfassende Evaluationen zeigen die Skalierbarkeit unseres virtualisierten Rechnernetz-Emulationssystems. Virtuelle Knoten, die auf demselben Rechner ausgeführt werden, teilen sich dessen beschränkte Betriebsmittel. Die Ausführung zu vieler virtueller Knoten auf demselben Rechner kann zu Wettbewerb um Betriebsmittel führen. Dies kann unrealistische Messergebnisse zur Folge haben und ist deshalb unerwünscht. Ausgehend von einer Diskussion verschiedener Ansätze zur Behandlung von Wettbewerb um Betriebsmittel, wird für Erkennung und Behebung argumentiert. Qualitätskriterien, welche die Erkennung von Wettbewerb um Betriebsmittel ermöglichen, werden definiert. Um diese Qualitätskriterien während Emulationsexperimenten zu beobachten, wird ein sehr leichtgewichtiger Überwachungsansatz vorgeschlagen. Unser Überwachungsansatz basiert auf der Instrumentierung des Betriebssystemkerns zur Beobachtung grundlegender Ereignisse der Betriebsmittel-Einplanung. Dies erlaubt die Erkennung selbst kurzer Lastspitzen innerhalb von Bruchteilen einer Sekunde. Sorgfältige Evaluationen zeigen die Effektivität der Qualitätskriterien und der Überwachung ebenso wie den vernachlässigbaren Overhead unseres Überwachungsansatzes.
Appears in Collections:05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Files in This Item:
File Description SizeFormat 
maier11diss.pdf1,24 MBAdobe PDFView/Open


Items in OPUS are protected by copyright, with all rights reserved, unless otherwise indicated.