Web Services for the Internet of Things
Upcoming SlideShare
Loading in...5

Web Services for the Internet of Things



My preliminary presentation on "RESTful Web Services for the Internet of Things". 2011.

My preliminary presentation on "RESTful Web Services for the Internet of Things". 2011.
by Markku Laine, http://www.tinyurl.com/mplaine



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Web Services for the Internet of Things Web Services for the Internet of Things Presentation Transcript

  • Web Services for the Internet ofThingsT-106.5800 Seminar on Software Techniques (3 cr)PresentationMarkku Laine, M.Sc. (Tech.)markku.laine@aalto.fi November 3, 2011
  • Presentation Outline•  Internet of Things•  CoAP•  CoAP protocol stack•  Web Services for the Internet of Things•  Conclusion 2
  • Internet of Things 3
  • What is Internet of Things? (e.g., sensors) (e.g., personal computers and smart phones) (e.g., routers and servers) Source: Sensinode 4
  • Gartner’s Hype Cycle for EmergingTechnologies, 2011 Source: Gartner 5
  • Challenges: How to…•  …connect physical environments/smart objects as part of the Internet?•  …cope with trillions of smart objects?•  …handle the problems with smart objects/small devices as they may have difficulties in dealing with protocols and technologies designed for full-powered computers?•  …integrate devices in constrained networks with Web applications? 6
  • Constrained Application Protocol (CoAP) 7
  • Google’s Hype Cycle for CoAP CoAP v.00 Source: Google Insights for Search 8
  • Implementations•  libcoap (C), open source –  http://libcoap.sourceforge.net/•  OpenCOAP (C), open source –  https://code.google.com/p/opencoap/•  CoAPy (Python), open source, in progress –  http://coapy.sourceforge.net/•  Copper (Firefox addon) –  https://addons.mozilla.org/en-US/firefox/addon/copper-270430/•  Sensinode, The Contiki OS, TinyOS, etc. 9
  • CoAP Protocol Stack 10
  • Comparison of HTTP and CoAP ProtocolStacks XML Payload EXI HTTP Application (L7) CoAP TCP Transport (L4) UDP IP Network (L3) 6LoWPAN Ethernet MAC Data Link (L2) IEEE 802.15.4 MAC Ethernet PHY Physical (L1) IEEE 802.15.4 PHY 11
  • Physical & Data Link Layers (L1 & L2):Ethernet à IEEE 802.15.4 (PHY & MAC)•  Goal: Get rid of wires•  Methods: Wireless•  Solution: IEEE 802.15.4 –  IEEE wireless standard (IEEE 802.15.4d), April 2009, http://standards.ieee.org/getieee802/download/ 802.15.4d-2009.pdf –  Specifies the physical layer and media access control for low- rate wireless personal networks (LR-WPANs) –  Low-power, low-bandwidth communication technology –  Basis for extensions, such as ZigBee 12
  • Network Layer (L3):IP à 6LoWPAN•  Goal: Integrate Wireless Sensor Networks (WSNs) and smart objects with the Internet•  Method: Optional protocol•  Solution: IPv6 over Low-Power Wireless Personal Area Networks (6LoWPAN) –  IETF Informational (RFC 4919), August 2007, http://tools.ietf.org/html/rfc4919 –  IETF Proposed Standard (RFC 4944), September 2007, http://tools.ietf.org/html/rfc4944 –  Brings IP to the smallest of devices, such as sensors –  Encapsulation and header compression mechanisms 13
  • Transport Layer (L4):TCP à UDP•  Goal: Reduce the overhead for short-lived transactions•  Method: Optional protocol•  Solution: User Datagram Protocol (UDP) –  IETF Standard (RFC 768), August 1980, http://tools.ietf.org/html/rfc768 –  Fast but unreliable transport protocol –  Optimal for exchanging very small data units –  Supports multicasting –  Used with the IP network layer protocol 14
  • Application Layer (L7):HTTP à CoAP•  Goal: Provide resource constrained devices with RESTful web service functionalities•  Methods: Optional protocol•  Solution: Constrained Application Protocol (CoAP) –  IETF Internet Draft, November 2011, https://tools.ietf.org/html/draft-ietf-core-coap-08 –  REST-based architecture –  Optimized for resource constrained networks typical of IoT and M2M applications –  Takes into account the low processing power and energy consumption constraints of small embedded devices, such as sensors 15
  • Payload:XML à EXI•  Goal: Reduce the overhead of XML•  Methods: Compression and encoding•  Solution: Efficient XML Interchange (EXI) –  W3C Recommendation (EXI Format 1.0), March 2011, http://www.w3.org/TR/exi/ –  Very compact representation of the XML Information Set –  Optimizes the performance and utilization of computational resources –  Extremely efficient schema-informed mode 16
  • Web Services for the Internet of Things 17
  • About Web Services•  Today’s Web Services are not suitable to be used with the Internet of Things –  TCP, HTTP, XML (SOAP)•  What is needed is –  RESTful architecture for good Web integration –  Native push model with subscribe and notify –  UDP-based transport with multicast support –  Overhead suitable for constrained networks –  Complexity suitable for constrained nodes –  Build-in Web discovery and security•  CoAP comes to the rescue! 18
  • CoAP and Web Services Source: Sensinode 19
  • Conclusion 20
  • Conclusion•  Traditional Web protocols and technologies are not suitable for the Internet of Things•  The HTTP protocol stack needs to be optimized from the bottom to the top•  CoAP is the key technology in accessing constrained environments/nodes from Web applications 21
  • References•  Colitti, W., Steenhaut, K., and De Caro, N. Integrating Wireless Sensor Networks with the Web. 2011.•  Shelby, Z. Embedded Web Services. In Journal of IEEE Wireless Communications, 17(6):52-57, 2010.•  Castellani, A. et al. Web Services for the Internet of Things through CoAP and EXI. In Communications Workshops (ICC). IEEE, 2011, 1-6.•  Castellani, A. et al. Best Practices for HTTP-CoAP Mapping Implementation. IETF Internet Draft, 2011. 22
  • Thank You! Questions? Comments? markku.laine@aalto.fi 23