A resource oriented architecture for the web of things
Many efforts are centered around creating largescale networks of “smart things” found in the physical world (e.g.,wireless sensor and actuator networks, embedded devices, tagged objects).
Rather than exposing real-world data and functionality about real world things through proprietary and tightly-coupled systems, we propose to make them an integral part of the Web. As a result, smart things become easier to build upon.
In this paper, we begin by describing the Web of Things architecture and the best-practices based on the RESTful principles that have already contributed to the popular success, scalability, and modularity of the traditional Web.
We then discuss several prototypes designed in accordance with these principles to connect environmental sensor nodes and an energy monitoring system to the World Wide Web. We finally show how Web-enabled smart things can be used in lightweight ad-hoc applications called “physical mashups”.
We position the Web of Things as a refinement of the Internet of Things by integrating smart things not only into the Internet (the network), but into the Web (the application layer).
To achieve this goal, we propose to reuse and adapt patterns commonly used for the Web, and introduce an architecture for the Web of Things in which Web servers are embedded on smart things and apply the REST architectural style to the physical world. We make use of the fact that the essence of REST is to focus on creating loosely coupled services on the Web so that they can be easily reused.
REST is actually core to the Web and uses URIs for encapsulating and identifying services on the Web. In its Web implementation it also uses HTTP as a true application protocol. It finally decouples services from their presentation and provides mechanisms for clients to select the best possible formats.
This makes REST an ideal candidate to build an “universal” API for smart things. As the “client-pull” interaction model of HTTP does not fully match the needs of event-driven applications, we further suggest the use of syndication techniques such as the Atom RSS pub/sub protocol and some of the recent real-time Web technologies to enable sensor push interactions.
Since some devices cannot connect to the Internet or fully implement the REST architectural style, we finally propose the use of Smart Gateways which are embedded Web servers that abstract communications and services of non Web enabled devices behind a RESTful API.
By formalizing the various design parameters to consider, we provide a practical framework for users to build their own WoT devices and applications. We illustrate with concrete examples how various applications types can be built on top of the proposed architecture, and propose how the emerging real-time Web techniques can be applied to develop Web-compliant, highly interactive and integrable physical mashups.
To view this external content in full, download the complete paper from the author archives at ETH Zurich.