Internet DRAFT - draft-karimi-ideas-gnrs

draft-karimi-ideas-gnrs







Network Working Group                                          P. Karimi
Internet-Draft                                              S. Mukherjee
Intended status: Informational                        Rutgers University
Expires: September 13, 2017                               March 12, 2017


                     Global Name Resolution Service
                       draft-karimi-ideas-gnrs-00

Abstract

   This document describes the requirement of a new mapping system,
   explains why DNS was not chosen, follows the introductions of a few
   proposed new mapping system designs.

Requirements Language

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

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."

   This Internet-Draft will expire on September 13, 2017.

Copyright Notice

   Copyright (c) 2017 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



Karimi & Mukherjee     Expires September 13, 2017               [Page 1]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   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
   2.  Specification of Requirements . . . . . . . . . . . . . . . .   3
   3.  Functional Requirements for a Mapping System  . . . . . . . .   3
   4.  The Domain Name System  . . . . . . . . . . . . . . . . . . .   5
   5.  MobilityFirst Name Resolution Service . . . . . . . . . . . .   6
     5.1.  Separation of names, address and flat ID  . . . . . . . .   6
     5.2.  Different Implementations of the GNRS . . . . . . . . . .   7
       5.2.1.  Auspice . . . . . . . . . . . . . . . . . . . . . . .   8
       5.2.2.  Direct Map  . . . . . . . . . . . . . . . . . . . . .   9
       5.2.3.  G Map . . . . . . . . . . . . . . . . . . . . . . . .  10
     5.3.  GNRS summary  . . . . . . . . . . . . . . . . . . . . . .  10
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  11
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  12
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  12
   9.  Normative References  . . . . . . . . . . . . . . . . . . . .  12
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  14

1.  Introduction

   The current Internet architecture which was designed with fixed hosts
   in mind, uses IP address to identify both the users as well as their
   locations.  This overloading of the namespace or location-identity
   conflation [RFC1498] makes deploying basic mobility services such as
   session continuity, multi-homing etc., challenging.  In order for
   future networks to natively support these services, location-
   independent communication for fixed names of various endpoint
   principal (host, content or services) is a crucial underlying
   requirement.

   Separation of names/identities from addressing/location has been
   proposed in multiple architectures to facilitate location-independent
   communication [MF], [RFC6830], [RFC4423], [XIA].  There is a need for
   an efficient resolution system that can therefore provide this
   identity to location translation for all network-attached objects.
   In the current internet a similar resolution of identities (domain
   names) to obtain network locations (IP addresses) is provided by the
   Domain Name System (DNS).  Although the DNS has historically evolved
   significantly from the time it was based on text files to
   sophisticated hierarchically distributed resolvers, it still lacks
   the support for the requirements of next generation networks, i.e. a
   distributed mapping infrastructure that can scale to orders of



Karimi & Mukherjee     Expires September 13, 2017               [Page 2]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   magnitude higher update rates with orders of magnitude of lower user-
   perceived latency.

2.  Specification of Requirements

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

3.  Functional Requirements for a Mapping System

   The following lists the requirements of a mapping system:

   o  Low Propagation and Response Latency: Typical user perceived
      network latency on the ballpark of 100 milliseconds is considered
      acceptable [VMWARE-WP].  Depending on the application and QoS
      metrics, this requirement could be more strict.  For example,
      future 5G applications such as vehicle-to-vehicle safety
      applications or real-time mobile control may require less than one
      millisecond latencies [HUAWEI-WP].  This implies future mapping
      systems should be able to return up-to-date responses within
      milliseconds.  Note that this latency includes both the time to
      update a mapping and the time to return a correct response to a
      querying entity for the mapping.

   o  Scalability: There are approximately 4.9 billion global mobile
      users and according to a recent study, over 20% of these users
      currently change network addresses over 10 times a day
      [LOC-INDEP-ARCH].  Cisco has predicted that by 2021, the number of
      mobile users will go up to 5.5 billion, whereas the total number
      of mobile connected devices could be as high as 12 billion
      [CISCO-VNI].  Therefore the proposed mapping system should scale
      to orders of magnitude higher update scalability than existing
      systems.

   o  Distribution and performance: The mapping system should be
      logically centralized but physically distributed.  The
      distribution of mapping system should be optimized to find the
      sweet spot of minimizing resource cost, lookup latency and update
      latency.  These parameters are tied to one another and the
      performance of the mapping system is directed by them.  The
      optimized geo-distribution of mapping system can be achieved by
      taking into account reactive approaches, like distribution of
      mapping system entities based on the popularity and demand for
      those entries, or proactive approaches using predicted patterns
      for future mobility which determines future demand for entries.





Karimi & Mukherjee     Expires September 13, 2017               [Page 3]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   o  Extensibility and Flexibility: The mapping service should be
      extensible enough to allow newer applications deployable in the
      near future.  The service should go beyond a simple ID to location
      mapping repository to a distributed network service that would
      simplify deployment of a richer set of ID based services.  As an
      example the mapping system should capture relationships like
      grouping between names by providing name-to-name mapping and
      recursive resolution of names.  The syntax and semantics also
      should be flexible enough to allow a multitude of name based
      architectures such as LISP [RFC6830], MF [MF], ILA [ILA], HIP
      [RFC4423], etc., to easily utilize the mapping service as a common
      control plane accessible through well-defined standard API calls.
      Having structure-free and extensible fields in the mapping system
      should provide the desired flexibility.  The structure of the
      mapping system should not be bound to the structure of names.
      This will alleviate the restrictions on the structure of names,
      which will eventually lead to a more generalized mapping system
      usable by any prevailing name-based internet architecture.  The
      extensibility of the fields in the mapping system can allow
      certain service-specific information to be stored in the mapping
      system, for example storing mobility-related information for a
      user.

   o  Security and Reliability: Being a database mapping identities of
      network-attached objects to their network locations (which may be
      correlated to physical locations), the mapping system should be
      resilient to attacks and robust to failures.  Local or private
      instantiations and confidential mappings should also be
      provisioned for.  However, there should not be a single root of
      trust.  Access control is an important security aspect of a name
      resolution service.  Some of the attributes bound to a name might
      contain sensitive information, in which case the principal in
      charge of that instance of the mapping system can maintain access
      control for each row-column pair and type of operation (read or
      write).  The access control policy can be specified in the form of
      a blacklist or whitelist of names that are allowed to perform the
      corresponding operation on that attribute.

   This list of functional requirements is not comprehensive.  Please
   refer to [IDEAS-PS] for a detailed discussion on the requirements for
   the next-generation mapping and resolution services.  The goal of
   this document is to highlight key functional requirements which are
   not well-handled by existing mapping systems such as the DNS and the
   proposed LISP DDT.







Karimi & Mukherjee     Expires September 13, 2017               [Page 4]

Internet-Draft              karimi-ideas-gnrs                 March 2017


4.  The Domain Name System

   The DNS is a distributed mapping service ubiquitously used for
   translating human readable names/URLs to IP addresses.  DNS database
   is stored in a structured zone file which hierarchically divides the
   name space into zones and distributes it over a collection of DNS
   servers.  The top-down hierarchy in DNS servers is as follows: Root
   servers (13), Top-Level Domain servers (TLD includes generic domains,
   country domain and managed professionally domains), Authoritative DNS
   servers (providing public records for domain names).

   The resolution of domain names follows the same hierarchy.  Each
   network host is affiliated with a local DNS server (via DHCP or
   configuration) which is configured with initial cache of publicly-
   known addresses for root name servers (the top of the hierarchy).
   This functionality can also be put on the application to query the
   DNS directly.  The root servers usually do not conduct the resolution
   directly and instead will refer to resolver to TLDs and authoritative
   servers iteratively.  This iterative back-and-forth messaging will
   result in really large DNS query latency and massive amount of
   unnecessary traffic.  In order to reduce DNS traffic overhead,
   decrease the latency for the end-user application and improve
   efficiency caching of DNS query results is performed by local DNS
   servers or browsers.

   DNS suffers from high propagation and response latency.  The DNS name
   resolution is initiated by the client process calling the resolver to
   return a cached record or, in case of a cache miss, request the DNS
   for the record of a given domain name.  The request is sent to the
   DNS root server and the referral will be forwarded iteratively
   between the local DNS server and along the DNS hierarchy and the
   chain of authoritative DNS servers.  In summary the lookup latency
   for DNS query will consist of a) the latency from the client to the
   resolver and b) from the resolver through the DNS hierarchy, if there
   is no available cache for that name.

   a) Client to resolver latency: In [DNS-MEASURE1], thorough latency
   measurements from global vantage points to 9 most commonly used
   public DNS providers is provided.  It has been shown that the average
   latency for cached queries (no cache-misses were counted) vary from
   38-159 millisecond based on the provider.  The latency and its
   variation is governed by the number and location of data centers,
   anycast routing latency, additional caching [GOOGLE-EDGE], congestion
   and load on servers, etc.

   b) Iterative lookup along DNS hierarchy latency: This latency
   consists of back-and-forth latency between the resolvers and root
   servers, TDLs and the authoritative name servers, specifically when



Karimi & Mukherjee     Expires September 13, 2017               [Page 5]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   there is a cache miss in the resolver.  This latency can be
   exacerbated by unprovisioning and high queues at the DNS resolvers
   and malicious traffic [GOOGLE-DNS].  In [DNS-MEASURE2], the global
   average latency for the fastest root server within each country has
   been reported as 70 ms.  To the best of our knowledge there has not
   been a recent comprehensive measurement of latencies to access TDLs
   and authoritative name servers.  This is reasonable as the geo-
   distribution and number of TDLs and authoritative nameservers are
   very diverse.  However considering the static placement of
   authoritative name servers in most of the cases, unless the domain
   name being served by services like Google's cloud DNS
   [GOOGLE-CLOUDDNS], the latency from the resolvers to authoritative
   name servers will be unresponsive to the change in popularity/demand
   for the domain names it is responsible for, and hence will supposedly
   have high values for some cases.  In [GOOGLE-DNS], the actual end-to-
   end resolution time is estimated to be around 300-400 ms with high
   variance and long tail.

   There have been many proposals focused on improving the lookup
   latency for the DNS resolvers [CODONS] and a number of public DNS
   resolvers like Google public DNS [GOOGLE-DNS] which perform more
   optimized lookups (measurements of which have been discussed above).
   However, low lookup latency values can be achieved only if an
   optimally-located DNS resolver has a cache hit for the lookup query.
   Unfortunately, cache misses are fundamentally difficult to avoid due
   to internet growth and size, low TTL and cache isolation.  Heavy
   reliance of DNS's performance on TTL-based caching is a known issue.
   Despite the benefits of TTL-based caching for static contents, what
   DNS has been designed for, caching becomes completely ineffective for
   highly mobile users or CDNs which require close to zero TTL values
   for mobility or load balancing purposes.  This is discussed in more
   details in the next section.

5.  MobilityFirst Name Resolution Service

5.1.  Separation of names, address and flat ID

   MobilityFirst is a clean-slate future internet architecture with
   principal design goals of mobility and trustworthiness.  The vision
   of MobilityFirst is that due to the abundance of mobile users,
   ranging from cellphones to drones, mobility should be treated as a
   first-class service.  The current approaches to provide mobility like
   mobile IP [RFC5944] suffer from routing inefficiency (both in terms
   of latency and overhead) due to tunneling all the data through an
   anchor point.  In MobilityFirst these goals are achieved by the clean
   separation of names and addresses.  Every network entity is
   represented by a flat self-certifying identifier, which is location-
   independent and allows network layer authentication through a



Karimi & Mukherjee     Expires September 13, 2017               [Page 6]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   bilateral procedure.  In addition to GUID which is a statically
   assigned identifier, each point of attachment of a network entity to
   the network will be assigned a network address (similar to IP
   addresses), which can dynamically change.

   Binding the GUID to network addresses is facilitated by a global name
   resolution service, which is a logically centralized but physically
   distributed called the GNRS (Global Name Resolution Service).

   In today's internet the DNS provides the functionality of going from
   a human-readable name to an IP address determining where the name is
   located.  DNS provides this service to the end-point applications.
   However, in MobilityFirst a human-readable name is translated to the
   corresponding GUID (globally-unique identifier) through the ORS
   (Object Resolution Service).  It is noteworthy that this operation
   happens infrequently as GUIDs are statically assigned.

   Within the network the tuple [GUID, Network Address (NA)] is a
   routable destination identifier carried in packet headers.  So after
   obtaining the corresponding GUID, the next step is to discover the
   location for that GUID.  GNRS is the service that performs this name
   to address resolution.  This allows the entities to retain their
   long-lasting globally unique identifiers and maintain reachability
   and session continuity more effectively.

5.2.  Different Implementations of the GNRS

   MobilityFirst relies heavily on the name service for advanced
   network-layer functionalities.  This reliance necessitates high
   performance for the name service, which depends on resolving
   identifiers to dynamic attributes in a fast, consistent, and cost-
   effective manner at Internet scale.  As mentioned before, a name
   resolution service should support two main functionalities: insert/
   update and lookup.  These operations which include querying the
   massively distributed name resolution service by any node in the
   network (an end-host or a router) should not induce a big overhead.

   To achieve this goal, large geo-distributed deployment of name
   servers is necessary.  The challenge will be to ensure the placement
   of a consistent replica close to its demand regions, while taking
   into account frequent updates due to mobility.  There have been two
   major proposals for the efficient implementation and deployment of
   GNRS: 1) DHT-based name service, in which hash of a name determines
   where the mapping entry for that name should be stored [DMAP].  In a
   more advanced version of this implementation, popularity and locality
   has been integrated into storing the mapping entries as well [GMAP].
   2) Demand-aware mapping entry replica placement engine that




Karimi & Mukherjee     Expires September 13, 2017               [Page 7]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   intelligently replicates name records to provide low lookup latency,
   low update cost, and high availability [AUSPICE].

   All of these design and deployment proposals argue that a DNS-like
   design is ill-suited to enable fast, consistent and cost-effective
   query-update mechanism.  DNS's TTL-based caching mechanism is one of
   the strengths of DNS, with long TTLs reducing client-perceived
   latency and overhead on the infrastructure.  However, this very
   strength of DNS, can pose serious challenges in the face of frequent
   node mobility, which requires near-zero TTL values to ensure
   consistent responses.  Low TTL values make caching ineffective and
   exacerbate update propagation times.  Moreover, authoritative name
   servers need high provisioning to keep low lookup latencies which
   will increase the maintenance cost for the mapping system.

5.2.1.  Auspice

   The main design goal of Auspice is to provide an automated
   infrastructure for the placement of geo-distributed name resolvers.
   The two main components of Auspice are the replica controllers, which
   determine the number and geo-location of name resolvers, and the name
   resolvers, which are responsible for maintaining the identifier's
   attributes and replying to user-request read or write operations.
   Each name is associated to a fixed number, k , of replica-controllers
   and a variable number of active replicas of the corresponding
   resolver.

   Replica controllers: They have fixed number of locations computed
   using k well-known consistent hash functions.  Replica controllers
   take into account the popularity and frequency of queries, which can
   dynamically change in short and long timescale.  Having an automated
   resolver placement as an infrastructure service relinquishes the
   manual and redundant effort from authoritative name servers to do
   this task.  Paxos [PAXOS] is executed for consistency, coordination
   and fault tolerance between replica controllers.

   Replica controllers are in charge of responding to client's requests
   for a GUID.  Specifically, if a sender want to communicate with
   GUID_A, it will perform a consistent function on GUID_A.  The result
   of this hashing will be a list of current replica controllers
   responsible for GUID_A.  This request is then redirected to name
   resolvers, where the attribute for GUID_A are stored.

   Name resolvers: The resolvers host active replicas for identifiers.
   The decision to distribute/migrate all the active replicas for
   identifiers is made at pre-determined time period called an epoch.
   In each epoch, the replica-controllers receive a summarized load
   report, which can be a spatial vector of request rates for an



Karimi & Mukherjee     Expires September 13, 2017               [Page 8]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   identifier from different regions seen by the active replica.  By
   aggregating these load reports, the replica-controller will develop a
   concise spatial distribution of request for identifiers.

   After having this distribution of requests and capacity constraints
   at the mapping servers, the replica-controllers will use a mapping
   algorithm to determine the number and location of active replicas for
   an identifier.

   The number of active replicas is proportional to the ratio of the
   read rate and write rate for an identifier.  The placement of active
   replicas is based on highest number of requests in addition to some
   random locations for load balancing.  Redirecting the client's
   requests to corresponding active replicas is done taking into account
   name server load and latency to it.

   One important challenge for updating the name servers is to maintain
   write consistency between the various active replicas of a GUID.  The
   consistency is maintained by Paxos, by forwarding the write to any
   GUID attribute to the current Paxos coordinator node.  After
   numbering the request and checking with the majority of replicas the
   coordinator will send a commit notification to all replicas.

5.2.2.  Direct Map

   The direct mapping (DMap) design was the first proposed
   implementation which is an in-network approach, wherein every
   autonomous system (AS) in the world participate in a hashmap based
   name resolution service and share the workload of hosting GUID to
   network address mapping.  Assuming the underlying routing to be
   stable and all networks to be reachable, DMap hashes every GUID to K
   network addresses (which are IP addresses in this case) and then
   stores the mapping at those K addresses.  Every time the mapping
   changes, K update messages are sent to each of the servers at these
   locations.  Correspondingly every query for the current mapping of
   the GUID is anycasted to the nearest of the K locations.

   DMap is the simplest of the three designs and it manages workload
   balance across all ASes efficiently.  Since uniform hash functions
   decide where a mapping is stored, basic DMap implementation is not
   suitable for optimized mapping placement based on the service
   requirements.  However the focus of this work was on providing a
   globally available mapping system with high availability, and
   moderate latencies, making it ideal to handle basic mobility and
   services with medium latency requirements.  Detailed internet scale
   simulation of DMap shows that with 3 replicas per GUID the 98\%
   latency is around 100 milliseconds [DMAP], which is reasonable for
   most user-mobility centric applications.



Karimi & Mukherjee     Expires September 13, 2017               [Page 9]

Internet-Draft              karimi-ideas-gnrs                 March 2017


5.2.3.  G Map

   GMap [GMAP] is an updated version of DMap, in which the GUID ->
   address mapping is distributed considering geo-location and local
   popularity.  For each GUID, similar consistent hash functions are
   used to assign resolution servers.  However for each mapping, the
   servers are categorized into local, regional and global sets, based
   on geo-locality.  Each mapping now gets replicated into K1 local
   servers, K2 regional servers and K3 global servers.  Therefore,
   unlike Auspice, GMap does not require per-GUID replica optimization,
   but still achieves better latency goals than DMap, at the cost of
   higher storage workload, due to increased number of replicas per
   GUID.  In addition, GMap allows temporary in-network caching of the
   mapping along the route between a resolution server and a querying
   entity, to ensure future mapping requests for the same GUID can be
   resolved faster.  Internet-scale simulations show GMap to achieve
   similar latency goals of tens of milliseconds as Auspice but with
   lower complexity and computation overhead.

5.3.  GNRS summary

   A summary of different functionalities and features for these name
   resolution implementations is shown in Table.1.




























Karimi & Mukherjee     Expires September 13, 2017              [Page 10]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   +-----------+---------------+--------------------+------------------+
   |           |    Auspice    |        GMap        |       DMap       |
   +-----------+---------------+--------------------+------------------+
   |  Location |  overlaid on  |     in-network     |    in-network    |
   |  relative |     top of    |                    |                  |
   |     to    |    network    |                    |                  |
   |  network  |               |                    |                  |
   |-----------|---------------|--------------------|------------------|
   |           |               |                    |                  |
   | Algorithm |  Demand-aware |  Distributed hash  | Distributed hash |
   |    type   |   replicated  |       table        |      table       |
   |           | state machine |                    |                  |
   |-----------|---------------|--------------------|------------------|
   |           |               |                    |                  |
   |   Record  |    GUID to    | GUID to arbitrary  |  GUID to upto 5  |
   |  content  |   arbitrary   | values(recursively |  NAs, each with  |
   |           |   number of   |   other GUIDs or   |  an expiration   |
   |           |     values    | Network Addresses) |     time and     |
   |           |               |                    |  prioritization  |
   |           |               |                    |      weight      |
   |-----------|---------------|--------------------|------------------|
   |           |               |                    |                  |
   |    Name   |  Geo-located  | Geo-located based  | Not Geolocated,  |
   |   server  |    based on   | on GUIDs physical  | One name server  |
   | placement |    requests   |      location      | in the GUIDs AS  |
   |-----------|---------------|--------------------|------------------|
   |           |               |                    |                  |
   | Number of |    Based on   | Fixed number; each |  Fixed number:   |
   |  replicas | recent demand | GUID has K1 local, | each GUID has K  |
   |  per GUID |   and update  |  K2 regional, K3   | global, 1 local  |
   |           |   frequency   |  global replicas   |     replicas     |
   |-----------|---------------|--------------------|------------------|
   |           |               |                    |                  |
   |  Caching  |  No caching;  |  Caches response   |   Future work    |
   |           |      load     |   along the path   |                  |
   |           |  balancing by |   from querying    |                  |
   |           |   adjusting   |  entity and name   |                  |
   |           |   number of   |       server       |                  |
   |           |  name servers |                    |                  |
   +-----------+---------------+--------------------+------------------+

   Table.1 Summary of different name resolution implementations

6.  Security Considerations

   TBD.





Karimi & Mukherjee     Expires September 13, 2017              [Page 11]

Internet-Draft              karimi-ideas-gnrs                 March 2017


7.  Acknowledgements

   TBD.

8.  IANA Considerations

   TBD.

9.  Normative References

   [AUSPICE]  Sharma, A., Tie, X., Uppal, H., Venkataramani, A.,
              Westbrook, D., and A. Yadav, "A global name service for a
              highly mobile internetwork", 2014,
              <http://dl.acm.org/citation.cfm?id=2626331>.

   [CISCO-VNI]
              "Cisco Visual Networking Index: Global Mobile Data Traffic
              Forecast Update, 2016-2021", 2017,
              <http://www.cisco.com/c/en/us/solutions/collateral/
              service-provider/visual-networking-index-vni/
              mobile-white-paper-c11-520862.pdf>.

   [CODONS]   Ramasubramanian, V. and E. Sirer, "The design and
              implementation of a next generation name service for the
              internet", 2004,
              <http://dl.acm.org/citation.cfm?id=1015504>.

   [DMAP]     Vu, T., Baid, A., Zhang, Y., Nguyen, T., Fukuyama, J.,
              Martin, R., and R. Raychaudhuri, "DMap: A Shared Hosting
              Scheme for Dynamic Identifier to Locator Mappings in the
              Global Internet", 2012,
              <http://ieeexplore.ieee.org/abstract/document/6258042/>.

   [DNS-MEASURE1]
              "Comparing Latency of the Top Public DNS Providers", 2015,
              <https://blog.thousandeyes.com/comparing-latency-top-
              public-dns-providers/>.

   [DNS-MEASURE2]
              "Comparing Root Server Performance Around the World",
              2015, <https://blog.thousandeyes.com/comparing-dns-root-
              server-performance/>.

   [GMAP]     Hu, Y., Yates, R., and R. Raychaudhuri, "A Hierarchically
              Aggregated In-Network Global Name Resolution Service for
              the Mobile Internet", WINLAB TR 442, March 2015.





Karimi & Mukherjee     Expires September 13, 2017              [Page 12]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   [GOOGLE-CLOUDDNS]
              "Reliable, resilient, low-latency DNS serving from
              Google's worldwide network", <https://cloud.google.com/
              dns/>.

   [GOOGLE-DNS]
              "Google Public DNS", <https://developers.google.com/speed/
              public-dns/docs/performance>.

   [GOOGLE-EDGE]
              "Google Edge Caching Project",
              <https://peering.google.com/>.

   [HUAWEI-WP]
              "5G: A Technology Vision", 2013,
              <http://www.huawei.com/5gwhitepaper>.

   [IDEAS-PS]
              Pillay-Esnault, P., Boucadair, M., Jacquenet, C.,
              Fioccola, M., and A. Nennker, "Problem Statement for
              Mapping Systems in Identity Enabled Networks", March 2017,
              <https://datatracker.ietf.org/doc/draft-padma-ideas-
              problem-statement/>.

   [ILA]      Herbert, T., "Identifier-locator addressing for network
              virtualization", March 2016,
              <https://datatracker.ietf.org/doc/draft-herbert-
              nvo3-ila/>.

   [LOC-INDEP-ARCH]
              Gao, Z., Venkataramani, A., Kurose, J., and S. Heimlicher,
              "Towards a Quantitative Comparison of Location-Independent
              Network Architectures", 2014,
              <http://dl.acm.org/citation.cfm?id=2626333>.

   [MF]       Venkataramani, A., Kurose, J., Raychaudhuri, D., Nagaraja,
              K., Mao, M., and S. Banerjee, "MobilityFirst: a mobility-
              centric and trustworthy internet architecture", 2014,
              <http://dl.acm.org/citation.cfm?id=2656888>.

   [PAXOS]    Lamport, L., "The part-time parliament", 1998,
              <http://dl.acm.org/citation.cfm?id=279229>.

   [RFC1498]  Saltzer, J., "On the Naming and Binding of Network
              Destinations", RFC 1498, August 1993.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.



Karimi & Mukherjee     Expires September 13, 2017              [Page 13]

Internet-Draft              karimi-ideas-gnrs                 March 2017


   [RFC4423]  Moskowitz, R. and P. Nikander, , RFC 4423, May 2006.

   [RFC5944]  Perkins, C., "IP Mobility Support for IPv4, Revised",
              RFC 5944, November 2010.

   [RFC6830]  Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "The
              Locator/ID Separation Protocol (LISP)", RFC 6830, January
              2013.

   [VMWARE-WP]
              "VMware View 5 with PCoIP, Network Optimization Guide
              White Paper", 2011, <http://www.vmware.com/content/dam/dig
              italmarketing/vmware/en/pdf/whitepaper/view/vmware-view-5-
              pcoip-network-optimization-guide-white-paper.pdf>.

   [XIA]      Anand, A., Dogar, F., Han, D., Li, B., Lim, H., Wu, W.,
              Akella, A., Andersen, D., Byers, J., and S. Seshan, "XIA:
              Efficient Support for Evolvable Internetworking", 2012,
              <https://www.usenix.org/system/files/conference/nsdi12/
              nsdi12-final13.pdf>.

Authors' Addresses

   Parishad Karimi
   Rutgers University

   Email: parishad@winlab.rutgers.edu


   Shreyasee Mukherjee
   Rutgers University

   Email: shreya@winlab.rutgers.edu


















Karimi & Mukherjee     Expires September 13, 2017              [Page 14]