Routing and Sensor Search in the Internet of Things
Total Page:16
File Type:pdf, Size:1020Kb
From the Institute of Computer Engineering of the University of L¨ubeck Direktor: Prof. Dr.-Ing. Erik Maehle Routing and Sensor Search in the Internet of Things Dissertation for Fulfilment of Requirements for the Doctoral Degree of the University of L¨ubeck { from the Department of Computer Sciences/Engineering { Submitted by M.Sc. Cuong Duc Truong from Hanoi, Vietnam L¨ubeck, January 2014 From the Institute of Computer Engineering of the University of L¨ubeck Direktor: Prof. Dr.-Ing. Erik Maehle Routing and Sensor Search in the Internet of Things Dissertation for Fulfilment of Requirements for the Doctoral Degree of the University of L¨ubeck { from the Department of Computer Sciences/Engineering { Submitted by M.Sc. Cuong Duc Truong from Hanoi, Vietnam L¨ubeck, January 2014 First referee: Prof. Dr. sc. Kay Uwe R¨omer Second referee: Prof. Dr. rer. nat. Stefan Fischer Date of oral examination: 13.01.2014 Approved for printing. L¨ubeck, den 13.01.2014 i Abstract by M. Sc. Cuong Duc Truong Institute of Computer Engineering, University of L¨ubeck We are witnessing the formation of an Internet of Things (IoT), where real-world entities (e.g., people, plants, cars) augmented with computing devices (e.g., smartphones, tablets, sensor nodes), sensors (e.g., humidity sensors, microphones, cameras), and actuators (e.g., motors, LED) are connected to the Internet, enabling them to publish their generated data on the Web. By mashing up these \Smart Things" with the services and data available on the Web, novel IoT applications can be created. Two main characteristics of the IoT are its large scale interconnecting billions of Smart Things in the next decade, and the resource limitations of Smart Things (i.e., of their embedded computing devices). For many IoT applications, routing and sensor search are essential services. The sensor search service allows for quickly finding Smart Things in the IoT based on the real-world states perceived by their embedded sensors. To facilitate sensor search and also other IoT applications, a routing service is required to enable efficient communication of information among Smart Things and other Internet nodes. Due to the resource limitations of Smart Things, the design of these two services is challenging. Our thesis is that despite the large scale of the IoT and the resource limitations of Smart Things, efficient solutions for the routing and sensor search services can actually be provided. We support this thesis by proposing, implementing, and evaluating two routing algorithms for large-scale wireless sensor networks (which are a building block of the IoT), and two sensor search algorithms for the IoT. The proposed routing algorithms are Recursive Multi-region Geocasting (RMG) and Stochas- tic Forwarding-based Routing (SFR). The RMG algorithm is targeted to large-scale wireless networks where information needs to be delivered from a source to multiple geographical regions that are remotely located from the source, respectively to all Smart Things that are located therein. RMG's approach is to avoid making routing decisions at every intermediate node. Instead, routing decisions and packet duplication are only performed at a few selected nodes on the routing path of a data packet, thus saving processing and energy resources as well as wireless bandwidth. The SFR algorithm aims to balance the energy consumption ii caused by the routing task across the network, therefore improving the operational lifetime of the network. Our approach for SFR is to model the route of a data packet as a random walk, such that different packets travel on different routing paths between a given source and destination. The random walk is designed such that the ratio between the average length of the routing paths taken by multiple packets and the length of the shortest routing path (path length overhead) is small, thus saving energy. Evaluation results show the efficiency of our routing algorithms. In particular, (i) RMG minimizes the total number of transmissions needed for the successful delivery of a data packet, and incurs little computation overhead on the network; and (ii) SFR fairly balances the routing load across the network while keeping the path length overhead small. Furthermore, both algorithms are scalable, since routing decisions are made using only local information. The proposed search algorithms are sensor similarity search and content-based sensor search. The first algorithm allows for finding sensors whose recent measurements (i.e., perceived states of the real world) are similar to that of an example sensor. The second algorithm allows for finding sensors whose latest measurements fall in a given value range. These two search services are useful because they enable the users to search the real world for objects and places with a given state in real time. Our approach for both algorithms is to encode the properties of the real-world states perceived by sensors using a fuzzy set, and store and index those fuzzy sets in a distributed database system in the Internet, such that they can be used for query resolution. Since the size of a fuzzy set is small, its computation is efficient, and the query resolution using those fuzzy sets is fast, our approach is scalable. Moreover, our approach addresses the inherent imperfections of data generated by sensors as it is based on fuzzy sets. Evaluating our search algorithms using sensor data from real- world deployments, we show the high accuracy of the sensor similarity search algorithm, and the low communication overhead of the content-based sensor search algorithm. We also demonstrate the practical feasibility of our sensor search algorithms by developing an online search engine that allows for finding sensors on the Web based on their published data, using the above sensor search algorithms. Zusammenfassung von M. Sc. Cuong Duc Truong Institut f¨urTechnische Informatik, Universit¨atzu L¨ubeck Es wird erwartet, dass das Internet der Dinge (IoT) im kommenden Jahrzehnt Milliar- den von stark ressourcenbeschr¨anktensmarten Dingen mit dem Internet verbindet. F¨ur viele IoT-Anwendungen sind Routing und Suche grundlegende Dienste. Sensorsuchdien- ste erlauben das schnelle Finden von smarten Dingen im IoT basierend auf den von ihren Sensoren gemessenen Zust¨anden der realen Welt. Um die Suche und auch andere IoT- Anwendungen zu erm¨oglichen, wird ein Routingdienst ben¨otigt der eine effiziente Weiter- leitung von Nachrichten zwischen smarten Dingen und anderen Internetknoten erlaubt. Die Ressourcenknappheit der smarten Dinge macht die Realisierung dieser Dienste zu einer wis- senschaftlichen Herausforderung. Unsere These ist, dass es trotz der Gr¨oßedes IoT und den limitierten Ressourcen der smarten Dinge m¨oglich ist, effiziente L¨osungenf¨ur das Routing und die Sensorsuche bere- itzustellen. Wir unterst¨utzendiese These durch Entwurf, Implementierung und Evaluation zweier Routingalgorithmen f¨urgroßfl¨achige drahtlose Sensornetze (WSN) sowie zweier Sen- sorsuchalgorithmen f¨urdas IoT. Die vorgeschlagenen Routingalgorithmen sind Recursive Multi-region Geocasting (RMG) und Stochastic Forwarding-based Routing (SFR). Der RMG-Algorithmus ist auf großfl¨achige WSN zugeschnitten, in denen Nachrichten von einer Quelle zu mehreren entfernten ge- ografischen Regionen bzw. den darin befindlichen smarten Dingen weitergeleitet werden sollen. RMG vermeidet es dabei, auf jedem Zwischenknoten aufwendige Routingberechnun- gen treffen zu m¨ussen.Stattdessen werden Routingentscheidungen und Paketduplizierungen nur an einigen ausgesuchten Knoten entlang des Routingpfades eines Pakets durchgef¨uhrt. Dies spart Rechenaufwand und Energie sowie Bandbreite. Der SFR Algorithmus zielt da- rauf ab den Energieverbrauch gleichm¨aßig¨uber die Netzwerkknoten zu verteilen um so die Lebenszeit des Netzwerkes zu optimieren. Daf¨ur wird der Routingpfad eines Pakets als eine Zufallsbewegung modelliert, so dass verschiedene Pakete verschiede Pfade zwischen Quelle und Senke verwenden. Die Zufallsbewegung ist so angelegt, dass das Verh¨altnis zwis- chen der durchschnittlichen L¨angedes Routingpfades von mehreren Paketen und der L¨ange iv des k¨urzestenPfades (Pfadl¨angenoverhead) klein ist. Evaluationen zeigen die Effizienz un- serer Routingalgorithmen. Insbeesondere minimiert RMG die Gesamtzahl der ben¨otigten Nachrichten¨ubertragungen f¨urdie erfolgreiche Ubermittlung¨ eines Paketes und ben¨otigtnur geringen Rechenoverhead. SFR verteilt die Routinglast gleichm¨aßig¨uber die Netzwerkknoten w¨ahrendes den Pfadl¨angenoverhead klein h¨alt.Weiterhin sind beide Algorithmen skalierbar, da Routingentscheidungen nur anhand von lokalen Informationen getroffen werden. Die vorgeschlagenen Algorithmen f¨urdie Sensorsuche sind Sensor Similarity Search (SSS) und Content-based Sensor Search (CSS). Der erste Algorithmus findet Sensoren deren Aus- gabezeitreihe ¨ahnlich zu der Ausgabezeitreihe eines vorgegebenen Sensor sind. Der zweite Algorithmus findet Sensoren, deren aktueller Ausgabewert in ein gegebenes Intervall f¨allt. Diese Algorithmen erlauben es einem Nutzer die reale Welt in Echtzeit nach Objekten und Pl¨atzenmit einem gegebenen Zustand zu durchsuchen. Bei beiden Algorithmen werden die Ausgaben der Sensoren durch Fuzzy-Sets kodiert. Diese Fuzzy-Sets werden in einer verteilten Datenbank im Internet indiziert und verwendet um Suchanfragen effizient zu beantworten. Fuzzy-Sets k¨onneneffizient berechnet werden, haben einen geringen Speicherbedarf, bilden die Eigenschaften von Sensordaten gut ab und sind damit gut f¨urdie Sensorsuche geeignet. Die