rfc7650v2.txt   rfc7650.txt 
skipping to change at page 2, line 13 skipping to change at page 2, line 22
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . 5
4. Registering CoAP URIs . . . . . . . . . . . . . . . . . . . . 7 4. Registering CoAP URIs . . . . . . . . . . . . . . . . . . . . 7
5. Lookup . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5. Lookup . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6. Forming a Direct Connection and Reading Data . . . . . . . . 9 6. Forming a Direct Connection and Reading Data . . . . . . . . 9
7. Caching Mechanisms . . . . . . . . . . . . . . . . . . . . . 11 7. Caching Mechanisms . . . . . . . . . . . . . . . . . . . . . 11
7.1. ProxyCache . . . . . . . . . . . . . . . . . . . . . . . 11 7.1. ProxyCache . . . . . . . . . . . . . . . . . . . . . . . 11
7.2. SensorCache . . . . . . . . . . . . . . . . . . . . . . . 12 7.2. SensorCache . . . . . . . . . . . . . . . . . . . . . . . 13
8. CoAP Usage Kinds Definition . . . . . . . . . . . . . . . . . 14 8. CoAP Usage Kinds Definition . . . . . . . . . . . . . . . . . 14
8.1. CoAP-REGISTRATION Kind . . . . . . . . . . . . . . . . . 14 8.1. CoAP-REGISTRATION Kind . . . . . . . . . . . . . . . . . 14
8.2. CoAP-CACHING Kind . . . . . . . . . . . . . . . . . . . . 14 8.2. CoAP-CACHING Kind . . . . . . . . . . . . . . . . . . . . 15
9. Access Control Rules . . . . . . . . . . . . . . . . . . . . 15 9. Access Control Rules . . . . . . . . . . . . . . . . . . . . 15
10. Security Considerations . . . . . . . . . . . . . . . . . . . 16 10. Security Considerations . . . . . . . . . . . . . . . . . . . 16
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17
11.1. CoAP-REGISTRATION Kind-ID . . . . . . . . . . . . . . . 16 11.1. CoAP-REGISTRATION Kind-ID . . . . . . . . . . . . . . . 17
11.2. CoAP-CACHING Kind-ID . . . . . . . . . . . . . . . . . . 17 11.2. CoAP-CACHING Kind-ID . . . . . . . . . . . . . . . . . . 17
11.3. Access Control Policies . . . . . . . . . . . . . . . . 17 11.3. Access Control Policies . . . . . . . . . . . . . . . . 17
12. References . . . . . . . . . . . . . . . . . . . . . . . . . 17 12. References . . . . . . . . . . . . . . . . . . . . . . . . . 18
12.1. Normative References . . . . . . . . . . . . . . . . . . 17 12.1. Normative References . . . . . . . . . . . . . . . . . . 18
12.2. Informative References . . . . . . . . . . . . . . . . . 18 12.2. Informative References . . . . . . . . . . . . . . . . . 18
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19
1. Introduction 1. Introduction
The Constrained Application Protocol (CoAP) Usage for REsource The Constrained Application Protocol (CoAP) Usage for REsource
LOcation And Discovery (RELOAD) allows CoAP nodes to store resources LOcation And Discovery (RELOAD) allows CoAP nodes to store resources
in a RELOAD peer-to-peer overlay, provides a lookup service, and in a RELOAD peer-to-peer overlay, provides a lookup service, and
enables the use of RELOAD overlay as a cache for sensor data. This enables the use of RELOAD overlay as a cache for sensor data. This
functionality is implemented in the RELOAD overlay itself, without functionality is implemented in the RELOAD overlay itself, without
the use of centralized servers. the use of centralized servers.
skipping to change at page 12, line 5 skipping to change at page 12, line 5
7.1. ProxyCache 7.1. ProxyCache
ProxyCache is meant to store values and sensor information (e.g., ProxyCache is meant to store values and sensor information (e.g.,
inactivity time) for all the sensors associated with a certain proxy, inactivity time) for all the sensors associated with a certain proxy,
as well as their CoAP URIs. SensorCache, on the other hand, is used as well as their CoAP URIs. SensorCache, on the other hand, is used
for storing the information and cached value of only one sensor (CoAP for storing the information and cached value of only one sensor (CoAP
URI is not necessary, as it is the same as the one used for URI is not necessary, as it is the same as the one used for
generating the Resource-ID associated to that SensorCache entry). generating the Resource-ID associated to that SensorCache entry).
ProxyCache contains the fields Node-ID and series of SensorEntry ProxyCache contains the Node-ID, length, and a series of SensorEntry
types. types.
struct { struct {
Node-ID Node_ID; Node-ID Node_ID;
uint32 length; uint32 length;
SensorEntry sensors[count]; SensorEntry sensors[count];
} ProxyCache; } ProxyCache;
Node-ID Node-ID
The Node-ID of the Proxy Node (PN) responsible for different The Node-ID of the Proxy Node (PN) responsible for different
skipping to change at page 14, line 19 skipping to change at page 14, line 29
lifetime lifetime
indicates the validity time of that measured value in milliseconds indicates the validity time of that measured value in milliseconds
since measurement_time. since measurement_time.
value value
indicates the actual value measured. It can be of different types indicates the actual value measured. It can be of different types
(integer, long, string); therefore, opaque has been used. (integer, long, string); therefore, opaque has been used.
8. CoAP Usage Kinds Definition 8. CoAP Usage Kinds Definition
This section defines the CoAP-REGISTRATION and CoAP-CACHING kinds. This section defines the CoAP-REGISTRATION and CoAP-CACHING Kinds.
8.1. CoAP-REGISTRATION Kind 8.1. CoAP-REGISTRATION Kind
Kind-IDs Kind-IDs
The Resource Name for the CoAP-REGISTRATION Kind-ID is the CoAP The Resource Name for the CoAP-REGISTRATION Kind-ID is the CoAP
URI. The data stored is a CoAPRegistration, which contains a set URI. The data stored is a CoAPRegistration, which contains a set
of CoAP URIs. of CoAP URIs.
Data Model Data Model
The data model for the CoAP-REGISTRATION Kind-ID is dictionary. The data model for the CoAP-REGISTRATION Kind-ID is dictionary.
The dictionary key is the Node-ID of the storing RN. This allows The dictionary key is the Node-ID of the storing RN. This allows
each RN to store a single mapping. each RN to store a single mapping.
Access Control Access Control
URI-NODE-MATCH. The "coap:" prefix needs to be removed from the URI-NODE-MATCH. The "coap:" prefix needs to be removed from the
COAP URI before matching. COAP URI before matching.
Data stored under the COAP-REGISTRATION kind is of type Data stored under the COAP-REGISTRATION Kind is of type
CoAPRegistration, defined below. CoAPRegistration, defined below.
struct { struct {
Node-ID Node_ID; Node-ID Node_ID;
uint16 coap_uris_length; uint16 coap_uris_length;
opaque coap_uris (0..2^16-1); opaque coap_uris (0..2^16-1);
} CoAPRegistration; } CoAPRegistration;
8.2. CoAP-CACHING Kind 8.2. CoAP-CACHING Kind
skipping to change at page 15, line 12 skipping to change at page 15, line 27
The Resource Name for the CoAP-CACHING Kind-ID is the CoAP URI. The Resource Name for the CoAP-CACHING Kind-ID is the CoAP URI.
The data stored is a CoAPCaching, which contains a cached value. The data stored is a CoAPCaching, which contains a cached value.
Data Model Data Model
The data model for the CoAP-CACHING Kind-ID is single value. The data model for the CoAP-CACHING Kind-ID is single value.
Access Control Access Control
URI-MATCH. The "coap:" prefix needs to be removed from the COAP URI-MATCH. The "coap:" prefix needs to be removed from the COAP
URI before matching. URI before matching.
Data stored under the CoAP-CACHING kind is of type CoAPCaching, Data stored under the CoAP-CACHING Kind is of type CoAPCaching,
defined in Section 7. defined in Section 7.
9. Access Control Rules 9. Access Control Rules
As specified in RELOAD Base [RFC6940], every kind that is storable in As specified in RELOAD Base [RFC6940], every Kind that is storable in
an overlay must be associated with an access control policy. This an overlay must be associated with an access control policy. This
policy defines whether a request from a given node to operate on a policy defines whether a request from a given node to operate on a
given value should succeed or fail. Usages can define any access given value should succeed or fail. Usages can define any access
control rules they choose, including publicly writable values. control rules they choose, including publicly writable values.
CoAP Usage for RELOAD requires an access control policy that allows CoAP Usage for RELOAD requires an access control policy that allows
multiple nodes in the overlay read and write access. This access is multiple nodes in the overlay read and write access. This access is
for registering and caching information using CoAP URIs as for registering and caching information using CoAP URIs as
identifiers. Therefore, none of the access control policies identifiers. Therefore, none of the access control policies
specified in RELOAD Base [RFC6940] are sufficient. specified in RELOAD Base [RFC6940] are sufficient.
skipping to change at page 16, line 16 skipping to change at page 16, line 27
The security considerations of RELOAD [RFC6940] and CoAP [RFC7252] The security considerations of RELOAD [RFC6940] and CoAP [RFC7252]
apply to this specification. RELOAD's security model is based on apply to this specification. RELOAD's security model is based on
public key certificates, which are used for signing messages and public key certificates, which are used for signing messages and
stored objects. At the connection level, RELOAD can use either TLS stored objects. At the connection level, RELOAD can use either TLS
or DTLS. In the case of CoAP, several security modes have been or DTLS. In the case of CoAP, several security modes have been
defined. Implementations of this specification MUST follow all the defined. Implementations of this specification MUST follow all the
security-related rules specified in the RELOAD [RFC6940] and CoAP security-related rules specified in the RELOAD [RFC6940] and CoAP
[RFC7252] specifications. [RFC7252] specifications.
Additionally, in RELOAD every kind which is storable in an overlay Additionally, in RELOAD every Kind that is storable in an overlay
must be associated with an access control policy. This document must be associated with an access control policy. This document
specifies two new access control policies, which are specified in specifies two new access control policies, which are specified in
Section 9. These policies cover the most typical deployment Section 9. These policies cover the most typical deployment
scenarios. scenarios.
During the phase of registration and lookup, security considerations During the phase of registration and lookup, security considerations
relevant to RELOAD apply. A CoAP node that advertises its existence relevant to RELOAD apply. A CoAP node that advertises its existence
via this mechanism, is more likely to be attacked, compared to a node via this mechanism, is more likely to be attacked, compared to a node
(especially a sleepy node) that does not advertise its existence. (especially a sleepy node) that does not advertise its existence.
Section 11 of [RFC7252] and Section 13 of [RFC6940] have more Section 11 of [RFC7252] and Section 13 of [RFC6940] have more
 End of changes. 12 change blocks. 
14 lines changed or deleted 14 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/