© 2016 oneM2M
Presenter: Omar Elloumi, oneM2M TP Chair, Nokia Bell‐Labs and CTO [email protected]
oneM2M www.oneM2M.org
oneM2M AND SMART M2M INTRODUCTION, RELEASE 2/3
© 2016 oneM2M 2
Outline
• Introduction to oneM2M– role of ETSI TC SmartM2M
• Zoom on oneM2M R2• Introduction to oneM2M R3
© 2016 oneM2M
Over 200 member organizations in oneM2M
oneM2M Partnership Project
www.oneM2M.orgAll document are publically available
© 2016 oneM2M 4
PurposeTo specify and promote an
M2M Common Service Layer
DeliverablesTechnical Reports and Technical Specifications
Purpose & Deliverables
© 2016 oneM2M 5
© 2016 oneM2M 6
© 2016 oneM2M 7
© 2016 oneM2M 8
What is oneM2M?
Service Layer
Network Layer
Application Layer
• It is a software/middleware layer• It sits between applications and underlying
communication networking HW/SW• It typically rides on top of IP protocol stack• It provides functions that applications
across different industry segments commonly need
• It exposes common set of functions to applications via developer friendly APIs
• It is integrated into devices/gateways/servers and allows distributed intelligence
• It hides complexity of NW usage from apps• It controls when communication happens• It stores and shares data• It supports access control• It notifies applications about events
© 2016 oneM2M 9
Industry
Work Process
Public ServicesEnterprise HealthcareEnergy
TransportationOtherResidential
REQUIREMENTSTS‐0002
TECHNICAL SPECSTECHNICAL REPORTS
© 2016 oneM2M 10
oneM2M Architecture approach
Pipe (vertical):1 Application, 1 NW,
1 (or few) type of DevicePoint to point communications
Horizontal (based on common Layer)Applications share common service and network infrastructure
Multipoint communications
Local NW
BusinessApplication
Device
CommunicationNetwork (wireline, wireless,
Powerline ..)
Gateway
CommunicationNetwork 1
CommunicationNetwork 2
Local NW
GatewayIP
Application
A
Application Application Application
Common Service Layer
Device Device
Device
AS
AA Device
AS
S Common Service Layer
S
A
Common Service Layer
A Application
Things
Digital representations(includingsemantics)
© 2016 oneM2M 11
UnderlyingNetwork
UnderlyingNetwork
AE
NSE
AE
NSE NSENSE
Application Service Node Middle Node Infrastructure Node
ApplicationLayer
NetworkLayer
Architecture
AE
Application Entity Provides application logic for the end‐to‐end M2M solutions
Network Services Entity Provides services to the CSEs besides the pure data transport
Node Logical equivalent of a physical (or possibly virtualized, especially on the server side) device
© 2016 oneM2M 12
UnderlyingNetwork
UnderlyingNetwork
CSE
AE
NSE
CSE
AE
NSE
CSE
AE
NSENSE
Application Service Node Middle Node Infrastructure Node
ApplicationLayer
ServiceLayer
NetworkLayer
McaMca
McnMcn
McaMca McaMca
McnMcnMcnMcnMcnMcnMccMcc MccMcc
Reference Point One or more interfaces ‐Mca, Mcn, Mcc and Mcc’ (between 2 service providers)
Common Services Entity Provides the set of "service functions" that are common to the M2M environments
Application Entity Provides application logic for the end‐to‐end M2M solutions
Network Services Entity Provides services to the CSEs besides the pure data transport
Node Logical equivalent of a physical (or possibly virtualized, especially on the server side) device
Architecture
CSE
Mcc’Mcc’
Inf. Node
© 2016 oneM2M 13
Communication ProtocolsReuse IP‐based existing protocols
NB: Interworking with field area protocols and data models (OCF, AllSeen, OMA LWM2M, Zwave, etc)
Service LayerCore Protocols
TS‐0004
CoAP MQTT BindingHTTP
XML or JSON Content serialization ‐ HTTP Example
REQUESTGET /~/CSE‐178/CSEBase/home/temperature HTTP/1.1Host: provider.netX‐M2M‐Origin: /CSE‐123/WeatherApp42X‐M2M‐RI: 56398096Accept: application/json
RESPONSEHTTP/1.1 200 OKX‐M2M‐RI: 56398096X‐M2M‐RSC: 2000Content‐Type: application/vnd.onem2m‐res+jsonContent‐Length: 101{“m2m:cin”:["cnf":"application/json:0","con":"{'timestamp':1413405177000,'value':25.32}"]
}
WebSockets
© 2016 oneM2M 14
Registration Group ManagementSecurityDiscovery
Data Management & Repository
Application & Service
Management
Device Management
Subscription & Notification
Communication Management
Service Charging & Accounting
LocationNetwork Service Exposure
Common Service Functions
© 2016 oneM2M 15
Strong implementation baseIndustry‐driven Open source implementations
Examples of Commercial implementations /demos
2 interop. events in 2015/2016
With 30 participating organizations and 75 engineers
IotDM
© 2016 oneM2M 16
Ongoing collaborations
Guidelines& Ref. Arch.
Protocols Platforms
MQTT
OMADM LWM2M
HTTP CoAP TLS DTLS
Uses/interworks
uses
usesinterworks with
interworks with
collaborations
Now OCF
© 2016 oneM2M
An overview of oneM2M Release 2
© 2016 oneM2M 18
oneM2M Release 2
Industrial domain enablement
• Time series data
oneM2MBeyond
initial releaseSemantic interoperability
• Base ontology• Semantic discovery• Semantic descriptions
Security• Dynamic Authorization• End‐to‐End Security • Privacy support
oneM2M interworking framework
• Generic interworking• AllJoyn/AllSeen • OIC • OMA LWM2M• 3GPP Rel.13 Interworking
Home domain enablement• Home appliance information models
oneM2M Application Identification Registry established
Advanced protocol binding•WebSockets
© 2016 oneM2M
oneM2M Release 2Time Series Data
Feature
© 2016 oneM2M 20
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
AE‐1
AE registration
CSEBase
Resource Tree at CSE
© 2016 oneM2M 21
tempTimeSeries
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
AE‐1
CSEBase
Resource Tree at CSE
Create TimeSeries Container
periodicIntervalTime = 30missingDataDetect = TRUEmissingDataMaxNr = 5
© 2016 oneM2M 22
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
Subscribe to TimeSeries Container
tempTimeSeries
AE‐1
CSEBase
Resource Tree at CSE
subscription
CSE
© 2016 oneM2M 23
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
tempTimeSeries
AE‐1
CSEBase
Resource Tree at CSE
subscription
32
1st time series instanceTime = X
timeSeriesInstance1Content = 32, time= X
CSE
© 2016 oneM2M 24
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
tempTimeSeries
AE‐1
CSEBase
Resource Tree at CSE
subscription
31
2nd time series instanceTime = X + 30
timeSeriesInstance1Content = 32, time= X
timeSeriesInstance2Content = 31, time= X + 30
CSE checks and verifies 2nd instance arrived 30 seconds after 1st instance
CSE
© 2016 oneM2M 25
Time Series Data
temp
AE 1AE‐1 AE 2AE‐2CSE
AE: Application EntityCSE: Common Services Entity
tempTimeSeries
AE‐1
CSEBase
Resource Tree at CSE
subscription
33
3rd time series instanceTime = X + 60
timeSeriesInstance1Content = 32, time= X
timeSeriesInstance2Content = 31, time= X + 30
timeSeriesInstance3Content = 33, time= X + 60
CSE checks and verifies 3rd instance arrived 30 seconds after 2nd instance
CSE
© 2016 oneM2M 26
Time Series Data
temp
AE 1AE‐1 CSE
AE: Application EntityCSE: Common Services Entity
tempTimeSeries
AE‐1
CSEBase
Resource Tree at CSE
subscription
CSE detects missing time series instance
timeSeriesInstance1Content = 32, time= X
timeSeriesInstance2Content = 31, time= X + 30
timeSeriesInstance3Content = 33, time= X + 60
Time = X + 90No instance!
Missing Data NotificationmissingData = 90
AE 2AE‐2CSE
© 2016 oneM2M
oneM2M Release 2Semantics Features
© 2016 oneM2M 28
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
CSEBase
Resource Tree at CSE
CSE
© 2016 oneM2M 29
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
AE registration and container creation
CSE
Resource Tree at CSE
AE‐1
container
CSEBase
© 2016 oneM2M 30
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
32
A reading
Resource Tree at CSE
CSE
AE‐1
container
CSEBase
© 2016 oneM2M 31
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
AE‐1
container
CSEBase
contentInstance1Content: 32
32
stored in
CSE
© 2016 oneM2M 32
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
AE‐1
container
CSEBase
contentInstance1Content: 32
How can AE‐2 know if AE‐1 is a “temperature sensor” without having
prior knowledge?
How can AE‐2 know “32” is measured in “Celsius” or
“Fahrenheit”?
CSE
© 2016 oneM2M 33
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services Entity
AE‐1
container
CSEBase
contentInstance1Content: 32
semanticDescriptor1
Semantic Annotations
oneM2M Rel‐2 supports adding extra semantic information to normal resources
semanticDescriptor2
CSE
© 2016 oneM2M 34
CSE
Semantic Annotation
temp
AE 1AE‐1
AE 2AE‐2
CSE
AE: Application EntityCSE: Common Services EntityRDF: Resource Description Framework
“AE‐1” “is‐a” “Temperature Sensor”“AE‐1” “isLocatedIn” “Area‐A”
“contentInstance1” “is‐a” “Temperature Reading”“contentInstance1” “isMeasuredIn” “Celsius”
Semantic descriptors formatted as RDF Triples.RDF triples expressed using ontology vocabularies (e.g. oneM2M Base Ontology, SAREF, etc)
AE‐1
container
CSEBase
contentInstance1Content: 32
semanticDescriptor1
semanticDescriptor2
© 2016 oneM2M 35
Semantic Resource Discovery
temp
AE 1AE‐1 AE 2AE‐2
CSE
AE‐1
CSEBase “AE‐1” “is‐a” “Temperature Sensor”“AE‐1” “isLocatedIn” “Area‐A”
temp
AE 3AE‐3
AE‐3
semanticDescriptor2
Located in Area‐A
Located in Area‐B
“AE‐3” “is‐a” “Temperature Sensor”“AE‐3” “isLocatedIn” “Area‐B”
semanticDescriptor1
Use Case – Find temperature sensor deployed in a particular location
I want to find a temperature sensor located in Area‐B
CSE
© 2016 oneM2M 36
Semantic Resource Discovery
temp
AE 1AE‐1 AE 2AE‐2
CSE
temp
AE 3AE‐3
Located in Area‐A
Located in Area‐B
semantics filter criteria expressed using SPARQL query syntax
SELECT ?sensorWHERE {
?sensor “is‐a” “Temperature Sensor”?sensor “isLocatedIn” “Area‐B”
}
Release 2 Semantic‐based Resource Discovery feature can be used…
AE‐1
CSEBase “AE‐1” “is‐a” “Temperature Sensor”“AE‐1” “isLocatedIn” “Area‐A”
AE‐3
semanticDescriptor2
“AE‐3” “is‐a” “Temperature Sensor”“AE‐3” “isLocatedIn” “Area‐B”
semanticDescriptor1
CSE
© 2016 oneM2M 37
Semantic Resource Discovery
temp
AE 1AE‐1 AE 2AE‐2
CSE
temp
AE 3AE‐3
Located in Area‐A
Located in Area‐B
Release 2 Semantic‐based Resource Discovery feature can be used…
AE‐1
CSEBase “AE‐1” “is‐a” “Temperature Sensor”“AE‐1” “isLocatedIn” “Area‐A”
AE‐3
semanticDescriptor2
“AE‐3” “is‐a” “Temperature Sensor”“AE‐3” “isLocatedIn” “Area‐B”
semanticDescriptor1
CSE
© 2016 oneM2M 38
Semantic Resource Discovery
temp
AE 1AE‐1 AE 2AE‐2
CSE
temp
AE 3AE‐3
Located in Area‐A
Located in Area‐B
Release 2 Semantic‐based Resource Discovery feature can be used…
AE‐1
CSEBase
AE‐3
semanticDescriptor2
semanticDescriptor1
CSE
© 2016 oneM2M 39
R2 assessment, Beyond R2
• Capabilities for Consumer IoT and Enterprise IoT are largely covered by R1 and R2– We do not pretend to cover the full scope as our standards are part
of a bigger picture
• Main focus moving forward would be to add robustness, inteop and certification, developer guidelines– Feedback from initial deployments
© 2016 oneM2M 40
R3 initial features• New work items related to industrial IoT and Smart Cities
– CIoT (NB‐IoT, LTE‐M, etc.) interworking is high priority for SPs (ongoing discussions with 3GPP, GSMA, OMA)
– Revisited interworking framework and specifications:• DDS interworking• OSGi interworking• OPC UA interworking
– Smart cities use cases and best practices for use of oneM2M in Smart Cities– Automotive– Advanced semantics as enabler of big data and analytics
• SAREF extensions• Home domain• Etc.
• Forging new alliances to advance work on use cases is key: smart cities, home and building and automotive
© 2016 oneM2M
Nokia Internal Use
Consumer IoT
• Constrained and battery operated devices, wearables• Mostly best effort communications (over the top apps)• Limited to no mobility• Verticals apps, silos likely to dominate for the short/medium term• Centralized Analytics
Enterprise IoT
• Less constrained devices• Medium to high mobility• Tracking and identification• SLA and QoS may be critical for some use cases• Graviation towards horizontal platforms
Industrial IoT
• Powerful devices (Machines)• High mobility• SLAs and network QoS are key• Deterministic networking• Granular timing and synchronization (time series)• Real time / largely distributed analytics
Attributes of IoT segments
© 2016 oneM2M 42
Maturity levels
Industrial IoT
Consumer IoT
Enterprise IoT
© 2016 oneM2M 43
Thank You!
Q&A
Top Related