Network Working Group                                        P. Nikander
Internet-Draft                             Ericsson Research Nomadic Lab
Intended status: Informational                          January 24, 2007
Expires: July 28, 2007


             Generic Proxying as a Deployment Tool (GEPROD)
                draft-nikander-ram-generix-proxying-00

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of 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/ietf/1id-abstracts.txt.

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

   This Internet-Draft will expire on July 28, 2007.

Copyright Notice

   Copyright (C) The IETF Trust (2007).

Abstract

   This document presents a generic way of using Forwarding Proxies,
   designed to be used as a transition mechanism in implementing various
   flavors of the so called Identifier / Locator separation, including
   both "above IP" and "below IP" approaches.

   This version of this draft is an very incomple version, intented to
   induce discussion.




Nikander                  Expires July 28, 2007                 [Page 1]


Internet-Draft                   GEPROD                     January 2007


Table of Contents

   1.    Introduction . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.    Terminology  . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.1.  Terms common to other documents  . . . . . . . . . . . . . .  3
   3.    Background . . . . . . . . . . . . . . . . . . . . . . . . .  3
   4.    The Problem  . . . . . . . . . . . . . . . . . . . . . . . .  4
   4.1.  Basic approaches . . . . . . . . . . . . . . . . . . . . . .  5
   5.    Architectural approaches to identifier / locator split . . .  6
   5.1.  Using locators at transport and IP layer . . . . . . . . . .  6
   5.2.  Rewriting withing the transport or 'upper' IP layers . . . .  7
   5.3.  Rewriting within the network . . . . . . . . . . . . . . . .  8
   6.    Using Proxies as an interconnected medium  . . . . . . . . .  9
   6.1.  Forward proxying in the 'above' transport approach . . . . .  9
   6.2.  Forward proxying in the 'in-stack' approach  . . . . . . . . 10
   6.3.  DNS with forward proxying  . . . . . . . . . . . . . . . . . 12
   6.4.  Reverse proxying . . . . . . . . . . . . . . . . . . . . . . 13
   6.5.  Un-proxying in the 'in-the-network' approach . . . . . . . . 13
   7.    Stretching the wire  . . . . . . . . . . . . . . . . . . . . 14
   8.    Security considerations  . . . . . . . . . . . . . . . . . . 15
   9.    Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 15
   10.   IANA considerations  . . . . . . . . . . . . . . . . . . . . 16
   11.   Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . 16
   12.   Informative references . . . . . . . . . . . . . . . . . . . 16
         Author's Address . . . . . . . . . . . . . . . . . . . . . . 16
         Intellectual Property and Copyright Statements . . . . . . . 17

























Nikander                  Expires July 28, 2007                 [Page 2]


Internet-Draft                   GEPROD                     January 2007


1.  Introduction

   Discussions at the IAB Routing and Addressing workshop, followed by
   discussions at the 67th IETF in San Diego, have revealed a potential
   problem in our ability to keep growing the routing and forwarding
   tables in the core routers in the default free zone.  This, in turn,
   has led to a lively discussion on various architectural options
   towards solving the problem.  A tentative consensus seems to be that
   implementing the so called identifier / locator separator by
   injecting a new naming layer either "below" or "above" the current
   routing layers (IPv4 and IPv6) appears to be one very potential
   architectural approach.  However, there seems to be no consensus on
   the stack-wise location or semantics of the resulting new name space.

   In this document, we discuss an implementation approach that can be
   used as a transition tool to help introducing such a new name space.
   The approach can be used for injecting a new layer both "below" or
   "above", though in a slightly different manner.  Both approaches are
   discussed.


2.  Terminology

2.1.  Terms common to other documents

   +----------------------------------------+-------------------------+
   | Term                                   | Explanation             |
   +----------------------------------------+-------------------------+
   | End-point                              | A communicating entity. |
   |                                        |                         |
   | Locator                                |                         |
   |                                        |                         |
   | Identifier                             |                         |
   |                                        |                         |
   | Legacy address                         |                         |
   |                                        |                         |
   | Upper Layer Protocol                   |                         |
   |                                        |                         |
   | Upper Layer Protocol Identifier (ULID) |                         |
   +----------------------------------------+-------------------------+


3.  Background

   As discussed elsewhere (cf. RFC4423 [1]), the current IPv4 and IPv6
   name spaces can be considered to be confoundings of two semantically
   different name spaces: interface locators and node identifiers.  In
   other words, an IP address functions both in a locator role,



Nikander                  Expires July 28, 2007                 [Page 3]


Internet-Draft                   GEPROD                     January 2007


   identifying a location of an interface in the terms of the forwarding
   name space topology, and in an identifier role, identifying the
   communicating end-point (node) for transport and other upper layer
   protocols.  The need for or non-desirability of separating these two
   functional roles have been discusses in the IETF for the past ten
   years or so.

   Past and present proposals for implementing the so called identifier
   / locator split include at least the following:

      HIP, where current IP addresses are demoted to mere locators and a
      new name space of identifiers is created.  In HIP, the identifiers
      are essentially hashes of public cryptographic keys.

      SHIM6, with two variants, where in both IP addresses continue to
      be used both as identifiers and locators, but where the identifier
      addresses are formed either from a fixed set of routing prefixes
      and the also including a verifiable reference to public key intto
      the identifier address.

      Others to be added.  Please provide text.

   In this document, we take the stance that in order to be
   architecturally sound, any layer-injecting solution must eventually
   be implemented by all hosts, at least in an conceptual sense. ...
   XXX Elaborate.

   When considering any such architectural solution, it becomes clear
   that any eventual solution must take care of a longish transition
   period where some part of the network has implemented the identifier
   / locator separation while another part of the network has not.

   In this document, we describe how the transition period can be eased
   by introducing proxies into the network.  These proxies represent the
   'new' part of the network to the 'old' part as if the new part still
   had not implemented the separation, and vice versa.


4.  The Problem

   The identifier / locator split introduces a new name space to the
   networking architecture, either "below" the current IP addresses or
   "above" it.  In any case, the result is an architecture that has two
   separate naming layers: a (node) identity naming layer, and an
   (interface) locator naming layer; see Figure XXX.

   Now, consier a situation where the network is partitioned into two or
   more parts, some of them implementing the new approach and some not.



Nikander                  Expires July 28, 2007                 [Page 4]


Internet-Draft                   GEPROD                     January 2007


   For brevity, we call 'old' the parts of the network that have not
   (yet) implemented the identifier / locator separation (whatever it
   is), and 'new' those parts of the network that have implemented the
   separation.  Note that depending on the the implementation details,
   being 'new' may imply that the hosts implement the new functionality,
   that the routers implement the new functionality, that there are new
   boxes that implement the new functionality, or some combination
   thereof; this will become clearer shortly.

   As a result of partial deployment, those hosts that are located in
   the 'old' part of the network continue to send packets that in their
   source and destination fields have the old semantics.  At the same
   time, thoses hosts that are in the 'new' part of the network send
   (either directly or due to conversion deeper in the network) packets
   that eventually will have mere locators in their source and
   destination addresses.

   In this world, we have the following four situations:

      An 'old' host sends a packet to another 'old' host.  The packet
      contains legacy addresses in both source and destination fields.
      As long as there still exists routing infrastructure that connects
      the hosts, there are no problems.

      A 'new' host sends a packet to another 'new' host.  The packet
      (will eventually) contain locators in the source and destination
      fields.  As long as the mapping from identifiers to locators and
      vice versa works as it should, at both ends, there are no
      problems.

      An 'old' host attempts to send a packet to a new 'new' host.  As a
      result of this, the outgoing packet will have the 'new' host's
      identity or locator in the destination field, while the source
      field contains the 'old' host's legacy address.  There are a
      number of details here that differ from approach to approach.

      A 'new' host attempts to send a packet to an 'old' host.  The
      source field will now be the a locator.  There are a few options
      for what the destination field will contain; see the discussion
      below.

   In this document, we discuss the latter two situations and describe a
   number of particular ways of solving them, based on proxies.

4.1.  Basic approaches

   To facilitate 'old' hosts sending packets to 'new' hosts and vice
   versa, we can construct the following taxonomy of approaches.



Nikander                  Expires July 28, 2007                 [Page 5]


Internet-Draft                   GEPROD                     January 2007


      'Old' sending packets to 'new'

         'New' still directly reachable through the legacy routing
         system.

         'New' no longer directly reachable through the legacy routing
         system.

      'New' sending packets to 'old'

         'New' still having direct access to the legacy routing system.

         'New' no longer having direct access to the legacy routing
         system.

   These cluster naturally into two, depending on whether the the 'new'
   host has direct access to the legacy routing system or not.  In this
   document we only look at the latter cases, where the 'new' host is
   only connected to the 'new' network and the 'old' system is only
   connected to the 'old' network, thereby needing an intermediate box
   to interconnect them.


5.  Architectural approaches to identifier / locator split

   Architecturally, the identifier and locator roles of IP addresses can
   be separated at three different locations within the IP stack:

      Above the transport layer; e.g., at a library that implements the
      sockets API.

      Somewhere within the transport layer or the "upper" part of the IP
      layer; i.e., logically within the host stack "proper".  Examples
      of this approach include SCTP multi-homing, HIP, and SHIM6.

      In the network.  From a host point of view, it doesn't make a big
      difference if this change takes place at the device driver or in a
      separate box well within the network.  However, in order to better
      match with the mind set of the 'jack up' proposals, below we
      introduce this model in terms of two boxes, and then "un-proxy" it
      by moving the functionality to the host itself.

5.1.  Using locators at transport and IP layer

   This approach has received relatively little study.

   One fundamental problem is the need for TCP to resynchronise in the
   case of locator change.  That is, if the layer above detects a need



Nikander                  Expires July 28, 2007                 [Page 6]


Internet-Draft                   GEPROD                     January 2007


   to change locators, it needs to open a new TCP connection that uses
   the new locators.  If the old TCP connection was not properly shut
   down, the hosts cannot be sure how much of sent data the other host
   received, necessitating a new resynchronisation mechanism.

                +---------------+
                |               |
    Identifiers | Applications  |
                |               |
    Rewriting   +----sockets----+
                |               |
    Locators    |   Transport   |
                |               |
                +---------------+
                |               |
                |    Internet   |
                |               |
                +---------------+
                |               |
                | Device driver |
                |               |
                +---------------+

                                 Figure 1

5.2.  Rewriting withing the transport or 'upper' IP layers

   Approaches belonging to this class have received most scrutinity to
   date.

                +---------------+
                |               |
                | Applications  |
                |               |
    Identifiers +----sockets----+
                |               |
                |   Transport   |
    Rewriting   |               |
    somewhere   +---------------+
    here        |               |
                |    Internet   |
                |               |
    Locators    +---------------+
                |               |
                | Device driver |
                |               |
                +---------------+




Nikander                  Expires July 28, 2007                 [Page 7]


Internet-Draft                   GEPROD                     January 2007


                                 Figure 2

   Characteristic to these approaches is that the data items at the
   socket API, down to the transport, are identifiers, and the packets
   passed between the 'upper' and the routing and forwarding parts of
   the IP layer have locators.  That is, somewhere between the 'top' of
   the transport and the routing and forwarding function the identifiers
   get rewritten to locators and vice versa.

   Proposals that more-or-less follow this approach include the
   following:

      SCTP multi-homing and add-IP

      HIP

      SHIM6

5.3.  Rewriting within the network

   This approach has been named 'jack up' by Noel Chiappa in the late
   2006 / early 2007 IAB architecture-discuss mailing list discussions.

                   Proxy                             Host
                                               +--------------+
                                               |              |
                                               | Applications |
                                               |              |
                                               +---sockets----+
                                               |              |
                                               |  Transport   |
                                               |              |
                                               +--------------+
              +---------------+                |              |
              |   Rewriting   |                |   Internet   |
              |   forwarder   |                |              |
              +-------+-------+                +--------------+
    Locators  |       |       |  Identifiers   |              |
              |       |       |                |Device driver |
              |       |       |<-------------->|              |
              +---------------+                +--------------+

                                 Figure 3

   From the outset, the apparent property of these approaches is that it
   feels natural to perform the rewriting at the network side.  In other
   words, a main motivator for the proposals in this category is to keep
   the hosts intact by providing the functionality with extra boxes at



Nikander                  Expires July 28, 2007                 [Page 8]


Internet-Draft                   GEPROD                     January 2007


   the network side.

   In this approach, there is a local subnetwork between the unmodified
   host and a rewriting box.  The rewriting box implements the 'new'
   functionality for the whole subnetwork, thereby alleviating the need
   to change the individual hosts.

   However, as will become apparent momentarily, the 'network side'
   property of these approaches is more circumstantial than
   characteristic in the sense that also the other two approaches can be
   implemented at the network side.  Hence, the main property of this
   category is that the rewriting is done at the 'routing' side of the
   IP stack, i.e., after IPsec, fragmentation, and reassembly, rather
   than 'above' those functions.


6.  Using Proxies as an interconnected medium

   In this section we momentarily assume a network setting where most
   hosts are 'new' hosts, and we just have to take care of
   interconnecting a few 'old' hosts to the 'new' world via proxies.  We
   will return to other cases, e.g., where there are just a few 'new'
   network segments while most of the world is still using confounded
   identifiers and locators, in a later section.  Hence, in this section
   we assume that there is a local subnetwork, or even a direct wire,
   between the 'old' host and a proxy.

   Common to all proxy-based solutions is that there is a local
   subnetwork where the source and destination addresses in IP packets
   contain identifiers.  In other words, the rewriting function has been
   moved from the host stack into a separate box in the network.
   Respectively, when 'un-proxying' the 'jack-up' approach, the
   rewriting function is moved from the separate box in the network into
   the lower part of the host stack.

6.1.  Forward proxying in the 'above' transport approach

   Architecturally, these approaches are quite similar to the existing
   TCP 'splitters', with the difference that the identifiers get
   rewritten to locators and vice versa.

   The properties of this class of approaches have not been analysed at
   all; the main motivation for illustrating this to be architecturally
   complete and present all alternatives.







Nikander                  Expires July 28, 2007                 [Page 9]


Internet-Draft                   GEPROD                     January 2007


                   Proxy                             Host
                                               +--------------+
                                               |              |
              +---------------+                | Applications |
              |   Rewriter    |                |              |
              +-------+-------+                +---sockets----+
              |       |       |                |              |
    Locators  |  Trans|port   |  Identifiers   |  Transport   |
              |       |       |                |              |
              +-------+-------+                +--------------+
              |       |       |                |              |
              |  Inter|net    |                |   Internet   |
              |       |       |                |              |
              +-------+-------+                +--------------+
              |       |       |                |              |
              |       |       |                |Device driver |
              |       |       |<-------------->|              |
              +-------+-------+                +--------------+

                                 Figure 4

6.2.  Forward proxying in the 'in-stack' approach

   As above, the idea here is to move the rewriting function from the
   host stack into a distinct box in the network.  Depending on where
   exactly within the transport/internetworking the rewriting would be
   done at the host side, the proxy needs to implement different amounts
   of functionality and state.

   Let us consider, as an example, the case of HIP and SHIM6.  There the
   rewriting is performed roughly colocated with IPsec at the stack;
   i.e., at the point when the host is ready to send an outbound packet
   but before the packet gets forwarded towards a specific interface, or
   where the host has decided that an inbound packet is destined to
   itself and not to be forward.

   In the proxied approach, instead of rewriting the packet the host
   either sends an outbound packet, unmodified, to the proxy, or accepts
   an inbound packet from it.  The proxy, in turn, maintains a rewriting
   table, replacing the locators with identifiers on inbound traffic and
   picking suitable locators for outbound packets.  If the host has
   multiple interfaces, each interface should be logically configured
   with the same local IP address, since the goal is to have just one
   identifier for each host, and all the proxies at the various local
   paths must perform compatible rewriting.

   From a logical point of view, this approach can be illustrating by
   'strething' the host stack to the new middle box.  That is, we split



Nikander                  Expires July 28, 2007                [Page 10]


Internet-Draft                   GEPROD                     January 2007


   the host stack at the rewriting function (whereever it happens to
   be), leave everything above at the host itself, and move everything
   below to the proxy.  This is illustrated in Figure XXX.  Physically,
   of course, the host stack remains complete and the 'stretching' is
   performed by the local subnetwork; see Figure XXX.

                   Proxy                             Host
                                               +--------------+
                                               |              |
                                               | Applications |
                                               |              |
                                               +---sockets----+
                                               |              |
                                               |  Transport   |
                                               |              |
                                               +--------------+
                                 Identifiers   | IPsec, frag  |
              +---------------+                +- - - - - - - +
              |   Rewriter    |<-------------->|  Rewriter    |
              +- - - - - - - -+                +--------------+
    Locators  |   forwarding  |
              +---------------+
              |               |
              | Device driver |
              |               |
              +---------------+

                                 Figure 5























Nikander                  Expires July 28, 2007                [Page 11]


Internet-Draft                   GEPROD                     January 2007


                   Proxy                             Host
                                               +--------------+
                                               |              |
                                               | Applications |
                                               |              |
                                               +---sockets----+
                                               |              |
                                               |  Transport   |
              +---------------+                |              |
              |   Rewriter    |                +--------------+
              |               |                | IPsec, frag  |
              +- - - -+- - - -+                |- - - - - - - |
    Locators  |   forw|arding |  Identifiers   | forwarding   |
              +-------+-------+                +--------------+
              |       |       |                |              |
              |       |       |                |Device driver |
              |       |       |<-------------->|              |
              +---------------+                +--------------+

                                 Figure 6

6.3.  DNS with forward proxying

   In the forward proxying approaches above, we have assumed that the
   local wire between the 'old' host and the proxy carries IP packets
   that have identifiers in their IP header.  To work nicely with the
   DNS, this may require minor DNS filtering or proxying, depending on
   how the locators and identifiers are stored in the DNS.

   If the identifiers are stored in the DNS as AAAA (or A) records, and
   locators under some other record type, there is no need to play
   tricks with the DNS.  The 'old' host, making a DNS query (through the
   proxy) will get an AAAA record containing the identifier, and
   everything will work as if the remote host had that identity as its
   IP address.  Respectively, the host's identity will be stored at the
   public DNS as an AAAA record along with the proxy's locators.

   If the locators are stored in the DNS as AAAA or A records, and the
   identifiers under some other record type, the proxy (or some other
   box) must provide translation so that the 'old' host will get only
   the identifier as a response to its address queries.

   If both locators and identifiers are stored in the DNS as AAAA or A
   records, then it may suffice to order the records so that the
   identifiers come always first, or it may be necessary to filter the
   DNS responses.





Nikander                  Expires July 28, 2007                [Page 12]


Internet-Draft                   GEPROD                     January 2007


6.4.  Reverse proxying

   In the approaches above we assumed that we were connecting 'old'
   hosts to a predominantly 'new' world, by providing the new
   functionality at a proxy near the 'old' host.  We now consider the
   situation where the goal is to connect a completely 'new' host, one
   that no longer has direct 'old' connectivity, to a predominantly
   'old' world.  In this case we need a proxy, but this time a different
   one.  This proxy will represent a huge number of 'old' hosts, out
   there in the Internet, towards the 'new' host.

   In this case, the actual proxy structure and functionality does not
   differ much in the architectural sense.  The proxy still provides the
   'new' functionality to the 'old' hosts.  The difference is that the
   proxy has no a priori information about the identity of the 'old'
   hosts, and cannot be assumed to have big enough stable storage to
   represent them all.  Secondly, it must be assumed that there may
   multiple of such 'reverse' proxies in parallel and it is not possible
   to provide coordination between them.

   To provide connectivity from 'new' hosts to 'old' hosts, the proxy
   must implement active DNS proxying.  That is, when a 'new' host makes
   a DNS query asking for the identity and locators for an 'old' host,
   the proxy answers with a fabricated identity and its own locators.
   Correspondingly, when an 'old' host makes a DNS query asking for the
   IP addresses of a 'new' host, the proxy provides with its own IP
   addresses.

   Hence, while there is little difference in handling the actual IP
   packets, other than using fabricated rather than stable identifiers
   for the 'old' hosts, there are relatively large operational
   differences between 'forward' and 'reverse' proxying.

   Note that a reverse proxy can be a distributed one.

6.5.  Un-proxying in the 'in-the-network' approach

   In the same spirit but in the reverse fashion, the 'in-the-network'
   or jack up approaches can be implemented within the host instead of
   in a separate box.  In this case, we 'squeeze' the local subnetwork
   into the host itself, making it to physically disappear.










Nikander                  Expires July 28, 2007                [Page 13]


Internet-Draft                   GEPROD                     January 2007


                +---------------+
                |               |
                | Applications  |
                |               |
                +----sockets----+
                |               |
                |   Transport   |
                |               |
                +---------------+
                |               |
    Identifiers |    Internet   |
                |               |
    Rewriting   +---------------+
                |               |
    Locators    | Device driver |
                |               |
                +---------------+


                                 Figure 7

   In these approaches, the host stack 'proper' handles only
   identifiers.  Even when the packets enter the routing and forwarding
   part of the IP layer they still contain identifiers.  The identifiers
   get rewritten to locators, and vice versa, somewhere 'below' the host
   IP; for example, a "shim" layer between the IP layer and the device
   layer can do this, somewhat similar to the so called bump-in-the-
   stack (BITS) IPsec implementations.


7.  Stretching the wire

   So far we have considered moving the rewriting functionality either
   out from a host to the network or vice versa, considering only a
   local piece of wire between the host and the proxy.  We will now
   extend the discussion into other configurations, where there may be a
   larger piece of network between the old host and the proxy.

   When using a proxy at the local network, there are few restrictions
   on addressing.  Basically, it suffices if the identifiers can be
   locally distinguished from locators.  All outgoing packets containing
   identifiers can be processed by the proxy, as needed.  The 'old',
   proxied hosts can use their own identifiers as their local IP
   addresses.

   However, when stretching the wire between an 'old' host and a proxy,
   routing becomes involved.  In a word, it becomes a necessary to
   somehow route packets that contain identifiers in IP headers.  There



Nikander                  Expires July 28, 2007                [Page 14]


Internet-Draft                   GEPROD                     January 2007


   are multiple potential approaches to this, depending on the exact
   nature of the identifiers and on how far the packets need to be
   routed:

      The easiest case is when the identifiers are fully routable, like
      in SHIM6.  In that case there are few limitations where and how
      the proxies can be located at, as long as they are on the default
      path between the 'old' and 'new' hosts.  For example, each site
      exist could be equipped with a SHIM6 proxy, knowledgeable about
      all the other prefixes the site has, and being able to redirect
      the traffic on demand.

      Even if the identifiers are not fully routable but still contain a
      prefix system that allows them to be routed towards either the
      'old' hosts or the proxy, forward proxying is relatively easy to
      arrange.

      Add more cases here.

      It is always possible to arrange 'reverse' proxying, at any
      location in the network, at an added operational cost.


8.  Security considerations


9.  Discussion

   The main message in this draft is that there is only little
   architectural diffence between implementing the identifier / locator
   split 'within' transport/host IP layer or 'below' the host IP layer.
   In other words, while at the outset it appears that a 'host' based
   id/loc split must be implemented in a host and a 'network' based id/
   loc split must be implemented in separate boxes in the network, the
   'implementation' location is actually relatively orthogonal to the
   'stack' location.  Even 'host' based approaches, such as SHIM6 or
   HIP, can be implemented within the network with the help of proxies.
   And 'network' based 'jack-up' approaches can be implemented in a
   host, by providing the host with sufficient information.

   The real differences are in trust, state, and operational models.

   Considering trust, 'host' based approaches grow from the assumption
   that the host is in the best position of representing itself as an
   integral identity.  Conversely, they may be more vulnerable to
   possession attacks than other approaches.  Respectively, 'network'
   based approaches grow from the assumption that the hosts cannot be
   trusted (as, e.g., they may be compromised) and therefore it is



Nikander                  Expires July 28, 2007                [Page 15]


Internet-Draft                   GEPROD                     January 2007


   better for the network to provide the functionality.

   In reality, if high security is needed it seems like a good approach
   to combine both: start by assuming that the hosts represent
   themselves as integral entities having an identity but operationally
   forcing the hosts to delegate the representational functionality into
   the network.  That is, in a high security environment it may be best
   to force the hosts to use a proxy.  This divides the responsibility
   and therefore lowers risks.

   TBD: Discuss state and operational models.


10.  IANA considerations

   This document has no actions for IANA.


11.  Acknowledgments


12.  Informative references

   [1]  Moskowitz, R. and P. Nikander, "Host Identity Protocol (HIP)
        Architecture", RFC 4423, May 2006.

   [2]  Lear, E. and R. Droms, "What's In A Name:Thoughts from the
        NSRG", draft-irtf-nsrg-report-10 (work in progress),
        September 2003.

   [3]  Chiappa, J., "Endpoints and Endpoint Names: A Proposed
        Enhancement to the Internet Architecture",
        URL http://users.exis.net/~jnc/tech/endpoints.txt, 1999.


Author's Address

   Pekka Nikander
   Ericsson Research Nomadic Lab
   JORVAS  FIN-02420
   FINLAND

   Phone: +358 9 299 1
   Email: pekka.nikander@nomadiclab.com







Nikander                  Expires July 28, 2007                [Page 16]


Internet-Draft                   GEPROD                     January 2007


Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Acknowledgment

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).





Nikander                  Expires July 28, 2007                [Page 17]