iot mashup - webinos architecture 101 - baldwin
DESCRIPTION
TRANSCRIPT
1
webinos clearly connected
A Pioneering Open Web Platform For Multi-Screen Applications
23rd July 2013 at the University of Oxford
www.webinos.org
3
An open source, cross device,
browser based
web platform for running
applications on and across
multiple devices Supported by a strong
consortium of over 30 partnersDevice manufactures
Automotive manufacturesMobile network operators
Small and medium businessesResearch Institutes
Standardization bodies
Standardisation
Automotive
Operators
Mobileterminals
Research
What is webinos
What does it give you
Open Web Application PlatformOpen framework for developing multi device web applications, using open standards
What does it give you
Cross Device Communication ProtocolsWeb friendly open protocols for discovering and sharing services over cloud, local networks and even proprietary networking schemes
What does it give you
A privacy frameworkConsumer data sovereigntyYou Own Your DataA universal mechanism for exerting direct control over your data, devices and services
7
The value of open
webinos supports 3 essential open principles that we believe are essential for long term success
Open Standards
• All webinos standards are created under a royalty free IPR framework ensuring anyone can implement without licence fee and ensuring compatibility with W3C specifications
Open Source
• Webinos code is delivered under Open Source license, delivered under an open community. This ensures widest participation and minimised the fragmentation (we do not anticipated multiple implementations)
Open Market
• Webinos technology is AppStore agnostic. Unlike Chrome or Mozilla, we encourage many appstores, not just one - under an open web friendly ethos.”
8
webinos: key deliveries
9
9
InternetPersonalZone
PZH(Personal Zone Hub)
Security Policy
PersonalZone
PZH(Personal Zone Hub)
Security Policy
Hub: Zone gateway,
24x7 avail.Inter-zone commpeer to peer
Getting the most out of personal devicesMulti-screen/multi-device apps“Getting gadgets talking”
PZP
PZPPZP
PZP
PZPPZP
PZP
PZP
PZP
PZP
PZP
Personal Zone Proxy:
simultaneously client and server
How it works Personal zones - Interconnecting devices, apps and resources
How it works
Webinos Private Cloud
Connections between People
Users devices
Personal Cloud Agent
(PZH)
Widget
PolicyAPIs
Widget
PolicyAPIs
Widget
PolicyAPIs
Connections between devices
Server based agent- issues identities
(PKI) - acts as messaging
hub for devices- synchronisation
agent for data
Data and services can be shared securely with other people using permissioning infrastructure
Private cloud is a secure virtual network connecting all devices over open standards
Webinos browsers (PZP) running on devices act as browsers and local servers, allowing them to communicate with each other locally and remotely
Other PZH
More details in back-up
10
webinos technology overview
webinos makes extensive use of node.JS to ensure OS portability– node.JS is used as porting layer– node.JS is used as server technology– Android platform is based on “anode” open source project
webinos will use existing standards based web app technologies– HTML 5– JavaScript– W3C API’s– JSON-RPC – + others
webinos will connect all of a users devices and the cloud
webinos will be designed to be secure and respect user privacy– Secure authenticated TLS connections – certified
11
Webinos core technology components Specification Purpose
TLS Mutually authenticated TLS for secure bi-lateral comms
PKI Distributed certificate schema for person/device identity
OAauth Distributed authentication
WebIDL Definition of a functional interface
Feature-URI Distributed mechanism for method, permission description
JSON-RPC Web friendly mechanism for remote method invocation
XACML OASIS defined standard for general access control
Widget Spec Interoperable application packaging
Webinos-address Permanent web address for “entity”
Webinos-discovery
Discovery algorithm: local and remote
APIs A suite of rich but extensible APIs
12
STATE OF THE ART(firefoxOS, ChromeOS,
Tizen, WebOS)
ADVANCED UBIAPPS ARCHITECTURE
Web RendererPolicy
APIs
Con
tac
ts
Packager
Apps
File
NFC
Loca
tio
nO
ther
…
Proprietary non interoperable
package formats
Connection Manager
Simple proprietary and
non manageable
policy
Non extensible pre-defined API
set
PKI
Application logic separated from UI for security and
flexibility reasons
Webinos Architecture
14
TLS
Direct P2P (e.g. Bluetooth, WiFi Direct)
TLS
Internet/CloudLocal
PZH - Personal Zone Hub – Resides on Server– Logical Entity: 1 PZH per user– Each PZH server can host multiple
PZH’s
PZP - Personal Zone Proxy – Resides locally on the device
– Present on every webinos device
– TLS – Transport Layer Security Secure/Certified connection
between webinos components
Devices Devices
Peter’s Personal Zone John’s Personal Zone
TLS
Server / PZH (Logical Entity)
Server / PZH (Logical Entity)
webinos Device/PZP Architecture
15
PZH
Native Device OS
webinos API
PZPBrowser/ WidgetWeb Runtime
Messaging Manager
Widget Manager
Discovery Manager
Context Manager
TLS
Session Manager
Native Discovery Mechanisms
Drivers
Routing
User Data Device
TLS Authentication
HTTPS
Certificate Manager Key Storage
RPC Handler/Manager
Messaging queueError recovery
APIs
APIs
APIs
APIs
APIs
RPC
Policy Manager
Sync Manager
John: First PZP(Personal Zone Proxy)
PZH Farm – or Home hosted
16
John: PZH(Personal Zone Hub)
Security Policy
Peter: PZH(Personal Zone Hub)
Security Policy
Security Policy
Routing
OpenID AuthOpenID Auth
Peter: Second PZP(Personal Zone Proxy)
Security Policy
QRCode or NFC
QRCode
Peter PZH John PZH
Internet/Cloud
Local
Peter: First PZP(Personal Zone Proxy)
Security Policy
PZH Server Farm
PZH Server(Logical Entity)
PZH Server(Logical Entity)
PZP (device)PZP (device)PZP (device)
Bill: PZH(Personal Zone Hub)
Security Policy
networking model
17
Traditional networking models webinos (overlay) networking model
Asymmetric SymmetricUnilateral Authentication Mutual Authentication
Padded StreamlinedAnonymous User ID, Device ID, App ID
Multiple Connections Multiplexed
Server
Client
Server (PZH)
Client (PZP)
HTTP
JSON
- RPC
TLS
Valuable assets
Personal and application data– Documents, emails– Address books– Sensor output
Services on devices (maps, video streams, actuators, etc)
Devices Payment systems and premium rate
services– Particularly calls, SMS and NFC
Security
Central administration and recovery
Device authentication – All devices are part of a personal
zone key infrastructure– Each device has a unique private
key– Personal zone hub is a
certification authority– Certificate exchange for
connections between zones– Works offline and online
Cont. on next slide
Security
Identity management– OpenID and web login mechanisms used for identity
Secure communication– Mutually authentication & encrypted communication
Privacy policies to specify data usage controls
Proof-of-concept demosConnected TV
Music SharingPayment
Connected Car
File Share
Sensors
Emergency Service
Home monitoring
21
See details in backup
More webinos & demos
http://www.youtube.com/watch?v=I9sH9pH_eK0&feature=player_embedded&list=PLP0aotaNkbclQGrPAP3NMIQZA-3gzMLlX
webinos demos – Feb 2013
22
23
Outreach
Target– Disseminate results– Raise awareness, grow webinos
community– Seek community feedback
Use of various channels: website, blog, social media (twitter, facebook, linked-in), press releases, workshops, events, etc.
Co-operate with other ICT projects
23
BMW on Wired(18,400 citations on Google)
Sony Blog(1,480 citations on Google)
Outlook
Current Priorities– Stabilize the platform– Get more implementations & apps– Enhance the developer support– Launch the foundation
Meet the community– 19-19 Sept Staines
24
Get engaged Install webinos on one of the supported platforms
– https://github.com/webinos/Webinos-Platform/downloads Build webinos for your platform
– Instructions can be found our developer portal– https://developer.webinos.org/
Test webinos and report bugs– http://jira.webinos.org/
Fork our repository– https://github.com/webinos/Webinos-Platform
Create an application Visit our forums
– https://developer.webinos.org/forum
25
Follow up
website • http://webinos.org
Developer site • http://developer.webinos.org
Downloads• https://developer.webinos.org/webinos-
installers
Email • [email protected]
Press • [email protected]
Twitter • @webinosproject
Music Sharing Payment SensorsInstant Doc SharingHome monitoring
27
Backup
28
webinos demos
29
Vehicle Platform Provides an open web applications
platform for rapid development of – Navigation functions– In car media– In car messaging/communications– Engine monitoring– Driver assist
In car “private cloud” gives seamless secure interaction with phones at tablets
Remote “private cloud” means telematics, engine data and driving behaviour can be shared with 3rd parties (new business models)
30
TV Platform Provides an open web applications
platform for rapid development of – Streaming TV– Media: Videos, Pictures Music– Appstore and Games
Local wifi “private cloud” gives seamless secure interaction with phones at tablets
– Use as remote control– User to watch or sync media– Use dual screen app - e.g. dual screen
advertising
Remote “private cloud” means media and experience can be shared with friends long distance
All protocols and code are open, meaning no technology lock-in – maximum interoperability
Read more: http://www.webinos.org/blog/2013/02/20/webinostv/
31
Home heating automation
Aim: Remotely monitor & control home heating
ElementsFS20 system with thermos for each roomwebinos running on the RPiPZP listing sensor service for each thermostat in house
webinos IOT Dashboard App
GainedReal-time visualisations of dataReal-time management of sensors
Read more: http://www.webinos.org/blog/2013/02/23/home-heating-automation-using-webinos/
FS20 system
RPi
IOT Dashboard Provides software stack
implementing multiple protocols for Internet of Things attachment
Implemented on Arduino boards and embedded Linux
Hub allows user to manage access to data to all devices from a centralised place
Access currently provide to – Multiple sensors (temperature,
humidity, light)– Multiple actuators (switches , valves)– Heating control systems– GPS monitors– Health monitors (Heart Rate etc)
webinos Payment across screens A webinos browser comes with in-built NFC support and Payment API
support Retailers and brand owners can create websites that “add-value” to the
physical shopping experience– Curated content: links to catalogue and stock data– Media: links to magazines and articles that mention or are about this
product– Social: links to social media streams and commentary
All this can be delivered using standard HTML and JavaScript – using a universal browser
Demo: – Use of webinos Payment API– Pay for goods shopped on one devices
with your wallet stored on your mobile: Secure, Simple, Fast
– Read more: http://www.webinos.org/blog/2013/02/22/webinos-payment-across-screens/
KatwarnEmergency Warning
Katwarn is a service that informs citizens about nearby emergencies in order to provide possibilities for immediate reactions.
InRush will deliver a system for subscription on emergency notifications and management of counter-measures by extending the existing Katwarn service.
Improved location awareness (dynamic notification based on locations of the users devices) levaraging on the webinos personal zone concept to address people rather than devices.
InRush app does not need to be installed on each device as webinos takes care on finding the appropriate devices for notifying the citizen about emergency cases.
Depending on the emergency level different actions can be triggered on available devices.
Through the integration of IoT features, such as sensors and actuators for home automation, additional actions beside of notifications can be taken: closing windows and doors automatically based on certain alert level.
File Share
File Manager is an app for "enhanced" file management.
It adds to the common file management operations (rename, copy, move..) features to:– Selectively share data
among personal devices and users.
– Controlling also who can access what.
– Enable/disable version management of files.
– Stick notes on data. These notes may contain for example comments or context related information.
Webinos added value: Support for – Security and
synchronisation – Device related and
Context based information
PC Mobile Runtimes also provided for PC
and Mobile PC and mobiles can share
services and APIs with each other
Full appstore integration and commercialisation route fro web applications
Rich API suite for enhance browser experience
Entire software stack available as open source
All protocols Open Standard ensuring maximum cross device interoperability
Partyplayer
Allows users to share music stored on their devices on other devices (e.g. TVs)
In control of own data – data remains on own device
Ad hoc sharing across devices and users
Adding songs to a play list Voting for favourite songs
webinos approach
webinos technology
40
Approach Focus on delivery on top of reseach
– Components not shell, rapid prototyping, iterative development
Reuse specifications, innovate solutions for “the gaps”
Focus on openness and speed Ensure long term duration
41
webinos Technology Platform positioning
Tizen B2GArduino PIChrome
OS
B2G
Tizen
ChromeOS
Chrome
PhoneGap
Webinos – like Chrome – is a virtualised application environmentNOT and OS in its own right
42
webinos Technology Focus on open standards, innovation and security
webinos makes extensive use of node.JS to ensure OS portability– node.JS is used as porting layer– node.JS is used as server technology– Android platform is based on “anode” open source project
webinos uses existing standards based web app technologies– HTML 5– JavaScript– W3C API’s– JSON-RPC – + others
webinos incorporates an innovative user authentication concept webinos connects all of a users devices and the cloud webinos facilitates access to existing and new device resources webinos design is driven to be secure and respect user privacy
43
webinos Architecture Focus on open standards, innovation and security
webinos Architecture & API specification
webinos Device/PZP Architecture
– PZH Farm– webinos Networking model
webinos API’s
44
webinos Architecture
Comprised by core system and APIs
webin
os
APIs
webin
os
Arc
hit
ect
ure
45
webinos Architecture
Supporting a Personal Zone Concept
PZH Personal Zone Hub
• Single sign on / Auth• Sync across devices• Storage preferences, policies,
• Discovery & access• Policy / Trust
PZPPersonal
Zone Proxy
PZP PZP PZP
Personal Zone
PZH
PZP PZP PZP PZP
PZH
PZP PZP PZP PZP
3) Communication between devices
(bearer independent)
2) Discovery, Authentication,Syncronisation
1) Identified by a URL,supports a RESTful API based upon JSON RPC
46
webinos Architecture
Supporting a Personal Zone Concept
TLS
Direct P2P (e.g. Bluetooth, WiFi Direct)
TLS
Internet/CloudLocal
Devices Devices
Peter’s Personal Zone John’s Personal Zone
TLS
Server / PZH (Logical Entity)
Server / PZH (Logical Entity)
47
webinos Architecture Supporting a Personal Zone Concept - reproducable
47
John: First PZP(Personal Zone Proxy)
John: PZH(Personal Zone Hub)
Security Policy
Peter: PZH(Personal Zone Hub)
Security Policy
Security Policy
Routing
OpenID AuthOpenID Auth
Peter: Second PZP(Personal Zone Proxy)
Security Policy
QRCode or NFC
QRCode
Peter PZH John PZH
Internet/Cloud
Local
Peter: First PZP(Personal Zone Proxy)
Security Policy
PZH Server Farm
PZH Server(Logical Entity)
PZH Server(Logical Entity)
PZP (device)PZP (device)PZP (device)
48
webinos Architecture
Complementing device OS and browser app PZH
Native Device OS
webinos API
PZPBrowser/ WidgetWeb Runtime
Messaging Manager
Widget Manager
Discovery Manager
Context Manager
TLS
Session Manager
Native Discovery Mechanisms
Drivers
Routing
User Data Device
TLS Authentication HTTPS
(Currently WebSocket)
Certificate Manager Key Storage
RPC Handler/Manager
Messaging queueError recovery
APIs
APIs
APIs
APIs
APIs
RPC
Policy Manager
Sync Manager
Yet to be Implemented