Revisiting SoA for the IoT
Transcript of Revisiting SoA for the IoT
![Page 1: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/1.jpg)
Revisiting SoA for the IoT A Middleware Perspective
MiMove Project Team Inria Paris
Valerie Issarny Joint work with Georgios Bouloukakis, Nikolaos Georgantas, Benjamin Billet,
and many other colleagues
ICSOC 2016
![Page 2: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/2.jpg)
Agenda
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 2
1. The IoT: An Introduction
2. A Service-Oriented IoT: Why & How
3. SoA for the IoT: Some Middleware Insight
4. Conclusion: What’s Next
![Page 3: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/3.jpg)
But what is the Internet of Things?
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 3
1
![Page 4: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/4.jpg)
The Internet of (Every)Things
- 4 Revisiting Service-oriented Architecture for the IoT, Issarny et al.
![Page 5: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/5.jpg)
When the Virtual absorbs the Physical World
- 5 Revisiting Service-oriented Architecture for the IoT, Issarny et al.
Not yet there… hopefully !
Matrix trailer
![Page 6: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/6.jpg)
When the Virtual & Physical Worlds Connect
- 6 Revisiting Service-oriented Architecture for the IoT, Issarny et al.
Why bother? It’s already there!
![Page 7: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/7.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 7
But the Physical World is Complex
And so is the IoT! 123RF Consuelo Barreto + Inria edition
![Page 8: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/8.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 8
The Pollution Monitoring use Case
Mobile Crowdsensing
Social Sensing
Fixed Sensing High cost
but accurate Low cost &
high redundancy but low accuracy &
high diversity Qualitative add-on
but highly subjective
https://www.youtube.com/watch?v=Yw_Er8fMmMw
Inria
![Page 9: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/9.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 9
Challenges
• Ultra-large scale • # Things • # Data
• Deep heterogeneity • Technical • Functional • Social
• Physical knowledge • Time-dependency
• High dynamics • Privacy & security
[Teixeira et al., ServiceWave’2011]
![Page 10: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/10.jpg)
- 10
What if…
Everything connects and contributes to urban knowledge
Fixed Sensors Mobile Sensors Citizens Social Networks
Urban middleware with hybrid sensing/actuation
Middleware tames high heterogeneity, scale & dynamics
And QoS @ large – cf Elisa’s keynote on security & privacy Revisiting Service-oriented Architecture for the IoT, Issarny et al. [Hachem et al., BigDataService’2015]
![Page 11: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/11.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 11
Learning from an Urban Scale Experiment
Ambiciti App informing about individual and collective exposure to urban pollution Noise pollution monitoring in Paris since summer 2015
[Issarny et al., Middleware’2016]
Scale, Heterogeneity, Physical, Dynamics, Privacy, …
Inria / photo C. Morel
![Page 12: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/12.jpg)
- 12
The 2 Ends of the Spectrum
Fixed Sensors Mobile Sensors Citizens Social Networks
Revisiting Service-oriented Architecture for the IoT, Issarny et al.
![Page 13: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/13.jpg)
- 13
The 2 Ends of the Spectrum
Fixed Sensors Mobile Sensors Citizens Social Networks
Revisiting Service-oriented Architecture for the IoT, Issarny et al.
Toward an open Internet of Things
Connect Cooperate To bring new services on the fly
SoA to the Rescue
![Page 14: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/14.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al.
Toward a Service-oriented IoT? 2
- 14
![Page 15: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/15.jpg)
Service-oriented Architecture Meets the IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 15
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$
Service Abstraction Discovery, Composition
BUT
Ultra-large scale Continuous data streams Multi-paradigm interactions
[Issarny et al., JISA’2011]
& Access
![Page 16: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/16.jpg)
A Rich State of the Art
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 16
• Ultra-large scale • Cloud of Things, In-network processing • Continuous processing, Map-reduce
• Heterogeneity • SoA, WoT, Virtualization • Ontology, Semantic WoT
• Physical knowledge • Sensor data streams
• Dynamics • Dynamic discovery
• Privacy & security
[Razzaque et al., IOT Journal ’2016]
![Page 17: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/17.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 17
Service abstraction for Things • Connect with the physical
world • Semantic knowledge • Functional & non-functional • Discrete & continuous
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$
![Page 18: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/18.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 18
Output port
access
diffusion
Data producer Data consumer
Client
Operation
invocation
Discrete result
Service provider
Service consumer
Client Discrete service
Continuous service
![Page 19: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/19.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 19
Thing discovery • Query for real-world
phenomena • Mobile and fixed things • Diversity of the connected
things • Redundancy
Things Abstraction
!"#$%&'()
*(+,-.($"+-(/0()
1-))2(3&+(45*617
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$%#&'$(%!(')*
%#+,#$(
+,#%-
.))/0,1
%#&'$(#%
![Page 20: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/20.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 20
Things Abstraction, Discovery
!"#$%&'()
*(+,-.($"+-(/0()
1-))2(3&+(45*617
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$%#&'$(%!(')*
%#+,#$(
+,#%-
.))/0,1
%#&'$(#%
Thing composition • Complexity of the physical
world • Diversity of the connected
things • Sense & actuate
continuous real-world phenomena
![Page 21: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/21.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 21
Thing access • Resource-constraints • Proxy/gateway • Thing node • Diversity of access
protocols for the tiny to the wealthy things
Things Abstraction, Discovery, Composition
!"#$%&'()
*(+,-.($"+-(/0()
1-))2(3&+(45*617
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$%#&'$(%!(')*
%#+,#$(
+,#%-
.))/0,1
%#&'$(#%
![Page 22: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/22.jpg)
A Thing-based SoA
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 22
!"#$%&'()
*(+,-.($"+-(/0()
1-))2(3&+(45*617
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$%#&'$(%!(')*
%#+,#$(
+,#%-
.))/0,1
%#&'$(#%
Tame the # Tame the
heterogeneity
Discrete & continuous
![Page 23: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/23.jpg)
Middleware for a Service-oriented IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 23
3
![Page 24: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/24.jpg)
Middleware Solutions for a Thing-based SOA Sensing the Physical World
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 24
" Discovery in the ultra-large scale IoT
" Composition in the Dynamic resource-constrained IoT
" Access in the Heterogeneous IoT
!"#$%&'()
*(+,-.($"+-(/0()
1-))2(3&+(45*617
!"#$%&'(
)"'*$+"
,-.%/0"'
)"'*$+"
1'-*$2"'
!""#$$%#&'$(%!(')*
%#+,#$(
+,#%-
.))/0,1
%#&'$(#%
![Page 25: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/25.jpg)
Service Discovery in the Ultra-large Scale IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 25
!"#$"%
!"#$%&'(
)"'*$+",-./%01"'
)"'*$+",2'.*$3"'
!""#$$$#!%"&'()%'$#%*+"#$
,-#%.
%#/+$0#%
-.14.%$&$./,
5,6%&$17&$./
2'.878$9$%&$+
:$%+.*"'(
! "#$%&'()'%*+
! ,**-!./
;.8<.=
>/&.9.#(1))23-4
%#,-#$0
#54!6$+)6'%#,-#$0
$0)%#'$#%*+"#'7#0!8!0!
[Hachem et al., PerCom’2013]
Probabilistic discovery for the mobile IoT
![Page 26: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/26.jpg)
Probabilistic Discovery for the Mobile IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 26
More likely to not register
Enough coverage
Design Rationale - Do not register
redundant Things to reduce number
- Leverage user mobility knowledge
Jardin des Tuileries
✔
[Hachem et al., PMC’2014]
![Page 27: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/27.jpg)
Probabilistic Discovery: How
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 27
Jardin des Tuileries
Centralized Approach • Compute decision on
Registry as search problem
• Using global displacement
knowledge • But computation time
increases linearly
[Hachem et al., PMC’2014]
![Page 28: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/28.jpg)
Probabilistic Discovery: How
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 28
Jardin des Tuileries
Distributed Approach • Compute decision
on Thing • Estimate
displacements of registered Things using mobility models (e.g., TLW)
[Hachem et al., PMC’2014]
![Page 29: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/29.jpg)
Service Discovery in the Ultra-large Scale IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 29
!"#$"%
!"#$%&'(
)"'*$+",-./%01"'
)"'*$+",2'.*$3"'
!""#$$$#!%"&'()%'$#%*+"#$
,-#%.
%#/+$0#%
-.14.%$&$./,
5,6%&$17&$./
2'.878$9$%&$+
:$%+.*"'(
! "#$%&'()'%*+
! ,**-!./
;.8<.=
>/&.9.#(1))23-4
%#,-#$0
#54!6$+)6'%#,-#$0
$0)%#'$#%*+"#'7#0!8!0!
Probabilistic registration & lookup for the mobile IoT
Composing the discovered things
![Page 30: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/30.jpg)
Service Composition in the Resource-constrained IoT
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 30
Consumer _______________ +consume(item)
Storage _____________________ +store(item) +produce(query):item-list
Processor __________________ +initialize() +work(item):item-list +finalize():item-list
store Transform
Consume
Producer _______________ +produce():item
[Billet et al., JISA’2014]
![Page 31: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/31.jpg)
Logical Mashup Graph
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 31
Producer Processor
Processor
Processor
Consumer
Transformateur
Transformateur
[Billet et al., MASS’2014]
![Page 32: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/32.jpg)
Logical Mashup Graph Example
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 32
4
3
6 Speed Limiter
8 Control Center (GUI)7
5s4
s3
s5
s6s7
Component Stream
2NO2
Sensor
1Particle Sensor
s2
s1
[Billet et al., MASS’2014]
![Page 33: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/33.jpg)
Deploying the Graph
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 33
Energy, Resource-constraints, Load balancing, Timeliness
[Billet et al., MASS’2014]
![Page 34: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/34.jpg)
Modeling Tasks and Things for Physical Mapping
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 34
!!!
Solving the problem optimally & approximately
[Billet et al., MASS’2014]
![Page 35: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/35.jpg)
Physical Composition of the Resource-constrained Things
Example
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 35
4
3
6 Speed Limiter
8 Control Center (GUI)7
5s4
s3
s5
s6s7
Component Stream
2NO2
Sensor
1Particle Sensor
s2
s1
[Billet et al., MASS’2014]
![Page 36: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/36.jpg)
Dioptase Middleware for Things
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 36
Service Layer
Component Manager
Storage
Interpreter
Remote Connector
Driver Manager
Storage Driver Thing Driver Network Driver
Streaming Services
Service Registry
Management ServicesUser-defined Services
Compression Plugin
Cryptography Plugin
Streaming Plugin
Web Server
Local Connector
Producer
Interpreted Task
Instruction Registry
Processor
Operator Registry
[Billet et al., JISA’2014]
Dioptase is one solution…
![Page 37: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/37.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 37
Service Access in the Heterogeneous IoT
Dioptase DPWS MQTT CoAP …
Streaming Discrete Sync Async … Pus/sub
[Georgantas et al., ESOCC’2013]
![Page 38: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/38.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 38
Service Bus for the IoT
4 basic operations:
One-way sender operation One-way receiver operation
Two-way asynchronous client operation Two-way asynchronous server operation
Two-way synchronous client operation Two-way synchronous server operation
Stream consumer operation Stream producer operation
each operation represented as
combination of post and get primitives
post and get primitives
mapped to each protocol:
SOAP, REST, CoAP, MQTT, etc.
Reconciling multi-paradigm interactions
[Kattepur et al., ICSOC’2015]
![Page 39: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/39.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 39
VSB: The eVolution Service Bus
!"#$
%&''()*+,-./
!"#0
"*1,2*3#
"/1,/2
()*+,-./
!"#$%&&'$(%)#* !"#$%&&'$(%)#+ !"#$%&&'$(%)#,
!"#$%&'("#
)"*(!
!"#$%&'("#
)"*(!4/1.*2 0
%&'' "*56 "*56
![Page 40: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/40.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 40
VSB Development & Run-time Environments
!"#$% #
!"#$%&'(%)*+,-%!
.%"#$%#$&#$'%#$!(#$')*$/
01%23,4*56+6
!5,5(+7%01
"89:585,4;4+',6< ='':
+),$%&'*'-'.$/$0 1
!"#$% &
!"#$% '
!"#$% (
!"#$%&$'()&*+,-!"#$%&$.,/,012+,)& &*+,-
!"#$%&'(')'*$+
!"#$%&'(')'*$,
01
01
01
01
01
![Page 41: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/41.jpg)
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 41
An Urban Middleware Leveraging the IoT?
![Page 42: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/42.jpg)
What’s next?
Revisiting Service-oriented Architecture for the IoT, Issarny et al. - 42
4
![Page 43: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/43.jpg)
Contributions so far…
- 43 Revisiting Service-oriented Architecture for the IoT, Issarny et al.
A perspective on SoA for the IoT A flavor of SoA but…
Middleware solutions to tame the complex IoT Scale, heterogeneity, …
But the centralized approach remains the winner…
![Page 44: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/44.jpg)
• Security & Privacy • Reliability & Dependability • Usability, Management, Interoperability • Software architecture • Information-centric networking • Closed-loop operation • Testing & Evaluation
- 44 Revisiting Service-oriented Architecture for the IoT, Issarny et al.
http://anrg.usc.edu/ngiot16/
What’s next… Next generation Internet of Things
![Page 45: Revisiting SoA for the IoT](https://reader034.fdocuments.us/reader034/viewer/2022051507/58a1a2d31a28ab78628be387/html5/thumbnails/45.jpg)
Thank you!
MiMove Project Team - https://mimove.inria.fr
CityLab@Inria- https://citylab.inria.fr
Inria Paris - http://www.inria.fr