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]