Professional Documents
Culture Documents
32
Sungkyunkwan University
URI + CRUDN
Encoding (CBOR/JSON)
CoAP, DTLS/TLS,
UDP/TCP, IPv6, …
<L2 Connectivity>
Wi-fi, Wi-fi Direct,
Bluetooth, Zigbee, …
<OIC Abstractions>
Protocol Mapping
- CRUDN → CoAP/HTTP
- Implemented by IoTivity
Resource Mapping
- Entity → OIC Resource
- ex. Smart Home Spec.
• Relative Reference
– Form: /<path>?<query>
– ex. /oic/p?name=bulb;power=50
• URI
– Form: oic://<reg-name>/<path>?<query>
– ex. oic://<UUID>/oic/p
– “oic”: scheme for constructing and parsing the main parts
– Path: segmented name
– Query: Separator is “;”, Order of query is important
CRUDN
JSON Schema
→ Properties, Representation
Availability, LastedActedTime,
DeviceStatistics (rx, tx traffic)
FactoryReset, Reboot, StartStatCollection
• Example Overview
– Smart light device with i) binary switch & ii) brightness resource
• Device Type: Light Device (oic.d.light)
• Associated Resources
– Core resources: i) oic/res ii) oic/d
– Device specific resources: iii) binary switch (oic.r.switch.binary)
– Other optional resources can be exposed, in this example iv)
brightness resource (oic.r.light.brightness)
Core Resources
Platform Info.
Device Info.
Resource URI Resource Type
Resource List of
This Device
Light Resource
Dimming
Resource
• Cross-platform
– Supported: Tizen, iOS, Android, Ubuntu, OS X, Windows, etc.
– scons: cross-platform build tool
• Support Constrained(Lite) Devices Data Size Code Size
Class
(SRAM) (Flash)
– IETF RFC 7228 Class 1 & 2
0 << 10KiB << 100KiB
– ex. Arduino 1 ~10KiB ~ 100KiB
• Discovery
– Finding a Resource
• Messaging
– Connectivity Abstraction
– Remote Access (XMPP)
– Message Switching
(Multi-hop)
• Security
– Onboarding
– Ownership Transfer
– Provisioning
– Access Control
• Device Management
– Thing Manager
• Manage groups of things
– Scene Manager
• Create a scenario for controlling multiple
devices
• Low-Power Management
– Resource Hosting
• Offloads request/data handling from remote
clients
– Resource Directory
• Constrained device that needs to sleep and
cannot respond to multicast discovery queries
• Resource Encapsulation
– Resource Broker
• Remote resource presence check
• Consistent reachability management
for discovered resource of interest
– Resource Cache
• Maintain last information of remote
resource
• Resource Container
– Protocol Bridge: Integrates non-OCF
resources
• Registering a Resource
– Given a service running on port 5683 in a device at IP address 192.168.1.1,
– If the application registers a resource with a URI path "/light/1",
– The resulting fully qualified URI "oc://192.168.1.1:5683/light/1"
• Finding a resource
– returns all resources of given type on the network service