Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
CoAP, Copper, and Embedded Web Resources
1. CoAP, Copper, and Embedded Web Resources
Matthias Kovatsch
kovatsch@inf.ethz.ch
Tuesday, 03 Apr 2012 Internet of Things Zurich Meetup, Zurich, Switzerland
2. What About Really Cheap Platforms?
Smart
Dust
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 2
3. Outcome
Wireless Sensor Networks
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 3
4. IP Connectivity through 6LoWPAN
IP router
Web server
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 4
5. Constrained Application Protocol (CoAP)
A new Web-like protocol based on REST
GET, PUT, POST, DELETE
URIs
Internet Media Types
Interoperability
Extensible option headers
Common
programming model
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 5
6. The CoAP Universe
IETF working group «Constrained RESTful Environments»
RESTful Web services for mote-class devices
Transparent mapping to HTTP
Observing Resources publish/subscribe
Group communication IP multicast
CoRE Link Format Web linking RFC, discovery
Caching proxies RESTful caching
Resource directories sleepy nodes
Blockwise transfers bulky data
…
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 6
7. CoAP is Optimized, Binary…
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 7
8. Copper (Cu) CoAP user-agent
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 8
10. Profiles for Embedded Web Resources
IPSO Profile Smart Energy Profile 2.0
Pure RESTful design SOAP-like service design
Treats CoAP and HTTP equally over REST
Currently still cryptic identifiers Currently only defined for
due to size optimizations HTTP, CoAP in the draft
(e.g., /lt for light)
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 10
11. CoAP Open Source Implementations*
Erbium for Contiki Californium in Java Copper for Firefox
REST Engine CoAP framework CoAP user-agent
For embedded devices For the back-end For user interaction
Enables thin server Clients, servers, Integration and testing
architecture and proxies tool
* Available on GitHub:athttps://github.com/mkovatsc Paris, France, Mar 2012: http://www.etsi.org/plugtests/coap/coap.htm
Successfully tested the ETSI IoT CoAP Plugtests,
Matthias Kovatsch – ETH Zürich CoAP, Copper, and Embedded Web Resources 11