SlideShare uma empresa Scribd logo
1 de 24
A Resource Oriented Architecture
for the Web of Things
Dominique Guinard (ETH / SAP Research / MIT Auto-ID Labs)
Vlad Trifa (ETH Zurich / SAP Research)
Erik Wilde (UC Berkeley)
INTRODUCTION AND MOTIVATION
What’s the Web of Things? What is it good for?
Dec. 1, 2010 2Dominique Guinard ETH / SAP / MIT
[http://www.flickr.com/photos/moragcasey/]
Dec. 1, 2010 3Dominique Guinard ETH / SAP / MIT
The Embedded Systems Era
 Ubiquitous:
 Home appliances
 Industries
 Smart Cities
 Connected:
 Zigbee, Bluetooth, Wifi
Finding an Application Integration Platform
 Question:
 How do we enable tech savvys and
companies to create applications on
top of this eco-system?
 Hundreds of different platforms
 Web?
 Scalable (7000 Facebook p/sec.)
 Ubiquitous (from mobile to desktop)
 Well-understood (1.73 Bio. users)
 Thesis:
 Re-use and develop Web-standards to
build a Things Universal API.
Dec. 1, 2010 4Dominique Guinard ETH / SAP / MIT
WEB OF THINGS ARCHITECTURE
Building a Web of Things, piece by piece…
Dec. 1, 2010 5Dominique Guinard ETH / SAP / MIT
[http://www.flickr.com/photos/julianbleecker]
REST: The Core of the Web
 REST: architecture with 5 constraints
1. Identify resources and links:
 A resource: something, that can and that’s worth, getting a URI and
links
2. Design respresentations
3. Use the uniform interface
4. Bring things to the Internet&Web
Dec. 1, 2010 6Dominique Guinard ETH / SAP / MIT
[2] Architectural
styles…
[1] RESTful Web
Services.
Case Study with Sun Spots
1) Resources and Links
Thanks to their atomicity services on embedded devices are
quite adapted to Resource-Oriented Architectures.
 Resources:
 Spots: http://webofthings.com/spots
 Spot 2: http://webofthings.com/spots/2
 Light Sensor: http://webofthings.com/spots/2/sensors/light
 Led Actuator:
http://webofthings.com/spots/2/actuators/led
Resource Identification Hypermedia
Dec. 1, 2010 7Dominique Guinard ETH / SAP / MIT
2) Representation Design
HTML as default, ideal for browsing:
 http://webofthings.com/spots
JSON & JSONp, ideal for mashups
XML, ideal for integration with business systems
Self-Describing Messages Hypermedia
Dec. 1, 2010 8Dominique Guinard ETH / SAP / MIT
3) Interface Design
 Leverage content negotiation:
 Accept: application/json
 Use the HTTP Verbs extensively:
 GET, PUT, POST, DELETE
 GET http://webofthings.com/spots/2/sensors/temperature
 PUT http://webofthings.com/spots/2/actuators/led/1
 Map status codes:
 200 OK, 201 Created, 400 Bad Request
Dec. 1, 2010 9Dominique Guinard ETH / SAP / MIT
Uniform Interface Self-Describing Messages
4) Bringing Things to the Internet&Web:
Smart Gateways
 6lowpan coming quickly:
 Cisco, IPSO, OpenPicus
 HTTP Reverse Proxy
 Hiding IoT proprietary protocols
(Zigbee, Bluetooth, etc.):
 Dongle based
 OSGi modularity
 Installed on residential gateways:
 Wireless routers (OpenWrt)
 NAT
 RESTful Design Process can be
(partially) automated
Dec. 1, 2010 10Dominique Guinard ETH / SAP / MIT
[3] Facilitating Integration of
Services for WoT
APPLICATIONS
What can we build on top of the Web of Things?
Dec. 1, 2010 11Dominique Guinard ETH / SAP / MIT
[http://www.flickr.com/photos/docman]
Typical WoT Architecture: « Energie Visible »
 Project for a private foundation
for sustainability (cudrefin02.ch)
 Goal: an easily deployable
system for better understanding
consumption:
 Cross-platform
 Web access
 Uses the Plogg sensor nodes
 Smart Gateway provides
RESTful API
Dec. 1, 2010 12Dominique Guinard ETH / SAP / MIT
« Energie Visible »: Mashup and UIs
 Web UI / Mashup using Javascript (GWT):
 www.webofthings.com/energievisible
 E-Meter iPhone App
Dec. 1, 2010 13Dominique Guinard ETH / SAP / MIT
[http://www.vs.inf.ethz.ch/res/show.html?what=emeter_demo]
[4] Increasing Energy
Awareness Through
Web-enabled Power
Outlets.
Physical Mashup Editors
• Clickscript:
– Javascript (JQuery / DOJO) based
visual language.
• Added wrappers for WoT
devices:
– SunSPOT, Ploggs, RFID reader
Dec. 1, 2010 14Dominique Guinard ETH / SAP / MIT
[http://www.clickscript.ch]
[5] Mashing up Your
Web-Enabled Home
EVALUATION
Ok, it’s easier to build apps upon, but is the WoT really feasible?
Dec. 1, 2010 15Dominique Guinard ETH / SAP / MIT
[ http://www.flickr.com/photos/myfwc]
Quantitative Evaluation
 10’000 requests on the Sun
SPOTs
 1) Embedded Webserver:
 205 ms (97 – 8500)
 2) Smart Gateway:
 Sync-based (caching)
 4 ms (2 – 49)
 Age max: 300 ms
 Good enough for most sub-
second use cases.
Dec. 1, 2010 16Dominique Guinard ETH / SAP / MIT
BEYOND REST
What is the Web of Things good for?
Dec. 1, 2010 17Dominique Guinard ETH / SAP / MIT
[http://www.flickr.com/photos/brapke/]
Beyond Client-Server: Real-Time Web
 Client-server paradigm not really
natural for sensing application.
 Need for sensor push.
 First step:
 Atom (cleaner RSS) / AtomPub
 Real push
 Pubsubhubbub
 HTML 5 Web
Sockets
 Server-sent
events
 RESTful XMPP
Dec. 1, 2010 18Dominique Guinard ETH / SAP / MIT
Beyond HTML: Discovering Services
 Service Discovery:
 Microformats
 HTML5 Microdata
 RDFa
 Google Custom Engine
 Yahoo Search Monkey
 Dyser
Dec. 1, 2010 19Dominique Guinard ETH / SAP / MIT
Thanks a lot for your attention
 Contact us if you want to use our
APIs in your projects:
 Dominique Guinard
 www.guinard.org
 www.webofthings.com
 Special thanks to: Simon Mayer,
Lukas Naef and Thomas Pham.
Dec. 1, 2010 20Dominique Guinard ETH / SAP / MIT
References
1. L. Richardson and S. Ruby. RESTful Web Services.
O'Reilly Media, Inc., 2007
2. R. Fielding: “Architectural styles and the design of
network-based software architectures”, 2000
3. S. Mayer, D. Guinard, V. Trifa: “Facilitating Integration and
Interaction of Real-World Services for WoT” Urban IoT
2010
4. M. Weiss, D. Guinard: “Increasing Energy Awareness
Through Web-enabled Power Outlets” MUM 2010
5. D. Guinard: “Mashing up Your Web-Enabled Home”,
Touch the Web 2010
Dec. 1, 2010 21Dominique Guinard ETH / SAP / MIT
Backup
Dec. 1, 2010 22Dominique Guinard ETH / SAP / MIT
Qualitative Evaluation
 Plogg RESTful API & Sun SPOT API used by 6
independent research labs.
 Early feedback:
 Easy to understand and use
 Straightforward testing & Web-integration
 Currently evaluating with 80 students.
Dec. 1, 2010 23Dominique Guinard ETH / SAP / MIT
Age of Cache
Dec. 1, 2010 24Dominique Guinard ETH / SAP / MIT

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Imagining the Web of Things
Imagining the Web of ThingsImagining the Web of Things
Imagining the Web of Things
 
Web-based Smart Things Ecosystems
Web-based Smart Things EcosystemsWeb-based Smart Things Ecosystems
Web-based Smart Things Ecosystems
 
Towards the Web of Things: Web Mashups for the Real-World @ MEM 2009
Towards the Web of Things: Web Mashups for the Real-World @ MEM 2009Towards the Web of Things: Web Mashups for the Real-World @ MEM 2009
Towards the Web of Things: Web Mashups for the Real-World @ MEM 2009
 
5 Years of Web of Things Workshops
5 Years of Web of Things Workshops5 Years of Web of Things Workshops
5 Years of Web of Things Workshops
 
Tourism and the Web of Things
Tourism and the Web of ThingsTourism and the Web of Things
Tourism and the Web of Things
 
When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)When Things will Speak "Web" (Lecture)
When Things will Speak "Web" (Lecture)
 
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
Hypermedia-driven Socio-technical Networks for Goal-driven Discovery in the W...
 
WoT Tutorial @ Cisco
WoT Tutorial @ CiscoWoT Tutorial @ Cisco
WoT Tutorial @ Cisco
 
Web of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the WebWeb of Things - Connecting People and Objects on the Web
Web of Things - Connecting People and Objects on the Web
 
Vlad Trifa - Final PhD Thesis Defense at ETH Zurich
Vlad Trifa - Final PhD Thesis Defense at ETH ZurichVlad Trifa - Final PhD Thesis Defense at ETH Zurich
Vlad Trifa - Final PhD Thesis Defense at ETH Zurich
 
WoT @ Oracle-Labs
WoT @ Oracle-LabsWoT @ Oracle-Labs
WoT @ Oracle-Labs
 
WoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of ThingsWoT 2016 - Seventh International Workshop on the Web of Things
WoT 2016 - Seventh International Workshop on the Web of Things
 
RESTifyng Physical Products
RESTifyng Physical ProductsRESTifyng Physical Products
RESTifyng Physical Products
 
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
EVRYTHNG: Concepts, technologies and applications for connecting physical obj...
 
Social Semantic (Sensor) Web
Social Semantic (Sensor) WebSocial Semantic (Sensor) Web
Social Semantic (Sensor) Web
 
Geni @ us ignite summit june 2013
Geni @ us ignite summit   june 2013Geni @ us ignite summit   june 2013
Geni @ us ignite summit june 2013
 
Audiences of the future workshop at xR fest 2019
Audiences of the future workshop at xR fest 2019Audiences of the future workshop at xR fest 2019
Audiences of the future workshop at xR fest 2019
 
Web of Things - Towards Open and Sharable Networks of Embedded Devices
Web of Things - Towards Open and Sharable Networks of Embedded DevicesWeb of Things - Towards Open and Sharable Networks of Embedded Devices
Web of Things - Towards Open and Sharable Networks of Embedded Devices
 
Enhancing the Web Experience
Enhancing the Web ExperienceEnhancing the Web Experience
Enhancing the Web Experience
 
Web of things introduction
Web of things introductionWeb of things introduction
Web of things introduction
 

Semelhante a A ROA for the WOT

Comparing SOAs for the Internet of Things
Comparing SOAs for the Internet of ThingsComparing SOAs for the Internet of Things
Comparing SOAs for the Internet of Things
Dominique Guinard
 
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
Paolo Nesi
 
iMinds The Conference: Danny Hughes
iMinds The Conference: Danny HughesiMinds The Conference: Danny Hughes
iMinds The Conference: Danny Hughes
imec
 
A Survey on IoT Architecture
A Survey on IoT ArchitectureA Survey on IoT Architecture
A Survey on IoT Architecture
IJASRD Journal
 

Semelhante a A ROA for the WOT (20)

Comparing SOAs for the Internet of Things
Comparing SOAs for the Internet of ThingsComparing SOAs for the Internet of Things
Comparing SOAs for the Internet of Things
 
Giving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCISGiving RFID a REST: Web-enabled EPCIS
Giving RFID a REST: Web-enabled EPCIS
 
Internet of Things and Big Data
Internet of Things and Big DataInternet of Things and Big Data
Internet of Things and Big Data
 
Internet of Things (IoT) and Big Data
Internet of Things (IoT) and Big DataInternet of Things (IoT) and Big Data
Internet of Things (IoT) and Big Data
 
Behind the scenes Web & App
Behind the scenes Web & AppBehind the scenes Web & App
Behind the scenes Web & App
 
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...Complexity of IOT/IOE Architectures for  Smart Service Infrastructures Panel:...
Complexity of IOT/IOE Architectures for Smart Service Infrastructures Panel:...
 
RESTifying WS-* Services: Case Study in RFID
RESTifying WS-* Services: Case Study in RFIDRESTifying WS-* Services: Case Study in RFID
RESTifying WS-* Services: Case Study in RFID
 
IoT Architecture - Are Traditional Architectures Good Enough or do we Need Ne...
IoT Architecture - Are Traditional Architectures Good Enough or do we Need Ne...IoT Architecture - Are Traditional Architectures Good Enough or do we Need Ne...
IoT Architecture - Are Traditional Architectures Good Enough or do we Need Ne...
 
Six Sites Short
Six Sites ShortSix Sites Short
Six Sites Short
 
Information Technology for Facilities Management
Information Technology for Facilities ManagementInformation Technology for Facilities Management
Information Technology for Facilities Management
 
Appcelerator Overview
Appcelerator OverviewAppcelerator Overview
Appcelerator Overview
 
web-of-twins-20190604rzr
web-of-twins-20190604rzrweb-of-twins-20190604rzr
web-of-twins-20190604rzr
 
iMinds The Conference: Danny Hughes
iMinds The Conference: Danny HughesiMinds The Conference: Danny Hughes
iMinds The Conference: Danny Hughes
 
Visualisation of semantic architectural information within a game engine envi...
Visualisation of semantic architectural information within a game engine envi...Visualisation of semantic architectural information within a game engine envi...
Visualisation of semantic architectural information within a game engine envi...
 
Open Government Open Innovation and the Cloud
Open Government Open Innovation and the CloudOpen Government Open Innovation and the Cloud
Open Government Open Innovation and the Cloud
 
Is there an API in that (IoT)?
Is there an API in that (IoT)?Is there an API in that (IoT)?
Is there an API in that (IoT)?
 
fogcomputing
fogcomputingfogcomputing
fogcomputing
 
A Survey on IoT Architecture
A Survey on IoT ArchitectureA Survey on IoT Architecture
A Survey on IoT Architecture
 
Fog Computing - DEV.BG 2018
Fog Computing - DEV.BG 2018Fog Computing - DEV.BG 2018
Fog Computing - DEV.BG 2018
 
Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems Autonomous Agents for Flexible Hypermedia Systems
Autonomous Agents for Flexible Hypermedia Systems
 

Mais de Dominique Guinard

Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of Things
Dominique Guinard
 
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of ThingsWeb Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
Dominique Guinard
 
Using Spatial Conditions for Mobile Applications
Using Spatial Conditions for Mobile ApplicationsUsing Spatial Conditions for Mobile Applications
Using Spatial Conditions for Mobile Applications
Dominique Guinard
 

Mais de Dominique Guinard (16)

From the internet of things to the web of things course
From the internet of things to the web of things courseFrom the internet of things to the web of things course
From the internet of things to the web of things course
 
1 billion thngs at a time
1 billion thngs at a time1 billion thngs at a time
1 billion thngs at a time
 
The Art of API Crafting for the IoT
The Art of API Crafting for the IoTThe Art of API Crafting for the IoT
The Art of API Crafting for the IoT
 
Dumb Products can be Smart Too!
Dumb Products can be Smart Too!Dumb Products can be Smart Too!
Dumb Products can be Smart Too!
 
3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB3 Cups of Java Drivers with a Slice of MongoDB
3 Cups of Java Drivers with a Slice of MongoDB
 
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of ThingsIf Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
If Spock had an Android phone: QRs, 1D, NFC, BLE, Arduinos & the Web of Things
 
Business Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products SmartBusiness Aspects of the IoT: Making Products Smart
Business Aspects of the IoT: Making Products Smart
 
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, ArduinoAndroid and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
Android and the Web of Things: NFC, QR, BLE, Bluetooth, EPC, Arduino
 
Evrythng @ Web of Things
Evrythng @ Web of ThingsEvrythng @ Web of Things
Evrythng @ Web of Things
 
Activity Digital Identities in the Web of Things
Activity Digital Identities in the Web of ThingsActivity Digital Identities in the Web of Things
Activity Digital Identities in the Web of Things
 
A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded DevicesA Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
A Universal Application Platform for Sensors, RFID, NFC and Embedded Devices
 
HTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile WebHTML5, Websockets & the Mobile Web
HTML5, Websockets & the Mobile Web
 
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
Cloud Computing, REST and Mashups to Simplify RFID Application Development an...
 
Epc Mashup Dashboard Salespitch
Epc Mashup Dashboard SalespitchEpc Mashup Dashboard Salespitch
Epc Mashup Dashboard Salespitch
 
Web Messaging for Open for Web of Things
Web Messaging for Open for Web of ThingsWeb Messaging for Open for Web of Things
Web Messaging for Open for Web of Things
 
Using Spatial Conditions for Mobile Applications
Using Spatial Conditions for Mobile ApplicationsUsing Spatial Conditions for Mobile Applications
Using Spatial Conditions for Mobile Applications
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

A ROA for the WOT

  • 1. A Resource Oriented Architecture for the Web of Things Dominique Guinard (ETH / SAP Research / MIT Auto-ID Labs) Vlad Trifa (ETH Zurich / SAP Research) Erik Wilde (UC Berkeley)
  • 2. INTRODUCTION AND MOTIVATION What’s the Web of Things? What is it good for? Dec. 1, 2010 2Dominique Guinard ETH / SAP / MIT [http://www.flickr.com/photos/moragcasey/]
  • 3. Dec. 1, 2010 3Dominique Guinard ETH / SAP / MIT The Embedded Systems Era  Ubiquitous:  Home appliances  Industries  Smart Cities  Connected:  Zigbee, Bluetooth, Wifi
  • 4. Finding an Application Integration Platform  Question:  How do we enable tech savvys and companies to create applications on top of this eco-system?  Hundreds of different platforms  Web?  Scalable (7000 Facebook p/sec.)  Ubiquitous (from mobile to desktop)  Well-understood (1.73 Bio. users)  Thesis:  Re-use and develop Web-standards to build a Things Universal API. Dec. 1, 2010 4Dominique Guinard ETH / SAP / MIT
  • 5. WEB OF THINGS ARCHITECTURE Building a Web of Things, piece by piece… Dec. 1, 2010 5Dominique Guinard ETH / SAP / MIT [http://www.flickr.com/photos/julianbleecker]
  • 6. REST: The Core of the Web  REST: architecture with 5 constraints 1. Identify resources and links:  A resource: something, that can and that’s worth, getting a URI and links 2. Design respresentations 3. Use the uniform interface 4. Bring things to the Internet&Web Dec. 1, 2010 6Dominique Guinard ETH / SAP / MIT [2] Architectural styles… [1] RESTful Web Services.
  • 7. Case Study with Sun Spots 1) Resources and Links Thanks to their atomicity services on embedded devices are quite adapted to Resource-Oriented Architectures.  Resources:  Spots: http://webofthings.com/spots  Spot 2: http://webofthings.com/spots/2  Light Sensor: http://webofthings.com/spots/2/sensors/light  Led Actuator: http://webofthings.com/spots/2/actuators/led Resource Identification Hypermedia Dec. 1, 2010 7Dominique Guinard ETH / SAP / MIT
  • 8. 2) Representation Design HTML as default, ideal for browsing:  http://webofthings.com/spots JSON & JSONp, ideal for mashups XML, ideal for integration with business systems Self-Describing Messages Hypermedia Dec. 1, 2010 8Dominique Guinard ETH / SAP / MIT
  • 9. 3) Interface Design  Leverage content negotiation:  Accept: application/json  Use the HTTP Verbs extensively:  GET, PUT, POST, DELETE  GET http://webofthings.com/spots/2/sensors/temperature  PUT http://webofthings.com/spots/2/actuators/led/1  Map status codes:  200 OK, 201 Created, 400 Bad Request Dec. 1, 2010 9Dominique Guinard ETH / SAP / MIT Uniform Interface Self-Describing Messages
  • 10. 4) Bringing Things to the Internet&Web: Smart Gateways  6lowpan coming quickly:  Cisco, IPSO, OpenPicus  HTTP Reverse Proxy  Hiding IoT proprietary protocols (Zigbee, Bluetooth, etc.):  Dongle based  OSGi modularity  Installed on residential gateways:  Wireless routers (OpenWrt)  NAT  RESTful Design Process can be (partially) automated Dec. 1, 2010 10Dominique Guinard ETH / SAP / MIT [3] Facilitating Integration of Services for WoT
  • 11. APPLICATIONS What can we build on top of the Web of Things? Dec. 1, 2010 11Dominique Guinard ETH / SAP / MIT [http://www.flickr.com/photos/docman]
  • 12. Typical WoT Architecture: « Energie Visible »  Project for a private foundation for sustainability (cudrefin02.ch)  Goal: an easily deployable system for better understanding consumption:  Cross-platform  Web access  Uses the Plogg sensor nodes  Smart Gateway provides RESTful API Dec. 1, 2010 12Dominique Guinard ETH / SAP / MIT
  • 13. « Energie Visible »: Mashup and UIs  Web UI / Mashup using Javascript (GWT):  www.webofthings.com/energievisible  E-Meter iPhone App Dec. 1, 2010 13Dominique Guinard ETH / SAP / MIT [http://www.vs.inf.ethz.ch/res/show.html?what=emeter_demo] [4] Increasing Energy Awareness Through Web-enabled Power Outlets.
  • 14. Physical Mashup Editors • Clickscript: – Javascript (JQuery / DOJO) based visual language. • Added wrappers for WoT devices: – SunSPOT, Ploggs, RFID reader Dec. 1, 2010 14Dominique Guinard ETH / SAP / MIT [http://www.clickscript.ch] [5] Mashing up Your Web-Enabled Home
  • 15. EVALUATION Ok, it’s easier to build apps upon, but is the WoT really feasible? Dec. 1, 2010 15Dominique Guinard ETH / SAP / MIT [ http://www.flickr.com/photos/myfwc]
  • 16. Quantitative Evaluation  10’000 requests on the Sun SPOTs  1) Embedded Webserver:  205 ms (97 – 8500)  2) Smart Gateway:  Sync-based (caching)  4 ms (2 – 49)  Age max: 300 ms  Good enough for most sub- second use cases. Dec. 1, 2010 16Dominique Guinard ETH / SAP / MIT
  • 17. BEYOND REST What is the Web of Things good for? Dec. 1, 2010 17Dominique Guinard ETH / SAP / MIT [http://www.flickr.com/photos/brapke/]
  • 18. Beyond Client-Server: Real-Time Web  Client-server paradigm not really natural for sensing application.  Need for sensor push.  First step:  Atom (cleaner RSS) / AtomPub  Real push  Pubsubhubbub  HTML 5 Web Sockets  Server-sent events  RESTful XMPP Dec. 1, 2010 18Dominique Guinard ETH / SAP / MIT
  • 19. Beyond HTML: Discovering Services  Service Discovery:  Microformats  HTML5 Microdata  RDFa  Google Custom Engine  Yahoo Search Monkey  Dyser Dec. 1, 2010 19Dominique Guinard ETH / SAP / MIT
  • 20. Thanks a lot for your attention  Contact us if you want to use our APIs in your projects:  Dominique Guinard  www.guinard.org  www.webofthings.com  Special thanks to: Simon Mayer, Lukas Naef and Thomas Pham. Dec. 1, 2010 20Dominique Guinard ETH / SAP / MIT
  • 21. References 1. L. Richardson and S. Ruby. RESTful Web Services. O'Reilly Media, Inc., 2007 2. R. Fielding: “Architectural styles and the design of network-based software architectures”, 2000 3. S. Mayer, D. Guinard, V. Trifa: “Facilitating Integration and Interaction of Real-World Services for WoT” Urban IoT 2010 4. M. Weiss, D. Guinard: “Increasing Energy Awareness Through Web-enabled Power Outlets” MUM 2010 5. D. Guinard: “Mashing up Your Web-Enabled Home”, Touch the Web 2010 Dec. 1, 2010 21Dominique Guinard ETH / SAP / MIT
  • 22. Backup Dec. 1, 2010 22Dominique Guinard ETH / SAP / MIT
  • 23. Qualitative Evaluation  Plogg RESTful API & Sun SPOT API used by 6 independent research labs.  Early feedback:  Easy to understand and use  Straightforward testing & Web-integration  Currently evaluating with 80 students. Dec. 1, 2010 23Dominique Guinard ETH / SAP / MIT
  • 24. Age of Cache Dec. 1, 2010 24Dominique Guinard ETH / SAP / MIT

Notas do Editor

  1. Explain what a platform is: set of standards to
  2. Let’s turn a Sun SPOT sensor node into a resource. The first step is to think of what should be a resource in a Sun SPOT. Obviously the spot itself should be, so it’s sensors and actuator.
  3. Then we think about the representation of these resources. We suggest offering at least HTML since it allows for natural browsing and user oriented-discovery of the sub resources. For application to application communication we suggest JSON, a lightweight alternative to XML which is easily parseable into objects (javascript or java). To specify the format we would like to obtain we use either a .format or the standard http accept header (recommended).
  4. Reverse proxy: from the Web to the proxy Impemented the sunspot with both the embedded webserver idea and the smart gateway
  5. In the first case, each request is routed through the proxy to the embedded HTTP server running on the remote Sun SPOT where it is served. In this case, the average round-trip time over 10’000 consecutive request is 205 milliseconds (min 97 ms, max 8.5 seconds). In the second case, we use a synchronization-based ar- chitecture — that is each Sun SPOT periodically sends its sensor readings to the proxy where they are cached locally. Each request is then served directly from this cache without accessing the actual device, in which case the average round- trip time was 4 ms (min 2 ms, max 49 ms). This has
  6. a) Early Qualitative Evaluation: The Plogg RESTful Gateway and the Sun SPOTs have been used by two external development teams, which hints some of the qualitative advan- tages developers can gain from the proposed the architecture. In the first case, the idea was to build a mobile energy monitor- ing application based on the iPhone and communicating with the Ploggs. In the second case, the goal was to demonstrate the use of a browser-based JavaScript Mashup editor with real-world services. According to interviews we conducted with the developers, they enjoyed using the RESTful smart things, in particular the ease of use of a Web “API” versus a custom “API”. For the iPhone application a native API to Bluetooth did not exist at that time. However, like for almost any platform an HTTP (and JSON) library was available. One of the developer mentioned a learning curve for REST but emphasized the fact that it was still rather simple and that once it was learnt the same principles could be used to interact with a large number of services and possibly soon devices. They finally noted the direct integration to Web browsers as one of the most prevalen