cloud computing, rest and mashups to simplify rfid application development and deployment
DESCRIPTION
Cloud Computing, REST and Mashups to Simplify RFID Application Development and DeploymentTRANSCRIPT
Cloud Computing, REST and Mashups to
Simplify RFID Applications
Dominique GuinardChristian Floerkemeier
Sanjay SarmaMIT Auto-ID Labs & LMP / ETH Zurich
6/13/2011 Dominique Guinard, MIT 1
EPC Network in a Nutshell
6/13/2011 Dominique Guinard, MIT 2
Motivation
• RFID, EPC Network-based applications have a lot of potential:– Combined with other IoT devices (sensors, mobile
phones, etc.)– Combined with service on the Web (visualization,
storage, etc.)– SMEs (Small and medium enterprises) yet to convince!
• Yet, lack of adoption of EPC Network software standards:– Complex (install, maintenance, integration) software
stack
6/13/2011 Dominique Guinard, MIT 3
1) Deploying and Maintaining EPC Systems
• Pain-Point
– Complex and Expensive Backend Deployment and Maintenance
• Web Remedy:
– Virtualization & Cloud Computing
6/13/2011 Dominique Guinard, MIT 4
[www.flickr.com/photos/sunep]
A Typical Fosstrak Deployment…
1
2 3
45
6
8 79
10
11) Java App Contrainer(e.g., Tomcat)
12) Java Enterprise SDK ~12 software components for a typical RFID deployment!!
6/13/2011 Dominique Guinard, MIT 5
Deploying and Maintaining EPC Systems
Remedy: Virtualization & Cloud Computing
• Run your EPC Network server in 5 minutes!
• Cloud appliance:– Full EPC Network server
– Admin Web interface
– Fully configured Tomcat Instance
• 2 VMs:– Amazon EC2
(public cloud)
– VMWare (private cloud)
6/13/2011 Dominique Guinard, MIT 6
Deploying and Maintaining EPC Systems
2) Developing EPC Applications
• Pain-Points
– Complicated Applications Developments:• Mobile Apps
• Web Apps
• Web Remedies
– RESTful APIs
– Real-time Web
6/13/2011 Dominique Guinard, MIT 7
[www.flickr.com/photos/jgarber/]
Remedy: EPCIS Webadapter
6/13/2011 Dominique Guinard, MIT 8
http://.../location/migros:basel/reader/warehouse:incoming/time/2009-12-21T13:22:04.000Z/event/EPC
“Giving RFID a REST: Building a Web-Enabled EPCIS.” Proc. of IoT 2010
Developing EPC Applications
Benefits and Shortcomings
• Easier/Possible to build:
– Mobile apps
– Web apps
• Shortcomings:
– How about real-time?
– Beyond EPCIS?
• « Reader » push?
6/13/2011 Dominique Guinard, MIT 9
Developing EPC Applications
Remedy 4: HTML5 Websockets
• Full-duplex in the browser
• Part of the soon standard HTML 5 drafts.
• Subscription through Javascript
• Increasing number of browsers support
[Generated with websequencediagrams.com]6/13/2011 Dominique Guinard, MIT 10
Developing EPC Applications
tPusher
• Web Push Service
• Supports several transports:– Websockets
– Long-polling / Comet
– Streaming
• Client (mobile/Web) application in 10 lines!
• Based on Atmosphere/Jersey and its JQuery Plugin
6/13/2011 Dominique Guinard, MIT 11
Developing EPC Applications
Sample App: Mobile Reader Monitor
• Use-case:– Scan QR code
– Monitor an RFID reader (via LLRP/ALE) live from any mobile browser
• Technology:– Fosstrak EPC Cloud
– tPusher
– ~20 lines of Javascriptcompatible with most mobile browsers
6/13/2011 Dominique Guinard, MIT 12
Developing EPC Applications
3) Enabling Business Use-Cases
• Pain-Points:
– Tedious Business Case Modeling
– Tedious Cross-IoTSystems Integration
• Web Remedy:
– RFID Mashup editor and engine
6/13/2011 Dominique Guinard, MIT 13
[www.flickr.com/photos/sunep]
[www.flickr.com/photos/dantheurer]
Remedy 5: Mashup Editor for RFID
• Modularize simple components of typical RFID applications
• Offer a MashupFramework + Engine:– Users can build their own
use cases
• Protoype based on:– Browser-based (Javascript)
– Clickscript.ch added:• Web push support
• Serveral RFID/WoTmodules
IP
Reader Name
EPC
IP
Business step
EPCEvents(json)
True/False
6/13/2011 Dominique Guinard, MIT 14
Enabling Business Use-Cases
Clickscript-based RFID Mashup Editor
[Clickscript.ch]
6/13/2011 Dominique Guinard, MIT 15
Enabling Business Use-Cases
All together: Fosstrak EPC Cloud
6/13/2011 Dominique Guinard, MIT 16
Enabling BusinessUse-Cases
Deploying and Maintaining EPC
Systems
Developing EPC Applications
Future Work
• Qualitative/quantiative evaluation of the EPC Cloud project:– Latency? Quality of Service?– Real-world deployment/experience?
• EPC Cloud as SAAS (Software as a Service) plateform :– Several SME’s on one (scalable) instance of the EPC Cloud
• RFID use-cases as mashup modules:– Study most important RFID uses-cases– Extract (mashup) modules– Provide a scalable execution environment (engine)
• Open-sourcing the EPC Cloud?
6/13/2011 Dominique Guinard, MIT 17
Thanks for your attention…
• Special thanks to:
– Lukas Naef (Clickscript)
– Mathias Mueller (Webadapter)
• Contact:
– www.guinard.org
• Open Source Software & Details:– www.webofthings.com/rfid
6/13/2011 Dominique Guinard, MIT 18
BACKUPYou want more? Well here we go!
6/13/2011 Dominique Guinard, MIT 19
APIs to Foster Public Innovation
• Study with ~70 developers:– REST seen as more adapted
to smart things
– REST seen as easier to learn• => Fosters public innovation
• Security as the biggest drawback of REST:– REST offers security over the
communication channel (HTTPS)
– WS-* offers endpoint to endpoint security (WS-Security)
Credit Suisse, May 30, 2011 Dominique Guinard ETH / MIT20 / 50
Capture Webadapter
• Modular Capture-App
– Listening for ALE events
– Multiplexer:• 1 event -> n Connectors
– Control through RESTfulAPI.
6/13/2011 Dominique Guinard, MIT 21
Project Goals
1. Reduce the deployment complexity of standard RFID/IoT software stacks.
2. Allow easier (cheaper), more lightweight (mobile/WSNs) RFID application development.
3. Enable RFID mashability:
– Composition of RFID/WSNs/appliances and existing services on the Web
– Allow anyone to implement simple use-cases
…. By applying Web (of Things) blueprints!
6/13/2011 Dominique Guinard, MIT 22
Sample App: Mobile EAS
• Mashup:– Get EPCs from readers– Where products (EPC) already
sold?– If not take a picture with
Webcam– Push (websocket) picture to
all clients on …/thefts
• Mobile:– Subscribe to /thefts– Display snapshot and product
info– Implemented with the Sencha
Touch Javascript Library.
6/13/2011 Dominique Guinard, MIT 23