Top Banner
The emergent Open Source ecosystem for IoT 1 Param Singh Ian Skerrett VP, Eclipse Foundation CEO Iotracks IoT advisor city of San Francisco
76

IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Jan 15, 2017

Download

Internet

Param Singh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

The emergent Open Source ecosystem for IoT

1

Param SinghIan Skerrett VP, Eclipse Foundation CEO Iotracks

IoT advisor city of San Francisco

Page 2: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Session Outline

• The Need for Interoperability • Growth of Open Source in IoT • IoT Market Landscape • A deeper Dive into open source with Eclipse

2

Page 3: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Key Trends in IoT

3

Page 4: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Interoperability is the Key

4source: Mckinsey - Unlocking the potential of IoT, June 2015

Page 5: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License. 5

physically connect devices (analog / digital) source: entrepreneurshiptalk.wordpress.com

local | mesh protocolsSession Mgmt (MQTT et all)

Decision: Local Fog | Cloud | hybrid

Decision: Business model | process

Enterprise Business Systems | ProcessesPresentation Layer- Exiting dashboard | new

Event (Data) Routing | ProcessingData Storage | Retrieval | AnalyticsDevice Management

Decision: Business Operations & Support

Transforming People’s Lives !

Need for interoperability across all tiers

Page 6: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Open Source is the Key to Interoperability

6

Software ISVs

Device Vendors

Enterprise

Software Developers

Solution Providers

Infrastructure | Cloud Network Operators Networking Equipment

Industrial Business Apps: Consumer

Embedded Developers

prevents vendor lock-in

trusted reusable components

seamless inter-connectivity via open protocols

Lowers barriers to entry

Lowers costs | Community Support

together delivering full- stack interoperability

Page 7: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Open vs Open Source• Just opening up proprietary

platforms is not enough • SDKs • APIs

• We need access to • Source code• a trusted environment

to publish our interoperability components (preferably as microservices…)

7

Page 8: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.Emergence of Open Source Projects in IoT 8

Open Source Wins

mobile infrastructure Internet of Thingsenterprise middleware

?Apache App Server Android DockerHadoopJavaJava

Page 9: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Adoption of MQTT vs COAP

9source: pdf.fremantle.org (google searches for MQTT and COAP)

Page 10: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Exponential growth since docker went Open Source

10source: docker conference

Page 11: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Scores of Other Open Source initiatives

11

Device Hive

The Physical WebLelylan Thing Speak

Bug LabsOpen Remote

OpenHAB

Eclipse IoT ProjectsKaa

freeboard.io

Platforms Middleware Tools & development Consortium Protocols

ARM mbed

OIC + All Seen OSHWA

XMPPCoAPMQTT

BipIO

OpenIoT

KinomaJS

Thingful

Hardware

BeagleBone Intel Galileo

Misc

Mozilla

ejbca PKI Intel's TAPApache (Ignite)

Raspbian VSCP

PicoLabs

Tessel.io

The Thing System

Industrial Internet Consortium (IIC)

Eclipse

OpenFog Consortium

Page 12: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Key sectors in IoT

IoT Device Cloud

Edge

12

Proprietary

EclipseApache, iotracks

Forgerock | ARM mbedDocker, Linux distros

current M2M | embedded intel edison electric imp

other sensors, micro controllers

Lively cloud electric imp cloud

M2M Clouds AWS, IBM, Microsoft, GE

Open Device Clouds(emerging)

Kafka, Spark, mongoDB Openstack

Open Source

Page 13: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singh

IoT market landscape - open vs closed systems

IoT Device Cloud

Open SourceProprietary

Edge Micro-controllerSensors, Boards

(electric Imp) (Intel Edison) (particle.io)

Micro-controllerClouds

(Electric Imp Cloud) (Particle.io Cloud)

AWS

Marketplace of reusable components OpenHAB (a gap)

iotracksForgeRock

Apache ignite

Eclipse

PTC/ Axeda| Thingworks, Etherios, EuroTech

Windriver machine shop, GoFactory

IoT Device Clouds Xively

Parse for IoT PTC/Axeda

IBM BlueMix

GE Predix

Microsoft Azure

ARM mbed gateways

SAP Hana(Open Device Clouds) Still Emerging

Traditional M2M

Device Clouds

Docker

13

Kafka, Spark, mongoDB Openstack

open-ing

Linux distrosContiki R IoT

Kaa

This work is licensed under a Creative Commons Attribution 4.0 International License.

Cisco IoX

Page 14: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singh

The true cost of silos…

14

the question is how to ensure this interoperability…

Page 15: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singh

According to a new VisionMobile survey of 3,700 IoT developers, 91% of respondents use open source software in at least one area of their software stack. This is good news for IoT because only open source promises to reduce or eliminate the potential for lock-in imposed by proprietary “standards.”

15

extending this use to other layers of the stack…source: http://readwrite.com/2016/05/04/open-source-near-ubiquitous-iot-report-pl1/

Page 16: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

open alternative to proprietary M2M and IOT systems

threading together projects across the tiers…16

Tiers of IoT stackPresentation

cloud | identity | systems

App logic and orchestration

components dev environments

IoT infrastructure gateways, networks protocols &

device connectors

device firmware, drivers, agents

Contiki

various client stacks

Page 17: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License. 17

Page 18: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License. 18

Page 19: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

What does Fog Layer | Edge Computing mean

19source: Cisco

Page 20: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

When to use Fog Computing

• Multiple locations: different wings in a hospital, multiple city blocks

• A large number of sensors: 10s, 100, 1000’s of sensors especially when they are of different types of sensors

• low latency: real-time performance is really important sub-millisecond roundtrip, on premise-only for security reasons)

• apply real-time analytics: versus post processing in Hadoop clusters

• Immediate notification: for mission critical system

• Offline or Sporadic Connectivity: on premise for security reasons (utilities), or collection points

20

Page 21: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singh

IDC on Edge Gateway

21

“…promoting open data platforms to accelerate IoT developers onto the platform. Edge Gateways (running

containers) will play a critical role here”Vernon Turner, SVP IoT at IDC

Page 22: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

migration from monolithic…

22

Monolithic Architecture & deployment process

API and Framework driven

Bundling of code into single executable that can be unit tested.

Complex server and deployment process - from individual workstations, integration, functional

testing, staging, to production

modern single page web and mobile apps with client and server side code and

programming interfaces

Page 23: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

… to a modern architecture for IoT

23

microservices containers dev models, integration & management

API make it desirable to deploy services independently. leading to a focus on a system of loosely

coupled processes

containers (docker) use shared OS kernel (hw

isolation). Making, build, ship and run easy and

secure

code (different languages & dev environments) in

containers makes it possible to assemble IoT with greater

flexibility

Page 24: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

A New approach to Fog | Edge Computing

• Open Source Containers and Micro-services at the edge compute layer layer not just in the cloud

• Key Benefits

• reuse of legacy code from edge technologies written in C and Java

• containers provide greater security vs running scripts on the edge

• reusable | open source components: use flexible microservices to apply- policies, code | scripts, machine learning (analytics) directly on the edge for real-time | low latency uses

24

Page 25: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License. 25source: docker.com

Docker Nautilus - Security Scanning - released Today

• Binary Image Scan: detection of malicious code, stripping, renaming of your mages • Natively integrated: with Docker Hub (Official and Private repos) • Scans are container-aware: Does not require running an image, reduces the risk of undetected security problems.

• Notifications: notifies the user when new vulnerabilities are discovered

Page 26: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

orchestrating event streams on the edge…

26source: Cisco

containers per device | streams

distributed mesh of edge processing servers or cloud

event orchestration

Page 27: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

open fog consortium

27source: Cisco

Page 28: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Open Source is the Key to Interoperability

28

Software ISVs

Device Vendors

Enterprise

Software Developers

Solution Providers

Infrastructure | Cloud Network Operators Networking Equipment

Industrial Business Apps: Consumer

Embedded Developers

prevents vendor lock-in

trusted reusable components

seamless inter-connectivity via open protocols

Lowers barriers to entry

Lowers costs | Community Support

together delivering full- stack interoperability

Page 29: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Creating the Open Source Building Blocks for IoT

Ian Skerrett Eclipse Foundation

Page 30: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.05/5/2016 30

Openness Attracts Developers

Page 31: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Developer Enablement

Page 32: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.05/5/2016 32

Developers Build Cool Stuff

Page 33: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.05/5/2016 33

Open Hardware Is a Key Enabler

Page 34: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Developer Survey 2016 - Copyright Eclipse Foundation

Usage of Open Hardware

7%9%

32%33%

19%Yes, my company deploys IoT solution using an open hardware platformYes, I have experimented with open harware in my spare timeNever used open hardware

5/5/2016 34

Have you ever used any open hardware platforms like Raspberry Pi, Arduino, BeagleBone, etc.?

Page 35: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.05/5/2016 35

Open Source Software Will Be a Key Enabler

Page 36: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

5/5/2016 Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.0 36

Page 37: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Innovation

Open Source enables:

• Permissionless innovation

• Innovation through integration

• Far higher levels of experimentation

Page 38: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2013, Eclipse Foundation, Inc. Made available under the Eclipse Public License 1.05/5/2016 38

Open source makes it easier for developers

Page 39: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Connect and Manage Devices

Page 40: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Vorto

OS at Eclipse IoT

Page 41: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Architectures

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Page 42: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Open Solutions

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Open Standards and Open Source to Connect and Manage

Page 43: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Connect and Manage with Open Standards

New and Existing Devices

CoAP

LWM2M

Many Open Standards

Page 44: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

MQTT

- Simple Publish/Subscribe protocol

- Small footprint - Minimal on-the-wire

formal and payload

MQTT Client (Java, JS, C, C++, Python, etc.)

MQTT Client MQTT Broker

Mosquitto MQTT Broker

(C Code)

Page 45: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

MQTT Adoption

Page 46: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Developer Survey 2016 - Copyright Eclipse Foundation

Messaging Standards

HTTP

MQTT

CoAP

HTTP/2

In-house / proprietary

AMQP

XMPP

I don’t know

Proprietary vendor protocol

Other

DDS

None 2.3%

3.5%

5.3%

6.2%

7.4%

13.2%

13.9%

15.5%

19.2%

21.2%

52.4%

61.2%

5/5/2016 46

What messaging protocol(s) do you use for your IoT solution?

Page 47: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Constrained Application Protocol (CoAP)

• RESTful protocol designed from scratch

• Transparent mapping to HTTP

• Works over UDP • DTLS Security

Californium - CoAP Core - DTLS - CoAP Tools - Java implementations

REST Interface

Page 48: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Lightweight M2M

- Standard for device management

- Based on CoAP

Wakaama

Page 49: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

LWM2M Adoption

Page 50: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Gateway Services

IoT Gateways

Java and OSGi

Page 51: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Gateways

Page 52: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Gateways

• Gateway management • How to manage remote gateways and keep them up to date • How to manage connectivity

• Manage deployed applications • Gateways become an application container • Remote configuration • Remote update

Page 53: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Java VM

OSGi Application Container

Device Abstraction

Gateway Basic Services

Network ConfigurationNetwork Management Field

Protocols

Connectivity and Delivery

Adm

inis

trat

ion

GU

I

Ope

ratio

n &

Man

agem

ent

Linux

Hardware

App 1 App 2 App n. . . .

Applications

Page 54: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Where we are heading: Open IoT Stack

Connectivity - MQTT - CoAP - LWM2M

IoT Gateway Services - Remote management - Application

management

IoT Applications

IoT Solution Frameworks - Home Automation - SCADA - OM2M

Reporting

Developer Tools

Open & Commercial Hardware

Security - DTLS - DNS-SD - DNS-SEC

Page 55: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Home Automation

• Flexible Framework • Based on Java and OSGi

• Huge number of “bindings”:KNX, Nest, Philips HUE, …

Page 56: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett
Page 57: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Solutions

• Telco Service Providers • Implementation of oneM2M: OM2M

• Industrial IoT: • Eclipse neoSCADA

• Support Siemens S7 PLC, IEC 60870-4-105 • 4DIAC - IEC 61499 • Rise V2G - IEC 15118 • Milo - OPC-UA

• IoT network management: Krikkit • Rules engine for IoT devices • Powering Cisco’s Data in Motion.

Page 58: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Eclipse IoT is also...IoT Server Platform

• Software provisioning • https://projects.eclipse.org/projects/iot.hawkbit

• Uniform service interface for Telemetry and Command & Uniform service interface for Telemetry and Command & Control

ntrol • https://projects.eclipse.org/projects/iot.hono

Page 59: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Vorto: IoT device modeling tools

Page 60: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Open IoT Stack

New and Existing Devices

IoT Gateways Network/Wireless Services

Backend Systems

Open IoT Stack

Page 61: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Eclipse IoT Community

Page 62: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Eclipse IoT today

2 21 150+MLOC projects developers

Page 63: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Commercial Ecosystem

Open IoT Stack for Java

Page 64: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

80 teams $20K+ in prizes

http://iot.eclipse.org/open-iot-challenge

Page 65: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Virtual IoT Meetup

Bi-weekly webinars with IoT experts900+ members

http://www.meetup.com/Virtual-IoT

Page 66: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

More Info: iot.eclipse.org

Page 67: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Copyright (c) 2014 Eclipse Foundation, licensed under the EPL-1.0

Sandbox Servers http://iot.eclipse.org/sandbox.html

67

Page 68: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Get Involved!

• Open (or fix!) bugs • Request new features • Write articles, tutorials • Participate on the mailing lists • Share your success stories • Propose your project!

Page 69: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Questions

@ianskerrett [email protected]

Page 70: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Solutions – Home Automation

Page 71: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Intranet of Things for Home Automation

Page 72: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Event Bus

Persistence ServicesAutomation Logic

User InterfacesItem Registry

Hue Binding

Samsung Binding

Bluetooth Binding

Sonos Binding

Hue

Blue

tooth

Sams

ung

Sono

s

...

Page 73: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

IoT Solutions: SCADA

• SCADA (Supervisory Control and Data Acquisition) is defined as the monitoring and control of technical processes by means of a computer system

Page 74: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Hierarchical Architecture

Local control centers

Regional control centers

Global control center

Devices, like DataloggersPLCs, Beaglebone, Raspberry PI, ...

Page 75: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

Protocols & Interoperability● Drivers − Modbus (master & slave) − Siemens S7 PLC − IEC 60870-4-105 (master &

slave) * − OPC DA 2 (client) † − OPC UA (client & server) ** − SNMP †, JDBC, Shell − Building blocks for more

Eclipse SCADA Client and server for Java Client for .NET using IKVM Partially: JSON, WebService

† SNMP and OPC from openSCADA* included in next release 0.2.0** planned for 0.3.0

Page 76: IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett

param singhThis work is licensed under a Creative Commons Attribution 4.0 International License.

Guide to Open Source Summit Sessions…

76

Wednesday May 11th 2016 Thursday May 12th 2016

1 11:20- 12:40

Keynote

Emergent IoT Open Source Ecosystem- Ian Skerrett, Eclipse Foundation- Param Singh, iotracks inc

IoT Presentation layer to IoT Client Technologies- Ari Jaakis- Peter Hoddie

2 1:40- 3:20 afternoon

IoT Interoperability- vertical integration across IoT layers- Kilton Hopkins, iotracks- Stein Myrseth, Forgerock

Cognitive Computing: the Triumph of Data over Algorithms- Gurvinder Ahluwalia, CTO IBM Cloud and Blockchain

3 4:10- 5:20 late afternoon

Apache Ignite, In-memory - Nikita Ivanov

IoT and the role of Open API’s - Patrice Slupowski, VP Digital Innovation, Orange