title: Virtualization of internet of things devices
Creators: name: Leitner, Matthias
Publisher: name: TU Wien
Year: 2020
Subjects: subject: Simulation
subject: Internet der Dinge
subject: Emulation
subject: Netzwerksimulation
subject: Ressourcenvirtualisierung
subject: Simulation
subject: Internet of Things
subject: Emulation
subject: Network simulation
subject: Resource virtualization

description: Das Internet der Dinge (engl. Internet of Things, IoT) beschreibt die Vernetzung intelligenter Geräte die mit ihrer Umwelt interagieren. Durch die Vielzahl an Anwendungsmöglichkeiten beeinflusst das IoT weite Bereiche der Industrie sowie des alltäglichen Lebens. Die Integration neuer Technologien und die stärker werdende Vernetzung führen zu einer erhöhten Komplexität solcher Systeme. Die Heterogenität und die Größenordnung von IoT-Netzwerken stellen Forscher und Entwickler vor neue Herausforderungen. Die im traditionellen Software Engineering verwendeten Methoden bieten nicht genügend Möglichkeiten, umfangreiche Tests während des Entwicklungsprozesses von IoT-Systemen durchzuführen. Aus diesem Grund werden neue Lösungen benötigt, welche die Funktionalität der entwickelten Systeme gewährleistet, bevor diese in der realen Welt eingesetzt werden. Eine Möglichkeit, um der Komplexität von IoT-Systemen entgegenzuwirken, bietet der Einsatz von Simulatoren. Aus diesem Grund befasst sich die vorliegende Arbeit mit der Entwicklung eines neuartigen Simulationsansatzes für IoT-Systeme. Basierend auf dem Entwicklungsprozess von IoT-Systemen werden aktuell verwendete Methodiken analysiert und simulationsbasierte Lösungen mit Alternativen verglichen. Diese Ergebnisse fließen in eine Anforderungsanalyse ein und werden zusätzlich um Erkenntnisse der aktuellen Forschung sowie eines beispielhaften Anwendungsszenarios ergänzt.Das daraus resultierende Architektur-Framework ermöglicht gemeinsam mit dem entwickelten Netzwerksimulator eine gesamtheitliche Simulation von IoT-Systemen. Das Architektur-Framework repräsentiert eine generische Software-Integrationsschicht, die mittels Virtualisierungstechnologien und Hardware-Emulation virtuelle IoT Geräte in die Simulation einbindet. Der Netzwerksimulator verbindet die virtuellen IoT Geräte und simuliert realitätsnahe Kommunikationskanäle, welche flexibel konfiguriert werden können. Abschließend wird mittels eines Use-Case-Szenarios die Verwendung der entwickelten Systeme veranschaulicht sowie die Qualität der Simulationsergebnisse analysiert. Dazu wird der Raft Algorithmus implementiert und dessen Performance in einem IoT-Netzwerk evaluiert.
description: The Internet of Things (IoT) influences a wide range of domains and already impacts our day-to-day lives. IoT systems represent networks of interconnected, smart devices that interact with their environment. With emerging technologies entering the market, IoT systems become more sophisticated. Whether it is reducing costs and increasing efficiency in production lines, driving automation and autonomy, or continuously monitoring people's health---the IoT affects consumer-oriented applications as well as safety-critical infrastructure. The heterogeneity of these networks and their scale impose new challenges on researchers and developers. Tools used in traditional software engineering do not provide sufficient capabilities to evaluate these systems extensively during the development process. Hence, novel approaches and tools are needed that assist researchers in testing and verifying their proposed IoT solutions before deploying them in the real world. Simulating IoT systems upfront in a controlled environment is one possibility to address the increased complexity. Therefore, this thesis proposes a novel end-to-end simulation approach for the development of IoT systems. We analyze existing tools currently used in IoT research projects and compare simulation-based methods to alternative solutions. Further, we define essential requirements and characteristics for IoT simulation systems according to state-of-the-art research, and an exemplary use-case scenario. Based on these findings, we propose an architecture framework and a network simulator. The architecture framework is a generic software integration layer that utilizes existing device emulators and simulators and supports hardware emulation. The network simulator imitates real-world networks and connects virtual devices in the simulation. The work concludes with a comprehensive evaluation. For this, we implement the Raft algorithm and demonstrate the validity of the simulation results as well as the capabilities of the proposed solutions by evaluating the performance of Raft in a simulated IoT network.