Semantics for the Internet of Things - Keep it Simple S i

advertisement
Semantics for the Internet of Things Keep it Simple
S
Szymon
S i Zach
Sasin,
Z h Sh
Shelby
lb
©Sensinode 2012
1
Embedded Web
• The Internet of Things will be powered by Web technology
• Technology from the IETF
9 Constrained
Application Protocol (CoAP)
9 Security
y
9 Web
Linking
9 Resource
Directory
• Application Semantics
9 IPSO
Application Framework
9 OMA
Lightweight M2M
©Sensinode 2012
Semantics in IoT
Illustrative Sensinode Deployments
5
1
2
4
Internet
6
Street Light M2M Nodes
6LoWPAN, CoAP, EXI
IPv6, CoAP, EXI
IPv6, HTTP, XML
Customer-specific
& Reference Apps
Home M2M Nodes
1
Embedded Web services
device library
4
6LoWPAN <-> IPv6/IPv4
edge router software
2
6LoWPAN stack optimized for
constrained devices
5
Backend environment to
manage M2M deployments
3
ZigBee
Zi
B Smart
S
t Energy
E
2.0
20
Smart Grid client
6
SDK & R
Reference
f
A
Apps
for key M2M markets
1
2
4
3
©Sensinode 2012
3
CoRE Link Format
• RFC6690 is aimed at Resource Discovery for M2M
9 Defines
a link serialization suitable for M2M
9 Defines
a well-known resource where links are stored
9 Enables
query string parameters for filtered GETs
9 Can
be used with unicast or multicast (CoAP)
• Resource Discovery with RFC6690
9 Discovering
9 GET
the links hosted by CoAP (or HTTP) servers
/.well-known/core?optional
p
_q
query
y_string
g
9 Returns
™URL,
a link-header style format
relation, type, interface, content-type etc.
©Sensinode 2012
CoRE Semantics
• RFC6690 = Simple semantics for machines
9 IANA
registry for rt= and if= parameters
• Resource Type (rt=)
9 What
9 e.g.
is this resource and what is it for?
Device Model could be rt=“ipso.dev.mdl”
• Interface Description (if=)
9 How
9 e.g.
eg
do I access this resource?
Sensor resource accessible with GET ifif=“core.s”
“core s”
• Content Type (ct=)
9 What
9 e.g.
is the data format of the resource payloads?
text/plain (0)
©Sensinode 2012
Resource Directory
• CoRE Link Format only defines
9
The link format
9
Peer-to-peer discovery
• A directory approach is also useful
9
Supports sleeping nodes
9
No multicast traffic, longer battery life
9
Remote lookup, hierarchical and federated distribution
• The CoRE Link Format can be used to build Resource Directories
9
Nodes POST (register) their link-format to an RD
9
Nodes PUT (refresh) to the RD periodically
9
Nodes may DELETE (remove)
(
) their RD entry
9
Nodes may GET (lookup) the RD or resource of other nodes
See draft-shelby-core-resource-directory
©Sensinode 2012
IPSO Application Framework
• RESTful profile from the IP Smart Object alliance
+--------------------+-----------+--------------+
| Function Set
| Root Path | Resouce Type |
+--------------------+-----------+--------------+
| Device
| /
/dev
| ipso.dev
p
|
| General Purpose IO | /gpio
| ipso.gpio
|
| Power
| /pwr
| ipso.pwr
|
| Load Control
| /load
| ipso.load
|
| Sensors
| /sen
| ipso.sen
|
| Light Control
| /lt
| ipso.lt
ipso lt
|
| Message
| /msg
| ipso.msg
|
| Location
| /loc
| ipso.loc
|
| Configuration
| /cfg
| ipso.cfg
|
+--------------------+-----------+--------------+
©Sensinode 2012
OMA Lightweight M2M
©Sensinode 2012
8
OMA Lightweight Object Model
• A Client has one or more Objects
• An Object is a collection of Resources
• A Resource is an atomic piece of
information that can be
9
Read, Written or Executed
• Resources can have multiple instances
• Objects and Resources are identified by a
16-bit Integer,
g Instances by
y an 8-bit Integer
g
• Objects/Resources are accessed with
simple
p URIs:
/{Object ID}/{Resource ID}
e.g. /12/3
©Sensinode 2012
9
Sensinode Semantics Demo
©Sensinode 2012
10
Download