Abstract:
Die große Anzahl an Geräten im Internet der Dinge (IoT) und deren kontinuierliche Datensammlungen führen zu einem rapiden Wachstum der gesammelten Datenmenge. Die Daten komplett mittels zentraler Cloud Server zu verarbeiten ist ineffizient und zum Teil sogar unmöglich oder unnötig. Darum wird die Datenverarbeitung an den Rand des Netzwerks verschoben, was zu den Konzepten des Edge Computings geführt hat. Informationsverarbeitung nahe an der Datenquelle (z.B. auf Gateways und Edge Geräten) reduziert nicht nur die hohe Arbeitslast zentraler Server und Netzwerke, sondern verringer auch die Latenz für Echtzeitanwendungen, da die potentiell unzuverlässige Kommunikation zu Cloud Servern mit ihrer unvorhersehbaren Netzwerklatenz vermieden wird. ... mehrAktuelle IoT Architekturen verwenden Gateways, um anwendungsspezifische Verbindungen zu IoT Geräten herzustellen. In typischen Konfigurationen teilen sich mehrere IoT Edge Geräte ein IoT Gateway. Wegen der begrenzten verfügbaren Bandbreite und Rechenkapazität eines IoT Gateways muss die Servicequalität (SQ) der verbundenen IoT Edge Geräte über die Zeit angepasst werden. Nicht nur um die Anforderungen der einzelnen Nutzer der IoT Geräte zu erfüllen, sondern auch um die SQBedürfnisse der anderen IoT Edge Geräte desselben Gateways zu tolerieren.
Diese Arbeit untersucht zuerst essentielle Technologien für IoT und existierende Trends. Dabei werden charakteristische Eigenschaften von IoT für die Embedded Domäne, sowie eine umfassende IoT Perspektive für Eingebettete Systeme vorgestellt. Mehrere Anwendungen aus dem Gesundheitsbereich werden untersucht und implementiert, um ein Model für deren Datenverarbeitungssoftware abzuleiten. Dieses Anwendungsmodell hilft bei der Identifikation verschiedener Betriebsmodi. IoT Systeme erwarten von den Edge Geräten, dass sie mehrere Betriebsmodi unterstützen, um sich während des Betriebs an wechselnde Szenarien anpassen zu können. Z.B. Energiesparmodi bei geringen Batteriereserven trotz gleichzeitiger Aufrechterhaltung der kritischen Funktionalität oder einen Modus, um die Servicequalität auf Wunsch des Nutzers zu erhöhen etc. Diese Modi verwenden entweder verschiedene Auslagerungsschemata (z.B. die übertragung von Rohdaten, von partiell bearbeiteten Daten, oder nur des finalen Ergebnisses) oder verschiedene Servicequalitäten. Betriebsmodi unterscheiden sich in ihren Ressourcenanforderungen sowohl auf dem Gerät (z.B. Energieverbrauch), wie auch auf dem Gateway (z.B. Kommunikationsbandbreite, Rechenleistung, Speicher etc.). Die Auswahl des besten Betriebsmodus für Edge Geräte ist eine Herausforderung in Anbetracht der begrenzten Ressourcen am Rand des Netzwerks (z.B. Bandbreite und Rechenleistung des gemeinsamen Gateways), diverser Randbedingungen der IoT Edge Geräte (z.B. Batterielaufzeit, Servicequalität etc.) und der Laufzeitvariabilität am Rand der IoT Infrastruktur. In dieser Arbeit werden schnelle und effiziente Auswahltechniken für Betriebsmodi entwickelt und präsentiert.
Wenn sich IoT Geräte in der Reichweite mehrerer Gateways befinden, ist die Verwaltung der gemeinsamen Ressourcen und die Auswahl der Betriebsmodi für die IoT Geräte sogar noch komplexer. In dieser Arbeit wird ein verteilter handelsorientierter Geräteverwaltungsmechanismus für IoT Systeme mit mehreren Gateways präsentiert. Dieser Mechanismus zielt auf das kombinierte Problem des Bindens (d.h. ein Gateway für jedes IoT Gerät bestimmen) und der Allokation (d.h. die zugewiesenen Ressourcen für jedes Gerät bestimmen) ab. Beginnend mit einer initialen Konfiguration verhandeln und kommunizieren die Gateways miteinander und migrieren IoT Geräte zwischen den Gateways, wenn es den Nutzen für das Gesamtsystem erhöht.
In dieser Arbeit werden auch anwendungsspezifische Optimierungen für IoT Geräte vorgestellt. Drei Anwendungen für den Gesundheitsbereich wurden realisiert und für tragbare IoT Geräte untersucht. Es wird auch eine neuartige Kompressionsmethode vorgestellt, die speziell für IoT Anwendungen geeignet ist, die Bio-Signale für Gesundheitsüberwachungen verarbeiten. Diese Technik reduziert die zu übertragende Datenmenge des IoT Gerätes, wodurch die Ressourcenauslastung auf dem Gerät und dem gemeinsamen Gateway reduziert wird.
Um die vorgeschlagenen Techniken und Mechanismen zu evaluieren, wurden einige Anwendungen auf IoT Plattformen untersucht, um ihre Parameter, wie die Ausführungszeit und Ressourcennutzung, zu bestimmen. Diese Parameter wurden dann in einem Rahmenwerk verwendet, welches das IoT Netzwerk modelliert, die Interaktion zwischen Geräten und Gateway erfasst und den Kommunikationsoverhead sowie die erreichte Batterielebenszeit und Servicequalität der Geräte misst. Die Algorithmen zur Auswahl der Betriebsmodi wurden zusätzlich auf IoT Plattformen implementiert, um ihre Overheads bzgl. Ausführungszeit und Speicherverbrauch zu messen.
Abstract (englisch):
The massive number of Internet of Thing (IoT) devices and their continuous data collection will lead to a rapid increase in the scale of collected data. Processing all these collected data with central cloud servers is inefficient, and even sometimes is unfeasible or unnecessary. Hence, the task of processing the data is pushed to the network edges introducing the concept of Edge Computing. Processing the information closer to the source of data (e.g. on the gateways and edge devices) not only reduces the huge workload of central servers and network, also decreases the latency for the real-time applications by avoiding the unreliable and unpredictable network latency to communicate with the cloud servers.
... mehr
Current art in IoT architectures utilizes gateways to enable application-specific connectivity for IoT devices. In typical configurations, IoT gateways are shared among several IoT edge devices. Given the limited available bandwidth and processing capabilities of an IoT gateway, the service quality (SQ) of connected IoT edge devices must be adjusted over time not only to fulfill the needs of individual IoT device users but also to tolerate the SQ needs of the other IoT edge devices sharing the same gateway.
This thesis, first, investigates essential technologies for IoT and its existing trends, provides distinguishing properties of IoT for embedded system domain in addition to a comprehensive IoT perspective for embedded systems. Several applications in the healthcare domain are studied and implemented to help to derive a model for their data processing software. The application model helps in identifying multiple operation modes. IoT systems anticipate the edge devices to support different operation modes to be able to adapt to varying runtime situations, like preserving energy at low battery while still maintaining some crucial functionalities, increasing the service quality upon user's request, etc. These modes are either because of different offloading schemes (e.g. raw data transmission, partially process on IoT device, or transmitting the final result), or due to different service qualities. Operation modes differ in terms of resource usage, both on the device (e.g. energy consumption) and on the gateway (e.g. communication bandwidth, processing power, memory, etc.). Selecting the optimal operation mode for edge devices is a challenge given the limited resources on the edge of the network (e.g. bandwidth and processing power of the shared gateway), diverse constraints on the IoT edge devices (e.g. battery lifetime, quality of service, etc.), and runtime dynamics of the IoT edge infrastructure. This thesis proposes and presents fast and efficient operation mode selection techniques.
Moving to multi-gateway IoT systems, where some IoT devices are reachable by more than one gateway, managing the shared resources and selecting the operation mode of IoT devices become much more complex. This thesis also presents a distributed trade-based device management mechanism for multi-gateway IoT systems. This mechanism targets the joint problem of binding (i.e. determines the gateway for each IoT device) and allocation (i.e. determines the allocated resources to each device). Starting from an initial setup, gateways negotiate and communicate with each other, migrate or exchange IoT devices when it increases the system's overall benefit.
This thesis also presents application-specific optimizations for individual IoT devices. Three applications in the health monitoring domain are implemented and investigated for wearable IoT devices. It also proposes a novel approximate compression technique for IoT applications that process bio-signals for health monitoring. This technique reduces the amount of data transmission from IoT device which reduces the resource usage both on the device and on the shared gateway.
To evaluate the proposed techniques and mechanisms, some applications are profiled on the IoT platforms to measure their required parameters including execution time and resource utilization. These parameters are then used in a framework that models the IoT network and captures the interaction between devices and gateway(s) and measures the communication overhead as well as the achieved battery lifetime and service quality of devices. The operation model selection algorithms are implemented on IoT platforms to measure their overheads in terms of execution time and memory usage.