SlideShare a Scribd company logo
1 of 30
The Constrained Application Protocol (CoAP)-
Part 2
Khamdamboy Urunov, a Ph.D. student.,
hamdamboy.urunov@gmail.com
CoAP Design Requirements
2
The CoAP Architecture
3
http://www.slideshare.net/zdshelby/coap-tutorial
CoAP methods
4
CoAP feature uses:
GET, POST, PUT, DELETE methods
GET Method
draft-ietf-core-coap-18., June 2013 : https://tools.ietf.org/pdf/draft-ietf-core-coap-18.pdf
 The GET method retrieves a
representation for the information that
currently corresponds to the resource
identified by the request URI.
 If the request includes an Accept Option,
that indicates the preferred content-format
of a response.
OneM2M protocol Binding: binding with CoAP
 We can only send limited data with GET method and it’s sent
in the header request URL whereas
 We can send large amount of data with POST because it’s
part of the request body.
http://www.test.com/index.htm?name1=value1&name2=value2
Different pointone
5
CoAP methods (cont…)
GET Method
 Confirmable Message
Some messages require an acknowledgement. These
messages are called “Confirmable“;
When no packets are lost, each Confirmable message
elicits exactly one return message of type Acknowledgement
or type Reset.
http://www.slideshare.net/paolopat/io-t-protocols-landscape
6
CoAP methods (cont…)
GET Method
The Token Option
 is an opaque sequence of 1-2 bytes
 which is used to match a request with a response
 is meant for use with asynchronous responses by this
specification.
 the Token is generated by a client and included in a
way that Token values currently in use are unique.
 If a Token Option is included in a request, the response (and any
subsequent delayed responses) MUST include the same value in a
Token Option.
 If a Token Option is included in a request, any resulting delayed
response SHOULD NOT include the URI option (for sake of
efficiency) as the Token is sufficient for matching it with the request.
Tokens have the following rules:
https://tools.ietf.org/html/draft-ietf-core-coap-03#page-17
If a request does not include a Token option, the
server MUST provide its ReST response within the
transaction response. If it cannot do so (i.e., can only
satisfy the request through an asynchronous
response), it MUST respond with error "Token
Option required by server (CoAP 240)". This option
MUST NOT occur ore than once in a header.
7
CoAP methods (cont…)
GET Method
 Non-confirmable Message
 Some other messages do not require an acknowledgement.
 This is particularly true for messages that are repeated
regularly for application requirements, such as repeated
readings from a sensor.
Acknowledgement Message
 An Acknowledgement message acknowledges that a
specific Confirmable message arrived.
 By itself, an Acknowledgement message does not indicate
success or failure of any request encapsulated in the
Confirmable message, but the Acknowledgement message may
also carry a Piggybacked Response.
8
 The GET method is restricted to send upto 1024 characters only
 Never use  GET  method if you have password or other sensitive information to be sent to the server.
 GET  can't be used to send binary data, like images or word documents, to the server.
 The data sent by  GET  method can be accessed using QUERY_STRING environment variable.
 The PHP provides $_GET associative array to access all the sent information using  GET  method.
CoAP methods (cont…)
GET Method
Pros and Cons Point
 Reset Message
 A Reset message indicates that a specific message (Confirmable or Non-confirmable) was received,
 but some context is missing to properly process it.
 This condition is usually caused when the receiving node has rebooted and has forgotten some state that would be
required to interpret the message.
Provoking a Reset message (e.g., by sending an Empty Confirmable message) is also useful as an inexpensive check
of the liveness of an endpoint ("CoAP ping").
9
CoAP methods (cont…)
POST Method
 The POST method is used to request the server to create a new subordinate resource under the requested parent URI.
 If a resource has been created on the server, the response SHOULD be 201 (Created) including the URI of the new resource in a Location
Option with any possible status in the message body.
 If the POST succeeds but does not result in a new resource being created on the server, a 200 (OK) response code SHOULD be returned.
Client Server
CON [ox1c] POST/ light Token: 0x33
ACK [ox1c] POST/ 201 Create
58.2; Token: 0x33
 POST can transfer data securely to server, it can transfer large data and should be used to
send data to server;
10
GET  POST 
History Parameters remain in browser history because they are
part of the URL
Parameters are not saved in browser
history.
Bookmarked Can be bookmarked. Cannot be bookmarked.
BACK button/re-
submit behaviour
GET requests are re-executed but may not be re-submitted to server
if the HTML is stored in the browser cache.
The browser usually alerts the user
that data will need to be re-submitted.
Encoding type
(ectype attribute)
application/x-www-form-urlencoded multipart/form-data or application/x-www-
form-urlencoded Use multipart encoding for
binary data.
Parameters can send but the parameter data is limited to what we can stuff into
the request line (URL). Safest to use less than 2K of parameters,
some servers handle up to 64K
Can send parameters, including uploading
files, to the server.
Hacked Easier to hack for script kiddies More difficult to hack
Restrictions on
form data type
Yes, only ASCII characters allowed. No restrictions. Binary data is also allowed.
Security GET is less secure compared to POST because data sent is part of the
URL. So it's saved in browser history and server logs in plaintext.
POST is a little safer than GET because the
parameters are not stored in browser history
or in web server logs.
Restrictions on
form data length
Yes, since form data is in the URL and URL length is restricted. A
safe URL length limit is often 2048 characters but varies by
browser and web server.
No restrictions
Usability GET method should not be used when sending passwords or other
sensitive information.
POST method used when sending passwords
or other sensitive information.
Visibility GET method is visible to everyone (it will be displayed in the
browser's address bar) and has limits on the amount of information to
send.
POST method variables are not displayed in
the URL.
Cached Can be cached Not cached
PUT
11
The PUT method requests that the resource identified by the request URI be updated or created with the enclosed
message body.
 If a resource exists at that URI the message body SHOULD be considered a modified version of that resource, and a 200
(OK) response SHOULD be returned.
If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created)
response.
If the resource could not be created or modified, then an appropriate error response code SHOULD be sent.
Responses to this method are not cacheable.
CoAP methods (cont…)
 PUT:- Used when the client is sending a replacement document or
uploading a new document to the Web server under the request URL
• The DELETE method requests that the resource identified by the
request URI be deleted.
• The response 200 (OK) SHOULD be sent on success.
• Responses to this method are not cacheable.
12
DELETE
CoAP methods (cont…)
DELETE:- Used when the client is trying to delete a document from the Web server, identified
by the request URL.
Code status
13
Example
14
CoAP & OneM2M
15
CoAP Feature
16
CoAP Feature Elements
Embedded web transfer protocol (coap://)
Asynchronous transaction model
UDP binding with reliability and multicast
support
methods GET, POST, PUT, DELETE
support URI
header Small, simple 4 byte
DTLS based PSK, RPK and Certificate security
Subset of MIME types and HTTP response
codes
Built-in discovery
Optional observation and block transfer
17
What CoAP is (and is not)
CoAP is CoAP is not
A very efficient RESTful protocol A general replacement for HTTP
Ideal for constrained devices and networks HTTP compression
Specialized for M2M applications Restricted to isolated “automation”
networks
Easy to proxy to/from HTTP
CoAP messages are encoded in a simple binary format.
The Message Header (4 bytes).
The variable-length token value 0 and 8 bytes long.
18
Ver - Version (1)  2 bit unsigned integer . Implementations of this field to 1 (01 binary).
T – Message Type  2- bit unsigned integer. (Confirmable, Non-Confirmable, Acknowledgement, Reset).
TKL- Token Length  4-bit unsigned integer. Indicates the length of the variable-length Token field (0-8 bytes).
Code – 8-bit unsighted integer. 3 bit class(most signification bits). 5 bits detail (least significant bits).
Request Method (1-10) or Response Code (40-255)
Message ID – 16-bit identifier for matching responses
Token – Optional response matching token
Message Format
Standards Track RFC 7252
June, 2014
Option Format
19
Option Delta - Difference between this option type and the previous.
4 bit unsigned integer. A value between 0 and 12 indicates the Optional Delta.
Length - Length of the option value
4 bit unsigned integer. A value between 0 and 12 indicates the length of the Optional Value, in bytes.
Value - The value of Length bytes immediately follows Length
CoAP defined a number of options that can be included in a message.
Base Specification Options
20
The Uri-Host Option specifies the Internet host of the resource being requested.
The Uri-Post Option specifies the transport-layer port number of the resource
The Uri-Path Option specifies one segment of the absolute path to the resource
The Uri-Query Option specifies one argument parameterizing the resource
Caching
21
• CoAP includes a simple caching model
Cache ability determined by response code
An option number mask determines if it is a cache key
• Freshness model
Max-Age option indicates cache lifetime
• Validation model
Validity checked using the Etag Option
• A proxy often supports caching
Usually on behalf of a constrained node,
a sleeping node,
or to reduce network load
Proxying and caching
22
Observation
23
COAP Observation
PROBLEM:
 REST paradigm is often “PULL” type, that is,
data is obtained by issuing an explicit request
 Information/data in WSN is often periodic/
triggered (e.g., get me a temperature sample every
2 seconds or get me a warning if temperature goes
below 5°C)
SOLUTION:
 use Observation on COAP resources
Block transfer
24
COAP Block Transfer
 PROBLEM:
avoid segmentation in the lower layers
(IPv6)
 SOLUTION:
COAP Block Transfer Mode n brings up
fragmentation at the application layer
Getting Started with CoAP
25
• There are many open source implementations available
Java CoAP Library Californium
C CoAP Library Erbium
libCoAP C Library
jCoAP Java Library
OpenCoAP C Library
TinyOS and Contiki include CoAP support
• CoAP is already part of many commercial products/systems
 Sensinode NanoService
 RTX 4100 WiFi Module
• Firefox has a CoAP plugin called Copper
• Wireshark has CoAP dissector support
• Implement CoAP yourself, it is not that hard!
Resource Discovery
26
• Service Discovery
What services are available in the first place?
Goal of finding the IP address, port and protocol
Usually performed by e.g. DNS-SD when DNS is available
• Resource Discovery
What are the Web resources I am interested in?
Goal of finding URIs
Performed using Web Linking or some REST interface
CoRE Link Format is designed to enable resource discovery
GOAL:
Discovering the links hosted by CoAP (or HTTP) servers
GET /.well-known/core?optional_query_string
Resource Directory
27
• CoRE Link Format only defines
 The link format
 Peer-to-peer discovery
• A directory approach is also useful
 Supports sleeping nodes
 No multicast traffic, longer battery life
 Remote lookup, hierarchical and federated distribution
• The CoRE Link Format can be used to build Resource Directories
 Nodes POST (register) their link-format to an RD
 Nodes PUT (refresh) to the RD periodically
 Nodes may DELETE (remove) their RD entry
 Nodes may GET (lookup) the RD or resource of other nodes
Resource Directory
28
CoRE Interfaces
29
• CoRE Interfaces [draft-shelby-core-interfaces]
A paradigm for REST profiles made up of function sets
Simple interface types
• Thank you !
30

More Related Content

What's hot

MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingPeter R. Egli
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
The Data Link Layer
The Data Link LayerThe Data Link Layer
The Data Link Layerrobbbminson
 
Sources of IoT (JNTUK - UNIT 1)
Sources of IoT (JNTUK - UNIT 1)Sources of IoT (JNTUK - UNIT 1)
Sources of IoT (JNTUK - UNIT 1)FabMinds
 
Presentation of the IEEE 802.11a MAC Layer
Presentation of the IEEE 802.11a MAC LayerPresentation of the IEEE 802.11a MAC Layer
Presentation of the IEEE 802.11a MAC LayerMahdi Ahmed Jama
 
XMPP and IoT - an overview
XMPP and IoT - an overviewXMPP and IoT - an overview
XMPP and IoT - an overviewPeter Waher
 
Application Layer Protocols for the IoT
Application Layer Protocols for the IoTApplication Layer Protocols for the IoT
Application Layer Protocols for the IoTDamien Magoni
 
Real World Applications of MQTT
Real World Applications of MQTTReal World Applications of MQTT
Real World Applications of MQTTManoj Gudi
 
CoAP Course for m2m and Internet of Things scenarios
CoAP Course for m2m and Internet of Things scenariosCoAP Course for m2m and Internet of Things scenarios
CoAP Course for m2m and Internet of Things scenarioscarlosralli
 
Adhoc and Sensor Networks - Chapter 09
Adhoc and Sensor Networks - Chapter 09Adhoc and Sensor Networks - Chapter 09
Adhoc and Sensor Networks - Chapter 09Ali Habeeb
 
message communication protocols in IoT
message communication protocols in IoTmessage communication protocols in IoT
message communication protocols in IoTFabMinds
 
Business models for business processes on IoT
Business models for business processes on IoTBusiness models for business processes on IoT
Business models for business processes on IoTFabMinds
 
Frame relay
Frame relay Frame relay
Frame relay balub4
 
Implementing 802.1x Authentication
Implementing 802.1x AuthenticationImplementing 802.1x Authentication
Implementing 802.1x Authenticationdkaya
 
Communication Asymmetry - Mobile Computing
Communication Asymmetry - Mobile ComputingCommunication Asymmetry - Mobile Computing
Communication Asymmetry - Mobile ComputingAkshay Nagpal
 

What's hot (20)

Framing in data link layer
Framing in data link layerFraming in data link layer
Framing in data link layer
 
MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message Queueing
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
The Data Link Layer
The Data Link LayerThe Data Link Layer
The Data Link Layer
 
Sources of IoT (JNTUK - UNIT 1)
Sources of IoT (JNTUK - UNIT 1)Sources of IoT (JNTUK - UNIT 1)
Sources of IoT (JNTUK - UNIT 1)
 
Presentation of the IEEE 802.11a MAC Layer
Presentation of the IEEE 802.11a MAC LayerPresentation of the IEEE 802.11a MAC Layer
Presentation of the IEEE 802.11a MAC Layer
 
XMPP and IoT - an overview
XMPP and IoT - an overviewXMPP and IoT - an overview
XMPP and IoT - an overview
 
Application Layer Protocols for the IoT
Application Layer Protocols for the IoTApplication Layer Protocols for the IoT
Application Layer Protocols for the IoT
 
RTP & RTCP
RTP & RTCPRTP & RTCP
RTP & RTCP
 
Real World Applications of MQTT
Real World Applications of MQTTReal World Applications of MQTT
Real World Applications of MQTT
 
CoAP Course for m2m and Internet of Things scenarios
CoAP Course for m2m and Internet of Things scenariosCoAP Course for m2m and Internet of Things scenarios
CoAP Course for m2m and Internet of Things scenarios
 
Adhoc and Sensor Networks - Chapter 09
Adhoc and Sensor Networks - Chapter 09Adhoc and Sensor Networks - Chapter 09
Adhoc and Sensor Networks - Chapter 09
 
Tcp
TcpTcp
Tcp
 
message communication protocols in IoT
message communication protocols in IoTmessage communication protocols in IoT
message communication protocols in IoT
 
Iot
IotIot
Iot
 
An introduction to MQTT
An introduction to MQTTAn introduction to MQTT
An introduction to MQTT
 
Business models for business processes on IoT
Business models for business processes on IoTBusiness models for business processes on IoT
Business models for business processes on IoT
 
Frame relay
Frame relay Frame relay
Frame relay
 
Implementing 802.1x Authentication
Implementing 802.1x AuthenticationImplementing 802.1x Authentication
Implementing 802.1x Authentication
 
Communication Asymmetry - Mobile Computing
Communication Asymmetry - Mobile ComputingCommunication Asymmetry - Mobile Computing
Communication Asymmetry - Mobile Computing
 

Viewers also liked

Hands on with CoAP and Californium
Hands on with CoAP and CaliforniumHands on with CoAP and Californium
Hands on with CoAP and CaliforniumJulien Vermillard
 
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)Omnys
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorialzdshelby
 
Intro to agriculture
Intro to agricultureIntro to agriculture
Intro to agricultureurucom
 

Viewers also liked (8)

IoT Coap
IoT Coap IoT Coap
IoT Coap
 
CoAP Talk
CoAP TalkCoAP Talk
CoAP Talk
 
LDC Agriculture
LDC AgricultureLDC Agriculture
LDC Agriculture
 
Hands on with CoAP and Californium
Hands on with CoAP and CaliforniumHands on with CoAP and Californium
Hands on with CoAP and Californium
 
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)
MQTT: il protocollo che rende possibile l'Internet of Things (Ott. 2015)
 
CoAP - Web Protocol for IoT
CoAP - Web Protocol for IoTCoAP - Web Protocol for IoT
CoAP - Web Protocol for IoT
 
ARM CoAP Tutorial
ARM CoAP TutorialARM CoAP Tutorial
ARM CoAP Tutorial
 
Intro to agriculture
Intro to agricultureIntro to agriculture
Intro to agriculture
 

Similar to The constrained application protocol (coap) part 2

The constrained application protocol (coap) part 3
The constrained application protocol (coap)  part 3The constrained application protocol (coap)  part 3
The constrained application protocol (coap) part 3Hamdamboy (함담보이)
 
The constrained application protocol (coap) part 3
The constrained application protocol (coap)  part 3The constrained application protocol (coap)  part 3
The constrained application protocol (coap) part 3Hamdamboy
 
The constrained application protocol (co ap) part 3
The constrained application protocol (co ap)  part 3The constrained application protocol (co ap)  part 3
The constrained application protocol (co ap) part 3Hamdamboy
 
The constrained application protocol (co ap) part 3
The constrained application protocol (co ap)  part 3The constrained application protocol (co ap)  part 3
The constrained application protocol (co ap) part 3Hamdamboy (함담보이)
 
SCWCD : The web client model : CHAP : 1
SCWCD  : The web client model : CHAP : 1SCWCD  : The web client model : CHAP : 1
SCWCD : The web client model : CHAP : 1Ben Abdallah Helmi
 
Httpbasics 1207412539273264-9-converted
Httpbasics 1207412539273264-9-convertedHttpbasics 1207412539273264-9-converted
Httpbasics 1207412539273264-9-convertedcomputerorganization
 
The constrained application protocol (coap)
The constrained application protocol (coap)The constrained application protocol (coap)
The constrained application protocol (coap)Hamdamboy
 
SCWCD : The servlet model CHAP : 2
SCWCD : The servlet model CHAP : 2SCWCD : The servlet model CHAP : 2
SCWCD : The servlet model CHAP : 2Ben Abdallah Helmi
 
SCWCD : The servlet model : CHAP : 2
SCWCD  : The servlet model : CHAP : 2SCWCD  : The servlet model : CHAP : 2
SCWCD : The servlet model : CHAP : 2Ben Abdallah Helmi
 
Under the Covers with the Web
Under the Covers with the WebUnder the Covers with the Web
Under the Covers with the WebTrevor Lohrbeer
 
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4... Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...WebStackAcademy
 
Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Lori Head
 
Micro HTTP Server Implemented in C @ COSCUP 2016
Micro HTTP Server Implemented in C @ COSCUP 2016Micro HTTP Server Implemented in C @ COSCUP 2016
Micro HTTP Server Implemented in C @ COSCUP 2016Jian-Hong Pan
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with ODataMahek Merchant
 
Web application technologies
Web application technologiesWeb application technologies
Web application technologiesAtul Tiwari
 

Similar to The constrained application protocol (coap) part 2 (20)

The constrained application protocol (coap) part 3
The constrained application protocol (coap)  part 3The constrained application protocol (coap)  part 3
The constrained application protocol (coap) part 3
 
The constrained application protocol (coap) part 3
The constrained application protocol (coap)  part 3The constrained application protocol (coap)  part 3
The constrained application protocol (coap) part 3
 
The constrained application protocol (co ap) part 3
The constrained application protocol (co ap)  part 3The constrained application protocol (co ap)  part 3
The constrained application protocol (co ap) part 3
 
The constrained application protocol (co ap) part 3
The constrained application protocol (co ap)  part 3The constrained application protocol (co ap)  part 3
The constrained application protocol (co ap) part 3
 
SCWCD : The web client model
SCWCD : The web client modelSCWCD : The web client model
SCWCD : The web client model
 
Fog & edge computing(coap )
Fog & edge computing(coap )Fog & edge computing(coap )
Fog & edge computing(coap )
 
SCWCD : The web client model : CHAP : 1
SCWCD  : The web client model : CHAP : 1SCWCD  : The web client model : CHAP : 1
SCWCD : The web client model : CHAP : 1
 
HTTP Basics
HTTP BasicsHTTP Basics
HTTP Basics
 
Httpbasics 1207412539273264-9-converted
Httpbasics 1207412539273264-9-convertedHttpbasics 1207412539273264-9-converted
Httpbasics 1207412539273264-9-converted
 
The constrained application protocol (coap)
The constrained application protocol (coap)The constrained application protocol (coap)
The constrained application protocol (coap)
 
Troubleshooting.pptx
Troubleshooting.pptxTroubleshooting.pptx
Troubleshooting.pptx
 
SCWCD : The servlet model CHAP : 2
SCWCD : The servlet model CHAP : 2SCWCD : The servlet model CHAP : 2
SCWCD : The servlet model CHAP : 2
 
Web technology Unit-I Part D - message format
Web technology Unit-I  Part D - message formatWeb technology Unit-I  Part D - message format
Web technology Unit-I Part D - message format
 
SCWCD : The servlet model : CHAP : 2
SCWCD  : The servlet model : CHAP : 2SCWCD  : The servlet model : CHAP : 2
SCWCD : The servlet model : CHAP : 2
 
Under the Covers with the Web
Under the Covers with the WebUnder the Covers with the Web
Under the Covers with the Web
 
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4... Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
Web Component Development Using Servlet & JSP Technologies (EE6) - Chapter 4...
 
Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207
 
Micro HTTP Server Implemented in C @ COSCUP 2016
Micro HTTP Server Implemented in C @ COSCUP 2016Micro HTTP Server Implemented in C @ COSCUP 2016
Micro HTTP Server Implemented in C @ COSCUP 2016
 
Rest WebAPI with OData
Rest WebAPI with ODataRest WebAPI with OData
Rest WebAPI with OData
 
Web application technologies
Web application technologiesWeb application technologies
Web application technologies
 

More from Hamdamboy (함담보이)

Network Management System and Protocol usibility
Network Management System and Protocol usibilityNetwork Management System and Protocol usibility
Network Management System and Protocol usibilityHamdamboy (함담보이)
 
The constrained application protocol (co ap) implementation-part5
The constrained application protocol (co ap) implementation-part5The constrained application protocol (co ap) implementation-part5
The constrained application protocol (co ap) implementation-part5Hamdamboy (함담보이)
 
The constrained application protocol (co ap) implementation-part4-1
The constrained application protocol (co ap) implementation-part4-1The constrained application protocol (co ap) implementation-part4-1
The constrained application protocol (co ap) implementation-part4-1Hamdamboy (함담보이)
 
The constrained application protocol (co ap) part 2
The constrained application protocol (co ap)  part 2The constrained application protocol (co ap)  part 2
The constrained application protocol (co ap) part 2Hamdamboy (함담보이)
 
Message queuing telemetry transport (mqtt)and part 3 and summarizing
Message queuing telemetry transport (mqtt)and  part 3 and summarizingMessage queuing telemetry transport (mqtt)and  part 3 and summarizing
Message queuing telemetry transport (mqtt)and part 3 and summarizingHamdamboy (함담보이)
 
Message queuing telemetry transport (mqtt) message format
Message queuing telemetry transport (mqtt) message formatMessage queuing telemetry transport (mqtt) message format
Message queuing telemetry transport (mqtt) message formatHamdamboy (함담보이)
 
Message queuing telemetry transport (mqtt) launch
Message queuing telemetry transport (mqtt) launchMessage queuing telemetry transport (mqtt) launch
Message queuing telemetry transport (mqtt) launchHamdamboy (함담보이)
 
Message queuing telemetry transport (mqtt) id and other type parameters
Message queuing telemetry transport (mqtt) id and other type parametersMessage queuing telemetry transport (mqtt) id and other type parameters
Message queuing telemetry transport (mqtt) id and other type parametersHamdamboy (함담보이)
 

More from Hamdamboy (함담보이) (18)

OMA Lightweight M2M
OMA Lightweight M2M OMA Lightweight M2M
OMA Lightweight M2M
 
Network Management System and Protocol usibility
Network Management System and Protocol usibilityNetwork Management System and Protocol usibility
Network Management System and Protocol usibility
 
Network Management System and Protocol
Network Management System and Protocol Network Management System and Protocol
Network Management System and Protocol
 
The constrained application protocol (co ap) implementation-part5
The constrained application protocol (co ap) implementation-part5The constrained application protocol (co ap) implementation-part5
The constrained application protocol (co ap) implementation-part5
 
The constrained application protocol (co ap) implementation-part4-1
The constrained application protocol (co ap) implementation-part4-1The constrained application protocol (co ap) implementation-part4-1
The constrained application protocol (co ap) implementation-part4-1
 
The constrained application protocol (co ap) part 2
The constrained application protocol (co ap)  part 2The constrained application protocol (co ap)  part 2
The constrained application protocol (co ap) part 2
 
Message queuing telemetry transport (mqtt)and part 3 and summarizing
Message queuing telemetry transport (mqtt)and  part 3 and summarizingMessage queuing telemetry transport (mqtt)and  part 3 and summarizing
Message queuing telemetry transport (mqtt)and part 3 and summarizing
 
Message queuing telemetry transport (mqtt) message format
Message queuing telemetry transport (mqtt) message formatMessage queuing telemetry transport (mqtt) message format
Message queuing telemetry transport (mqtt) message format
 
Message queuing telemetry transport (mqtt) launch
Message queuing telemetry transport (mqtt) launchMessage queuing telemetry transport (mqtt) launch
Message queuing telemetry transport (mqtt) launch
 
Message queuing telemetry transport (mqtt) id and other type parameters
Message queuing telemetry transport (mqtt) id and other type parametersMessage queuing telemetry transport (mqtt) id and other type parameters
Message queuing telemetry transport (mqtt) id and other type parameters
 
007 nms smi, oid, snmp method
007 nms smi, oid, snmp method007 nms smi, oid, snmp method
007 nms smi, oid, snmp method
 
001 implementation nms_software
001 implementation nms_software001 implementation nms_software
001 implementation nms_software
 
oma dm-protocol
oma dm-protocoloma dm-protocol
oma dm-protocol
 
oma dm-requirment
oma dm-requirmentoma dm-requirment
oma dm-requirment
 
One m2m 4- identifier_resoruce structure
One m2m 4- identifier_resoruce structureOne m2m 4- identifier_resoruce structure
One m2m 4- identifier_resoruce structure
 
One m2m 2. requirements
One m2m 2. requirements One m2m 2. requirements
One m2m 2. requirements
 
One m2m 3- managment_capability
One m2m 3- managment_capabilityOne m2m 3- managment_capability
One m2m 3- managment_capability
 
Internet of things
Internet of thingsInternet of things
Internet of things
 

Recently uploaded

Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701bronxfugly43
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdfssuserdda66b
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 

Recently uploaded (20)

Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 

The constrained application protocol (coap) part 2

  • 1. The Constrained Application Protocol (CoAP)- Part 2 Khamdamboy Urunov, a Ph.D. student., hamdamboy.urunov@gmail.com
  • 4. CoAP methods 4 CoAP feature uses: GET, POST, PUT, DELETE methods GET Method draft-ietf-core-coap-18., June 2013 : https://tools.ietf.org/pdf/draft-ietf-core-coap-18.pdf  The GET method retrieves a representation for the information that currently corresponds to the resource identified by the request URI.  If the request includes an Accept Option, that indicates the preferred content-format of a response. OneM2M protocol Binding: binding with CoAP  We can only send limited data with GET method and it’s sent in the header request URL whereas  We can send large amount of data with POST because it’s part of the request body. http://www.test.com/index.htm?name1=value1&name2=value2 Different pointone
  • 5. 5 CoAP methods (cont…) GET Method  Confirmable Message Some messages require an acknowledgement. These messages are called “Confirmable“; When no packets are lost, each Confirmable message elicits exactly one return message of type Acknowledgement or type Reset. http://www.slideshare.net/paolopat/io-t-protocols-landscape
  • 6. 6 CoAP methods (cont…) GET Method The Token Option  is an opaque sequence of 1-2 bytes  which is used to match a request with a response  is meant for use with asynchronous responses by this specification.  the Token is generated by a client and included in a way that Token values currently in use are unique.  If a Token Option is included in a request, the response (and any subsequent delayed responses) MUST include the same value in a Token Option.  If a Token Option is included in a request, any resulting delayed response SHOULD NOT include the URI option (for sake of efficiency) as the Token is sufficient for matching it with the request. Tokens have the following rules: https://tools.ietf.org/html/draft-ietf-core-coap-03#page-17 If a request does not include a Token option, the server MUST provide its ReST response within the transaction response. If it cannot do so (i.e., can only satisfy the request through an asynchronous response), it MUST respond with error "Token Option required by server (CoAP 240)". This option MUST NOT occur ore than once in a header.
  • 7. 7 CoAP methods (cont…) GET Method  Non-confirmable Message  Some other messages do not require an acknowledgement.  This is particularly true for messages that are repeated regularly for application requirements, such as repeated readings from a sensor. Acknowledgement Message  An Acknowledgement message acknowledges that a specific Confirmable message arrived.  By itself, an Acknowledgement message does not indicate success or failure of any request encapsulated in the Confirmable message, but the Acknowledgement message may also carry a Piggybacked Response.
  • 8. 8  The GET method is restricted to send upto 1024 characters only  Never use  GET  method if you have password or other sensitive information to be sent to the server.  GET  can't be used to send binary data, like images or word documents, to the server.  The data sent by  GET  method can be accessed using QUERY_STRING environment variable.  The PHP provides $_GET associative array to access all the sent information using  GET  method. CoAP methods (cont…) GET Method Pros and Cons Point  Reset Message  A Reset message indicates that a specific message (Confirmable or Non-confirmable) was received,  but some context is missing to properly process it.  This condition is usually caused when the receiving node has rebooted and has forgotten some state that would be required to interpret the message. Provoking a Reset message (e.g., by sending an Empty Confirmable message) is also useful as an inexpensive check of the liveness of an endpoint ("CoAP ping").
  • 9. 9 CoAP methods (cont…) POST Method  The POST method is used to request the server to create a new subordinate resource under the requested parent URI.  If a resource has been created on the server, the response SHOULD be 201 (Created) including the URI of the new resource in a Location Option with any possible status in the message body.  If the POST succeeds but does not result in a new resource being created on the server, a 200 (OK) response code SHOULD be returned. Client Server CON [ox1c] POST/ light Token: 0x33 ACK [ox1c] POST/ 201 Create 58.2; Token: 0x33  POST can transfer data securely to server, it can transfer large data and should be used to send data to server;
  • 10. 10 GET  POST  History Parameters remain in browser history because they are part of the URL Parameters are not saved in browser history. Bookmarked Can be bookmarked. Cannot be bookmarked. BACK button/re- submit behaviour GET requests are re-executed but may not be re-submitted to server if the HTML is stored in the browser cache. The browser usually alerts the user that data will need to be re-submitted. Encoding type (ectype attribute) application/x-www-form-urlencoded multipart/form-data or application/x-www- form-urlencoded Use multipart encoding for binary data. Parameters can send but the parameter data is limited to what we can stuff into the request line (URL). Safest to use less than 2K of parameters, some servers handle up to 64K Can send parameters, including uploading files, to the server. Hacked Easier to hack for script kiddies More difficult to hack Restrictions on form data type Yes, only ASCII characters allowed. No restrictions. Binary data is also allowed. Security GET is less secure compared to POST because data sent is part of the URL. So it's saved in browser history and server logs in plaintext. POST is a little safer than GET because the parameters are not stored in browser history or in web server logs. Restrictions on form data length Yes, since form data is in the URL and URL length is restricted. A safe URL length limit is often 2048 characters but varies by browser and web server. No restrictions Usability GET method should not be used when sending passwords or other sensitive information. POST method used when sending passwords or other sensitive information. Visibility GET method is visible to everyone (it will be displayed in the browser's address bar) and has limits on the amount of information to send. POST method variables are not displayed in the URL. Cached Can be cached Not cached
  • 11. PUT 11 The PUT method requests that the resource identified by the request URI be updated or created with the enclosed message body.  If a resource exists at that URI the message body SHOULD be considered a modified version of that resource, and a 200 (OK) response SHOULD be returned. If no resource exists then the server MAY create a new resource with that URI, resulting in a 201 (Created) response. If the resource could not be created or modified, then an appropriate error response code SHOULD be sent. Responses to this method are not cacheable. CoAP methods (cont…)  PUT:- Used when the client is sending a replacement document or uploading a new document to the Web server under the request URL
  • 12. • The DELETE method requests that the resource identified by the request URI be deleted. • The response 200 (OK) SHOULD be sent on success. • Responses to this method are not cacheable. 12 DELETE CoAP methods (cont…) DELETE:- Used when the client is trying to delete a document from the Web server, identified by the request URL.
  • 16. CoAP Feature 16 CoAP Feature Elements Embedded web transfer protocol (coap://) Asynchronous transaction model UDP binding with reliability and multicast support methods GET, POST, PUT, DELETE support URI header Small, simple 4 byte DTLS based PSK, RPK and Certificate security Subset of MIME types and HTTP response codes Built-in discovery Optional observation and block transfer
  • 17. 17 What CoAP is (and is not) CoAP is CoAP is not A very efficient RESTful protocol A general replacement for HTTP Ideal for constrained devices and networks HTTP compression Specialized for M2M applications Restricted to isolated “automation” networks Easy to proxy to/from HTTP
  • 18. CoAP messages are encoded in a simple binary format. The Message Header (4 bytes). The variable-length token value 0 and 8 bytes long. 18 Ver - Version (1)  2 bit unsigned integer . Implementations of this field to 1 (01 binary). T – Message Type  2- bit unsigned integer. (Confirmable, Non-Confirmable, Acknowledgement, Reset). TKL- Token Length  4-bit unsigned integer. Indicates the length of the variable-length Token field (0-8 bytes). Code – 8-bit unsighted integer. 3 bit class(most signification bits). 5 bits detail (least significant bits). Request Method (1-10) or Response Code (40-255) Message ID – 16-bit identifier for matching responses Token – Optional response matching token Message Format Standards Track RFC 7252 June, 2014
  • 19. Option Format 19 Option Delta - Difference between this option type and the previous. 4 bit unsigned integer. A value between 0 and 12 indicates the Optional Delta. Length - Length of the option value 4 bit unsigned integer. A value between 0 and 12 indicates the length of the Optional Value, in bytes. Value - The value of Length bytes immediately follows Length CoAP defined a number of options that can be included in a message.
  • 20. Base Specification Options 20 The Uri-Host Option specifies the Internet host of the resource being requested. The Uri-Post Option specifies the transport-layer port number of the resource The Uri-Path Option specifies one segment of the absolute path to the resource The Uri-Query Option specifies one argument parameterizing the resource
  • 21. Caching 21 • CoAP includes a simple caching model Cache ability determined by response code An option number mask determines if it is a cache key • Freshness model Max-Age option indicates cache lifetime • Validation model Validity checked using the Etag Option • A proxy often supports caching Usually on behalf of a constrained node, a sleeping node, or to reduce network load
  • 23. Observation 23 COAP Observation PROBLEM:  REST paradigm is often “PULL” type, that is, data is obtained by issuing an explicit request  Information/data in WSN is often periodic/ triggered (e.g., get me a temperature sample every 2 seconds or get me a warning if temperature goes below 5°C) SOLUTION:  use Observation on COAP resources
  • 24. Block transfer 24 COAP Block Transfer  PROBLEM: avoid segmentation in the lower layers (IPv6)  SOLUTION: COAP Block Transfer Mode n brings up fragmentation at the application layer
  • 25. Getting Started with CoAP 25 • There are many open source implementations available Java CoAP Library Californium C CoAP Library Erbium libCoAP C Library jCoAP Java Library OpenCoAP C Library TinyOS and Contiki include CoAP support • CoAP is already part of many commercial products/systems  Sensinode NanoService  RTX 4100 WiFi Module • Firefox has a CoAP plugin called Copper • Wireshark has CoAP dissector support • Implement CoAP yourself, it is not that hard!
  • 26. Resource Discovery 26 • Service Discovery What services are available in the first place? Goal of finding the IP address, port and protocol Usually performed by e.g. DNS-SD when DNS is available • Resource Discovery What are the Web resources I am interested in? Goal of finding URIs Performed using Web Linking or some REST interface CoRE Link Format is designed to enable resource discovery GOAL: Discovering the links hosted by CoAP (or HTTP) servers GET /.well-known/core?optional_query_string
  • 27. Resource Directory 27 • CoRE Link Format only defines  The link format  Peer-to-peer discovery • A directory approach is also useful  Supports sleeping nodes  No multicast traffic, longer battery life  Remote lookup, hierarchical and federated distribution • The CoRE Link Format can be used to build Resource Directories  Nodes POST (register) their link-format to an RD  Nodes PUT (refresh) to the RD periodically  Nodes may DELETE (remove) their RD entry  Nodes may GET (lookup) the RD or resource of other nodes
  • 29. CoRE Interfaces 29 • CoRE Interfaces [draft-shelby-core-interfaces] A paradigm for REST profiles made up of function sets Simple interface types