Internet Engineering Task Force Lijun Dong
Internet Draft Cedric Westphal
Intended status: Informational GQ Wang
Expires: January 17, 2017 Huawei Technologies
Jianping Wang
City University Hong Kong
July 18, 2016
Requirements of Name Resolution Service in ICN
draft-dong-icnrg-nrs-requirement-00
Abstract
This document summarizes the existing approaches for name resolution
in various ICN architectures, and categorizes them into two groups:
(1) standalone name resolution; (2) name based routing. It compares
the two types of approaches from the aspects of update message
overhead, resolution capability, node failure impact, and maintained
database. And hybrid approaches also exist with a subnet of routers
carrying out name based routing. Despite the coexistence of
different name resolution approaches, the Name Resolution Service
(NRS) is most essential service that shall be provided by the ICN
infrastructure. The document gives the definition of NRS in ICN and
proposes some requirements of NRS, i.e. resolution guarantee, delay
sensitivity, minimum inter-domain traffic, failure resilience,
accuracy, security and accessibility, scalability, and time
transiency, support for manifest, interoperability, resolution
result selection, heterogeneity, unspecified Content Name.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
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 http://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."
Dong, et al. Expires January 9, 2017 [Page 1]
Internet-Draft Requirements of NRS in ICN October 2016
This document expires on January 17, 2017.
Copyright Notice
Copyright (c) 2016 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
(http://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...................................................2
1.1. Comparisons of Standalone Name Resolution and Name based
Routing Approaches.............................................4
2. Definition of Name Resolution Service in ICN...................5
3. Requirements of Name Resolution Service in ICN.................6
3.1. Resolution Guarantee......................................6
3.2. Delay Sensitivity.........................................6
3.3. Minimum Inter-Domain Traffic..............................6
3.4. Failure Resilience........................................6
3.5. Accuracy..................................................7
3.6. Security and accessibility................................7
3.7. Scalability...............................................7
3.8. Time Transiency...........................................8
3.9. Support for manifest......................................8
3.10. Interoperability.........................................8
3.11. Resolution Result Selection..............................9
3.12. Heterogeneity............................................9
3.13. Unspecified Content Name................................10
4. IANA Considerations...........................................10
5. Conclusions...................................................10
6. Informative References........................................10
1. Introduction
Information Centric Networking (ICN)[1] has been identified and
acknowledged as the most promising architecture for the future
Internet as well as the future Internet of Things(IoT)[2][3]. There
Dong, et al. Expires January 9, 2017 [Page 2]
Internet-Draft Requirements of NRS in ICN October 2016
are existing efforts in designing the ICN architecture, such as
DONA[4], PURSUIT[5], NDN[7][10], CCN[8], SAIL[6], MobilityFirst[9].
Most ICN architectures are centered around routing for content
retrieval.
ICN routing generally involves three steps:
- Name resolution[11][12][14][15][17][18]: matches/translates a
content name to locators of providers/sources that can provide the
content.
- Content request routing: routes the content request towards the
producer either based on the name or the locator. The process of
name resolution and content request routing can be integrated. If
integrated, the content request is routed by name, such as in
NDN/CCN. If not integrated, the content request is routed by the
locator obtained from the previous name resolution step, such as
in DONA, PURSUIT, SAIL, MobilityFirst.
- Content delivery: Constructs a path for transferring the content
from the provider to the requester. In the integrated approach,
content can be routed using breadcrumbs left by the request to
define a reverse path, or by some other mechanism, such as
including a locator for the requester in the content request. In
the uncombined approach, the content can be routed from the
provider back to the request through an independent path.
Thus the name resolution process in ICN architectures either can be
separated from the message routing (e.g. routing of content request
message) as a standalone process or can be integrated with the
message routing as one combined process. The former is referred as
standalone name resolution approach, the latter is referred as name
based routing approach in this document.
In the case that the content request also specifies the reverse
path, as in NDN/CCN, the name resolution mechanism also determines
the routing path for the data. This adds a requirement on the name
resolution service to propagate interest in a way that is consistent
with the subsequent data forwarding. Namely, the interest must
select a path for the data based upon the finding the copy of the
content, but also properly delivering the data.
A hybrid approach would combine name resolution as a subset of
routers on the path with some tunneling in between (say, across an
administrative domain) so that only a few of the nodes in the
architecture perform name resolution in the name-based approach.
Dong, et al. Expires January 9, 2017 [Page 3]
Internet-Draft Requirements of NRS in ICN October 2016
Additionally, some other intermediary step may be included in the
name resolution, namely the mapping of one name to other names, in
order to facilitate the retrieval of named content, by way of a
manifest[24][25]. The manifest is resolved using one of the two
above approaches, and it may include further mapping of names to
content and location. The steps for name resolution then become:
first translate the manifest name into a location of a copy of the
manifest; the manifest includes further names of the content
components, and potentially locations for the content. The content
is then retrieved by using these names and/or location, potentially
resulting in additional name resolutions.
1.1. Comparison of Standalone Name Resolution and Name based Routing
Approaches
The following compares the standalone name resolution and name based
routing approaches from different aspects:
- Update message overhead: The update message overhead is due to the
change of content reachability, which may include content caching
or expiration, content producer mobility etc. The name based
routing approach may require to flood part of the network for
update propagation. In the worst case, the name based routing
approach may flood the whole network (but mitigating techniques
may be used to scope the flooding). The standalone name resolution
approach only requires to update propagation in part of the name
resolution overlay.
- Resolution capability: The standalone name resolution approach
can guarantee the resolution of any content in the network if it
is registered to the name resolution overlay (assuming the content
is being broadcast in the overlay after it is registered). On the
other hand, the name based routing approach can only promise a
high probability of content resolution, depending on the flooding
scope of the content availability information (i.e. content
publishing message and name based routing table).
- Node failure impact: Nodes involved in the standalone name
resolution approach are the name resolution overlay servers (e.g.
Resolution Handlers in DONA), while the nodes involved in the name
based routing approach are routers which route messages based on
locally maintained name based routing tables (e.g. NDN routers).
Node failures in the standalone name resolution approach may cause
some content resolution to fail even though the content is
available. This problem does not exist in the name based routing
approach because other alternative paths can be discovered to
Dong, et al. Expires January 9, 2017 [Page 4]
Internet-Draft Requirements of NRS in ICN October 2016
bypass the failed ICN routers, given the assumption that the
network is still connected.
- Maintained databases: The storage usage for the standalone name
resolution approach is different from that of the name based
routing approach. The standalone name resolution approach
typically needs to maintain two databases: name to locator mapping
in the name resolution overlay and routing tables in the routers
on the data forwarding plane. The name based routing approach
needs to maintain different databases: name routing table and
optionally breadcrumbs for reverse routing of content back to the
requester.
2. Definition of Name Resolution Service in ICN
In ICN design, a name is used to identify an entity, such as named
data content, a device, an application, a service. ICN requires
uniqueness and persistency of the name of any entity to ensure the
reachability of the entity within certain scope and with proper
authentication and trust guarantees. The name does not change with
the mobility and multi-home of the corresponding entity. A client
can always use this name to retrieve the content from network and
verify the binding of the content and the name. Ideally, a name can
include any form of identifier, which can be flat, hierarchical, and
human readable or non-readable.
The Name Resolution Service (NRS) is defined as the service that is
provided by ICN infrastructure to help a client to reach a specific
piece of content, service, or host using a persistent name. The NRS
could take the standalone name resolution approach to return the
client with the locators of the content, which will be used by the
underlying network as the identifier to route the client's request
to one of the producers. The examples are iDNS [18], Global Name
Resolution Service (GNRS)[9], and Locator/ID Separation Protocol
(LISP)[26][27]based approach. The NRS could take the name based
routing approach, which integrates the name resolution with the
content request message routing. No matter which approach is taken
by the NRS in ICN, it is the most essential component or service of
the ICN infrastructure. The NRS could also take hybrid approach
which can perform name based routing approach from the beginning,
when it fails at certain router, the router can go back to the
standalone name resolution approach. The alternative hybrid NRS
approach also works, which can perform standalone name resolution
approach to find locators of routers which can carry out the name
based routing of the client's request.
Dong, et al. Expires January 9, 2017 [Page 5]
Internet-Draft Requirements of NRS in ICN October 2016
3. Requirements of Name Resolution Service in ICN
3.1. Resolution Guarantee
The NRS must ensure the name resolution success if the matching
content exists in the network, regardless of its popularity, number
of cached copies.
3.2. Delay Sensitivity
The name resolution process provided by the NRS must not introduce
significant latencies. With more number of name record replications,
the number of nodes involved in the name resolution may be reduced.
For example, in the standalone name resolution approach, with the
name record being replicated to higher hierarchy or the peer NRS
server in the overlay, the name resolution can be responded more
promptly. In the content based routing approach, with the content
based routing table being broadcast within the larger scope in the
network, the name resolution and request routing can have higher
probability to successfully reach the nearer copy of the requested
content.
The NRS deployment should balance the number of nodes involved in
the name resolution and the overhead/cost for the name record
replication. To ensure the low latency, the NRS should be able to
route a content request to the closest copy. Message forwarding and
processing should be efficient and computation complexity should be
reasonable low and affordable by the current processor technologies.
3.3. Minimum Inter-Domain Traffic
The NRS must attempt to minimize total traffic, and inter-domain
traffic in particular. In order to achieve that, message propagation
for name resolution and retrieval should retain the locality and
should be kept in the network domain if that domain contains both
the client and the content copy.
For example, a client is requesting the temperature data of the
building that he/she is residing in, the NRS should be able to
return or route to the nearest gateway in the building that stores
such data instead of a remote server in the cloud.
3.4. Failure Resilience
The NRS must ensure resilience to node failures. After a NRS node
fails, the NRS system must be able to restore the name records
Dong, et al. Expires January 9, 2017 [Page 6]
Internet-Draft Requirements of NRS in ICN October 2016
stored in the NRS node. The NRS must also ensure resolution failure
at one NRS node would be resolved and corrected by other NRS nodes.
For example, in the standalone name resolution approach, when a NRS
overlay server fails, the name records should be able to transferred
and recovered in its peer server or its replacement. In the content
based approach, the failure of one ICN router does not cause much
trouble in the name resolution, because the other alternative paths
can be established that bypass the failed ICN router. However, it
requires that the ICN router has propagated its content based
routing information in the network.
3.5. Accuracy
The NRS must provide accurate and up-to-date information on how to
reach the producer(s) of requested content with minimum overhead in
propagation the update information. Content mobility and expiration
must be reflected in the corresponding records in the NRS system
with minimum delay to guarantee the accurate resolution.
For example, a content can be moved from one domain to another
domain due to the mobility of the producer, then the old name record
should be deleted from the NRS system and a new name record should
be added and updated with minimum delay.
3.6. Security and accessibility
The NRS system must be prevented from the malicious users attempting
to hijack or corrupt name records.
The name records must have proper access rights such that the
information contained in the name record would not be revealed to
unauthorized users.
The name records may be associated within certain domain, and cannot
be propagated outside the domain. For example, for content that is
only shared within the community should be restricted within the
community network, outside of which the content does not exist.
3.7. Scalability
The NRS system must to be extremely scalable to support a large
number of content objects as well as billions of users, who may
access the system through various connection methods and devices.
Specially in IoT applications, the data size is small but frequently
generated by sensors.
Dong, et al. Expires January 9, 2017 [Page 7]
Internet-Draft Requirements of NRS in ICN October 2016
Message forwarding and processing, routing table building-up and
name records propagation must be efficient and scalable. The memory
requirement for NRS nodes should be achievable by the current memory
technologies.
3.8. Time Transiency
The NRS should support time-transient content, which is frequently
created in and disappearing from the network. This kind of content
only stays in the network for a short time, which requires the NRS
be able to promptly reflects the records of them in the system. For
example, some video clip only exists in the network for a very short
time, which requires the NRS to promptly update their name records.
3.9. Support for manifest
The NRS should support resolution using manifests. Namely, if a
content object is described by a manifest, the NRS should support
efficient recursive resolution of the names included in the
manifest. Alternatively, if the manifest contains mapping of content
names to location (for instance, DASH manifest contain additional
Base URL for a specific content stream), then this should be
consistent with the mapping obtained from the NRS.
3.10. Interoperability
Considering the emergence of IoT applications, many standard bodies
for IoT have settled their ways for resource/data management. For
example:
- oneM2M[19] uses tree structure to store resources. Each resource
is addressable by its URI. oneM2M resources are linked together by
parent-child relationship or link relationship with pointers.
Resource resolution is indicated in the hierarchical name of the
resources. With one entrance, a client can go anywhere within the
tree structure. As an example, a content is stored under the
container with URI prefix of /CSEBase-ID/AE-ID/container-
ID/contentInstance-ID. From the URI of the content, a client would
be able to easily do the name resolution and go to the oneM2M
server identified by CSEBase-ID.
- IETF CoRE[21] specifies the Resource Directory (RD) [23] for
resource registration and resolution. A RD is a database that
stores links about resources hosted by endpoints (EP), which are
called RD entries. An EP is a server that is associated with a
scheme (e.g. CoAP[22] by default, or HTTP), IP address and port.
It is likely that a physical IoT node may host one or more EPs.
Dong, et al. Expires January 9, 2017 [Page 8]
Internet-Draft Requirements of NRS in ICN October 2016
The RD provides a set of RESTful interface for EPs to register and
maintain sets of RD entries, and for clients to look up resources.
In order for the ICN infrastructure to support IoT applications, the
NRS should provide the interoperability between those existing
resource registries as well as integration of them into the ICN
infrastructure. The NRS should allow different providers to coexist
and for requesters to choose one or more preferred providers on
their own.
3.11. Resolution Result Selection
The NRS may be able to return some of the active producers or all of
them for the client's selection or select the best producer based on
the client's criteria and context information, e.g. producer with
least load, with least response time, etc.
3.12. Heterogeneity
There are heterogeneous content naming schemes[16][19] and name
resolution approaches from different ICN architectures. For example:
- Names in DONA[1] consist of the cryptographic hash of the
principal's public key P and a label L uniquely identifying the
information with respect to the principal. Name resolution in DONA
is provided by specialized servers called Resolution Handlers
(RHs).
- Content in PURSUIT[5] is identified by a combination of a scope ID
and a rendezvous ID. The scope ID represents the boundaries of a
defined dissemination strategy for the content it contain. The
rendezvous ID is the actual identity for a particular content.
Name resolution in PURSUIT is handled by a collection of
Rendezvous Nodes (RNs), which are implemented as a hierarchical
Dynamic Hash Table (DHT)[13][14].
- Names in NDN/CCN[8][10] are hierarchical and may be similar to
URLs. Each name component can be anything, including a dotted
human-readable string or a hash value. NDN/CCN adopts the name
based routing. The NDN router forwards the interest by doing the
longest-match lookup in the Forwarding Information Base (FIB)
based on the content name and the interest is stored in the
Pending Interest Table (PIT).
- In MobilityFirst[9], every network entity, content has a Global
Unique Identifier (GUID). GUIDs are flat 160-bit strings with no
Dong, et al. Expires January 9, 2017 [Page 9]
Internet-Draft Requirements of NRS in ICN October 2016
semantic structure. Name Resolution in MobilityFirst all is
carried out via a Global Name Resolution Service (GNRS).
Although the existing naming schemes are different, they all need to
provide basic functions for identifying a content, supporting trust
provenance, content lookup and routing. The NRS may combine the
advantages of different mechanisms. The NRS may be able to provide a
generic naming schema to resolve any type of content name, either it
is flat or hierarchical.
3.13. Unspecified Content Name
Currently, both the standalone name resolution and name based
routing approaches assume that the content name is known and
specified by the client, which is sometimes not the case. A client
may not know the exact name of the data that he/she is requesting,
for example, a client wants to retrieve the temperature data on
07/21/2015 in San Diego. In this case, the client is only able to
specify some semantics and contextual information of the data that
he/she is looking for.
The NRS may be able to resolve those requests by having a northbound
interface to the other services, which can return the content
name(s) matching the client's request.
4. IANA Considerations
This document makes no specific request of IANA.
5. Conclusions
In this draft, we broaden the definition of NRS in the ICN
infrastructure as the service which can help a client to reach a
producer of the requested content. Thus the NRS could take the
approaches of standalone name resolution, name based routing or
hybrid of the two. With the essence of NRS, it is urgent to identify
the requirements for the NRS design in ICN. In the draft, we propose
the NRS requirements from the different aspects and elaborate each
of them with examples for verification of its importance.
6. Informative References
[1] G. Xylomenos, C. N. Ververidis, V. A. Siris, N. Fotiou, C.
Tsilopoulos, X. Vasilakos, K. V. Katsaros, and G. C. Polyzos,
A Survey of Information-Centric Networking Research,
Communications Surveys and Tutorials, Vol. 16, No. 2, 2014, P.
1024-1049.
Dong, et al. Expires January 9, 2017 [Page 10]
Internet-Draft Requirements of NRS in ICN October 2016
[2] E. Baccelli, C. Mehlis, O. Hahm, T. Schmidt, and M. Wahlisch,
Information Centric Networking in the IoT: Experiments with
NDN in the Wild, in ACM ICN, 2014.
[3] Amadeo, M., Campolo, C., Iera, A., and A. Molinaro, Named data
networking for IoT: An architectural perspective, in European
Conference on Networks and Communications (EuCNC), 2014.
[4] T. Koponen, M. Chawla, B. Chun, A. Ermolinskiy, K. H. Kim,S.
Shenker, and I. Stoica, "A Data-Oriented (and Beyond) Network
Architecture." in ACM SIGCOMM, 2007, pp. 181-192.
[5] FP7 PURSUIT project. http://www.fp7-pursuit.eu/PursuitWeb/.
[6] FP7 SAIL project. http://www.sail-project.eu/.
[7] NSF Named Data Networking project. http://www.named-data.net/.
[8] Content Centric Networking project. http://www.ccnx.org/.
[9] NSF Mobility First project.
http://mobilityfirst.winlab.rutgers.edu/.
[10] V. Jacobson, D. K. Smetters, J. D. Thornton, M. F. Plass, N.
H. Briggs, and R. L. Braynard, "Networking Named Content." in
ACM CoNEXT, 2009.
[11] A. Baid, T.Vu, and D. Raychaudhuri, "Comparing Alternative
Approaches for Networking of Named Objects in the Future
Internet." in IEEE Workshop on Emerging Design Choices in
Name-Oriented Networking (NOMEN), 2012.
[12] M. F. Bari, S. R. Chowdhury, R. Ahmed, R. Boutaba and B.
Mathieuy, "A Survey of Naming and Routing in Information-
Centric Networks.", IEEE Communications Magazine, Vol. 50, No.
12, P. 44-53.
[13] J. Rajahalme, M. Sarela, K. Visala, and J. Riihijarvi, "On
Name-based Inter-domain Routing," Computer Networks, vol. 55,
no. 4, pp. 975-986,March 2011.
[14] K. V. Katsaros, N. Fotiou, X. Vasilakos, C. N. Ververidis, C.
Tsilopoulos, G. Xylomenos, and G. C. Polyzos, "On Inter-Domain
Name Resolution for Information-Centric Networks," in Proc.
IFIP-TC6 Networking Conference,2012.
Dong, et al. Expires January 9, 2017 [Page 11]
Internet-Draft Requirements of NRS in ICN October 2016
[15] Namespace Resolution in Future Internet Architectures,draft-
wang-fia-namespace-01.
[16] PID: A Generic Naming Schema for Information-centric Network,
draft-zhang-icnrg-pid-naming-scheme-03.
[17] D. Zhang, H. Liu, Routing and Name Resolution in Information-
Centric Networks, 22nd International Conference on Computer
Communications and Networks (ICCCN), 2013.
[18] S. Sevilla, P. Mahadevan, J. Garcia-Luna-Aceves, "iDNS:
Enabling Information Centric Networking Through The DNS." Name
Oriented Mobility (workshop co-located with Infocom 2014).
[19] On the Naming and Binding of Network Destinations,
https://tools.ietf.org/html/rfc1498.
[20] oneM2M Functional Architecture TS 0001,
http://www.onem2m.org/technical/published-documents.
[21] Constrained RESTful Environments, CoRE,
https://datatracker.ietf.org/wg/core/charter/, 2013.
[22] RFC 7252, The Constrained Application Protocol (CoAP).
[23] CoRE Resource Directory,
https://datatracker.ietf.org/doc/draft-ietf-core-resource-
directory/.
[24] C. Westphal, E. Demirors, An IP-based Manifest Architecture
for ICN, 2nd ACM Conference on Information-Centric Networking
(ICN 2015).
[25] M. Mosko , G. Scott , I. Solis , C. Wood CCNx Manifest
Specification, http://www.ccnx.org/pubs/draft-wood-icnrg-
ccnxmanifests-00.html.
[26] The Locator/ID Separation Protocol (LISP),
https://datatracker.ietf.org/doc/rfc6830/.
[27] Locator/ID Separation Protocol (LISP) Map-Server Interface,
https://datatracker.ietf.org/doc/rfc6833/.
Dong, et al. Expires January 9, 2017 [Page 12]
Internet-Draft Requirements of NRS in ICN October 2016
Authors' Addresses
Lijun Dong
Huawei Technologies
10180 Telesis Court
Suite 220
San Diego, CA, 92121
Phone:
Email: lijun.dong@huawei.com
Cedric Westphal, GQ Wang
Huawei Technologies
2330 Central Expressway
Santa Clara, CA 95050
Phone:
Email: {cedric.westphal,gq.wang}@huawei.com
Jianping Wang
City University Hong Kong
Email: jianwang@cityu.edu.hk
Dong, et al. Expires January 9, 2017 [Page 13]