Internet DRAFT - draft-gundogan-core-icncoap
draft-gundogan-core-icncoap
TODO Working Group C. Gündoğan
Internet-Draft HAW Hamburg
Intended status: Informational C. Amsüss
Expires: 26 August 2021
TC. Schmidt
HAW Hamburg
M. Waehlisch
link-lab & FU Berlin
22 February 2021
A Data-centric Deployment Option for CoAP
draft-gundogan-core-icncoap-00
Abstract
The information-centric networking (ICN) paradigm offers replication
of autonomously verifiable content throughout a network, in which
content is bound to names instead of hosts. This has proven
beneficial in particular for the constrained IoT. Several
approaches, the most prominent of which being Content-Centric
Networking (CCNx) and Named-Data Networking (NDN), propose access to
named content directly on the network layer. Independently, the CoRe
WG developed mechanisms that support autonomous content processing,
on-path caching, and content object security using CoAP proxies and
OSCORE.
This document describes a data-centric deployment option using
standard CoAP features to replicate information-centric properties
and benefits to the host-centric IoT world.
Discussion Venues
This note is to be removed before publishing as an RFC.
Discussion of this document takes place on the Constrained RESTful
Environments Working Group mailing list (core@ietf.org), which is
archived at https://mailarchive.ietf.org/arch/browse/core/.
Source for this draft and an issue tracker can be found at
https://github.com/inetrg/draft-core-icncoap.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Gündoğan, et al. Expires 26 August 2021 [Page 1]
Internet-Draft Data-centric CoAP February 2021
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 26 August 2021.
Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Simplified BSD License text
as described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3
3. Data-centric Deployment Option for CoAP . . . . . . . . . . . 3
3.1. Stateful Forwarding . . . . . . . . . . . . . . . . . . . 3
3.2. Content Caching . . . . . . . . . . . . . . . . . . . . . 4
3.3. Corrective Actions . . . . . . . . . . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 5
6.1. Normative References . . . . . . . . . . . . . . . . . . 5
6.2. Informative References . . . . . . . . . . . . . . . . . 6
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6
Gündoğan, et al. Expires 26 August 2021 [Page 2]
Internet-Draft Data-centric CoAP February 2021
1. Introduction
Information-Centric Networking (ICN) introduced the idea to turn
named content objects into first class citizens of the Internet
ecosystem. This paradigm gave rise to (i) a decoupling of content
from hosts and the ability of ubiquitous content caching without
content delivery networks (CDNs), and (ii) serverless routing on
names without the DNS infrastructure; (iii) Named Data Networking
(NDN) additionally abandoned network endpoint addresses in favor of a
stateful forwarding fabric. These properties enable an asynchronous,
hop-wise content fetching, which prevents forwarding of unsolicited
data. The latter significantly reduces the attack surface of
(Distributed) Denial-of-Service (DDoS).
All three constituents make ICN appealing to the (constrained)
Internet of Things (IoT) as infrastructural burdens and common DDoS
threats stand in the way of a lean and efficient inter-networking for
embedded devices. Early experimental work [NDN-IOT] shows that NDN
can successfully operate on very constrained nodes with noticeable
resource savings compared to IP. In addition, short-term in-network
caching proved valuable for increasing reliability in low-power lossy
networks with nodes frequently at sleep as common at the IoT edge.
The deployment option described in this document replicates these
information-centric properties using standard CoAP features. Recent
experimental evaluations [OBJECTSEC][ICN-COAP] in a testbed with real
IoT hardware demonstrate promising results.
2. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here.
3. Data-centric Deployment Option for CoAP
3.1. Stateful Forwarding
In the data-centric deployment, all IoT devices act as CoAP proxies
with enabled caching functionality. A forwarding information base
(FIB) on the application-layer describes a mapping of resource names
to next-hop CoAP proxies. This mapping list is compiled statically,
or is dynamically discovered in the network; future document
iterations will further elaborate on this topic.
Gündoğan, et al. Expires 26 August 2021 [Page 3]
Internet-Draft Data-centric CoAP February 2021
Within the IoT stub network, requests traverse multiple proxies,
install forwarding state, and build return paths for corresponding
responses. The use of IPv6 link-local addresses between each proxy
hop is encouraged for a better 6LoWPAN compressibility. Responses
return on symmetrical request paths, which consequently consumes
existing forwarding state.
3.2. Content Caching
A deployment of proxy nodes on each hop enables a hop-wise caching
just as performed by CCNx [RFC8569] and NDN. Responses replicate on
a request path following a cache decision and cache replacement
strategy. A simple and lightweight approach is to _cache everywhere_
and replace _least recently used_ (LRU) content.
OSCORE enables content object security for CoAP and allows for
transmitting autonomously verifiable content similar to CCNx and NDN.
Further details on cachable OSCORE messages is recorded in
[I-D.draft-amsuess-core-cachable-oscore-00].
3.3. Corrective Actions
In contrast to end-to-end retransmissions for standard CoAP
deployments, the data-centric setup performs hop-wise retransmissions
in the event of message timeouts. Confirmable messages arm message
timers on each proxy node.
Figure 1 illustrates the default retransmission behavior: each
subsequent packet traverses the full request path to recover a lost
message.
Initial request:
,-------, Request ,-------, Request ,-------,
|client |------------|router |----------->|server |
| | x---------| |------------| |
'-------' Response '-------' Response '-------'
Request retransmission:
,-------, Request ,-------, Request ,-------,
|client |------------|router |----------->|server |
| |<-----------| |------------| |
'-------' Response '-------' Response '-------'
Figure 1: End-to-end recovery of lost packets.
Gündoğan, et al. Expires 26 August 2021 [Page 4]
Internet-Draft Data-centric CoAP February 2021
Figure 2 demonstrates the shortening of request paths for subsequent
request retransmissions due to the on-path caching functionality.
Initial request:
,-------, Request ,-------, Request ,-------,
| Proxy |----------->| Proxy |----------->| Proxy |
|(cache)| x---------|(cache)|<-----------|(cache)|
'-------' Response '-------' Response '-------'
Request retransmission:
,-------, Request ,-------, ,-------,
| Proxy |----------->| Proxy | | Proxy |
|(cache)|<-----------|(cache)| |(cache)|
'-------' Response '-------' '-------'
Figure 2: Hop-wise recovery of lost packets with on-path caching.
Proxy nodes aggregate requests and suppress the forwarding procedure,
if they already maintain an on-going request with the same cache key.
4. Security Considerations
TODO Security
5. IANA Considerations
This document has no IANA actions.
6. References
6.1. Normative References
[I-D.draft-amsuess-core-cachable-oscore-00]
Amsuess, C. and M. Tiloca, "Cachable OSCORE", Work in
Progress, Internet-Draft, draft-amsuess-core-cachable-
oscore-00, 13 July 2020, <http://www.ietf.org/internet-
drafts/draft-amsuess-core-cachable-oscore-00.txt>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
Gündoğan, et al. Expires 26 August 2021 [Page 5]
Internet-Draft Data-centric CoAP February 2021
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
6.2. Informative References
[ICN-COAP] Gündoğan, C., Amsüss, C., Schmidt, TC., and M. Waehlisch,
"Toward a RESTful Information-Centric Web of Things: A
Deeper Look at Data Orientation in CoAP", Proceedings
of 7th ACM ICN, DOI 10.1145/3405656.3418718, 2020,
<https://dl.acm.org/doi/10.1145/3405656.3418718>.
[NDN-IOT] Gündoğan, C., Kietzmann, P., Lenders, M., Petersen, H.,
Schmidt, TC., and M. Waehlisch, "NDN, CoAP, and MQTT: a
comparative measurement study in the IoT", Proceedings
of 5th ACM ICN, DOI 10.1145/3267955.3267967, 2018,
<https://dl.acm.org/doi/10.1145/3267955.3267967>.
[OBJECTSEC]
Gündoğan, C., Amsüss, C., Schmidt, TC., and M. Waehlisch,
"IoT Content Object Security with OSCORE and NDN: A First
Experimental Comparison", Proceedings of 19th IFIP
Networking, 2020,
<https://ieeexplore.ieee.org/document/9142731>.
[RFC8569] Mosko, M., Solis, I., and C. Wood, "Content-Centric
Networking (CCNx) Semantics", RFC 8569,
DOI 10.17487/RFC8569, July 2019,
<https://www.rfc-editor.org/info/rfc8569>.
Acknowledgments
TODO acknowledge.
Authors' Addresses
Cenk Gündoğan
HAW Hamburg
Email: cenk.guendogan@haw-hamburg.de
Christian Amsüss
Email: christian@amsuess.com
Gündoğan, et al. Expires 26 August 2021 [Page 6]
Internet-Draft Data-centric CoAP February 2021
Thomas C. Schmidt
HAW Hamburg
Email: t.schmidt@haw-hamburg.de
Matthias Waehlisch
link-lab & FU Berlin
Email: m.waehlisch@haw-hamburg.de
Gündoğan, et al. Expires 26 August 2021 [Page 7]