Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Introduction toPlatforms of services forthe Internet of ThingsRevision : 536
Chantal TaconetSAMOVAR, CNRS, Telecom SudParis, Institut Polytechnique de Paris
July 2019
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
2/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Internet of things, Internet of everything
Image extracted from [Shelby, 2010]
3/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Internet of things, one definition
“Everyday objects can be equipped with identifying, sensing, networking andprocessing capabilities that will allow them to communicate with one anotherand with other devices and services over the Internet to achieve some useful
objective ”[Whitmore et al., 2014]
“Interconnection of sensing and actuating devices providing the ability to shareinformation across platforms through a unified framework, developing acommon operating picture for enabling innovative applications. This isachieved by seamless large-scale sensing, data analytics and information
representation using cutting-edge ubiquitous sensing and cloud computing.”[Gubbi et al., 2013]
4/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
IoT impacts the Internet High heterogeneity
Huge number of connected objects
Image extracted from http://canadablog.cisco.com/2013/09/24/for-canada-how-big-is-everything-in-the-internet-of-everything
Huge volume of produced data: 44 billion (109) of Giga byte in 2020
5/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
From IoT silos to Internet Openness
Image extracted from http://www.libelium.com/
6/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Opportunity to build new mass services
Image extracted from http://www.libelium.com/
7/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
IoT heterogeneity requires standardization
Protocols, API, architectural patterns independent of the applicationdomains
8/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Standard organizations related to the IoT
Image extracted from AIOTI Alliance for internet of things innovation
9/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Image extracted from http://www.societe-informatique-de-france.fr/wp-content/uploads/2015/12/IOT-Pr\unhbox\voidb@x\bgroup\let\unhbox\voidb@x\setbox\@tempboxa\hboxe\global\mathchardef\accent@spacefactor\spacefactor\accent19e\egroup\spacefactor\
10/46 07/2019 C. Taconet Platforms for IoT
Internet of Things (IoT)
Some standardization organizations for the IoT IETF
• Constrained RESTful Environments (CoAP)• IPv6 over Low-power WPAN (6LoWPAN)• Transport Layer Security: TLS/DTLS profile suitable for constrained IoT
devices
OASIS publish/subscribe (MQTT and AMQP)
oneM2M - Standards APIs and services for M2M and the Internet of Thingsinteroperability
W3C Web of Things
• Rich metadata that describe data (XML Schemas)• Interaction models exposed to applications (http/REST APIs)• Semantics of things (SAN, SSN Semantic ontologies for Actuators/Sensors)
IoT security foundation (guide for privacy and trust)
11/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
12/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Complex distributed system
13/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Several level of Infrastructure
14/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Cloud for IoTCloud computing is a model for enabling ubiquitous, convenient, on-demandnetwork access to a shared pool of configurable computing resources (e.g.,networks, servers, storage, applications, and services) that can be rapidlyprovisioned and released with minimal management effort or service providerinteraction. (NIST definition)
Image extracted from https://iot.eclipse.org/
15/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Fog computing model
Image extracted from https://www.nist.gov/publications/fog-computing-conceptual-model
16/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Fog definitions
Cisco definition [Cis, 2015]
The fog extends the cloud to be closer to the things that produce and act onIoT data. Any device with computing, storage, and network connectivity canbe a fog node.
NIST definition 2018Fog computing is a layered model for enabling ubiquitous access to a sharedcontinuum of scalable computing resources. The model facilitates thedeployment of distributed, latency-aware applications and services, andconsists of fog nodes (physical or virtual), residing between smart end-devicesand centralized (cloud) services.
17/46 07/2019 C. Taconet Platforms for IoT
IoT distributed architecture
Consider fog computing when
Data is collected at the extreme edge (e.g., vehicles, factory, roadways)
Thousands of things across a large geographic area are generating data
It is necessary to analyze and act on the data in less than a second.
• Cloud computing latency 100ms• Fog computing, latency ms, real time analysis and control
Local caching, analysis, filtering : reduce offloading
18/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
19/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
Reference architectureSoftware Architecture “The software architecture of a system is the set of structures needed to
reason about the system, which comprise software elements, relationsamong them, and properties of both” [Bass et al., 2012]
Software architecture = an abstraction —i.e. omits certain information
• Elements interact with each other by means of interfaces that partition detailsinto public and private parts
• Architecture focuses on the public side of this division
Reference ArchitectureA Reference Architecture (RA) is an architectural design pattern that indicateshow an abstract set of relationships realises a set of requirements. (OASISdefinition)The main purpose of a RA is to provide guidance for the development ofconcrete architectures.
20/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
ITU-T architecture. . .
Image extracted from http://www.itu.int/ITU-T/recommendations/rec.aspx?rec=y.2060
21/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
. . . and its ecosystem
Image extracted from http://www.itu.int/ITU-T/recommendations/rec.aspx?rec=y.2060
22/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
WSO2 architecture
Image extracted from http://wso2.com/solutions/iot/, wso2 is an open-source technology provider for digital business
23/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
IoT-A Architecture Functional view
Image extracted from http://www.iot-a.eu/
24/46 07/2019 C. Taconet Platforms for IoT
IoT reference architectures
IoT-A Service and Virtual-Entity abstraction lev-els
Image extracted from http://www.iot-a.eu/
25/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
Outlines
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
26/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
What is an IoT platform
Image extracted from https://www.kaaproject.org/what-is-iot-platform
IoT platforms —i.e. a software that enables straightforward provisioning,management, and automation of connected devices within the Internet ofThings universe.1
1. https://www.kaaproject.org/what-is-iot-platform
27/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
IoT platform multi layer view
Image extracted from https://www.kaaproject.org/what-is-iot-platform
28/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
Big actors propositions for the IoTCloud IoT platform
Google IoT
Amazon IoT platform
Oracle Internet of Things Cloud Service
Azure IoT (Microsoft)
Samsung IoT platform
Free software to be deployed everywhere
Eclipse IoT
Fiware (also available as a Cloud service)
Data distribution service
29/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
Amazon IoT platform
Image extracted from https://aws.amazon.com/fr/iot-platform
30/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
Samsung Artik platform (closed in may 2018 )
Image extracted from https://horovits.files.wordpress.com/2015/05/samsung-smartthings-opencloud-sami-architecture.png
31/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
Eclipse IoT vision and tools
Image extracted from https://iot.eclipse.org/
32/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
FIWARE
Image extracted from https://iot.eclipse.org/
33/46 07/2019 C. Taconet Platforms for IoT
IoT Platforms
DDS Data Distribution Service (OMG)
Image extracted from https://iot.eclipse.org/
34/46 07/2019 C. Taconet Platforms for IoT
Middleware for the IoT
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
35/46 07/2019 C. Taconet Platforms for IoT
Middleware for the IoT
Middleware Middleware is computer software that connects software components or
applications. It is used most often to support complex, distributedapplications. Middleware support application development and delivery. Itdescribes a piece of software that connects two or more softwareapplications so that they can exchange data.
Application Application Application Application
Operating
System
Operating
System
Operating
System
Operating
System
Standard data
protocol
Communication subsystem / Network
Specific API
Standard API
Standard API
Specific API
Middleware
36/46 07/2019 C. Taconet Platforms for IoT
Middleware for the IoT
Middleware for the IoTMaster the growing complexity ofinteractions Master the heterogeneity
Handle many interaction levels
Facilitate the development throughabstractions, patterns and API
Communication substrate
Application Application
...OS OS OS OS
Dedicated API
...Standard API
AggregatorCollector
Middleware
37/46 07/2019 C. Taconet Platforms for IoT
Middleware for the IoT
Middleware for IoT challenges
Massive scale: Continuous vast flows of data
→ Filter data
Complex systems: Involving connected objects, mobiles,cloudlets [Satyanarayanan et al., 2009], clouds
→ Reduce the complexity→ Software engineering (design process, code generation, specific APIs)
Open access: Decoupled producers and consumers
→ Ensure privacy→ Qualify data/context (QoC)
[Blair et al., 2016, Stankovic, 2014]
38/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
39/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
Basic interaction patterns in distributed systems
a:Process
request
b:Process
request
handler
reply
Synchronous call
wait
a:Process
send msg 3
send msg 2
send msg 1deliver msg 1
deliver msg 2
deliver msg 3
Systemm:MsgPassing
ask for a msg
ask for a msg
ask for a msg
a:Process
event/message
b:Process
event/message
handler
b:Process
wait
Buffered messagesAsynchronous event
(push) (pull)
40/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
Publish/subscribe example
41/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
REST API
REST interactions to interact with sensors/actuators• Resource oriented• Universal Resource Identifierc(URI)• XML/JSon. . . data representations• Resources linked to other resources (in resource representations)
42/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
Constrained Application Protocol (CoAP) Rest-Like APIs for constrained devices• Low memory• Battery consumption concern (periodical wakeup)
Image extracted from CoAP: An Application Protocol for Billions of Tiny Internet Nodes
43/46 07/2019 C. Taconet Platforms for IoT
Interaction models and standard protocols
Interactions overall picture
Image extracted from http://electronicdesign.com/iot/mqtt-and-coap-underlying-protocols-iot
44/46 07/2019 C. Taconet Platforms for IoT
Conclusions
Outline
1. Internet of Things (IoT)
2. IoT distributed architecture
3. IoT reference architectures
4. IoT Platforms
5. Middleware for the IoT
6. Interaction models and standard protocols
7. Conclusions
45/46 07/2019 C. Taconet Platforms for IoT
Conclusions
Conclusions
Agenda of next topics
• “Platforms - devices” and “Platforms - applications” interactions• Play with devices and platforms• Explore platform features
46/46 07/2019 C. Taconet Platforms for IoT
References I
(2015).
Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are.
CISCO white paper.
Bass, L., Clements, P., et al. (2012).
Software Architecture in Practice, 3rd Edition.
Addison-Wesley.
Blair, G., Schmidt, D., et al. (2016).
Middleware for Internet distribution in the context of cloud computing and the Internet of Things, editorial introduction.
Annals of Telecommunications, ON LINE FIRST SINCE 2016, February 26:1–6.
Gubbi, J., Buyya, R., Marusic, S., et al. (2013).
Internet of things (iot): A vision, architectural elements, and future directions.
Future Generation Computer Systems, 29(7):1645 – 1660.
Satyanarayanan, M., Bahl, P., Caceres, R., et al. (2009).
The case for vm-based cloudlets in mobile computing.
IEEE Pervasive Computing, 8:14–23.
Shelby, Z. (2010).
Embedded web services.
Wireless Communications, IEEE, 17(6):52–57.
47/46 07/2019 C. Taconet Platforms for IoT
References II
Stankovic, J. A. (2014).
Research Directions for the Internet of Things.
IEEE Internet of Things Journal, 1(1):3–9.
Whitmore, A., Agarwal, A., et al. (2014).
The internet of things—a survey of topics and trends.
17.
48/46 07/2019 C. Taconet Platforms for IoT