Purpose
To specify and promote an
M2M Common Service Layer
Purpose & Deliverables
26-Jan-2016 © 2016 oneM2M 4
M2M Common Service Layer
Deliverables
Technical Reports and Technical Specifications
M2M Common Service Layer
• It is a software layer
• It sits between M2M applications and communication HW/SW that provides data transport
• It normally rides on top of IP
26-Jan-2016 © 2016 oneM2M 5
• It normally rides on top of IP
• It provides functions that M2M applications across different industry segments commonly need. Those functions are exposed to Applications via developer friendly APIs.
• It allows for distributed intelligence (device, gateway, cloud apps)
Industry
Work Process
Public ServicesEnterprise HealthcareEnergy
TransportationOtherResidential
Backup slide
26-Jan-2016 © 2016 oneM2M 6
REQUIREMENTSTS-0002
TECHNICAL SPECSTECHNICAL REPORTS
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
Business
ApplicationApplication Application Application Application
Common Service LayerCommon
Service Layer
26-Jan-2016 © 2016 oneM2M 7
Local NW
Device
Communication
Network (wireline, wireless,
Powerline ..)
Gateway
Communication
Network 1
Communication
Network 2
Local NW
Gateway
IP
A
Common Service Layer
Device Device
Device
AS
AA Device
AS
S Common Service Layer
S
A
Service Layer
A Application
Things
Things
representations
(including
semantics)
AE AEApplication
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
26-Jan-2016 © 2016 oneM2M 8
Underlying
Network
Underlying
Network
AE
NSE
AE
NSE NSENSE
Application Service Node Middle Node Infrastructure Node
Application
Layer
Network
Layer
AE
AE AE AEApplication
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
26-Jan-2016 © 2016 oneM2M 9
Underlying
Network
Underlying
Network
CSE
AE
NSE
CSE
AE
NSE
CSE
AE
NSENSE
Application Service Node Middle Node Infrastructure Node
Application
Layer
Service
Layer
Network
Layer
McaMca
McnMcn
McaMca McaMca
McnMcnMcnMcnMcnMcnMccMcc MccMcc
CSE
Mcc’Mcc’
Inf. Node
oneM2M Resource Structure<CSEBase>
Common Attributes:
resourceType
resourceID
parentID
expirationTime
accessControlPolicyIDs
labels
creationTime
lastModifiedTime
stateTag
“attribute”n
0..n<remoteCSE>
<node>
<AE>
<container>
<group>
0..n
0..n
0..n
0..n
0 n
26-Jan-2016 © 2016 oneM2M 10
stateTag
announceTo
announcedAttribute
CSEBase Specific Attributes:
cseType
pointOfAccess
CSEBase
CSE-ID
M2M-Ext-ID
TriggerRicipient-ID
requestReachability
nodeLink
<accessControlPolicy>
<subscription>
<mgmtCmd>
<locationPolicy>
<statsConfig>
<statsCollect>
<request>
<delivery>
<schedule>
0..n
0..n
0..n
0..n
0..n
0..n
0..n
0..n
0..1
Communication Protocols
Reuse IP-based existing protocols
Service Layer
Core ProtocolsTS-0004
CoAP BindingTS-0008
MQTT BindingTS-0010
HTTP BindingTS-0009
XML or JSON Content serialization - HTTP Example
Backup slide
26-Jan-2016 © 2016 oneM2M 12
XML or JSON Content serialization - HTTP Example
REQUESTGET /~/CSE-178/CSEBase/home/temperature HTTP/1.1
Host: provider.net
X-M2M-Origin: /CSE-123/WeatherApp42
X-M2M-RI: 56398096
Accept: application/json
RESPONSEHTTP/1.1 200 OK
X-M2M-RI: 56398096
X-M2M-RSC: 2000
Content-Type: application/vnd.onem2m-res+json
Content-Length: 101
{“m2m:cin”:[
"cnf":"application/json:0",
"con":"{'timestamp':1413405177000,'value':25.32}"]
}
RegistrationGroup
ManagementSecurityDiscovery
Data Application & Device Subscription &
Common Service FunctionsBackup slide
26-Jan-2016 © 2016 oneM2M 13
Data
Management &
Repository
Application &
Service
Management
Device
Management
Subscription &
Notification
Communication
Management
Service
Charging &
Accounting
Location
Network
Service
Exposure
Strong implementation base
Industry-driven Open source implementations
Examples of Commercial implementations /demos
IotDM
Backup slide
14
Examples of Commercial implementations /demos
First interoperability event (Sept 14-16 2015)
With 30 participating organizations and 75 people
Source: N Damour, Sierra wireless
Ongoing collaborations (not exhaustive list)
Guidelines
& Ref. Arch.
MQTT uses
collaborations
15
Protocols Platforms
OMADM LWM2M
HTTP CoAP TLS DTLS
uses
uses
interworks with
Source: N Damour, Sierra Wireless
Why we are here?
• We see great potential in bringing semantic technologies to IoT
• However, our findings as regards Semantic technologies and IoT show:– The business benefits are not always well understood to our stakeholders
– There is a need to educate the engineers (IoT domain experts)
– There is a need to provide a venue where we can build consensus aroundontologies and their applications in IoT space
26-Jan-2016 © 2016 oneM2M 16
– There is a need to provide a venue where we can build consensus aroundontologies and their applications in IoT space
• W3C has a strong background in Semantics and we are interested in exploring how we can collaborate in applying this to IoT
• oneM2M and IoT standards can provide IoT domain knowledge and use cases
• oneM2M has some initial framework that is reusing W3C, our aim isto get feedback
Overview
• Semantics as new Feature in oneM2M Release 2
– Example
• Architectural Aspects
– Semantic Descriptor
– Semantic Resource Filtering / Discovery
• Semantic Modelling
26-Jan-2016 © 2016 oneM2M 18
• Semantic Modelling
– oneM2M Base Ontology
– Interworking with non-oneM2M devices based on Semantics
– Example: SAREF Ontology
• Outlook
Example: oneM2M Release 1
without Semantics
• oneM2M provides resource structure for sensor
applications to provide their information
• Syntax and semantics of information not visible
to the platform
– At best limited support for discovery (explicit tags)
– No support for efficient access to structured information,
creation of mash-ups, support for analytics
Temperature AE
Temperature
Value Container
Temperature Value
Instance 1
Temperature Value
...
...
...
Building Management Application
26-Jan-2016 © 2016 oneM2M 19
creation of mash-ups, support for analytics
• Applications using the information have to a-
priori know
– Resources provided by each sensor applications
– Syntax and semantics of information
Explicit configuration step for every change in
available sensors
...
Temperature Value
Instance 2
• oneM2M provides resource structure for sensor
applications to provide their information
• oneM2M provides semantic information about
resource contents and functionalities making use
of it
• Functionalities that can be provided or enhanced
using semantics
– Queries/Discovery based on semantic descriptions
– Support for analytics (e.g. efficient access to information,
Temperature AE
Temperature
Value Container
Temperature Value
Instance 1
Temperature Value
...
Building Management Application
Type: Temperature
Unit: Celsius
...
...
Example: oneM2M Release 2(+)
with Semantics
26-Jan-2016 © 2016 oneM2M 20
– Support for analytics (e.g. efficient access to information,
deployment of analytics within the platform)
– Support for creation of mash-ups (e.g. enabling IoT
scenarios)
• Applications using the information can
– Specify what information they are interested in � be
notified in case of relevant changes
– Syntax and semantics of information is made explicit, so
applications can decide whether they can handle it, what
module is needed for processing etc.
Automatic configuration for every change in
available sensors
...
Temperature Value
Instance 2
Architectural Aspects:
Semantic Descriptor Resource Type
• Key oneM2M resource types
can be semantically annotated
with a description stored in a
semantic descriptor resource
AE
con-
tainer
content
instance
26-Jan-2016 © 2016 oneM2M 21
<semanticDescriptor>
1descriptor
<subscription>0..n
0..1ontologyRef
...
my:MyDevice1 rdf:type base:Device
my:MyDevice1 base:hasService
my:MyService1
my:MyService1 base:hasFunctionality
my:MyFunctionality1
my:MyFunctionality1 rdf:type base:Measuring
Example descriptor
http://www.onem2m.org/ontology/Base_Ontology/Device
Relation: Semantic Graph and oneM2M
Resource Structure
oneM2M Resource
Structure
oneM2M Resource
<semanticDescriptor>
Resource
...
26-Jan-2016 © 2016 oneM2M 22
Logical Semantic
Graph
Instance of ontology
concept / individual
Relation / property
Stored in one <semantic
Descriptor> Resource
Architectural Aspects:
Semantic Filtering / Discovery• Filtering / discovering (child) resources: RETRIEVE request on
appropriate oneM2M resource with semantic filter
• Semantic Filter: The semantic description contained in one of
the <semanticDescriptor> child resources matches the
semantic filter that shall be specified in the SPARQL query
language.
26-Jan-2016 © 2016 oneM2M 23
language.
���� Resource is included in result if semantic filter matches
• Semantic information may be stored across different semantic
descriptors
Blue box represents the
scope of a semantic filter,
i.e. this is the information
required for evaluating it
Filter request: ”Find all AE resources
representing devices that have
a service that has an operation whose
output quantifies a temperature aspect”
Concrete Example
Device12
Operation
A
Device12
oneM2M Resource Structure Semantic Graphs
hasService hasFunctionality
...
Service23
hasOperation
OperationA
...
Operation A
hasOutput has Method
same -> logical graph includes both
26-Jan-2016 © 2016 oneM2M 24
output quantifies a temperature aspect”
SPARQL representation of filter:…
SELECT ?device
WHERE { ?device rdf:type base:Device .
?device base:hasService ?service .
?service base:hasOperation ?operation .
?operation base:hasOutput ?output .
?output base:quantifies
temp:TemperatureAspect
}
...
OutputX
quantifies
Temperature
Aspect
...
Filter request: ”Find all devices that have
a service that has an operation whose
output quantifies a temperature aspect”
Concrete Example using Annotation Property
Device12
Operation
A
Device12oneM2M Resource Structure Semantic Graphs
hasService hasFunctionality
...
Service23
hasOperation
OperationA
...
Operation A
hasOutput has Method
26-Jan-2016 © 2016 oneM2M 25
output quantifies a temperature aspect”
SPARQL representation:…
SELECT ?device
WHERE { ?device rdf:type base:Device .
?device base:hasService ?service .
?service base:hasOperation ?operation .
?operation base:hasOutput ?output .
?output base:quantifies
temp:TemperatureAspect
}
hasOutput has Method
...
OutputX
quantifies
Temperature
Aspect
...
On encountering the OperationA
instance with resourceDescriptorLink
referencing the semantic descriptor
of the OperationA resource, its
content is added and the SPARQL
execution is executed on the
extended content
Filter request: ”Find all devices that have
a service that has an operation whose
output quantifies a temperature aspect”
Concrete Example using Semantic Descriptor attribute
Device12
Operation
A
Device12oneM2M Resource Structure Semantic Graphs
hasService hasFunctionality
...
Service23
hasOperation
OperationA
...
Operation A
hasOutput has Method
relatedSemantics
Attribute
26-Jan-2016 © 2016 oneM2M 26
output quantifies a temperature aspect”
SPARQL representation:…
SELECT ?device
WHERE { ?device rdf:type base:Device .
?device base:hasService ?service .
?service base:hasOperation ?operation .
?operation base:hasOutput ?output .
?output base:quantifies
temp:TemperatureAspect
}
hasOutput has Method
...
OutputX
quantifies
Temperature
Aspect
...
Before evaluating the semantic filter (SPARQL),
the content of the semantic descriptor
resource and the content of all resources
linked through the relatedSemantics attribute
are loaded and the SPARQL request is evaluated
on the integrated information.
Semantic Modelling:
oneM2M Base Ontology (1)
• Goal of oneM2M Base Ontology:
model key concepts relevant for oneM2M
platform to support
– Interoperability within oneM2M
26-Jan-2016 © 2016 oneM2M 27
– Interoperability within oneM2M
– Generic Interworking with other technologies
• oneM2M Base Ontology does not model
domain-specific aspects
• But supports mapping of domain-specific
ontologies, e.g. SAREF ontology
Device
FunctionalityService
hasService hasFunctionality
consistsOf
exposes
Functionality
Area
Network
Interworked
Device
isPartOf
isControl
ledBy
Thing
hasThingProperty
hasThingRelation Value
hasMeta
Data
is-a
is-a
Meta
Data
concerns
hasSubService
rdfs:Literal
hasDataType
AndRange
rdfs:Literal
hasTarget
Thing
Device
oneM2M Base Ontology (2)
26-Jan-2016 © 2016 oneM2M 28
FunctionalityService
Operation
hasOperation
isExposed
ByService
Input
hasTarget
Aspect
refersToMeasuring
Functionality
ControllingFunctionality
Command
hasCommand
is-a
hasMethodexposesCommand
Output
describe
Operation
State
hasOperation
State
isExposedByOperation
canHave
MetaDatahasInputhasOutput
hasSubService
rdfs:Literal
rdf:PlainLiteral
rdfs:Literal
hasDataType
AndRange
OperationalSemantic
Generic Interworking with
non-oneM2M devices based on Semantics
• oneM2M defines Mapping Rules based on classes defined in oneM2M Base Ontology
• Examples: – Devices are mapped to <AE> resources
– Operations are mapped to <container> resources
– Functionality is specified in semantic descriptor of AE
26-Jan-2016 © 2016 oneM2M 29
– Functionality is specified in semantic descriptor of AE
� oneM2M resource structure, e.g. of non-oneM2M device, is defined based on semantic model
� Applications know how to interact, e.g. with devices, through oneM2M
� Tool support, e.g. for creating skeleton of Interworking Proxy, is possible
Example: Mapping SAREF to
oneM2M Base Ontology• SAREF: Smart Appliance REFerence
ontology
• Developed by TNO for EU and
standardized by ETSI:
– ETSI TS 103 264 v1.1.1
26-Jan-2016 © 2016 oneM2M 30
– ETSI TS 103 264 v1.1.1
Shows subClass mapping of SAREF Device class
(appliances) to oneM2M Device class
Example: oneM2M resource
structure for SAREF washing machineoneM2M Resource Structure
saref:Device
oneM2M:
Device
Rule: oneM2M:
Device is mapped
to AE Resource
subClass
saref:Washing
subClass
26-Jan-2016 © 2016 oneM2M 31
to AE Resource
type
WASH_LG_123
saref:Washing
Maching
WashingService_123
StartStop_Operation_123
Rule: operation
is mapped to
Container resource
Rule: semantic information
related to device stored in
semanticDescriptor resource
Semantic description
Outlook
• oneM2M Release 2 contains basic semantic
functionality and oneM2M base ontology
• Further semantic support, including support
of direct semantic queries, analytics and
26-Jan-2016 © 2016 oneM2M 32
of direct semantic queries, analytics and
mash-ups envisioned for Release 3
• Feedback from W3C Web of Things including
exploration of opportunities for collaboration
welcome!
Proposed terms
of collaboration• Scope of the collaboration:
• IoT archiecture and protocol
• Method of work:
• oneM2M (MAS WG) to present its work on semantic interop. to W3C Web of Things WG and get feedback
• oneM2M to provide its use cases for consideration by the W3C Web of Things working group
• W3C to present its work on Web of Things to oneM2M
• W3C to keep oneM2M updated about the progress of their work on Web of Things (e.g. semantic support
for constrained devices)
• Other methods of works may be developed as we progress (incremental process)
26-Jan-2016 © 2016 oneM2M 33
• Other methods of works may be developed as we progress (incremental process)
• Boundaries: No IPR licensing or confidentiality agreement will be provided. Instead, consultation will be
established.
• Deliverables: Each organization to publish its own deliverables (no common deliverable currently planned)
• Any content that may be useful as a technical contribution must come into oneM2M via a oneM2M
member
• Communications: Both organizations to list each other on their respective web pages (when applicable), and to
identify opportunities for joint press releases when we have an appropriate story to tell.
• Timeline of expected results: may influence R2, more impact expected for R3
• oneM2M involved WG: MAS (primary), SEC, PRO
Top Related