Internet DRAFT - draft-herbert-ila-mobile

draft-herbert-ila-mobile



 



INTERNET-DRAFT                                                T. Herbert
Intended Status: Informational                                Quantonium
Expires: September 2018                                      K. Bogineni
                                                                 Verizon
                                                                        
                                                           March 6, 2018


          Identifier Locator Addressing for Mobile User-Plane
                      draft-herbert-ila-mobile-01



Abstract

   This document discusses the applicability of Identifier Locator
   Addressing (ILA) to the user-plane of mobile networks. ILA allows a
   means to implement network overlays without the overhead,
   complexities, or anchor points associated with encapsulation. This
   solution facilitates highly efficient packet forwarding and provides
   low latency and scalability in mobile networks. ILA can be used in
   conjunction with techniques such as network slices and Network
   Function Virtualization to achieve optimal service based forwarding. 

Status of this Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as
   Internet-Drafts.

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

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/1id-abstracts.html

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html


Copyright and License Notice

 


T. Herbert             Expires September 6, 2018                [Page 1]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   Copyright (c) 2018 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  . . . . . . . . . . . . . . . . . . . . . . . . .  4
   2  Conventions and Terminology . . . . . . . . . . . . . . . . . .  5
   3  Motivation  . . . . . . . . . . . . . . . . . . . . . . . . . .  5
   4  Reference topology  . . . . . . . . . . . . . . . . . . . . . .  6
     4.1 ILA routers (ILA-R)  . . . . . . . . . . . . . . . . . . . .  6
       4.1.1 Forwarding routers . . . . . . . . . . . . . . . . . . .  7
       4.1.2 Mapping resolution . . . . . . . . . . . . . . . . . . .  7
     4.2 ILA forwarding nodes (ILA-N) . . . . . . . . . . . . . . . .  7
       4.2.1 ILA to SIR address transformation  . . . . . . . . . . .  7
       4.2.2 ILA forwarding . . . . . . . . . . . . . . . . . . . . .  8
     4.3 ILA hosts (ILA-H)  . . . . . . . . . . . . . . . . . . . . .  8
     4.4 ILA management (ILA-M) . . . . . . . . . . . . . . . . . . .  9
   5 Data plane operation . . . . . . . . . . . . . . . . . . . . . .  9
     5.1 SIR to ILA transformation  . . . . . . . . . . . . . . . . . 10
     5.2 ILA to SIR transformation  . . . . . . . . . . . . . . . . . 11
     5.3 Data path efficiency . . . . . . . . . . . . . . . . . . . . 11
     5.4 Alternative data path use cases  . . . . . . . . . . . . . . 12
     5.5 Locator chaning  . . . . . . . . . . . . . . . . . . . . . . 12
     5.6 ICMP handling  . . . . . . . . . . . . . . . . . . . . . . . 12
   6  Control plane . . . . . . . . . . . . . . . . . . . . . . . . . 12
     6.1 ILA router mapping database  . . . . . . . . . . . . . . . . 13
       6.1.1 ILA with BGP . . . . . . . . . . . . . . . . . . . . . . 13
       6.1.2 Key/value store  . . . . . . . . . . . . . . . . . . . . 13
     6.2 ILA Mapping Protocol . . . . . . . . . . . . . . . . . . . . 13
     6.3  Address assignment  . . . . . . . . . . . . . . . . . . . . 14
       6.3.1 Singleton address assignment . . . . . . . . . . . . . . 14
       6.3.2 Network prefix assignment  . . . . . . . . . . . . . . . 14
   7  ILA in 5G networks  . . . . . . . . . . . . . . . . . . . . . . 15
     7.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . 15
     7.2 Protocol layering  . . . . . . . . . . . . . . . . . . . . . 16
     7.3 Control plane between ILA and network  . . . . . . . . . . . 16
     7.4 ILA and network slices . . . . . . . . . . . . . . . . . . . 17
 


T. Herbert             Expires September 6, 2018                [Page 2]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   8  Security considerations . . . . . . . . . . . . . . . . . . . . 18
     8.1 Data plane security  . . . . . . . . . . . . . . . . . . . . 18
     8.2 Control plane security . . . . . . . . . . . . . . . . . . . 19
     8.3 Privacy in address assignment  . . . . . . . . . . . . . . . 20
   9  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 21
     9.1  Normative References  . . . . . . . . . . . . . . . . . . . 21
     9.2  Informative References  . . . . . . . . . . . . . . . . . . 22
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 22








































 


T. Herbert             Expires September 6, 2018                [Page 3]

INTERNET DRAFT          draft-herbert-ila-mobile                        


1  Introduction

   In mobile networks, mobility management systems provide connectivity
   while mobile nodes move around.  A control-plane system signals
   movements of a mobile node, and a user-plane establishes tunnels
   between mobile nodes and anchor nodes over IP based backhaul and core
   networks.

   This document discusses the applicability of Identifier Locator
   Addressing (ILA) to those mobile networks. ILA is a form of
   identifier/locator split where identity and location of a node are
   disassociated in IP addresses. ILA nodes transform destination
   addresses of packets by overwriting part of the address with a
   locator. The locator provides the topological address for forwarding
   a packet towards its destination. Before a packet is delivered to the
   end destination, the destination address is reverted to its original
   value.

   An ILA mobile user-plane implementation needs both data plane and
   control plane components.

   The data plane includes the ILA transformation processing as well as
   handling to maintain conformance with IP protocols. The ILA data
   plane is described in [ILA].

   The control plane's primary function is to maintain a mapping
   database that is shared amongst ILA nodes. The mapping database
   contains entries for the mobile nodes in the network, and the number
   of mapping entries is expected scale into the billions. In order to
   scale, a two level hierarchy of ILA nodes is defined by ILA routers
   and ILA forwarding nodes.

   ILA routers maintain a full set of ILA mappings. Routers may be
   replicated for redundancy and load balancing. The mapping system may
   also be sharded, so that each router is responsible for a shard.
   Routers use a protocol to synchronize the mappings for each shard.

   ILA forwarding nodes perform a reverse ILA transformations to restore
   the destination address in packets before delivery. A forwarding node
   can also maintain a cache of ILA mappings to perform transformations
   on intra domain traffic as an optimization to avoid having to forward
   packets through ILA routers. Forwarding nodes are typically located
   close to the mobile nodes. The ILA Mapping Protocol [ILAMP] is used
   between forwarding nodes and ILA routers to manage the cache.




 


T. Herbert             Expires September 6, 2018                [Page 4]

INTERNET DRAFT          draft-herbert-ila-mobile                        


2  Conventions and Terminology

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

   ILA related terms are defined in [ILA].

3  Motivation

   Emerging applications such as VR, AR, and autonomous vehicle
   communication require very low latency, high bandwidth, and high
   reliability. For mobile devices, these requirements must not only be
   met when the device is stationary, but also across handover during
   mobile events. Mobility needs to be a seamless operation where IP
   addresses and connections are maintained. In a second dimension, the
   number of connected mobile devices, including a large contingent of
   IoT devices, is expected to grow by several orders of magnitude
   within a few years as enabling technologies such as 5G are deployed.

   The convergence of mobile networks and datacenter networks is also
   pertinent. Simple physics (i.e. speed of light) dictates that very
   low latency for applications (order of less than five milliseconds)
   can only be achieved by placing application servers in close
   proximity to clients and minimizing the number of network hops. An
   emerging trend is for providers to house datacenters within the
   network to run applications. For similar reasons, many providers are
   integrating multi-tenant cloud services directly in their mobile
   networks. The upshot is that mobile networks need to support the
   convergence of mobile devices, datacenter virtualization, and cloud.
   A single solution framework for all of this is desirable.

   Current mobile architecture is hitting the limits of scalability and
   performance. In particular, anchor points used in 3GPP have become
   single points of failure, bottlenecks, and lead to sub-optimal
   triangular routing. The anchor model is also inflexible in attempts
   to leverage services of the transport network such as network slices
   and Network Function Virtualization. The control plane to manage
   millions of GTP tunnels is complex and difficult to scale. GTP-U is
   narrowly defined for a particular use case, which makes it difficult
   to leverage for other use cases. The use of any in-network tunneling,
   including GTP, raises issues of overhead, MTU and fragmentation,
   security, and other complexities.

   ILA is a proposed alternative to GTP-U and encapsulation. It does not
   require anchors and simplifies both the data plane and control plane.
   ILA has zero wire overhead so there are no issues around MTU and
   fragmentation. Its use is transparent to the network, and it is
 


T. Herbert             Expires September 6, 2018                [Page 5]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   compatible with existing hardware and commonly deployed protocol
   optimizations. ILA is a general network overlay protocol to meet the
   requirements of use cases in a converged network. User Plane
   Functions (UPF) with ILA are lightweight and stateless such that they
   can be brought up quickly as needed.

4  Reference topology

   Figure 1 shows an example topology of ILA in a mobile network.


        [MN]                    O---------------O
          |                     |   App Server  |
       ___v___                  |               |
      /  Radio \   o-------o    |   +--------+  |
     /  Access  \==| ILA-N |    |   | ILA-H  |  |
     \    NW    /  o-------o    |   +--------+  |     o-------o
      \________/         \      O---------------O     | ILA-M |
                          \            ||             o-------o
       [MN]                \     ______||__     
         |                  \   /          \    
      ___v___                \ /            \                 ________
     /  Radio \   o-------o   /              \   o-------o   /        \
    /  Access  \==| ILA-N |==/   IPv6-Only    \==| ILA-R |==/    DN    \
    \    NW    /  o-------o  \   Network      /  o-------o  \(Internet)/
     \________/               \              /               \________/
                               \            /
                                \__________/

                      Figure 1: Mobile User-plane with ILA


   There are four types of functional nodes in the ILA architecture:

      o ILA routers (ILA-R)

      o ILA forwarding nodes (ILA-N)

      o ILA hosts (ILA-H)

      o ILA managment (ILA-M)

4.1 ILA routers (ILA-R)

   ILA routers are deployed within the network infrastructure and
   collectively contain a mapping database of all identifier to locator
   mappings in an ILA domain. The database may be sharded across the
   identifier space by some number of ILA routers for scalability. ILA
 


T. Herbert             Expires September 6, 2018                [Page 6]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   routers may also be replicated for scalability and availability.

   ILA routers provide two main functions: ILA forwarding and mapping
   resolution. An ILA router may perform one both of these functions at
   the same time. If a router performs both functions it may send ILA
   redirects.

4.1.1 Forwarding routers

   Forwarding routers perform ILA transformations when packets enter an
   ILA domain. A destination address of a packet that is a SIR address
   is transformed to an ILA address. The process is that the router
   performs a lookup on the destination address in a mapping table and a
   locator is returned. The locator is written into the destination
   address of the packet (typically the high order sixty-four bits are
   overwritten with a locator).

   In the case of a sharded database, the high order bits of the
   identifier indicate the shard number. This is included in a routing
   prefix so that the packet is routed to an ILA router that contains
   the database for the indicated shard.

4.1.2 Mapping resolution

   An ILA router that is performing mapping resolution will respond to
   mapping requests from ILA forwarding nodes or ILA hosts (these are
   described below). The mapping request protocol allows the caller to
   request the locator for an identifier address.

4.2 ILA forwarding nodes (ILA-N)

   ILA forwarding nodes are deployed in the network infrastructure
   towards the edges to provide ILA transformations for end devices. ILA
   forwarding nodes have two functions: ILA to SIR address
   transformation and ILA forwarding. As indicated in the reference
   topology, forwarding nodes may be deployed near the point of device
   attachment (e.g. base station, eNodeB) of mobile nodes.

4.2.1 ILA to SIR address transformation

   In the path towards the end devices, forwarding nodes perform ILA to
   SIR address transformation. That is, they perform a reverse ILA
   transformation in order to restore the original addresses in packet.
   Forwarding the packet on to the destination is done based on the SIR
   address. For instance, an eNodeB may map a SIR address to a layer 2
   address of the attached device that has the SIR address. Note that
   this functionality is required somewhere in the path between the ILA
   node that writes a locator into an address and the ultimate
 


T. Herbert             Expires September 6, 2018                [Page 7]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   destination device (e.g. a UE). It is not recommended that this
   functionality is implemented on end user devices.

   When a node migrates its point of attachment from one ILA-N to
   another, the local mapping on the old ILA-N is removed. If an ILA
   addressed packet is received by an ILA-N for which there is no local
   mapping, then the packet is forwarded back into the network with a
   destination SIR address. The packet should be forwarded through an
   ILA router that can perform the tansformation for the new ILA-N. A
   "negative" mapping with timeout may also be set in an ILA-N to ensure
   that ILA-N is able to infer the SIR address (e.g. would be needed
   with non-local identifiers).

4.2.2 ILA forwarding

   A forwarding node may perform ILA transformation and forward packets
   directly to peer ILA nodes in the same domain. The mappings for this
   are maintained in a working set cache in each ILA-N. As a cache there
   must be methods to populate, evict, and timeout entries. A cache is
   considered an optimization, so the system should be functional
   without its use (e.g. if the cache has no entries). The possibility
   of Denial of Service attack (DOS) on a cache being populated by
   unmanaged outside events, in this case mobile devices sending packets
   to arbitrary destinations, must be considered in the cache design.

   If a packet is received by an ILA forwarding node from a downstream
   node that is destined to another node in the same ILA domain for
   which there is no existing cache entry, then:

      o The packet is forwarded by address. The SIR address plus shard
        identifier prefix will route the packet to a forwarding ILA
        router which will perform ILA transformation of the packet to
        reach its destination.

      o An ILA router may return an ILA redirect to inform the
        forwarding node of a direct ILA mapping.

      o If the forwarding node gets a mapping from an ILA router, then
        subsequent packets for the destination can be directly sent
        using the mapping. Note that a forwarding node does not hold
        packets that are pending mapping resolution.

4.3 ILA hosts (ILA-H)

   ILA host are forwarding nodes that are embedded in end servers to
   provide ILA transformation. Since an ILA host is integrated with the
   host stack sourcing packets, there are opportunities for optimizing
   processing.
 


T. Herbert             Expires September 6, 2018                [Page 8]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   ILA is not recommended to run on end user devices, however there may
   be servers or other end devices that are in the provider network that
   might benefit from participating in ILA (this is illustrated in the
   reference topology above). A server that implements ILA forwarding
   can directly send to ILA peers in the same domain to avoid triangular
   routing.

4.4 ILA management (ILA-M)

   The ILA management node provides the interface between the ILA
   infrastructure and mobile management of a network. Similar to ILA-Rs
   there may be multiple ILA-Ms in the network and they can be
   replicated for redundancy and load distribution. Data managed by ILA-
   Ms needs to be synchronized across ILA-Ms. It is conceivable that the
   set of ILA-Ms could be split into shards serving different geographic
   area in order to localize data.  ILA-Ms may be co-located with ILA-Rs
   so that there is a fast path between them.

   The management nodes are responsible for:

      o Receiving notifications from the session management in the
        mobile network. Notifications of interest include: when mobile
        nodes attach to the network, are removed from the network, or
        change their point of attachment in the network (i.e. they
        move).

      o Managing identifier groups. Identifier groups are sets of
        identifiers (nodes) that share common properties [ILAGRPS]. In a
        mobile network, identifier groups are used to represent all the
        identifiers assigned to a mobile node. Each mobile node will
        have its own identifier group.

      o Writing identifier locator mappings into the ILA mapping
        database. The written content is based on the information
        provide by session management.

      o Changing the mapping table when a locator for an identifier,
        group, or mobile node changes. A locator for a device changes
        when its point of attachment changes.

      o Creating identifiers for attached devices. Identifiers may be
        persistent so that each time a device attaches it gets the same
        identifier.

      o Registering ILA-Rs, ILA-Ns and their locators. ILA-Ms coordinate
        the operation of ILA nodes in the network.

5 Data plane operation
 


T. Herbert             Expires September 6, 2018                [Page 9]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   ILA performs transformations on IPv6 addresses of packets in flight.
   A SIR to ILA address transformation overwrites the destination
   address with a locator address for forwarding over a network. An ILA
   to SIR address transformation restores an IP address to its original
   contents. The transformations are always paired so that a SIR to ILA
   address transformation is always undone before delivery. End hosts
   and applications only see SIR addresses. Effectively, ILA is a
   mechanism to implement transparent network overlays. Note the process
   is specifically called a "transformation" as opposed to "translation"
   which distinguishes ILA from NAT. NAT translations are not undone
   before reception and NAT is not transparent to the end points.

5.1 SIR to ILA transformation

   SIR to ILA address transformations may be performed by ILA routers,
   ILA forwarding nodes, and ILA hosts.

   SIR to ILA transformation is done by a lookup on the destination
   address in a mapping table. On an ILA router this table contains all
   the entries for the shard the router serves. On a forwarding node or
   host, the table is a cache of entries. If a corresponding entry is
   found, then a locator is returned. The locator is written into the
   destination address.

   If checksum neutral mapping is being used to preserve transport layer
   checksums, then that is indicated in the mapping entry. Checksum
   neutral mangles the low order sixteen bits of the identifier portion
   of the address. The checksum difference between the SIR prefix and
   the locator is added into to the low order sixteen bits of the
   identifier.

   If an ILA router does not find a match on the destination address in
   its table then the packet is dropped as having no route to host.

   If an ILA forwarding node or host does not find a match on the
   destination address, then it forwards the packet unchanged. The
   packet may encounter an ILA router that performs the transformation.

   In response to forwarding a packet, a router might send an ILA
   redirect to an ILA forwarding node. A redirect informs a node of an
   ILA mapping that may be cached to avoid triangular routing when
   forwarding subsequent packets. The destination of a redirect is the
   upstream forwarding node of the source of packet. An ILA router can
   determine this by performing an ILA lookup on the source address of
   the packet being forwarded. This assumes that the source is a SIR
   address for the ILA domain and that the use of ILA is symmetric so
   that the lookup reveals the correct forwarding node; this needs to be
   accounted for in network design.
 


T. Herbert             Expires September 6, 2018               [Page 10]

INTERNET DRAFT          draft-herbert-ila-mobile                        


5.2 ILA to SIR transformation

   Transformed packets are forwarded to an ILA-N or ILA-H based on
   normal routing of the packet with a locator in the its destination
   address (upper sixty-four bits). When a node receives the packet it
   first performs performs an ILA to SIR address transformation by
   mapping the received locator (one local to the node) to a SIR
   address. If checksum neutral mapping has been done, the lower sixteen
   bits in the identifier must be fixed up. This is done by subtracting
   the checksum difference of the SIR address and locator from the low
   order bits of the identifier (the opposite operation of setting the
   checksum neutral bits).

   After transforming a destination back to SIR address, a lookup is
   performed on the identifier to determine if it is local (that is it
   refers to a node that is downstream of the ILA node). If the node is
   local, it is forwarded downstream using normal mechanisms of the
   network. If the node is not local, the SIR addressed packet is
   forwarded back into the network. The packet should traverse an ILA
   router that can transform its destination to the correct locator and
   possibly send a redirect towards the source.

5.3 Data path efficiency

   There basic operations of ILA address transformation, either SIR to
   ILA or ILA to SIR, are:

      1) Read destination address from a packet.

      2) Lookup all or are part of the destination address in table.
         This is a fixed length lookup.

      3) Overwrite all or part of the destination address with a locator
         value returned from the lookup.

      4) Fix the checksum neutral mapping bits in the identifier.

      5) Forward the resultant packet.

   The computationally intensive operations in this path are the lookup
   and checksum neutral processing.

   The lookup operation is on a fixed length key so a simple hash table
   can be used. It is also amenable for use with a hardware TCAM. On an
   ILA host, an ILA mapping may be cached with a connection context so
   that a lookup does not to be performed for every packet sent on the
   connection.

 


T. Herbert             Expires September 6, 2018               [Page 11]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   Checksum neutral processing entails 1's complement arithmetic over
   sixty-four or 128 bit values. In the case that the full 128 bit
   identifier address is a one-to-one mapping with a locator address,
   then the checksum computation is constant for a mapping and can be
   precomputed and saved with the mapping.

5.4 Alternative data path use cases

   ILA supports multicast encoding, virtual networking modes, and
   IPv4/IPv6 translation. These require different processing, and in the
   case of IPv4/IPv6 translation the size of the packet increases.
   However, these alternative cases should not fundamentally increase
   the cost of the lookups since instructions for alternative processing
   can be returned by a lookup.

5.5 Locator chaning

   ILA allows multiple locator transformations to effectively implement
   hop-by-hop source routing. This can be used to deliberately have a
   packet visit some set of nodes. This might also be used in the case
   where two domains are exchange ILA mappings, but only share locators
   that are ingress points in their network and not final locators of a
   node. This would be done to protect user location from being exposed.

5.6 ICMP handling

   A packet whose destination address is an ILA address may generate an
   ICMP error. In this case the ICMP data will contain an IPv6 header
   whose destination is an ILA address. If a sender receives an ICMP
   error with an ILA address as the destination of the original packet,
   it won't recognize the destination address as one that it sent to and
   this may leak information about internal nodes of the network. To
   prevent this from happening, upstream ILA-Ns of ILA-Hs of an end node
   can filter ICMP packets. When an ICMP packet is received by these
   nodes, an ILA destination address can be transformed back to a SIR
   address by performing a reverse lookup.

6  Control plane

   This section describes the ILA control plane for the mobile user-
   plane.

   The ILA control plane is separate from the control plane of the
   mobile network. An interface between the session management of the
   network and the control plane is needed to get device information and
   point of attachment. The intent is that the interface is well
   compartmentalized to minimize the amount of specialization needed to
   adapt ILA for use in different access technologies.
 


T. Herbert             Expires September 6, 2018               [Page 12]

INTERNET DRAFT          draft-herbert-ila-mobile                        


6.1 ILA router mapping database

   There are a number of options to use for implementing the ILA mapping
   system and router protocol amongst ILA-Rs. The mapping database must
   be able to scale and provide fast converge when mobile nodes move
   within the network.

6.1.1 ILA with BGP

   A traditional routing protocol could be used for route dissemination.
   [BGPILA] defines multiprotocol extensions to BGP for distributing ILA
   mappings.

6.1.2 Key/value store

   A mapping database is logically a simple key/value store where the
   lookup key is fixed length (sixty-four or 128 bytes). This
   characteristic affords the possibility of using a key/value database
   in lieu of traditional routing protocols. 

   The idea of the key/value database is that each shard is a
   distributed database instance with some number of replicas. When a
   write is done in the database, the change is propagated throughout
   all of the replicas for the shard using the standard database
   replication mechanisms. Mapping information is written to the
   database using common database API and requires authenticated write
   permissions. Each ILA router can read the database for the associated
   shard to perform its function.

   The database is assumed to be (mostly) persistent and recoverable if
   database nodes are lost. The selection of an ILA router shard and
   shard instance is idempotent and stateless per packet, so that shards
   and shard replicas can be dynamically added or removed. 

6.2 ILA Mapping Protocol

   The ILA Mapping Protocol [ILAMP] is used between ILA forwarding nodes
   and ILA mapping resolution routers. The purpose of the protocol is to
   populate and maintain the ILA mapping cache in forwarding nodes. 

   ILA forwarding nodes can use a pull model (request/response), push
   model (pub/sub), or redirects to populate the mapping table. ILAMP
   runs over TCP which provides reliability, statefulness implied by
   established connections, allows use of HTTP and RESTful APIs, and
   standard security in the form of TLS.

   The protocol is composed of message primitives:

 


T. Herbert             Expires September 6, 2018               [Page 13]

INTERNET DRAFT          draft-herbert-ila-mobile                        


      o Map request: Sent by an ILA-N or ILA-H to an ILA-R to request
        mapping information for an IPv6 address.

      o Map information: Sent by an ILA-R to an ILA-N or ILA-H and
        provides mappings. A map information message can be sent in
        response to a map request, when mappings are pushed in pub/sub,
        or a mapping is being advertised by ILA redirect. The reason the
        mapping information was sent in included in a message.

      o Subscribe/unsubscribe: Sent by an ILA-N or ILA-H to an ILA-R.
        "Subscribe" requests mapping notifications for the listed
        identifiers. Notifications are sent when a mapping entry for an
        identifier changes. "Unsubscribe" requests that notifications
        for the listed identifiers stop.

      o Locator unreachable: sent by an ILA-R to an ILA-N or ILA-H to
        indicate that another ILA-N is no longer reachable so all cache
        entries using that ILA-N or ILA-H should be evicted.

6.3  Address assignment

   Mobile nodes are assigned addresses that serve as identifiers. A node
   may be assigned singleton addresses or a network prefix. Privacy is
   an important consideration in address assignment.

6.3.1 Singleton address assignment

   DHCPv6 or static address configuration can be used to assign
   singleton addresses to a node. These addresses have no topological
   component and are not meaningfully aggregable for routing, so an
   entry in the ILA mapping table would be created for each address.
   Nodes may be assigned thousand of addresses or even millions of IPv6
   addresses. Given the large IPv6 address space there are few concerns
   about address depletion, however to the mapping system each address
   is represented in a identifier to locator mapping. Scaling this needs
   to be carefully considered. Sharding, replication, and caching on
   forwarding nodes are meant to provide scalability.

6.3.2 Network prefix assignment

   A node may be assigned a /64 address via SLAAC as is common in many
   provider networks. In this scenario, the low order sixty-four bits
   contains IIDs arbitrarily assigned by a device for its own purposes;
   these bits cannot be used as an identifier in identifier/locator
   split.

   To support /64 prefix assignment with ILA, the ILA identifier can be
   encoded in the the upper sixty-four bits of an address and the lower
 


T. Herbert             Expires September 6, 2018               [Page 14]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   sixty-four bits are ignored by ILA. Since only a subset of bits are
   available, a level of indirection can be used so that ILA transforms
   the upper sixty four bits to contain both a locator and an index into
   a locator (ILA-N) specific table. The entry in the table provides the
   original sixty-four bit prefix so that ILA to SIR address
   transformation can be done.

7  ILA in 5G networks

   The section describes applying ILA for use in a 5G network. ILA is
   instantiated as a function in the 5G services architecture described
   in [3GPPTS].

7.1 Architecture

   Figures 2 and 3 depict two architectural options for the use of ILA
   in a 5G architecture. ILA is logically a network function and ILA
   interfaces to the 5G control plane via service based interfaces. In
   this architecture, ILA replaces GTP use over the N9 interface.
   Identifier address to locator address transformations in the downlink
   from the data network are done by an ILA-R. Transformations for intra
   domain traffic can be done by an ILA-N close to the gNB or by an ILA-
   R in the case of a cache miss. Locator address to identifier address
   transformation happen at ILA-Ns. ILA could be supported on a gNB. In
   this case, an ILA-N would be co- resident at a gNB and ILA is used
   over N3 interface in lieu GTP-U. 

                        Service Based Interfaces
    ----+-----+-----+----+----+----+----+--------+-----+--------
        |     |     |    |    |    |    |        |     |
    +---+---+ |  +--+--+ | +--+--+ | +--+--+  +--+--+  |
    | NSSF+ | |  | NRF | | | DSF | | | UDM |  | NEF |  |
    +-------+ |  +-----+ | +-----+ | +-----+  +-----+  |
              |          |         |                   |              
          +---+----+  +--+--+  +---+--+  +-------------+--+  
          |  AMF   |  | PCF |  | AUSF |  |     ILA-M      |   ^
          +---+--+-+  +-----+  +------+  +-+-----------+--+   |
   +-------+  |  |                         |           |    ILARP
   | 5G UE |--+  |                         | <-ILAMP-> |      |
   +---+---+     | N2                +-----+----+  +---+---+  V   +----+
       |         |      +------------|  ILA-N   |--| ILA-R |------| DN |
       |         |      |    N3      +-+---+--+-+  +-+-----+      +----+
       |         |      |                |   |  |      | 
       |     +---+------+-+              +---+  +------+
       +-----|    gNB     |               N9       N9     
             +------------+                     

                 Figure 2: ILA in 5G architecture - Option 1
 


T. Herbert             Expires September 6, 2018               [Page 15]

INTERNET DRAFT          draft-herbert-ila-mobile                        


                        Service Based Interfaces
   ----+-----+-----+----+----+----+------+----+----+----+--------+--
       |     |     |    |    |    |      |    |    |    |        |
   +---+---+ |  +--+--+ | +--+--+ |      |    |    | +--+--+  +--+--+
   | NSSF  | |  | NRF | | | DSF | |      |    |    | | UDM |  | NEF |
   +-------+ |  +-----+ | +-----+ |      |    |    | +-----+  +-----+
             |          |         |      |    |    |                
         +---+----+  +--+--+  +---+--+   | +--+--+ |
         |  AMF   |  | PCF |  | AUSF |   | |ILA-M| |
         +---+--+-+  +-----+  +------+   | +--+--+ |
     +-------+  |  |                     |         |
     | 5G UE |--+  |                     |         |
     +---+---+     | N2             +----+--+  +---+---+      +----+
         |         |      +---------| ILA-N |--| ILA-R |------| DN |
         |         |      |    N3   ++--+-+-+  +-+-----+      +----+
         |         |      |          |  | |      | 
         |     +---+------+-+        +--+ +------+
         +-----|    gNB     |            N9     N9     
               +------------+                     

                Figure 3: ILA in 5G architecture - Option 2

7.2 Protocol layering

   Figure 3 illustrates the protocol layers of packets packets sent over
   various data plane interfaces in the downlink direction of data
   network to a mobile node. Note that this assumes the topology shown
   in Figure 2 where GTP-U is used over N3 and ILA is used on N9.

                 --->             --->            --->
    DN to ILA-R      ILA-R to ILA-N   ILA-N to gNB     gNB to UE
   +------------+   +------------+   +------------+   +------------+
   | Application|   | Application|   | Application|   | Application|
   +------------+   +------------+   +------------+   +------------+
   |     L4     |   |     L4     |   |     L4     |   |     L4     | 
   +------------+   +------------+   +------------+   +------------+
   |    IPv6    |   | IPv6 (ILA) |   |    IPv6    |   |  PDU Layer | 
   +------------+ | +------------+ | +------------+   +------------+
   |     L2     | | |     L2     | | |   GTP-U    |   | AN Protocol|
   +------------+ | +------------+ | +------------+   |   Layers   |
                  |                | |   UDP/IP   |   |            |
                 N6   <--N9 -->   N3 +------------+   +------------+
                                     |    L2      |        
                                     +------------+

                          Figure 3: ILA and protocol layer in 5G

7.3 Control plane between ILA and network
 


T. Herbert             Expires September 6, 2018               [Page 16]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   ILA is a consumer of several 5G network services. The service
   operations of interest to ILA are:

      o Nudm (Unified Data Management): Provides subscriber information.

      o Nsmf (Service Managment Function): Provides information about
        PDU sessions.

      o Namf (Core Access and Mobility Function): Provides notifications
        of mobility events. 

   ILA-M subscribes to notifications from network services. These
   notifications drive changes in the ILA mapping table. The service
   interfaces reference a UE by UE ID (SUPI or IMSI-Group Identifier),
   this is used as the key in the ILA identifier database to map UEs to
   addresses and identifier groups. Point of attachment is given by gNB
   ID, this is used as the key in the ILA locator database to map a gNB
   to an ILA-N and its locator.

7.4 ILA and network slices 

   Figure 4 illustrates the use of network slices with ILA.

    ----+-------------------------------------+--------------------
        |                                     |
   +-------------------------+   +----------------------------+
   |  +--------+       Slice |   |  +-------------+     Slice |
   |  |  SMF   |-----+    #1 |   |  |  ILA-M      |----+   #2 |
   |  +---+----+     |       |   |  +-----------+-+    |      |   
   |  N4  |          | N4    |   |        |     |      |      |
   |  +---+--+    +--+----+  |   |  +--------+  |  +--+----+  |   +----+
   |  |  UPF  |   | UPF   |  |   |  | ILA-N  |  |  | ILA-R |  |---| DN |
   |  +-------+   +-------+  |   |  +--------+  |  +-------+  |   +----+
   +-------------------------+   +--------------|-------------+
                      |                         |
                   +--+-+          +------------|-------------+
                   | DN |          |            |       Slice |
                   +----+          |     +------+----+     #3 |
                                   |     |           |        |
                                   | +-------+     +-------+  |   +----+
                        +-----+    | | ILA-H |     | ILA-R |  |---| DN |
                        | MEC |----| +-------+     +-------+  |   +----+
                        +-----+    +--------------------------+

                      Figure 4: ILA and network slices in 5G


   In this figure, slice #1 illustrates legacy use of UPFs without ILA
 


T. Herbert             Expires September 6, 2018               [Page 17]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   in a slice. ILA can be deployed incrementally or in parts of the
   network. As demonstrated, the use of network slices can provide
   domain isolation for this.

   Slice #2 supports ILA. Some number of ILA-Ns and ILA-Rs are deployed.
   ILA transformations are performed over the N9 interface. ILA-Rs would
   be deployed at the N6 interface to perform transformations on packets
   received from a data network. ILA-Ns will be deployed deeper in the
   network at one side of the N3 interface. ILA-Ns may be supplemented
   by ILA-Rs that are deployed in the network. ILA-M manages the ILA
   nodes and mapping database within the slice.

   Slice #3 shows another slice that supports ILA. In this scenario, the
   slice is for Mobile Edge Computing. The slice contains ILA-Rs and
   ILA-Ns, and as illustrated, it may also contain ILA_Hs that run
   directly on edge computing servers. Note in this example, one ILA-M,
   and hence one ILA domain, is shared between slice #2 and slice #3.
   Alternatively, the two slices could each have their own ILA-M and
   define separate ILA domains.

8  Security considerations

   A mobile public infrastructure has many considerations in security as
   well as privacy. Fundamentally, a system must protect against
   misdirection for the purposes of hijacking traffic, spoofing,
   revealing user identities, exposing accurate geo-location, and Denial
   of Service attacks on the infrastructure. Security must be considered
   for both the data and control planes.

8.1 Data plane security

   The ILA data plane must protect against spoofing, inadvertent leakage
   of sensitive information, and Denial of Service attack.

   Locator addresses must be contained within an ILA domain. ILA to SIR
   transformations MUST be performed before allowing a packet to egress
   an ILA domain. 

   Nodes outside of an ILA domain MUST NOT be permitted to send packets
   into the domain that have an ILA address in either the source or
   destination. A stateless firewall at the domain boundary can be used
   to drop such packets. Note that in the ILA protocol, ILA addresses
   are not used in source addresses.

   Section 5.6 describes the handling of ICMP with ILA to avoid leaking
   locators outside the ILA domain.

   When a cache is employed that is populated by events from an outside
 


T. Herbert             Expires September 6, 2018               [Page 18]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   party there is the possibility of Denial of Service attack. A
   conceptual attack on ILA-N would be for an attacker will flood its
   link with packets destined to random SIR addresses. The intent is to
   exhaust the cache memory so that legitimate traffic is blocked from
   using the cache and hence needs to take sub-optimal routing. The
   attack can also generate vast numbers of control messages to DOS the
   infrastructure.

   It is recommended that ILA redirects, as opposed to query model or
   pub/sub, is used to mitigate attacks. The reasoning is:

      o On a cache miss the packet is forwarded and might encounter a
        router that sends a redirect. The packet itself implies a
        request for a mapping so no additional control message are
        needed.

      o An ILA router will send a redirect only if there is a mapping to
        the destination. It doesn't sent negative information. In
        particular, if the identifier space is reasonably sparse a
        random address attack will not be very effective.

      o A cache entry is created only when a valid redirect is received.
        This can be contrasted with a query mechanism that might create
        state for pending resolutions.

      o An inactivity timeout can used to evict cache entries. Given the
        incoming packet rate and a preferred inactivity timeout, a cache
        can be sized to absorb an attack.

      o An ILA router may apply its knowledge to rate limit, prioritize,
        and shape the use of redirects to manage caches. For instance,
        an ILA router might identify "hot nodes" in the network that
        receive a lot of traffic and provide the most benefit when
        cached in forwarding nodes. 

8.2 Control plane security

   A mapping system contains sensitive privacy information that could be
   used to make inferences about user's identity or their geo-location.
   This information needs to be protected. 

   Mapping protocols must be secured to prevent an attacker from
   injecting mapping entries to redirect traffic to their own devices.
   To this end, mapping protocols for ILA are intended to use TCP. The
   statefulness of TCP deters spoofing of messages and allows for
   privacy and identity verification in the form of X.509 certificates.
   The control protocol includes "secure" redirects that must be
   authenticated to originate from a legitimate ILA router.
 


T. Herbert             Expires September 6, 2018               [Page 19]

INTERNET DRAFT          draft-herbert-ila-mobile                        


   Mapping protocols must also be resilient to DOS attack, especially in
   a scenario where a cache of mappings is being employed. Such a cache
   might be populated in response to the activities of a third party
   (for instance an application sending packets to different
   destinations). An attack on the cache whereby an attacker attempts to
   fill the cache with entries to random destinations must be mitigated.
   The recommendation of ILA is to use "secure redirects" as a scalable
   and secure means to populate a forwarding cache. 

   Write access to the ILA mapping database must be strictly controlled.
   In the ILA architecture only ILA-Ms write to the mapping database.
   Write access to the database should require strong credentials,
   validation of each operation, and encryption and authentication of
   operations being sent over the network.

   Read access the ILA routing database should also be controlled.
   Devices should only access data on a "need to know" basis. For
   instance, ILA routers might need identifier to group mappings to
   perform forwarding, but they should not need to retrieve all the
   identifiers for a group. The latter information can be contained in
   the ILA-Ms.

8.3 Privacy in address assignment

   A node may use multiple addresses to prevent inferences by third
   parties that break privacy. Properties of addresses to maintain
   strong privacy are:

      o They are composed of a global routing prefix and a suffix that
        is internal to an organization or provider. This is the same
        property for IP addresses [RFC3513].

      o The registry and organization of an address can be determined by
        the network prefix. This is true for any global address.

      o The organizational bits in the address should have minimal
        hierarchy to prevent inference. It might be reasonable to have
        an internal prefix that divides identifiers based on broad
        geographic regions, but detailed information such as accurate
        location, department in an enterprise, or device type should not
        be encoded in a globally visible address.

      o Given two addresses and no other information, the desired
        properties of correlating them are:

         o It can be inferred if they belong the same organization and
           registry. This is true for any two global IP addresses.

 


T. Herbert             Expires September 6, 2018               [Page 20]

INTERNET DRAFT          draft-herbert-ila-mobile                        


         o It may be inferred that they belong to the same broad
           grouping, such as a geographic region, if the information is
           encoded in the organizational bits of the address (e.g. are
           in the same shard).

         o No other correlation can be established. For example, it
           cannot be inferred that the IP addresses address the same
           node, the addressed nodes reside in the same subnet, rack, or
           department, or that the nodes for the two addresses have any
           geographic proximity to one another.

   Ostensibly, assigning a /64 prefix to a node is good for security.
   The end device can create its own random addresses in the low order
   sixty-four bits which mitigates address scanning attacks. However,
   the upper sixty for bits of the address become a static identifier
   for the node that potentially allows DOS on the device, as well as
   third party correlations on addresses that deduce that different
   flows are sourced from the same user.

   [RFC4941] recommends rotating addresses to protect privacy. In the
   case of sixty-four bit address assignments this would entail that a
   new prefix for the device is periodically requested. There is no
   recommendation for the frequency of address change and there is no
   quantitative description of the effects of periodic address change.

   For maximum privacy, a different address could be used for each
   connection. If this were done for every connection in the network, it
   would create network state for each connection (note that is sort of
   thing already exists with stateful NAT). Scaling the mapping system
   to accommodate this is challenging. One alternative to be
   investigated is use a reversible cryptographic hash to aggregate
   identifiers and reduce the number of mappings needed.

9  References

9.1  Normative References

   [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, DOI
             10.17487/RFC2119, March 1997, <https://www.rfc-
             editor.org/info/rfc2119>.

   [ILA]     Herbert, T., and Lapukhov, P., "Identifier Locator
             Addressing for IPv6" draft-herbert-intarea-ila-00

   [ILAMP]   Herbert, T., "Identifier Locator Addressing Mapping
             Protocol" draft-herbert-ila-ilamp-00

 


T. Herbert             Expires September 6, 2018               [Page 21]

INTERNET DRAFT          draft-herbert-ila-mobile                        


9.2  Informative References

   [RFC3513] Hinden, R. and S. Deering, "Internet Protocol Version 6
             (IPv6) Addressing Architecture", RFC 3513, DOI
             10.17487/RFC3513, April 2003, <https://www.rfc-
             editor.org/info/rfc3513>.

   [RFC4941] Kolkman, O. and R. Gieben, "DNSSEC Operational Practices",
             RFC 4641, DOI 10.17487/RFC4641, September 2006,
             <https://www.rfc-editor.org/info/rfc4641>.

   [ILAGRPS] Herbert, T., "Identifier Groups in ILA", To be published

   [BGPILA]  Lapukhov, P., "Use of BGP for dissemination of ILA mapping
             information" draft-lapukhov-bgp-ila-afi-02

   [3GPPTS]  3rd Generation Partnership Project (3GPP), "3GPP TS
             23.502", http://www.3gpp.org/DynaReport/23-series.htm



Authors' Addresses

   Tom Herbert
   Quantonium
   Santa Clara, CA
   USA

   Email: tom@quantonium.net


   Kalyani Bogineni
   Verizon
   One Verizon Way, Basking Ridge, NJ 07920
   USA

   Email: kalyani.bogineni@verizon.com














T. Herbert             Expires September 6, 2018               [Page 22]