Research Collection

Research Collection

Research Collection Master Thesis Deployment support for an infrastructure for web-enabled devices Author(s): Mayer, Simon Publication Date: 2010 Permanent Link: https://doi.org/10.3929/ethz-a-006088021 Rights / License: In Copyright - Non-Commercial Use Permitted This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use. ETH Library Deployment Support for an Infrastructure for Web-enabled Devices Master's Thesis Simon Mayer [email protected] Supervisors : Dominique Guinard, Vlad Trifa Prof. Dr. Friedemann Mattern Institute for Pervasive Computing Department of Computer Science ETH Zurich April 2010 Abstract After the age of the mainframe (\many humans per computer") and the period of the PC (\one computer per human"), we are currently experiencing the dawn of the era of ubiquitous computing (\many computers per human"), a time that is expected to lead to the integration of microprocessing and networking capabilities into all kinds of everyday objects. The idea at the very core of a Web of Things is to integrate such smart devices as first-class citizens into the World Wide Web (WWW) and thus allow users to access physical objects via URLs, to browse them and to compose the data they provide and their functionalities into physical mashups. This thesis explores approaches to incorporating new devices into the Web of Things as well as to combining their services through the use of a distributed management infrastructure. Within the context of extending the Web of Things, we propose a novel architecture for the web-enabling of smart devices and discuss results from a comparison of that alternative with an existing design. Furthermore, we present a meta-program that enables developers to rapidly integrate devices into the Web of Things by automating the implementation of the web server component responsible for exposing these things on the Web. Regarding the facilitated creation of physical mashups that incorporate the data and/or func- tionality of multiple resources on the Web of Things, we introduce the notion of Smart Hubs and present InfraWOT, a concrete implementation of this concept. As a modular, distributed man- agement infrastructure for the Web of Things that focuses on infrastructure-assisted searching and includes a versatile semantic discovery mechanism, InfraWOT fosters the rapid compo- sition of services provided by devices connected to the Web. Additionally, the nodes of this infrastructure feature a maintenance module that provides structure-level self-stabilization and a messaging component that establishes the link between attached devices and different Web 2.0 applications. To illustrate the benefits of such an infrastructure with respect to the combination of functionalities of different devices, we present multiple prototype applications. Zusammenfassung Wir erleben gegenw¨artigden Anbruch des Zeitalters des ubiquitous computing, einer Entwick- lung, die den Ausklang der Epoche des PCs als Einzelplatzrechner einl¨autetund, im Vergleich mit dem Zeitalter des Grossrechners, gleichzeitig ein grundlegend gegens¨atzliches und vollkom- men neues Paradigma verk¨orpert: An die Stelle der Vielzahl an notwendigen Operatoren um einen einzelnen Computer zu bedienen tritt nun eine Schar an vernetzten smart things, die als allgegenw¨artige,unsichtbare Hintergrundassistenten f¨ur einzelne Menschen agieren. Die Vision eines Web of Things zielt darauf ab, solche Objekte als gleichwertige Mitglieder in das World Wide Web (WWW) zu integrieren, um die von ihnen angebotenen Daten und Funktionen mit- tels seiner Mechanismen (URLs, HTTP, etc.) in physischen Mashups zu verkn¨upfenund es Benutzern zu erm¨oglichen, die physische Welt mit den Mitteln des Web zu begreifen. In dieser Arbeit untersuchen wir Ans¨atzef¨urdie Integration von vernetzten Ger¨atenund deren Funktionalit¨atin das Web of Things und stellen eine verteilte Managementinfrastruktur vor, die es Benutzern erleichtert, diese zu physischen Mashups zu kombinieren. Um das Web of Things zu erweitern, schlagen wir eine neuartige Architektur f¨urdie Anbindung von vernetzten Dingen an das Web vor und untersuchen deren Vor- und Nachteile im Vergleich mit einer beste- henden Alternative. In diesem Zusammenhang stellen wir ausserdem ein Meta-Programm vor, welches die Implementierung der f¨urdie Web-Darstellung der Ger¨ateeigenschaften zust¨andigen Webserver-Komponente automatisiert und es damit Entwicklern erm¨oglicht, neue Dinge sehr schnell mit dem Web of Things zu verbinden. Um die einfache und schnelle Entwicklung von Mashups zu erm¨oglichen, f¨uhrenwir das Konzept des Smart Hub ein und pr¨asentieren InfraWOT als eine konkrete Implementierung einer In- frastruktur solcher Knoten. Es handelt sich hierbei um eine modulare, verteilte Manage- mentinfrastruktur f¨urdas Web of Things, deren Schwerpunkte auf einem infrastrukturun- terst¨utztenSuchapparat und einem vielseitigen Mechanismus zur semantischen Identifizierung und Eingliederung von schlauen Gegenst¨andenliegen. Damit wird die vereinfachte Kombi- nation der von smart things angebotenen Dienste erm¨oglicht. Die einzelnen Knoten dieser Infrastruktur beinhalten einen Mechanismus zur Selbststabilisierung auf Strukturebene und ein Vermittlungsmodul um die Kooperation zwischen dem Web of Things und verschiedenen Anwendungen des Web 2.0 herzustellen. Anhand einiger implementierter Beispiele { vor allem aus dem Bereich der Mensch-Maschine Interaktion { werden die Vorteile dieser Infrastruktur illustriert. Table of contents 1 Introduction1 1.1 Goals .......................................... 2 1.2 Contributions ...................................... 2 1.3 Outline ......................................... 3 2 Components of the Web of Things5 2.1 Related Work ..................................... 6 3 Technological Background9 3.1 Representational State Transfer (REST) ....................... 9 3.1.1 Restlet ..................................... 10 3.2 JavaScript Object Notation (JSON) .......................... 11 3.3 Microformats ...................................... 11 3.4 OSGi .......................................... 12 4 Enabling Devices for the Web of Things 15 4.1 Sun Small Programmable Object Technology (SPOT) ................ 16 4.2 Integrating Smart Devices into the Web of Things .................. 16 4.3 A Synchronization-Based Web of Things Driver Architecture ............. 18 4.3.1 The Sun SPOT OnSPOT Software ...................... 18 4.3.2 The Sun SPOT Host Software ......................... 19 4.4 Evaluation ....................................... 23 4.4.1 Power Requirements .............................. 24 4.4.2 Response Time ................................. 24 4.4.3 Age of Retrieved Data ............................. 25 4.4.4 Concurrency .................................. 25 4.4.5 Protocol Consistency .............................. 26 4.5 Summary ........................................ 26 5 Towards Automatic Enabling of Resources for the Web of Things: AutoWOT 29 5.1 Conceptional Properties of Web-Enabled Resources .................. 30 5.1.1 XML Structure Configuration ......................... 30 5.1.2 Push-Based Interaction ............................ 32 5.1.3 Semantic Markup of Resources ........................ 32 5.2 AutoWOT System Design ............................... 33 5.2.1 Interpreter ................................... 33 5.2.2 Builder ..................................... 34 5.3 System Design of AutoWOT-Generated Web Servers ................. 34 5.3.1 Components of a Plain Java AutoWOT Web Server ............. 35 5.3.2 Components of an OSGi-based AutoWOT Web Server ............ 35 5.3.3 Resource Representations and Web Interaction ................ 37 5.4 Examples of Web-enabled Devices ........................... 39 5.4.1 Sun SPOT Driver ............................... 39 5.4.2 Lego Mindstorms NXT Driver ......................... 39 5.4.3 Phidgets RFID Driver ............................. 40 5.4.4 Augmented Gaming for the Web of Things: Settlers of Catan ........ 40 5.4.5 Enabling virtual resources for the Web of Things ............... 41 5.5 Summary ........................................ 41 6 A Distributed Modular Infrastructure for the Web of Things: InfraWOT 43 6.1 Structuring the Web of Things ............................ 44 6.2 Technical Design Choices ............................... 45 6.3 System Design ..................................... 45 6.3.1 Modules Overview ............................... 46 6.3.2 Discovery Service ............................... 47 6.3.3 Querying Service ................................ 49 6.3.4 Infrastructure Service ............................. 56 6.3.5 Messaging Service ............................... 59 6.3.6 Registry Service ................................ 62 6.3.7 Aggregation Service .............................. 66 6.3.8 Web Interface Service ............................. 67 6.4 Summary ........................................ 69 7 Applications and Prototypes 71 7.1 Miniature Mashups ................................... 71 7.1.1 WOTStocks .................................. 72 7.1.2 LED Control Mashup ............................. 73 7.1.3 Shadow Mashup ................................ 73 7.2 WOTic Music Player .................................. 73 7.2.1 Technical Details ................................ 74 7.2.2 Summary .................................... 75 7.3 WOTpong ....................................... 75 7.4 Summary .......................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    111 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us