leshan open source project for an iot platform ... · leshan open source project for an iot...

28
Applicability of the Leshan Open Source Project for an IoT platform Octavian Păunescu, Technical Consultant

Upload: phungbao

Post on 31-Mar-2018

232 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

Applicability of the Leshan Open Source Project

for an IoT platform

Octavian Păunescu, Technical Consultant

Page 2: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The BRIEF

The standard

– OMA LWM2M– is evolving

– The Leshan (Java) implementation – is in progress

– The devices – are being worked on.

However

– It’s functional

– It’s extensible

– Contributions are welcomed.

2

Page 3: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

Open Source - Friend or Foe

Your Product/Service Open Source

Your Product/Service Open Source

Building OSS

Building with OSS

Building for OSS

Building on OSS

Your Product/Service

Open Source Your Product/Service

Open Source

Page 4: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - block View

Hewlett Packard Enterprise

Open Source

Page 5: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - block View #2

Open Source

Hewlett Packard Enterprise

Page 6: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - block View #3

CRM Order Mgmt

Rating BillingRegistrationDiscoverySecurity

ProvisioningDiagnostics&MonitoringInventory

Management

Data enhancement and Monetization

Page 7: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - Eyecandy

Device and Service Management

Menu: DASHBOARD

Page 8: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - EyecandyMenu: TOPOLOGY

Page 9: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Integration - Eyecandy

Menu: TOPOLOGY > ASSET > DEVICE > SENSOR > View JSON

Page 10: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

OMA LWM2M

remote management of M2M devices

An API on top ofcoap:// = “HTTP over UDP” + observe & discovery

the Object model

The WHY: The HOW: The WHAT:

Page 11: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

OMA LWM2M

REST like URLs/{object}/{instance}/{resource}(numerical ids)

Define custom objects. (IPSO Alliance Smart Objects)

Page 12: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

OMA LWM2M

OMA Normative Objects

Object Name ID Multiple instances

LWM2M Security 0 YES

LWM2M Server 1 YES

Access Control 2 YES

Device 3 NO

Connectivity Monitoring 4 NO

Firmware 5 NO

Location 6 NO

Page 13: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

OMA LWM2MIPSO Alliance Objects

Object Name ID Multiple instances

Digital Input 3200 YES

Digital Output 3201 YES

Analogue Input 3202 YES

Analogue Output 3203 YES

Generic Sensor 3300 YES

Luminosity Sensor 3301 YES

...

Barometer 3315 YES

Digital Input 3200 YES

Page 14: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Leshan

LWM2M Server

Interfaces➢ Bootstrapping➢ Client Registration➢ Device Management➢ Access and Rights➢ Information Reporting

Stack➢ CoAP➢ DTLS security➢ UDP / SMS

OMA Resources

CoAP

UDP

DTLS

SMS

M2M App.

M2M App.

Device(s)/ Gateway(s)

LWM2M Client

Page 15: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Leshan

FeaturesBootstrap (client initiated)

Registration

R/W/Create objects

DTLS

– pre-shared key (PSK)– raw-public key– certificate mode (X.509)

Page 16: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Gap

OMA-TS-LightweightM2M 0.1.11-M6 Leshan release

1. Bootstrap - not yet fully implemented

2. Client Registration

Register operation - implemented only with UDP Transport Binding Mode (lacking: SMS binding)

Deregister ✓

Update operation ✓

Page 17: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Gap

OMA-TS-LightweightM2M 0.1.11-M6 Leshan release

3. Device Management and Service Enablement

Read ✓

Discover ?

Write ✓

Write attributes ( LWM2M Object Attributes)

?

Execute, Create, Delete ✓

Page 18: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Gap

OMA-TS-LightweightM2M 0.1.11-M6 Leshan release

4. Information Reporting

Observe ✓

Notify ✓

Cancel Observation ✓

Page 19: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Gap

Contributions needed on:

The Access And Rights object

The Security stack work is being done on X.509 certificate based security support

The Queue Mode queue messages and asynchronously send responses from the server to clients

Page 20: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The LACK

Load balancing➢ Distribution of Leshan instances

Session Data (in memory only):➢ registration data (org.eclipse.leshan.server.client.ClientRegistry)➢ active observations (org.eclipse.leshan.server.observation.ObservationRegistry)➢ security info. (org.eclipse.leshan.server.security.SecurityRegistry)

Secure communications using DTLS (default: in-memory only)

➢ implement an org.eclipse.californium.scandium.dtls.ConnectionStore to share the DTLS session data

Page 21: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M Specifications

21

Requirements

– TS 0002

Architecture APIs Mappings Security and management

– TS 0001 – TS 0004 = Service Layer Core Protocol Specification

– TS 0008 (CoAP Protocol Binding)

– TS 0009 (HTTP)– TS 0010 (MQTT)

– TS 0003– TS 0005– TS 0006

Release 1 (January 2015)

Page 22: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M Specifications

22

Smart Factories Smart Home End to end security Semantic interoperability

Generic interworking framework

– Home Gateway Initiative

– TS-0014 (LWM2M Interworking)

– TS-0013 (Interoperability Testing)

Draft Release 2 (expected Autumn 2016)

Page 23: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M Objects

23

Release 1(jan. 2015)

Page 24: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M <-> LWM2M interoperability

24

Device Object

Attribute Name of [deviceInfo] Mapping

[deviceInfo] Device (/3)

labels LWM2M Device Object

mgmtDefinition deviceInfo

objectID urn:oma:lwm2m:oma:3

objectPath /3/0

description

Page 25: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M <-> LWM2M interoperability

25

Device Object

Attribute Name of [deviceInfo] Mapping

manufacturer /3/0/0

model /3/0/1

deviceType /3/0/17

fwVersion /3/0/3

swVersion /3/0/19

hwVersion /3/0/18

serialNumber /3/0/2

Page 26: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

oneM2M <-> LWM2M interoperability

26

Device Object

Attribute Name of [deviceInfo] Mapping

powerSourceAvail /3/0/6

powerSourceVolt /3/0/7

powerSourceCurrent /3/0/8

errorCode /3/0/11

resetErrorCode /3/0/12

currentTime /3/0/13

utcOffset /3/0/14

Page 27: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Q&A, The GoodBye

Page 28: Leshan Open Source Project for an IoT platform ... · Leshan Open Source Project for an IoT platform ... The Leshan Features Bootstrap ... (org.eclipse.leshan.server.security.SecurityRegistry)

The Post Scriptum: URLs

[email protected]

The solutions The standards

– HPE IoT Platform v1.1

– Leshan Github v0.1.11

– Wakaama (C++ client server lib, Intel)

– DevKit, the Firefox Add-on

– OMA LWM2M releases : v1.0 (Open Mobile

Alliance)

– Object & Resource Registry

– OMA LWM2M Management Object Editor

– oneM2M LWM2M_objects_mapping

– LWM2M Interworking (September 2015)

– OneM2M XSDs