Network Working Group                                           J. Arkko
Internet-Draft                              Ericsson Research NomadicLab
Expires: July 30, 2005                                           C. Vogt
                                                 University of Karlsruhe
                                                        January 26, 2005

      A Taxonomy and Analysis of Enhancements to Mobile IPv6 Route
                              Optimization
               draft-irtf-mobopts-ro-enhancements-00.txt

Status of this Memo

   This document is an Internet-Draft and is subject to all provisions
   of Section 3 of RFC 3667.  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 become aware will be disclosed, in accordance with
   RFC 3668.

   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 30, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2005).





Arkko & Vogt              Expires July 30, 2005                 [Page 1]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

Abstract

   The Mobile IPv6 protocol favors sending packets via the minimum
   routing path between a mobile node and its correspondent node over
   sending them through a home agent.  This feature is called route
   optimization.  Route optimization requires authentication and
   authorization of initially unacquainted and untrusted parties--a
   requirement that was rather new to the Internet community at the time
   Mobile IPv6 was designed.  To solve the problem, the so-called
   return-routability procedure was built into Mobile IPv6.  It lets the
   mobile node retrieve from the correspondent node two cryptographic
   tokens, which the mobile node can use to authenticate itself and
   prove its presence at a claimed new location after movement.
   Recently, a number of improvements or optional alternatives have been
   suggested to the standard procedure.  Many of these improvements
   attempt further reduction of signaling messages and latency, but
   other improvements such as better security have also been suggested.
   This paper summarizes the goals for enhancements to
   route-optimization, discusses the security threats that such
   enhancements must consider, and categorizes the techniques that one
   can use for optimization.  The paper highlights the key ideas of
   various recent proposals, and it evaluates the performance gain that
   such proposals can yield.  It also discusses how significant
   enhancements to Mobile IPv6 are compared to ongoing optimization work
   in other parts of the network stack.  Finally, the paper identifies
   needs for additional research.













Arkko & Vogt              Expires July 30, 2005                 [Page 2]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

Table of Contents

   1.   Introduction . . . . . . . . . . . . . . . . . . . . . . . .   4
   2.   Mobility-Related Security Threats  . . . . . . . . . . . . .   6
     2.1  Impersonation Attacks  . . . . . . . . . . . . . . . . . .   7
     2.2  Resource-Exhaustion Attacks  . . . . . . . . . . . . . . .   8
     2.3  Flooding Attacks . . . . . . . . . . . . . . . . . . . . .   8
   3.   Mobile IPv6 Route Optimization . . . . . . . . . . . . . . .  10
     3.1  Registration Procedure . . . . . . . . . . . . . . . . . .  10
     3.2  Goals and Assumptions  . . . . . . . . . . . . . . . . . .  13
     3.3  Security Analysis  . . . . . . . . . . . . . . . . . . . .  16
   4.   Objectives for Enhancement . . . . . . . . . . . . . . . . .  17
     4.1  Latency Optimizations  . . . . . . . . . . . . . . . . . .  17
     4.2  Signaling Optimizations  . . . . . . . . . . . . . . . . .  18
     4.3  Security Enhancements  . . . . . . . . . . . . . . . . . .  19
     4.4  Applicability Enhancements . . . . . . . . . . . . . . . .  20
   5.   Enhancements Toolbox . . . . . . . . . . . . . . . . . . . .  20
     5.1  IP-Address Tests . . . . . . . . . . . . . . . . . . . . .  21
     5.2  Protected Tunnels  . . . . . . . . . . . . . . . . . . . .  21
     5.3  Optimistic Behavior  . . . . . . . . . . . . . . . . . . .  22
     5.4  Proactive IP-Address Tests . . . . . . . . . . . . . . . .  22
     5.5  Concurrent IP-Address Tests  . . . . . . . . . . . . . . .  23
     5.6  Diverted Routing . . . . . . . . . . . . . . . . . . . . .  24
     5.7  Credit-Based Authorization . . . . . . . . . . . . . . . .  25
     5.8  Heuristic Monitoring . . . . . . . . . . . . . . . . . . .  27
     5.9  Cryptographically Bound Identifiers  . . . . . . . . . . .  28
     5.10   Pre-Configuration  . . . . . . . . . . . . . . . . . . .  29
     5.11   Semi-Permanent Security Associations . . . . . . . . . .  30
     5.12   Infrastructure . . . . . . . . . . . . . . . . . . . . .  31
     5.13   Local Mobility . . . . . . . . . . . . . . . . . . . . .  32
     5.14   Local Repair . . . . . . . . . . . . . . . . . . . . . .  33
     5.15   Assisted Auto-Configuration  . . . . . . . . . . . . . .  33
     5.16   Processing Improvements  . . . . . . . . . . . . . . . .  34
     5.17   Delegation . . . . . . . . . . . . . . . . . . . . . . .  34
   6.   Analysis . . . . . . . . . . . . . . . . . . . . . . . . . .  34
     6.1  Categorization of Techniques . . . . . . . . . . . . . . .  34
     6.2  Evaluation of Recent Proposals . . . . . . . . . . . . . .  35
     6.3  Future Research  . . . . . . . . . . . . . . . . . . . . .  41
   7.   Security Considerations  . . . . . . . . . . . . . . . . . .  44
   8.   Conclusions  . . . . . . . . . . . . . . . . . . . . . . . .  44
   9.   References . . . . . . . . . . . . . . . . . . . . . . . . .  47
        Authors' Addresses . . . . . . . . . . . . . . . . . . . . .  50
   A.   Acknowledgements . . . . . . . . . . . . . . . . . . . . . .  50
        Intellectual Property and Copyright Statements . . . . . . .  51




Arkko & Vogt              Expires July 30, 2005                 [Page 3]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

1.  Introduction

   An IP address traditionally combines identification and location
   semantics.  The address prefix locates a node's point of network
   attachment.  It is used by routers to forward IP packets towards the
   correct destination.  At the same time, existing transport protocols
   and applications, commonly termed "upper layers", use the IP address
   as part of a session identification.  This naturally rules out
   mobility: Whenever a mobile node moves from one IP-attachment point
   to another, its IP address must change to reflect the new location.
   The new "identity", however, causes sessions at upper layers to
   abort.

   Protocol designers thus had to decide whether to change transport
   protocols and applications, or to come up with a new IP-layer
   protocol that could separate location from identification
   functionality in a way transparent to upper layers.  Due to the
   prevalence of TCP and the significant base of existing applications,
   most people opted for the latter approach.  Mobile IPv6 [29], its
   IPv4 counterpart [28], and the Host Identity Protocol [9] are three
   dominant mobility-management protocols that the IETF has developed to
   facilitate the continued use of existing transport protocols and
   applications in an Internet with mobility support.  This document
   focuses on Mobile IPv6.

   Mobile IPv6 uses two IP addresses per mobile node in an attempt to
   separate location semantics from identification semantics: a
   transient "care-of address" is used for the purpose of routing.  It
   is re-configured whenever the mobile node moves to a new
   IP-attachment point.  A static "home address" is configured with the
   network prefix from a non-mobile "home agent's" network.  The home
   address doesn't change when the mobile node moves, and it can be used
   for session identification at upper layers.

   The mobile node keeps the home agent up to date about its current
   care-of address.  In the event that packets are sent to the mobile
   node's home address, the home agent captures them and tunnels them to
   the mobile node's care-of address.  In the opposite direction, the
   mobile node may tunnel packets to the home agent who, in turn,
   decapsulates them and forwards them on to the correspondent node.
   This behavior was termed "bidirectional tunneling".  It works fine
   even if the correspondent node is unaware of its peer being mobile.
   The correspondent node can just use the home address, and the home
   agent will take care that packets find their way to the mobile node's
   actual location.  Obviously, this entails a lot of routing overhead
   in many common scenarios.

   For better routing efficiency, Mobile IPv6 defines a second mode,


Arkko & Vogt              Expires July 30, 2005                 [Page 4]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   "route optimization", that allows two nodes to directly communicate.
   Route optimization requires the correspondent node to be aware of the
   mobile node's current care-of address.  The mobile node informs the
   correspondent node whenever its care-of address changes.

   All signaling between a mobile node and its home agent is
   authenticated, and optionally encrypted, through IPsec.  The IPsec
   security associations can either be manually configured into the
   nodes, or they can be dynamically derived through IKE.  The mobile
   node and home agent must also be configured with the material they
   need to identify themselves, and the home agent must be able to
   authorize a mobile node to use a particular home address.

   Preconfiguration of home agents and mobile nodes requires
   administrative labor, but it is doable, because the association
   between a mobile node and its home agent, or set of potential home
   agents, is typically known in advance.  On the other hand, when route
   optimization is used between an arbitrary pair of nodes, there is
   generally no relationship between the two nodes prior to
   communication.  Empowering a node--not necessarily a mobile one--to
   redirect packets from one IP address to another hence poses two
   questions:

   o  When the correspondent node receives a command to redirect a
      mobile node's packets, how can the correspondent node be sure that
      it is the legitimate mobile node, rather than a malicious third
      node, which has send this command?
   o  How can the correspondent node rely on the mobile node actually
      being present at the IP address to which packets are to be
      redirected?

   The first question identifies the need for a mobile node to
   authenticate itself during a correspondent registration.  Without
   such authentication, a malicious node could interfere with a packet
   flow of another node, redirecting the flow to its own location for
   inspection purposes, or redirecting it to a random IP address for the
   purpose of denial of service against the legitimate recipient.  The
   second question refers to spoofed care-of addresses: Probing a mobile
   node's presence at a care-of address is important to prevent
   malicious parties to redirect packets to other nodes that neither
   expect nor want those packets.

   A variety of approaches have been proposed to solve the
   above-mentioned issues for the case of route optimization.  People
   finally elected the "return-routability procedure" as a default
   mechanism for Mobile IPv6.  The return-routability procedure delivers
   a pair of secret tokens to a mobile node's home and care-of
   addresses.  The mobile node needs these tokens to prove that it is


Arkko & Vogt              Expires July 30, 2005                 [Page 5]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   the legitimate owner of the home address and that it is reachable at
   the care-of address.  (Actually, the return-routability procedure is
   less strict: It only determines whether a node is on the path towards
   the two addresses, rather than that it actually holds the two
   addresses.  This is a compromise that the procedure accepts.)

   The return-routability procedure is run right before a mobile node
   registers a new care-of address with a correspondent node.  It is
   also run periodically in case the mobile node does not move for a
   while.  The advantage of the return-routability procedure is that it
   is lightway and does not require any sort of pre-shared
   authentication material.  Moreover, it can be implemented in a
   stateless way at the correspondent node's side.  On the other hand,
   the return-routability procedure usually consumes one round-trip
   time, which comes into addition to the rest of any pending
   registration.  This can lead to a handover delay unacceptable for
   many real-time or interactive applications like Voice over IP (VoIP)
   and audio or video streaming.  Also, the periodic repetitions imply a
   hidden signaling overhead that may interfere with mobile nodes who
   intend to sleep during times of inactivity.  Finally, the security
   level of the return-routability procedure can be increased.  It
   limits vulnerabilities to attackers that are on the path from the
   correspondent node to the mobile node or to the home agent.  The
   residual vulnerabilities are similar to those that exist anyway in an
   Internet without mobility support.  But still, mechanisms that use
   stronger, possibly cryptographic authentication can provide a higher
   level of security than the return-routability procedure does.

   This paper describes and classifies strategies that can enhance or
   optimize Mobile IPv6 route optimization.  Following this
   introduction, Section 2 discusses which new security threats
   mobility-management protocols need to take into account.  Section 3
   explains the current route-optimization protocol, identifies the
   goals and assumptions based on which it was developed, and briefly
   analyzes its security properties.  A number of potential goals for
   enhancements (such as reducing latency) are discussed in Section 4.
   Section 5 reviews techniques that can be used to enhance or optimize
   Mobile IPv6 route optimization.  Section 6 discusses how these
   techniques are applied in existing enhancement and optimization
   proposals, evaluates some of these proposals, and identifies
   opportunities for further research.  The paper concludes in
   Section 8.

2.  Mobility-Related Security Threats

   Mobile IPv6 allows a node to redirect those packets, that a
   correspondent node would otherwise send to one IP address (the home
   address), to a second IP address (the care-of address).


Arkko & Vogt              Expires July 30, 2005                 [Page 6]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   Unfortunately, the ability for redirection can also be misused by a
   malicious node for an arbitrary pair of IP addresses unless
   appropriate precautions are taken.

   Overall, there are three major families of mobility-related threats:
   impersonation attacks, resource-exhaustion attacks, and flooding
   attacks.  The following subsections take a closer look at each of the
   categories.  Threats are described in the light of Mobile IPv6, but
   some of them apply to other mobility-management protocols as well.

2.1  Impersonation Attacks

   The probably most obvious issue with mobility is to ensure that only
   a mobile node itself has the ability to change its care-of address.
   If care-of-address registrations were unauthenticated, an attacker
   could easily impersonate an arbitrary victim.  For instance, the
   attacker could contact the victim's correspondent node and register
   its own IP address on behalf of its victim.  The correspondent node
   would assume that the victim's care-of address has changed, and it
   would redirect all packets intended for the victim to the attacker
   instead.  The attacker could forward the packets to the victim after
   analyzing, or even tampering with, their payloads.  In a related
   offense, the perpetrator could simply cause havoc at its victim by
   directing the victim's packets to a random or non-existent IP
   address.  These attacks are jointly referred to as "impersonation
   attacks".  Impersonation attacks can be prevented through proper
   authentication techniques that keep an outsider from assuming another
   node's identity.

   It is important to recognize that impersonation attacks not only
   impact those nodes that have an interest in mobility.  Although the
   attacker makes the correspondent node believe that the victim is
   mobile, neither the attacker nor the victim do have to be mobile.
   Indeed, mobile nodes, non-moving nodes with mobility support, as well
   as traditional stationary nodes are potentially endangered because
   they all share the same IPv6 identifier namespace.  (Actually, even
   IPv4 nodes are jeopardized when IPv4-to-IPv6 translation occurs on
   the path between these nodes and their correspondent peers.) This
   unfolds the need for mandatory protection of mobility-related
   signaling in order to safeguard the Internet community as a whole.

   Beyond their large group of potential victims, mobility-related
   impersonation attacks allow an attacker to choose the location from
   where to wage its attack.  For example, the impersonator could
   position itself at a place where it is easier to inject spoofed
   care-of-address registration packets into the network than anywhere
   on the direct path between the victims.  The attacker may also move
   to a place where it can remain unrecognized.  In contrast to this, in


Arkko & Vogt              Expires July 30, 2005                 [Page 7]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   the non-mobile Internet that we have today, an attacker can only
   listen to or tamper with packets while it is on the path between its
   victims.  Similarly, a mobility-management protocol may give the
   attacker the possibility to shift the time for its attack.  The
   attacker might be able to register false care-of addresses even
   before its victims' conversation begins, or attack a network long
   after it has visited it.  In the non-mobile Internet, an attacker
   must strike at the same time as its victims communicate.  The ability
   to choose the location and time for an attack constitutes a dangerous
   new degree of freedom for the attacker.

2.2  Resource-Exhaustion Attacks

   Mobility support at correspondent nodes can become an issue if it
   takes a lot of processing capacity to handle an incoming
   care-of-address registration.  During times of increased signaling
   load, a correspondent node may thus end up having to commit a
   significant fraction of its resources to mobility-related
   transactions.  What is worse, an attacker may take advantage of this
   vulnerability.  It could swamp the correspondent node with large
   quantities of bogus registrations messages, keeping it from doing
   useful work.  Such denial-of-service attempts are called
   "resource-exhaustion attacks".  Clearly, if mobility support is to be
   implemented on a large basis, handling care-of-address registrations
   must be lightweight in order to lessen the susceptibility to resource
   exhaustion.  Another effective technique is to defer resource
   commitment until late in the registration process: Once the
   registrant has proven its identity or shown that it is willing to
   invest resources itself, it is less likely malicious.  As a last
   resort, busy Internet servers should limit the resources they devote
   to registration processing, and they may give preference to those
   mobile nodes they know or have recently had meaningful communications
   with.

   It is worthwhile to stress the trade-off between effectiveness of
   signaling authentication and resilience against increased signaling
   load.  On one hand, a strong authentication mechanism can effectively
   prevent certain impersonation attacks.  On the other hand, the
   resources a correspondent node must spend on the verification of a
   registering node's authenticity increases with the complexity of the
   authentication algorithm.  The susceptibility to resource exhaustion
   thus grows with the level of protection against impersonation
   attacks.

2.3  Flooding Attacks

   A third mobility-related security threat emanates from
   redirection-based flooding attacks.  Redirection-based flooding


Arkko & Vogt              Expires July 30, 2005                 [Page 8]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   attacks are characterized by a victim being bombarded with unwanted
   packets at a rate that the victim, and possibly the victim's access
   network, cannot handle.  As with impersonation attacks, it is
   important to compare existing flooding attacks in today's non-mobile
   Internet with redirection-based flooding attacks that could be made
   possible through an insecure mobility-management protocol.

   Three types of flooding attacks can be identified in today's
   Internet.  The simplest one is a "direct flooding attack".  Here, the
   attacker itself sends bogus packets to the victim.  In an indirect
   "reflection attack", the attacker tricks a third node, the
   "reflection point", to send the packets.  It typically uses a known
   protocol vulnerability to make the reflection point generate these
   packets [38].  For example, the attacker may send spoofed ICMP Echo
   Request packets to the reflection point, using its victim's IP
   address in the packets' IPv6 Source Address field.  For each such
   request, the reflection point generates an ICMP Echo Reply message,
   which it sends "back" to the victim.  The advantage of a reflection
   attack over a direct flooding attack is that the attacker is usually
   harder to track when flooding traffic comes from a third node.
   Another example for a reflection attack is TCP-SYN flooding.  Here,
   the attacker sends TCP SYN packets, again with false source
   addresses, to the reflection point, which in turn sends TCP SYN-ACK
   packets to someone who does not expect these packets.  Since most TCP
   servers are configured so that they re-send a TCP SYN packet multiple
   times when failing to receive an acknowledgement, this reflection
   attack can even produce a small amplification.  Gaining higher
   amplification in today's Internet necessitates more complex
   strategies like "distributed flooding attacks".  In a distributed
   flooding attack, the attacker typically gains control over other
   nodes by spreading viral software.  Then, at a certain point of time,
   infected nodes simultaneously commence a joint flooding attack
   against a common victim.

   The introduction of mobility support renders amplified flooding
   attacks much less complex.  Suppose a mobile node is allowed to
   change its care-of address without having to evidence that it is
   present at the new care-of address.  Then, an attacker can subscribe,
   through its own IP address, to a large data flow (e.g., a video
   stream) offered by some server on the Internet.  The attacker can
   easily accomplish the initial handshake procedure with the server
   while it uses its own IP address.  Once data is flowing, the attacker
   can redirect the flow to the IP address of an arbitrary victim.  The
   attacker can use the sequence numbers learned during the initial
   handshake procedure in order to spoof acknowledgements for packets
   that it assumes the server has sent to the victim.  In this attack,
   not the attacker, but a faithful server on the Internet can be made
   generate packets used for an attack.  The server does not have to be


Arkko & Vogt              Expires July 30, 2005                 [Page 9]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   infected with compromised code, and neither the victim nor the server
   has to be mobile.  The attacker produces as little as spoofed
   feedback information to keep the data flow alive.  To make matters
   worse, the attacker can redirect data flows from multiple servers to
   the victim.

   Support for Mobile IPv6 route optimization is recommended to all IPv6
   nodes [11].  The base of correspondent nodes that an attacker could
   exploit for a redirection-based flooding attack would therefore be
   immense.  Also note that no distribution of viral software would be
   necessary.  The severity of this new type of flooding is that it
   would provide potentially unbounded amplification at comparably low
   cost.

3.  Mobile IPv6 Route Optimization

   Route optimization requires the mobile node to register its current
   care-of address with both its home agent and correspondent node.  The
   process of doing so is called a "home registration" and a
   "correspondent registration", respectively.

   When a mobile node begins communicating with a particular
   correspondent node after a successful home registration, all packets
   are initially routed through the mobile node's home agent, and
   bidirectionally tunneled between the home agent and the mobile node's
   current attachment point.  For increased routing performance, the
   mobile node should do a correspondent registration as early as
   possible.

   This section explains the standard Mobile IPv6 registration procedure
   in the case that route optimization is used.  The goals and
   assumptions based on which this registration process was developed
   are presented thereafter.  The section concludes with a security
   analysis of the Mobile IPv6 registration process.

3.1  Registration Procedure

   A mobile node registers its current care-of address with its home
   agent and correspondent node.  As a result, the home agent and
   correspondent node create "bindings" between the mobile node's home
   address and current care-of address.  The following is a nutshell
   presentation of Mobile IPv6 home and correspondent registrations.
   Figure 1 illustrates this process.  The interested reader is referred
   to RFC 3775 [29] for the complete specification.




Arkko & Vogt              Expires July 30, 2005                [Page 10]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   Mobile                                              Correspondent
    Node                      Home Agent                    Node
      |                           |                           |
      | 1. Binding Update (BU)    |                           |
      |-------------------------->|                           |
      |                           |                           |
      | 2. Binding Ack (BA)       |                           |
      |<--------------------------|                           |
      |                           |                           |
      | 3a. Home Test Init (HoTI) |                           |
      |-------------------------->|-------------------------->|
      |                                                       |
      | 3b. Care-of Test Init (CoTI)                          |
      |------------------------------------------------------>|
      |                                                       |
      |                           | 4a. Home Test (HoT)       |
      |<--------------------------|<--------------------------|
      |                           |                           |
      |                             4b. Care-of Test (CoT)    |
      |<------------------------------------------------------|
      |                                                       |
      | 5. Binding Update (BU)                                |
      |-------------------------------------------------------|
      |                                                       |
      |                             6. Binding Ack (BA)       |
      |<------------------------------------------------------|
      |                                                       |

              Figure 1: Mobile IPv6 Registration Procedure

   When the mobile node detects that it has moved to a different access
   network, it configures a new care-of address.  The mobile node then
   initiates a home registration by sending to the home agent a Binding
   Update (BU) message.  The BU contains the mobile node's home address,
   current care-of address, and some supplementary information.  If the
   home registration succeeds, the home agents returns a Binding
   Acknowledgement (BA) message, informing the mobile node that its home
   address is now bound to the new care-of address.  The BA also
   specifies for how long the binding will stay in place.

   RFC 3775 requires that the BU and BA be authenticated, and recommends
   that they also be encrypted, through IPsec.  The mobile node and home
   agent may be pre-configured with the necessary security associations,
   or they may dynamically create them through IKE.  In the latter case,
   the nodes have to be preconfigured with an identifier and the
   credentials necessary to prove their identity during the IKE
   authentication stage.  This could be a preconfigured shared secret or


Arkko & Vogt              Expires July 30, 2005                [Page 11]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   a public/private-key pair combined with a certificate that binds the
   public key to the identifier.  Finally, the home agent needs
   sufficient information to authorize a mobile node to use a particular
   home address.

   The correspondent registration consists of a return-routability
   procedure followed by the registration proper.  The
   return-routability procedure, in turn, is a combination of two
   message exchanges, one exchange that goes through the home network
   and another direct exchange.  The return-routability procedure aims
   to determine whether the mobile node is reachable at its home address
   and care-of address.  The mobile node may initiate the
   return-routability procedure at any time after it has sent the BU to
   the home agent.  It then sends a Home Test Init (HoTI) message and a
   Care-of Test Init (CoTI) message to the correspondent node.  The HoTI
   is tunneled to the home agent, which forwards the message to the
   correspondent node.  The CoTI is sent to the correspondent node on
   the direct path.

   When the correspondent node receives the HoTI, it generates a Home
   Keygen Token, which it returns to the mobile node's home address in a
   Home Test (HoT) message.  The mobile node needs the Home Keygen Token
   to show that it is the legitimate owner of its home address.
   Similarly, when the correspondent node receives a CoTI, it sends a
   Care-of Test (CoT) message with a Care-of Keygen Token to the mobile
   node's care-of address.  The mobile node needs the Care-of Keygen
   Token to prove its reachability at the new care-of address.  The
   tokens are produced based on unpredictable nonces, the mobile node's
   home and care-of address, respectively, and some auxiliary data.
   Sufficient information is communicated as part of the registration
   protocol such that the correspondent node will eventually be able to
   recompute both tokens without having to explicitly store either of
   them.  Note that, although some Mobile IPv6 implementations do the
   two message exchanges in sequence, a standard-conform and more
   efficient way is doing them in parallel.  Home and Care-of Keygen
   Tokens are good for 3.5 minutes, so if the mobile node changes its
   care-of address again during this period, it may reuse its Home
   Keygen Token.  The HoTI-HoT and CoTI-CoT exchanges are respectively
   called "home-address test" and "care-of-address test".

   RFC 3775 recommends that the HoTI and HoT be authenticated, and
   optionally encrypted, through an IPsec tunnel between the mobile node
   and the home agent.  It is the home agent's responsibility to update
   the corresponding security association to the new tunnel end point
   during the home registration.

   Once the mobile node has received the HoT and CoT from the
   correspondent node as well as the BU from the home agent, it can send


Arkko & Vogt              Expires July 30, 2005                [Page 12]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   a BU to the correspondent node, requesting the correspondent node to
   bind its home address to its current care-of address.  The mobile
   node must compute a message-authentication code keyed with the Home
   and Care-of Keygen Tokens.  When the correspondent node receives the
   BU, it can thus decide that the mobile node, first, owns the home
   address mentioned in the BU and, second, is reachable at the care-of
   address to which that home address is to be bound.  The mobile node
   may optionally request the correspondent node to return a BA for
   confirmation by setting a flag in the BU.  Note that the BA is
   mandatory for the home registration.

   Bindings at correspondent nodes have a maximum lifetime of seven
   minutes.  If a binding is not updated within this time, the mobile
   node must re-do the correspondent registration.  This includes
   another run of the return-routability procedure.

3.2  Goals and Assumptions

   An important objective for the development of Mobile IPv6 was to
   provide for a wide, preferably universal, support for route
   optimization.  In fact, support for Mobile IPv6 and, thus, route
   optimization is recommended in the requirements suite for IPv6 nodes
   [11].  It was, and still is, believed that the additional routing
   overhead associated with bidirectional tunneling is too much of a
   burden on the core Internet given that the number of connected mobile
   nodes is expected to grow substantially within the next decades.

   The aspiration for wide-scale deployment of route optimization has an
   impact on how a correspondent node can authorize a mobile node to use
   a particular home address.  A mobile node must authenticate itself,
   preferably without any pre-configured keys, as the legitimate owner
   of the home address packets addressed to which it seeks to redirect
   to a certain care-of address.  Without such authentication, any
   node--not necessarily a mobile one--could redirect any other node's
   packets.  The challenge here is to bind to a given home address a
   property that only the mobile node owning that home address can have.

   The return-routability procedure was elected as the default
   authentication mechanism for Mobile IPv6 route optimization.  It
   verifies home-address ownership through a routing property and so
   does without any pre-configured authentication material.  When a
   mobile node shows that it can receive messages sent to its home
   address, this is understood as reasonable evidence that the mobile
   node is the legitimate home-address owner.  Strictly speaking, the
   return-routability procedure checks only that the mobile node is
   somewhere on the path between the correspondent node and the home
   address.  An on-path attacker could thus hijack a communications
   connection that is not protected otherwise.  However, the problem


Arkko & Vogt              Expires July 30, 2005                [Page 13]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   with on-path attackers is independent of mobility and already existed
   before the introduction of Mobile IPv6.  Hence, the
   return-routability procedure does not create a new security threat.

   Of course, there are alternatives to the return-routability
   procedure.  Preconfiguring shared secrets into mobile nodes and
   correspondent nodes is one, leveraging public-key cryptography is
   another.  These approaches may in fact do a very good job in certain
   scenarios.  However, both of them have deficiencies as far as general
   applicability goes.  The following explains why neither approach was
   taken up as the default authentication mechanism in Mobile IPv6.

   If a shared secret is pre-configured into a mobile node and its
   correspondent node, the correspondent node can authenticate the
   mobile node by having it encrypt a piece of random data and comparing
   the result with the expected ciphertext.  This process is simple and
   appealing.  The crux is that there is usually no existing
   relationship between an arbitrary pair of nodes before the nodes
   start communicating.  Preconfiguration may hence not be feasible in
   many cases.  And where preconfiguration does apply will it involve
   considerable administrative overhead, which makes the approach
   impractical except for some very limited scenarios.  Also note that a
   security association alone does not show that a node owns a specific
   IP address.  This property, however, is required for Mobile IPv6
   route optimization, so an external mechanism is needed to authorize
   an authenticated mobile node to use a specific home address.

   Public-key cryptography requires some external binding between a
   public key and the identity this public key is supposed to protect.
   Certificates issued by a trusted authority can usually do this job,
   although there is little experience with using home addresses as
   identifiers in the certificates.  (E.g., the home address could be
   placed into a certificate's Subject AltName field.) Given a
   certificate that binds a public key to a home address, the owner of
   this home address can authenticate itself as such by signing some
   arbitrary piece of data with its private key.  Since everybody can
   verify the signature with the mobile node's public key, this proves,
   in the end, that the mobile node actually knows the private key
   complementing the certified public key, and the certificate authority
   vouches that the public key, in turn, is associated with the home
   address.  The issue with public-key cryptography in the case of
   Mobile IPv6 is the extraordinarily high number of potential home
   addresses.  Many experts doubt that one could built a public-key
   infrastructure (PKI) of the size appropriate for Mobile IPv6.
   Furthermore, making certificates bind home addresses to public keys
   is per se an issue, because IP address assignment is typically
   handled by other network entities than the PKI nodes.  A global PKI
   would also constitute an attractive target for attacks, endangering


Arkko & Vogt              Expires July 30, 2005                [Page 14]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   the Internet as a whole.

   It is important to recognize that some mobility-related attacks can
   be prevented through authentication and authorization to use a
   particular home address, while others cannot.  A dominant threat
   uncovered is resource-exhaustion attacks.  In fact, the stronger the
   authentication algorithms, the easier it is to exploit the resources
   of a node running these algorithms.  In a resource-exhaustion attack,
   an attacker brings down its victim through massively sending it bogus
   requests.  Protection against malicious resource exhaustion was
   another key driver in the Mobile IPv6 security-design process.  The
   intent was primarily to safeguard those hosts which offer a popular
   or critical service without necessarily having to be mobile
   themselves.  A Mobile IPv6 correspondent registration is robust
   against resource-exhaustion attacks in that it is of low complexity
   and delays state creation as well as computational tasks at the
   correspondent node until the mobile node has shown its credentials.

   Redirection-based flooding attacks are another threat that cannot be
   encountered by authentication.  Mandatory authentication may lessen
   the attractiveness of such flooding, but certainly cannot prevent it.
   There must hence be a different mechanism that prevents malicious use
   of care-of addresses.  In Mobile IPv6, a correspondent node probes a
   mobile node's new care-of address before it sends packet there.  This
   verification strategy operates end to end, and it is as such
   independent of any support from the network.

   An alternative that does require network support is to enforce proper
   use of care-of addresses already at the mobile node's point of
   network attachment.  The correspondent node may then simply believe
   in the validity of a care-of address without doing any verification
   itself.  Many access networks today provide this service through
   ingress filtering [34].  However, the crux with verifying a care-of
   address at the fringe of the Internet is that an attacker can choose
   the location from where to wage a flooding attack.  As long as there
   are access networks where ingress filtering, or an equivalent
   technique, is not deployed, an attacker can always avoid
   care-of-address verification.  Designers therefore made Mobile IPv6
   not to rely on ingress filtering.  Certificate-based authorization of
   care-of addresses is also infeasible because care-of addresses change
   in a typically unpredictable way, whereas certificates are static.

   It should be mentioned that care-of-address verification can be
   omitted in scenarios where the mobile node is considered trustworthy.
   For instance, RFC 3775 is based on the assumption that there is a
   trust relationship between mobile nodes and their respective home
   agents.  The care-of-address test is hence omitted during home
   registrations.  This is certainly a feasible hypothesis in many


Arkko & Vogt              Expires July 30, 2005                [Page 15]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   cases, but one ought to bear in mind that, in some scenarios, it may
   be not.  As an example, a mobile services provider may not be able to
   trust all individuals from its large customer basis, so it may probe
   a mobile node's care-of address even during a home registration
   irrespective of what RFC 3775 defines.

3.3  Security Analysis

   To analyze the security of the return-routability procedure, one
   should evaluate its protection against the tree types of attacks
   described in section Section 2: impersonation attacks against third
   parties, resource-exhaustion attacks against mobile nodes or
   correspondent nodes, and flooding attacks against third parties.

   In the context of Mobile IPv6, impersonation is an attack in which
   the perpetrator claims ownership over a victim's IP address,
   pretending that this IP address be its own Mobile IPv6 home address.
   The return-routability procedure can prevent such attacks unless the
   attacker is on the path from the correspondent node to the victim (in
   the case of a stationary victim) or from the correspondent node to
   the victim's home agent (if the victim is mobile).  However, if an
   attacker happens to be on the critical path, it can spoof a HoTI on
   behalf of the victim, eavesdrop on the returning HoT, and thus
   illegitimately acquire a Home Keygen Token.  The impersonator can
   produce its own Care-of Keygen Token by sending the victim's
   correspondent peer a tailored CoTI with a care-of address through
   which the impersonator is itself reachable.  Having both tokens
   allows the attacker to send an authenticated BU on behalf of the
   victim.

   The return-routability procedure's susceptibility to attacks from the
   routing path conforms with the objective to prevent new attack types
   that did not exist before the introduction of Mobile IPv6, but to
   disregard existing threats that are independent of whether mobility
   is supported or not.  For instance, redirecting someone else's
   packets from outside those packets' routing path is generally
   impossible with plain IP, but a "man in the middle" may well launch a
   successful attack from a position on the routing path.  This said, it
   stands to reason why the return-routability procedure prevents
   off-path attacks, but does little to stop on-path attacks.

   Similarly, the return-routability procedure does not prevent an
   attacker from registering a care-of address which is located such
   that the attacker is on the path between the care-of address and the
   correspondent node.  This attacker is in a position to launch a
   redirection-based flooding attack against the node using the target
   care-of address (or the entire network this care-of address belongs
   to).  But here again could the attacker launch a comparable attack


Arkko & Vogt              Expires July 30, 2005                [Page 16]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   already without the help of Mobile IPv6, simply by setting up an
   upper-layer connection with the victim's IP address.  For instance,
   an on-path attacker could perform a TCP handshake on behalf of its
   victim, initiating, say, a large file download from an FTP server.
   With the TCP sequence numbers at hand, the attacker could also send
   acknowledgements on behalf of its victim to keep the data flow going
   or even accelerate it.

   However, reducing the return-routability procedure's vulnerability to
   the routing path is insufficient to prevent a related style of attack
   that is called "space- and time-shift attacks".  In these attacks,
   the perpetrator taps the critical wire in order to eavesdrop on or
   manipulate return-routability messages, and it then moves to a saver
   place and starts an impersonation attack from there.  The attacker
   may also wait for a better point of time.  It may even install a
   binding on behalf of a victim before the victim starts communicating.
   The mandatory, periodic registration refreshes defined by RFC 3775
   mitigate the threat of space- and time-shift attacks.

   The return-routability procedure is such that the correspondent node
   does not need to explicitly store the Home or Care-of Keygen Tokens
   sent to a mobile node.  The information communicated in the protocol
   is sufficient for the correspondent node to re-calculate the token.
   This saves the correspondent node from attacks against its memory.
   On the other hand, it may open the door for attacks against the
   correspondent node's processing capacity.  A token is a SHA-1 hash on
   the mobile node's and correspondent node's IP addresses, a random
   nonce, and a secret known only to the correspondent node.  The
   computational overhead required to do the hash is rather moderate,
   although a correspondent node should implement its own policies to
   manage resources in a situation of increased processing workload.

4.  Objectives for Enhancement

   This section identifies areas in which route optimization, as
   specified in RFC 3775, may be incompatible with the requirements of
   certain applications.  Objectives to enhance route optimization
   usually boil down to optimizations to the return-routability
   procedure, or alternative mechanisms that may replace the
   return-routability procedure.  The enhancement objectives are herein
   discussed from a requirements perspective, such as the need for
   decreasing latency.  The technical means to reach those objectives is
   not considered, nor is the feasibility of achieving them.

4.1  Latency Optimizations

   A disadvantage of route optimization is that a mobile node must run a
   return-routability procedure before it can inform the correspondent


Arkko & Vogt              Expires July 30, 2005                [Page 17]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   node about its new care-of address.  Therefore, a correspondent
   registration consumes, at a minimum, one and a half round-trip times
   until the correspondent node receives the BU, assuming that the
   mobile node performs the home-address and care-of-address tests in
   parallel.  An additional one-way time is needed until the first
   packet from the correspondent node, and possibly an optional BA,
   arrives at the new care-of address.  Note that the CoTI, CoT, BU are
   transmitted on the direct path between the mobile node and the
   correspondent node, whereas the HoTI and HoT go through the home
   agent.  The actual latency of the return-routability procedure is
   governed by the path with a longer round-trip time.

   Direct communications to the correspondent node can optimistically
   start right after the Binding Update message has been sent (i.e.,
   after one round-trip time), but more generally are delayed until the
   Binding Acknowledgement message is received (i.e., after two
   round-trip times).

   Similarly, optimistic mobile nodes are allowed by RFC 3775 to start
   their return-routability procedure right after sending a Binding
   Update message to their home agent.  They can so reduce the latency
   for the correspondent registration.  But more generally, mobile nodes
   wait for the home registration to be completed and acknowledged
   before initiating the correspondent registration.

   Depending on the type of application, the above delays can be an
   issue.  Interactive, real-time applications, like voice over IP, are
   an example where the delays may cause perceptible quality
   degradations.  Even fast bulk-data transfer can be affected if the
   lack of packets during the movement period is interpreted as
   congestion and leads to a new TCP slow start.  There appears to be
   general consensus that faster mechanisms for route optimization are
   needed.

   Note that the handover delay from an application's perspective is not
   just the latency of the IP mobility mechanism, but also includes
   delays at the IP layer and the link layer.  In fact, the delays
   introduced by the rest of the stack can be significant as well
   Section 6.3.1.

4.2  Signaling Optimizations

   As mentioned in section Section 3, correspondent registrations have a
   maximum lifetime of seven minutes and must be refreshed in case they
   are not updated to a different care-of address in the meantime.  The
   reason for this is to reasonably reduce the window of vulnerability
   to time- and space-shift attacks, where an attacker eavesdrops on
   unencrypted authentication material exchanged during the


Arkko & Vogt              Expires July 30, 2005                [Page 18]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   return-routability procedure and launches an impersonation attack at
   a later time and from a different, probably more amenable location.
   Periodic re-registrations limit the likelihood and feasibility of
   such off-path attacks, since the attacker would have to get back on
   path whenever the authentication material is due to be refreshed.

   A calculation in [2] shows that the seven-minute refreshment interval
   implies a signaling overhead of 7.16 bps when a mobile node
   communicates with a stationary node.  The overhead doubles if both
   peers are mobile.  On one hand, this signaling overhead is certainly
   negligible when the nodes actually communicate.  On the other hand,
   it may cause problems for mobile nodes that are inactive and stay at
   the same location for a while, but still want to have route
   optimization ready with some correspondent node.  These nodes
   typically prefer to go to standby mode to conserve battery power.

   An example where the maintenance of route optimization in the absence
   of traffic may be useful is some sort of messenger service that
   mobile nodes can subscribe to.  Here, having route optimization in
   place would allow the correspondent node in charge of sending the
   messages to instantaneously create an efficient connection.  If the
   mobile node used bidirectional tunneling instead, the first packet
   that the correspondent node sent would be relayed through the home
   agent and trigger a correspondent registration upon arrival at the
   mobile node.  Since a messenger service is likely to send a few
   packets per event only, the belatedly created new correspondent
   registration would probably remain completely unused.

   Also, the accumulated signaling overhead for route-optimization
   maintenance generated by a large customer base may be an issue from a
   network provider's point of view.  Not only do the signaling packets
   have to be routed through the network, part of them must also be
   processed by home agents.  For example, of the 716 Mbps signaling
   overhead generated by 100 million route-optimized mobile nodes, 220
   Mbps goes through a home agent.

   This discussion shows that there are scenarios in which an
   optimization for reduced signaling would be beneficial.  These
   scenarios are important enough to have an impact on the deployment of
   Mobile IPv6.

4.3  Security Enhancements

   The return-routability procedure is lightway and prevents
   mobility-related attacks reasonably well.  In some cases, however,
   may better security be useful.  One may in particular attempt to
   limit what on-path attackers can do.  Attackers that operate in the
   same networks as one of the communication end points are also a


Arkko & Vogt              Expires July 30, 2005                [Page 19]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   threat that one may want to avoid.  There are existing proposals that
   offer higher security in Mobile IPv6 [24] and in other
   mobility-management protocols such as HIP [22].

   However, even with better security for mobility management can the
   Internet as a whole not become any safer than the non-mobile
   Internet.  For instance, on-path attackers can cause denial of
   service, or inspect and modify cleartext packets, already without
   misusing a mobility-management protocol.  Applications that require
   strong security are therefore generally advised to end-to-end
   mechanisms such as IPsec or TLS.  But even communications that are
   protected on an end-to-end basis are vulnerable to denial of service.

   Better route-optimization security may become necessary in the
   future, if technological improvements remove some of the existing
   mobility-unrelated vulnerabilities of the Internet.  For instance,
   the use of Secure Neighbor Discovery [20] in a network where one of
   the communication end points resides can remove some of the existing
   threats.

4.4  Applicability Enhancements

   As per RFC 3775, a mobile node's home address and current care-of
   address are carried in all route-optimized packets.  The course of
   the mobile node is therefore trackable, both by the correspondent
   node as well as by a third party.  This can be an issue in situations
   where the mobile node prefers not to reveal its location.  Location
   privacy, however, is inherently not supported by Mobile IPv6 route
   optimization.  A workaround is to fall back to bidirectional
   tunneling when location privacy becomes an issue.  Packets that carry
   the mobile node's care-of address are then only transferred between
   the mobile node and the home agent, and they can be encrypted through
   IPsec ESP [27][10] on that path.  However, the mobile node may have
   to periodically re-establish its IPsec security associations so that
   it cannot be tracked through its SPIs.

   Scenarios where location privacy is desired are one example where
   Mobile IPv6 proves insufficient.  Early improvement efforts have
   already started in this area [8][4].  There may also be other
   deployment scenarios where the applicability of Mobile IPv6 is
   limited and could be extended.

5.  Enhancements Toolbox

   This section introduces a number of techniques, a "toolbox", that can
   be used in the construction of an efficient and secure
   route-optimization protocol.  The section starts with the standard
   mechanisms used in RFC 3775 and continues with additional techniques


Arkko & Vogt              Expires July 30, 2005                [Page 20]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   that have been proposed as enhancements or alternatives.

   It is important to mention that many enhancements techniques are
   insufficient or insecure when applied on their own, because the scope
   of each of them is usually limited to a certain sub-issue.  It is the
   combination of a set of techniques that makes an efficient and secure
   route-optimization mechanism possible.  Different techniques also
   have different trade-offs with respect to, say, universal
   applicability versus efficiency.

5.1  IP-Address Tests

   An IP-address test can be employed to ensure that the peer is live
   and on the path to a specific destination address.  RFC 3775 uses
   IP-address tests for two purposes: The home-address test provides
   evidence that a mobile node owns the home address it wants to use;
   the care-of-address test serves to preventing flooding attacks
   related to spoofed care-of addresses.  As specified in RFC 3775,
   IP-address tests can be stateless for the correspondent node, making
   their use in denial-of-service attacks harder.

   IP-ddress tests are a zero-configuration approach that is independent
   of ancillary infrastructure.  The subsequent disadvantage is that
   IP-address tests can only guarantee that a peer is on the path to the
   probed IP address, not that the peer truly owns this IP address.  On
   the other hand, the types of attacks that an on-path attacker can do
   with route optimization are the same that an on-path attacker can
   anyway do without route optimization, so there is actually no
   significant new threat.

   The use of two IP-address tests requires four messages.  Both tests
   can be performed in parallel, so they can be completed in one
   round-trip time.

5.2  Protected Tunnels

   An additional technique used in RFC 3775 is the protection of a part
   of the signaling communications through an authorized and,
   optionally, encrypted tunnel between a mobile node and its home
   agent.  This prevents other nodes, close to the mobile node, from
   seeing a home-address test.

   Given the starting point that we cannot assume a pre-existing
   end-to-end security relationship between the mobile node and the
   correspondent node, this protection exists only for the mobile node's
   side.  In case the correspondent node is stationary, the path between
   the home agent and the correspondent node remains unprotected.  An
   attacker on that path can still perform attacks, but these attacks


Arkko & Vogt              Expires July 30, 2005                [Page 21]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   are similar to those that an on-path attacker can anyway do without
   route optimization.  So, as with IP-address tests, the intent here is
   not to introduce any significant new threat to the Internet.  The
   same is true in case the correspondent node is mobile.  It then has
   its own home agent, and it is the path between the two home agents
   that stays unprotected.

5.3  Optimistic Behavior

   RFC 3775 leaves quite a bit of freedom for a mobile node with respect
   to scheduling signaling and data packets.  An optimistic mobile node
   can initiate the return-routability procedure right after sending the
   BU to its home agent, even before it has gotten a BA back.

   The mobile node must wait for the home agent's BA before it can send
   a BU to the correspondent node.  However, the mobile node may start
   sending data packets to the correspondent node right after it has
   sent this BU without having to wait for a BA.

   The drawback of the described optimistic behavior is that a dropped,
   re-ordered, or rejected BU can cause data packets to be dropped.
   Such packet loss would also have an effect on pessimistic signaling,
   however.  As a result, further experimentation and simulation may be
   needed to quantify to the effects of optimistic techniques under
   different conditions.

5.4  Proactive IP-Address Tests

   The post-movement time period during which a mobile node and
   correspondent node cannot fully communicate is oftentimes called the
   "critical phase".  Usually, the critical phase spans a home
   registration and a correspondent registration including a
   return-routability procedure.  One technique to shorten the critical
   phase is to move some of these tasks to an earlier stage.  In
   particular, the home-address test can be done proactively before a
   handover, instead of doing it afterwards, without violating the base
   specification.  This is discussed in [25].

   A Home Keygen Token is generally valid for 3.5 minutes.
   Consequently, the mobile node must initiate a proactive home-address
   test at least every 3.5 minutes if it seeks to have available a fresh
   Home Keygen Token at all times.  This is especially helpful if the
   mobile node cannot foresee the next handover.  Alternatively, the
   mobile node may be able to receive a trigger from its local link
   layer indicating that a handover is imminent.  In this case, the
   mobile node may initiate the home-address test right in time instead
   of doing it periodically every 3.5 minutes.  Note, however, that the
   mobile node must anyway re-initiate the correspondent


Arkko & Vogt              Expires July 30, 2005                [Page 22]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   registration--and, thus, the home-address test--after the maximum
   binding lifetime of seven minutes.  Link-layer triggers can therefore
   save the mobile node at most every second home-address test (unless
   they are combined with additional techniques such as [2]).

   Another optimization possibility is performing a care-of address test
   before the movement.  This is possible only if the mobile node is
   capable of attaching to two networks simultaneously.

5.5  Concurrent IP-Address Tests

   If one assumes that a mobile node can attach to only a single network
   at a time, executing the care-of-address test proactively before a
   handover is not an option.  However, one may authorize a mobile node
   to start using a new care-of address right after the handover,
   without doing the care-of-address test first, with the restriction
   that a care-of-address test be initiated rightaway.  The peers could
   then already exchange packets through the new care-of address while
   the test is being executed.  In recent literature, one refers to the
   care-of address as "unconfirmed" when the correspondent node does not
   yet know the result of the concurrent care-of-address test, and one
   calls it "confirmed" thereafter.  The lifetime of the associated
   binding can be limited to a few seconds as long as the care-of
   address is unconfirmed, and it can be extended once it becomes
   confirmed.

   It is important to understand that concurrency is legitimate only for
   care-of-address tests.  In contrast, home-address tests are done for
   mobile-node authentication, which must be done before any signaling
   messages are accepted.  Authentication guarantees that only the
   legitimate mobile node can create or update a binding pertaining to
   its home address.  However, both IP-address tests are in general
   simultaneously performed during the critical handover period, and one
   can expect the home-address test to have a longer latency than the
   care-of-address test.  The full benefit of eliminating the
   care-of-address tests from the critical handover period by means of
   concurrency can therefore only unfold if some other mechanism is used
   to move the home-address tests out of the critical handover period as
   well.  For instance, one can do the home-address tests proactively
   before a handover as suggested in Section 5.4, or one may use
   cryptographically generated home addresses as proposed further down
   in Section 5.9.

   Concurrent care-of-address tests were first proposed in [25] where
   they were combined with proactive home-address tests.  In [25], as
   soon as the mobile node has configured a new care-of address after a
   handover, it sends to the correspondent node an Early Binding Update
   (EBU) message.  The mobile node signs the EBU with a


Arkko & Vogt              Expires July 30, 2005                [Page 23]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   message-authentication code keyed only with the Home Keygen Token
   that the mobile node has previously retrieved through a proactive
   home-address test.  Upon reception of the EBU, the correspondent node
   creates a tentative binding for the new care-of address, which can
   then be used while the care-of-address test is being executed.  When
   the care-of-address is done, the mobile node sends a standard BU to
   the correspondent node, concluding the registration procedure.

   From the reception of an EBU to the reception of the corresponding
   standard BU, the correspondent node cannot be sure whether the mobile
   node is actually present at the claimed new care-of address.  A
   malicious node may misuse this property to redirect packets to a
   third party's IP address during this phase of uncertainty.  Under
   many circumstances, this will not be acceptable even if the lifetime
   for an unconfirmed care-of address is tentative only, and there needs
   to be external protection.  Techniques like those described in
   Section 5.7 or Section 5.8 can help.

5.6  Diverted Routing

   Given that the per-movement signaling takes some time, a mobile node
   can optionally request its traffic to be routed through its home
   address while this signaling is being completed.  The performance
   impact of this technique depends on the length of the critical phase
   as well as on the capacity and latency of the direct path and the
   path through the home agent.  With respect to the packets that the
   correspondent node sends, the following analysis can be made.

   The correspondent node does not know that the mobile node has moved
   until it has been told about this.  It continues to send packets to
   the mobile node's old care-of address until that time.  These packets
   are usually lost and must be transmitted by upper-layer mechanisms.
   In addition, even the request to delete or deactivate a binding
   requires some security-related signaling to prevent misuse by
   unauthorized nodes.  Zero packet loss can generally only be achieved
   through local repair techniques in the mobile node's access network
   (cf Section 5.14), or if the mobile node can simultaneously attach to
   two IP networks.

   Once the correspondent node knows that the old care-of address is
   stale, it can send further packets to the home address.  If one
   assumes that the correspondent registration for the new care-of
   address involves messages through the home agent, it is obvious that
   at least some of these packets reach the mobile node before the new
   binding is set up.  After all, signaling and data packets travel the
   same path.

   It depends on the capacity and latency of the path through the home


Arkko & Vogt              Expires July 30, 2005                [Page 24]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   agent relative to the latency of the direct path for how long the
   correspondent node should continue to send packets to the home
   address.  If the former path has a high latency, it might be better
   to queue some of the packets until the correspondent registration is
   complete and packets can be directly sent to the mobile node.  One
   potential research direction is to look at whether the properties of
   the paths could be learned during the signaling and then used to
   decide the optimal time when the correspondent node should start
   queueing packets.

   The situation for the packets that the mobile node sends is similar:
   Although the mobile node knows immediately that it has moved, RFC
   3775 does not allow the mobile node to route-optimize packets from
   new care-of address until it has formally updated the correspondent
   node about the new care-of address.  Of course, the mobile node may
   buffer packets until the correspondent registration is done so that
   no packets get lost.

   Diverted routing appeared originally in [25] and has since been used
   also in [6].

5.7  Credit-Based Authorization

   As described in Section 5.5, a new care-of address may already be
   used while the care-of-address tests is in progress.  The
   prerequesite is that sufficient protection is provided against
   redirection-based third-party flooding.  One way of doing this is
   authorizing a mobile node to receive packets at a new, unconfirmed
   care-of address based on credit that the mobile node has collected
   with a previous care-of address.  (See Section 5.5 for a definition
   on when a care-of address is confirmed and when it is unconfirmed.)
   This mechanism has become known as Credit-Based Authorization (CBA)
   [26].

   CBA limits the data volume and rate that the correspondent node sends
   during a concurrent care-of-address test such that it does not exceed
   the data volume and rate that the mobile node has sent in the recent
   past.  The intention here is not so much to prevent redirection-based
   flooding attacks altogether as to render impossible any kind of
   amplification that can be achieved through redirection.  It is this
   inherent potential for amplification which constitutes the attraction
   to redirection-based flooding: While the attacker simply does an
   initial connection setup and a subsequent correspondent registration
   for packet redirection, it is the correspondent node which generates
   the packets (typically full-sized TCP segments) that the victim ends
   up having to receive.  Transport-layer acknowledgements can generally
   be faked, so the attacker can easily keep the redirected data stream
   alive.  In the end, the correspondent node spends, unknowingly, much


Arkko & Vogt              Expires July 30, 2005                [Page 25]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   more resources on the flooding attack than the attacker itself.  CBA
   renders such amplification impossible.  This makes redirection-based
   flooding attacks very unattractive to the attacker because it would
   take the attacker less coordinative effort, and be at least equally
   effective, if it sent bogus packets to the victim directly.

   Technically, CBA works as follows.  A CBA-enabled correspondent node
   maintains a credit account for each mobile node it communicates with.
   The correspondent node increases the mobile node's credit by the size
   of each inbound packet received from the mobile node.  When the
   correspondent node sends a packet to the mobile node, and a
   concurrent care-of-address test is in progress, the IP address to
   which the packet is sent depends on how much credit is left.  If the
   credit is higher than the size of the outbound packet, that packet is
   directly sent to the mobile node's care-of address.  However, in case
   the remaining credit is too small, the packet is sent to the mobile
   node's home address.  Since the home agent has a trust relationship
   with the mobile node, it can forward these packets to the mobile
   node's care-of address without having to do a reachability check
   first.  Exponential aging limits the lifetime of collected credit.
   This guarantees that the mobile node cannot collect credit over an
   extended time period at a very slow speed and use this credit, all at
   once, for a short but potent data burst towards a faked care-of
   address.

   Allocating a mobile node's credit based on the packets that the
   mobile node sends and reducing the credit based on packets that the
   mobile node receives is defined as CBA mode 1.  With applications
   that send comparable data volumes into both directions, CBA mode 1
   works fine.  On the other hand, CBA mode 1 may prevent the mobile
   node from collecting the amount of credit it needs for a handover
   when applications with asymmetric traffic patterns are in use.  For
   instance, file transfers and media streaming are characterized by
   high throughput towards the client, typically the mobile node, and
   comparably little throughput towards the serving correspondent node.
   To better accommodate such applications, a second CBA mode was
   designed.

   With CBA mode 2, credit allocation is based on packets that the
   mobile node receives from the correspondent node rather than on
   packets that the mobile node sends.  New credit is allocated while
   the mobile node's current care-of address is confirmed; existing
   credit is used up while the care-of address is unconfirmed.  Thus,
   its is the data flow from the correspondent node to the mobile node
   that is responsible for both credit allocation and reduction,
   resolving the issue with applications producing asymmetric traffic
   patterns.


Arkko & Vogt              Expires July 30, 2005                [Page 26]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   It is less obvious why CBA mode 2 outrules flooding-attack
   amplification than it is for CBA mode 1.  The key observation is that
   a mobile node invests comparable effort for packet reception as for
   packet transmission, in terms of bandwidth, memory, and processing
   capacity.  It is therefore legitimate to give a mobile node credit
   for packets that it has received and processed.  The question is,
   though, how the correspondent node can determine how many of the
   packets sent to a mobile node are actually received and processed by
   that mobile node.  As mentioned above, relying on transport-layer
   acknowledgements is not an option as such messages can easily be
   faked.  CBA mode 2 hence defines its own feedback mechanism, Care-of
   Address Spot Checks, which is much more robust to spoofing.  With
   Care-of Address Spot Checks, the correspondent node periodically tags
   packets that it sends to the mobile node with a random, unguessable
   number, a so-called Spot Check Token.  When the mobile node receives
   a packet with an attached Spot Check Token, it buffers the token
   until it sends the next packet to the correspondent node.  The Spot
   Check Token is then included in this packet.  Upon reception, the
   correspondent node verifies whether the returned Spot Check Token
   matches a token recently sent to the mobile node.  New credit is
   allocated in proportion to the ratio between the number of
   successfully returned Spot Check Tokens and the total number of
   tokens sent.  This implies that new credit is approximately
   proportional to the fraction of packets have made their way at least
   up to the mobile node's IPv6 stack.  The preciseness of Care-of
   Address Spot Checks can be traded with overhead through the frequency
   with which packets are tagged with Spot Check Tokens.

5.8  Heuristic Monitoring

   Heuristic approaches to protect concurrent care-of-address tests are
   conceivable as well.  For instance, one may consider a lifetime limit
   for unconfirmed care-of addresses which, supplemented by a heuristic
   for misuse detection, can prevent, or at least effectually
   discourage, misuse of such addresses.  The challenge here seems to be
   a feasible heuristic: On one hand, the heuristic must be sufficiently
   rigid to catch any malicious intents at the other side.  On the other
   hand, it should not have a negative impact on a fair-minded mobile
   node's communications.

   Another problem with heuristics is that they are usually reactive.
   The correspondent node can only respond to misbehavior after it
   appeared.  If the response comes quickly, attacks may simply not be
   worthwhile.  But premature actions should be avoided, of course.  One
   must also bear in mind that an attacker may be able to use different
   home addresses, and it in general hard for the correspondent node to
   see that the set of home addresses belongs to the same node.  The
   attacker may also use multiple correspondent nodes for its attack in


Arkko & Vogt              Expires July 30, 2005                [Page 27]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   an attempt to amplify the result.

5.9  Cryptographically Bound Identifiers

   Cryptographically Generated Addresses (CGA) offer a method for
   binding a public key to an IP address.  A CGA is an IPv6 address with
   a standard routing prefix and an interface identifier generated from
   a hash on the CGA owner's public key and some additional parameters.
   A CGA allows the owner to assert a claim on its address: It can sign
   a to-be-authenticated message with its private key and attach its
   public key along the parameters necessary to recompute the CGA.  The
   recipient of this message can then verify whether the address is
   correct.

   CGAs offer three main advantages: First, spoofing attacks against a
   CGA are much harder than attacks against a normal IP address.  Though
   an attacker may always create its own CGA, it is unlikely to find a
   public/private key pair that produces someone else's CGA.  Second,
   CGA-based authentication works entirely end-to-end; it does not
   depend on a certification infrastructure.  Third, CGAs are
   syntactically just ordinary IPv6 addresses.  Their additional
   semantics do not require any upgrade or modification to the Internet.

   Many applications are conceivable where CGAs can be advantageous.  In
   Mobile IPv6, CGAs can bind a mobile node's home or care-of address to
   its public key.  CGAs were originally described in [36] and in [37],
   and they have later been used in [24], [19], [6], and others.

   One limitation of CGAs is that the hash on the CGA owner's public key
   can only be 62 bits long.  The rest of the address is occupied by a
   64-bit routing prefix as well as the universal/local and
   individual/group bits.  A brute-force attacker might thus be able to
   find a public/private key pair that produces a certain CGA.  It could
   then claim ownership over this CGA.  The threat can usually be
   contained by including the address prefix in the hash computation, so
   that an attacker, in case it did find the right public/private key
   pair, could not form CGAs for multiple networks from it.

   Higher security can be achieved through longer cryptographically
   bound identifiers.  For instance, a node's primary identifier in the
   "Host Identity Protocol" (HIP) [22] is a 128-bit hash on the node's
   public key.  It is used as an IP-address replacement at stack layers
   above IP.  On the other hand, a 128-bit identifier is not routable,
   so there needs to be some external location mechanism if a node wants
   to contact a peer of which it only knows the identifier.



Arkko & Vogt              Expires July 30, 2005                [Page 28]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

5.10  Pre-Configuration

   The return-routability procedure was designed for communication peers
   that do not share an a-priori security association.  In order to
   thwart off-path attacks nonetheless, the procedure can establish only
   very short-living security associations.  However, in certain,
   restricted scenarios, it may be possible to pre-configure mobile and
   correspondent nodes with security associations.  Such security
   associations can have much longer lifetimes because pre-configuration
   is inherently more secure than the plaintext token exchange from the
   return-routability procedure.

   Pre-configuration has two major benefits.  The first one is strong,
   cryptographic authentication and encryption, which can be applied to
   both signaling and data packets.  The second advantage is lower
   signaling delay, because the additional round-trip time otherwise
   needed for the return-routability procedure can be spared.  The
   obvious disadvantage of pre-configuration is its limited
   applicability.

   It is important to recognize the necessity to unambiguously bind a
   security association to the home address that it is to protect.  With
   regards to the return-routability procedure, this binding is realized
   by routing the HoTI and HoT through the home address.  In the case of
   a pre-configured security association, the association must be
   related to the home address as part of the configuration.  Note that
   this affects both secret-key and public-key cryptography.

   Two proposals for pre-configuration are currently under discussion in
   the IETF as optional enhancements to RFC 3775.  [15] re-uses most
   from the standard authentication and authorization procedure defined
   in RFC 3775.  The only difference is that mobile nodes are endowed
   with the information they need to compute Home and Care-of Keygen
   Tokens themselves rather than having to obtain them through the
   return-routability procedure.  [5] replaces the standard RFC-3775
   concepts with IPsec and the Internet Key Exchange (IKE) protocol.

   From a technical standpoint, a pre-configured security association
   can only replace a home-address test, not a care-of-address test.
   After all, a correspondent node cannot verify, based on the
   association alone, whether a mobile node is actually present at the
   announced care-of address.  The problem can be circumvented by
   postulating that the correspondent node has sufficient trust in the
   mobile node to believe that the care-of address is correct.  However,
   this assumption, which is made in [15], discourages the use of
   pre-configuration in scenarios where such trust is unavailable.  For
   instance, a mobile-phone operator may be able to configure
   subscribers with secret keys for authorization to a particular


Arkko & Vogt              Expires July 30, 2005                [Page 29]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   service, but it may not be able to vouch that all subscribers use
   this service in a trustworthy manner.

   Another way to avoid the problem of care-of-address verification is
   to rely on access networks to filter out packets with incorrect IP
   source addresses (cf.  Section 5.12).  This approach is taken in [5].
   However, the problem with local filtering is that it must be deployed
   everywhere an attacker may possibly access the Internet in order to
   be fully protective.  Otherwise, an attacker can always find a place
   from where a spoofing attack is possible, endangering IP nodes
   anywhere.  As things stand, the assumption that deployment of
   filtering techniques be universal is speculative.

   Both of the above two assumptions can be eliminated through
   care-of-address tests, facilitating the use of pre-configuration in
   spite of lacking trust relationships or the existence of acess
   networks without local filtering techniques.  Care-of-address tests
   can be made concurrent for higher efficiency.

5.11  Semi-Permanent Security Associations

   A middle-way approach in between the return-routatibility procedure's
   short-term security associations and pre-configured permanent ones is
   to dynamically set up a semi-permanent security association upon
   first contact, and to use it to authenticate signaling over a longer
   period.  Subsequent signaling can then be unambiguously bound to the
   initial contact.

   On-demand security associations for IPsec are traditionally
   established by executing IKE between two peers.  This works well when
   the negotiated keys are securely bound to the entity that they are to
   protect.  For instance, in HIP, the guarded entity is a 128-bit
   identifier which can be derived from the owner's public key through a
   hash function.  In Mobile IPv6, however, the to-be-protected entity
   is a plain IPv6 home address, which is syntactically
   indistinguishable from other IPv6 addresses.  Given that no direct
   authentication between the peers is generally feasible, there is no
   way for a mobile node to prove possession of its home address either.
   This would allow an attacker to do the IKE exchange with an arbitrary
   victim's IP address, and to discretionarily redirect the victim's
   traffic from that time on.  Although the attacker would have to be on
   the path between the victim and the correspondent node while running
   IKE, it could move off the path once the keys have been exchanged.
   As the victim lacks the keys, it cannot even re-claim its IP address.

   As a result, dynamic semi-permanent security associations must be
   bound to the right home addresses through some additional technique
   when used in the context of Mobile IPv6.  For instance, they can be


Arkko & Vogt              Expires July 30, 2005                [Page 30]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   combined with an initial, one-time home-address test, or IKE can be
   run through the home address.  Another way is using CGAs as proposed
   in [6].

   No matter how they are secured, dynamic semi-permanent security
   associations cannot be leveraged to prove the correctness of a
   care-of address.  They hence fail to solve the problem with
   redirection-based flooding attacks, and should only be applied in
   conjunction with care-of-address tests.  Semi-permanent security
   associations were first developed in [3] where they were called
   "Purpose Built Keys" (PBK).

5.12  Infrastructure

   Infrastructure can provide assistance by vouching for the
   authenticity of a home address, the correctness of a care-of address,
   or the trustworthiness of a mobile node.  Infrastructure can take
   many forms, such as a PKI tailored for route optimization, or an AAA
   infrastructure enhanced with the required features.

   In its basic form, such an infrastructure hands out home addresses
   and associates a key with each home address.  It may also produce
   certificates that can be used by others to verify the binding between
   a key and a home address, or it may provide a query interface where
   this verification is performed within the infrastructure.

   Setting up this type of infrastructure has generally been considered
   impossible for general Internet use.  One of the problems is the
   current separation of IP-address assignment and security
   infrastructures.  However, Certificate-based Binding Updates (CBU)
   [23] are a useful simplification: A home agent is assigned a
   certificate that binds the home-network prefix to the home agent's
   public key.  Correspondent nodes can trust the home agent based on
   the certificate, and the home agent vouches for the trustworthiness
   of the mobile nodes it serves.  The advantage is that, rather than
   having to issue a certificate per mobile node, only a certificate per
   home-network prefix is required.  This makes the infrastructure
   problem more tractable.  Furthermore, the home agent may help to
   establish an end-to-end security association between the mobile node
   and the correspondent node so that subsequent messages can be
   securely exchanged on the direct path between the communicating
   peers.  This allows for improved signaling delay during later
   handovers.

   The infrastructure can also help to separate the trustworthy mobile
   nodes from the non-trustworthy ones.  Together with an identifier for
   each mobile node, this could be used to retroactively track down
   misbehaving nodes.


Arkko & Vogt              Expires July 30, 2005                [Page 31]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   AAA architectures are another approach to mobile-node authentication.
   A home AAA server, which may or may not be co-located with the home
   agent, can then contact a remote AAA server in the correspondent
   node's network.  Note that this moves some of the authentication
   overhead from the correspondent node to the remote AAA server.  An
   AAA-based approach can also dynamically assign mobile-node requests
   to different correspondent nodes while keeping secret authenticating
   material local at a single AAA server.

   Verification of care-of addresses may be based on infrastructure in
   the mobile node's local access network.  For instance, as a care-of
   address normally appears as a BU's IP source address, the
   infrastructure can verify that the IP source addresses of all packets
   leaving the network are correct.  Ingress filtering [34] provides
   this feature to the extent that only the prefix of an outbound
   packet's IP source address is inspected.  The pertinence of this
   check strongly depends on whether it is done directly in the access
   router or further up the packet's path.

   The problem with verifying a care-of address at the fringe of the
   Internet is that there is no way for a remote correspondent node to
   decide whether a packet has really undergone a check or not.  And
   although many access networks today already do ingress filtering, an
   attacker can always find a network where such a technique is not
   deployed.

   A more secure approach to care-of-address verification is hence to
   let the correspondent node itself verify a mobile node's care-of
   address by querying a piece of infrastructure, located in the mobile
   node's access network, about the mobile node's presence at a
   particular care-of address.  For this, the mobile node would have to
   be identifiable by means known to both the correspondent node and the
   infrastructure.  If the care-of address is cryptographically
   generated (cf.  Section 5.9) and configured through Secure Neighbor
   Discovery [20], the mobile node can be securely identified by the
   care-of address alone.  Otherwise, if CGAs are unavailable, an
   additional PKI or AAA architecture is needed to distribute the
   required credentials.

5.13  Local Mobility

   Mobile IPv6 handles all mobility on an end-to-end basis.  However, it
   may sometimes make sense to handle part of a mobile node's movements
   entirely within the local access network.  This can yield performance
   improvements in terms of signaling overhead and handover latency.

   Hierarchical Mobile IPv6 [18] is an optimization of RFC 3775 for
   local mobility support.  It introduces the concept of a regional


Arkko & Vogt              Expires July 30, 2005                [Page 32]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   Mobile Anchor Point (MAP) that acts as a local home agent towards
   visiting mobile nodes and proxies them towards their home agents and
   correspondent nodes.  When a mobile node enters a visited network, it
   configures an "on-link care-of address", like in RFC 3775, and a
   wider-scope "regional care-of address" from a MAP's network.  The
   mobile node registers a binding between the two care-of addresses
   with the MAP, and it uses the regional care-of address for
   communicating with nodes outside the local network.  When the mobile
   node moves to a different network within the same MAP's realm, it
   configures a new on-link care-of address, but keeps its regional
   care-of address.  For the outside world it thus seems as if the
   mobile node was stationary within the MAP's network.

   The mobile node may in addition register the regional care-of address
   with its own home agent and its correspondent nodes.  This allows the
   mobile node to roam between the domains of different MAPs without
   breaking ongoing communication connections.

5.14  Local Repair

   When a mobile node moves from one IP-attachment point to another,
   some packets are likely to be still in flight towards the old
   location.  Local repair techniques can be used to forward these
   packets to the new IP-attachment point.  This can be done through a
   tunnel or a host route between the old and new access router.

   Local repair usually implies that packets are buffered at the old or
   new access network.  If the mobile node leaves the old access network
   without telling its new care-of address, it must signal this
   information back subsequently.  In-flight packets arriving at the old
   network should in this case be buffered until the mobile node's new
   location is known.  Alternatively, the mobile node may be able to
   proactively determine its new care-of address before it moves.
   In-flight packets can then immediately be forwarded to the new
   location, where they probably have to be buffered for a little while
   until the mobile node arrives.  A protocol that supports both modes
   is defined in [17].

5.15  Assisted Auto-Configuration

   The local network may assist a mobile node in finding a new access
   router to which it can handover.  For instance, in [17], the mobile
   node can search for a suitable access point and ask its current
   access router to proxy-advertise the router to which this access
   point is attached.

   Additionally, the local network may support the mobile node in
   configuring a new care-of address from its old link.  In [17], after


Arkko & Vogt              Expires July 30, 2005                [Page 33]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   the mobile node has determined the access router that it wants to
   handover to, it may suggest a new care-of address.  The candidate
   care-of address is signaled to the prospective access router which
   performs DAD on the care-of address and signals the result back to
   the mobile node.  The new access router also performs Proxy Neighbor
   Discovery in case the new care-of address is available.

   Assisted auto-configuration can have enormous performance benefits,
   especially when combined with local repair techniques.  A
   disadvantage is the investments for setting up the required
   infrastructure.  Also, local support must be provided in both the old
   and the new access network, so handovers between different
   administrative domains may be problematic.

5.16  Processing Improvements

   One goal for designing the return-routability procedure was low
   computational complexity.  The processing overhead for route
   optimization should thus be acceptable in general.  However,
   mechanisms alternative to the return-routability procedure, such as
   public-key cryptography, may be more taxing on processing resources.
   Here, it may help to replace RSA algorithms with ECC techniques.
   Moreover, even the low-complexity cryptographic algorithms used in
   the return-routability procedure may be too expensive for very busy
   servers.

5.17  Delegation

   Given that the home agent does not need to move or conserve battery
   energy, it can be used for performing computationally expensive
   tasks.  It can also be used for parts of the signaling in order to
   reduce communications over slow wireless links.  Some work relating
   to delegation has been done in [24], [23], and [32].

6.  Analysis

   This section analyzes the techniques presented in Section 5 in
   relation to each other and in the context of the enhancement
   objectives described in Section 4.  The techniques are categorized
   first.  Some recent proposals for route-optimization enhancement,
   which rely on one or combine multiple of these techniques, are
   subsequently evaluated.  The section concludes with a number of
   opportunities for further research in the area of route optimization.

6.1  Categorization of Techniques

   Local techniques include support for micro-mobility, route repair,
   and assisted auto-configuration.  They seek to reduce or eliminate


Arkko & Vogt              Expires July 30, 2005                [Page 34]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   long end-to-end round-trip times or delays caused by standard
   auto-configuration techniques.  Local techniques have traditionally
   been implemented in a manner that requires configuration, but there
   appears to be no fundamental reason why this would have to be so.

   IP-address tests, which may be proactive or concurrent, credit-based
   authorization, heuristic monitoring, CGAs, semi-permanent security
   associations, and cryptographically bound identifiers are end-to-end
   techniques.  They are independent of local network support and are
   thus very flexible.  They may also be inexpensive to deploy.  The
   cost for these advantages is typically a smaller performance gain
   compared to local mechanisms due to global, thus potentially long,
   round-trip times.

   Zero-configuration techniques require no prior configuration or
   assistance from a managed infrastructure.  IP-address tests, diverted
   routing, credit-based authorization, heuristic monitoring, CGAs,
   semi-permanent security associations, cryptographically bound
   identifiers, processing improvements, and delegation are
   zero-configuration techniques.  Mechanisms that require
   pre-configuration or some kind of infrastructure are not among
   zero-configuration techniques.

6.2  Evaluation of Recent Proposals

6.2.1  Local Assistance

   There are currently two proposals in the IETF for local mobility
   assistance, Hierarchical Mobile IPv6 and Fast Handovers for Mobile
   IPv6.  Hierarchical Mobile IPv6 (HMIPv6) [18] screens a mobile node's
   movements within a MAP domain from nodes not inside that domain.  In
   case standard Mobile IPv6 is used end-to-end, this eliminates most of
   the global signaling: While its regional care-of address does not
   change, a mobile node does not need to update its home agent or
   correspondent nodes beyond the mandatory periodic refreshments.  Not
   having to signal on a global basis also reduces handover latency.

   Updates to the home agent and to correspondent nodes are necessary
   only when the mobile node leaves the current MAP domain.  The mobile
   node may then register a new regional care-of address with a
   different MAP if one is available.  Note that switching MAPs usually
   requires the mobile node to signal more than if standard Mobile IPv6
   was used alone.  Local and end-to-end signaling then comes together
   because, as it stands, a mobile node must contact the new MAP
   separately from its home agent and correspondent nodes.  Due to
   dependencies between a MAP registration and a contemporary home or
   correspondent registration, a mobile node may want to wait for the
   MAP registration to complete before it initiates the standard Mobile


Arkko & Vogt              Expires July 30, 2005                [Page 35]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   IPv6 registration procedure.  Handover latency is then increased in
   addition to the signaling overhead.  Future work could thus go into
   the integration of MAP registrations with standard Mobile IPv6
   signaling.

   Another interesting research opportunity seems to be a mechanism that
   tells neighboring MAPs from different administrative sites that their
   domains overlap.  The MAPs could then mutually advertise each other
   throughout certain parts of their domains.

   The cost for an inter-MAP handover in terms of signaling load and
   delay strongly depends on the network topology.  In an optimal
   layout, a MAP is located somewhere on the path from the mobile node
   to its home agent and correspondent nodes.  This may be the case if
   the MAP is co-located with an Internet gateway.  Then, switching MAPs
   is cheap.  On the other hand, if the MAP is way off the direct path
   between a mobile node and its peers, the additional overhead might
   become noticeable.  Indeed, a good topological layout is crucial for
   the performance of HMIPv6.

   The second local optimization, Fast Handovers for Mobile IPv6
   (FMIPv6) [17], streamlines the router-discovery and
   IPv6-address-configuration processes, and it facilitates lossless
   handovers.  FMIPv6 assumes that access routers are capable of
   matching a neighboring access point to the access router to which it
   attaches.  The capability is a prerequisite for proxy router
   discovery.  Yet, it is still an open issue how access routers learn
   about this information.  Manual configuration is one option, though
   it can be extremely expensive.  More attractive would be an automated
   mechanism that allows access routers to dynamically recognize access
   points to which mobile nodes may want to switch.  A related issue is
   how such knowledge can be securely obtained across the borders of
   administrative sites.  These are opportunities for future research.

   Note that Hierarchical Mobile IPv6 is applicable even when Mobile
   IPv6 is not used beyond the local domain.  I.e., a mobile node may
   use its regional care-of address as a temporary home address.  The
   mobile node would thus appear to a correspondent node as a stationary
   node in the MAP's network.  This allows the mobile node to keep its
   movements private as long as it stays within the same MAP domain.
   FMIPv6 can be used in combination with standard Mobile IPv6, HMIPv6,
   or both, but it cannot be used without either.

   Of course, there are disadvantages with HMIPv6 and FMIPv6.  Local
   optimizations in general require investments in the access network
   and thus imply additional costs for the network operator.  Also, as
   mentioned, localized mobility support may even cause increased
   overhead in certain situations.  And local mechanisms are to date


Arkko & Vogt              Expires July 30, 2005                [Page 36]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   ineffective for handovers across administrative domains unless
   providers have mutual agreements to interconnect their networks.

6.2.2  Pre-Configuration

   The Home Keygen Token exchange from the return-routability procedure
   is the default authentication technique used in Mobile IPv6.  It
   facilitates reasonable security even between nodes that have no
   pre-existing relationship.  On the other hand, nodes that do share a
   common secret should be allowed to omit the home-address test.  This
   can be beneficial in certain scenarios where the home-address test
   causes a long handover latency due to packet redirection through the
   home agent.  Note that a shared secret cannot replace the
   care-of-address test.  Eliminating the care-of-address test requires
   some sort of trust into mobile nodes not to spoof a care-of address.
   The pre-configuration approach standardized in the IETF [15] uses a
   shared secret between the mobile node and the correspondent node, and
   it assumes that mobile nodes are trustworthy.

   The assumption that mobile nodes be fair-minded turns out to be quite
   far stretching.  On on side, it affords the elimination of the entire
   return-routability procedure, not just the Home Keygen Token
   exchange.  As explained in [15], and as it can also be inferred from
   figure Figure 1, this cuts the average handover latency in half.  On
   the other hand, the assumption significantly limits the applicability
   of the optimization.  There are certainly scenarios where
   pre-configuration per se would be possible, but no trust model can be
   assumed.  For instance, an ISP may configure its media servers with
   the keys of its customers.  The customers could then use
   pre-configured Mobile IPv6 for communications with the media servers,
   but some customers might misuse the lack of a care-of-address test to
   wage a redirection-based flooding attack against a third party.  This
   example reveals the difference between a security association for
   authentication and a trust relationship for misuse prevention.

   In an effort to extend pre-configuration to scenarios where no trust
   relationship can be presupposed, one may combine it with
   care-of-address tests.  Of course, using a care-of-address test
   partly vitiates the handover-latency improvement that can be reached
   otherwise.  But there may still be a positive impact on handover
   latency, because pre-configuration eliminates the triangular
   home-address test through the home agent, whereas the care-of-address
   test uses the direct, and typically faster, path between the
   communicating nodes.  For increased performance, a concurrent
   care-of-address test can be used in combination with credit-based
   authorization or heuristic monitoring.  It should also be noted that
   pre-configuration facilitates stronger authentication mechanisms than
   the return-routability procedure, and thus the use of route


Arkko & Vogt              Expires July 30, 2005                [Page 37]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   optimization may become more suitable for applications with high
   security requirements.

   These things said, it seems like a good idea to make the
   pre-configuration protocol bendable to different environments.  Is
   there a small group of people who trust each other? Then, of course,
   group members are unlikely to spoof care-of addresses, and the
   care-of-address test may be omitted.  Or is the group of users large
   and users are primarily unknown to each other like the customer base
   of a big ISP? Then, proper authentication does usually not imply
   trust, and it may not be feasible to use pre-configured keys without
   checking a mobile node's reachability.  Traceability techniques are
   not necessarily a compensation for the missing care-of-address test,
   because they are a reactive measure, whereas a care-of-address test
   is a proactive one.

6.2.3  CGA-Based Optimizations

   CGAs can guarantee that a mobile node is the legitimate owner of its
   home address.  They provide higher assurance than the pure use of
   routing paths.  This facilitates a significant reduction in the
   number of signaling messages per correspondent registration as well
   as the periodicity of these registrations.  In addition, the public
   keys used in the CGA technique allow packets to be transferred
   privately, a feature that can be used for both data encryption and
   for other route-optimization enhancements.

   CGA may also be used to reduce the risk of flooding attacks via
   care-of addresses, as attackers should be unable to generate a
   private/public-key pair of which the public key hashes to a
   particular victim's IP address.  However, only the interface
   identifier of a CGA is cryptographically generated, so flooding a
   network or a link is still an issue.  As a result, CGAs should be
   employed together with a care-of-address test in scenarios where
   redirection-based flooding attacks are a concern.  Similarly, an
   initial home-address test is typically required, too, in order to
   avoid that the deletion of a binding causes a flood upon a faked home
   address.

   To resolve collisions in case CGAs are used as care-of addresses, a
   collision count is part of the input to the CGA hash function.
   Increasing the collision count by one changes the result of the hash
   function, so new CGAs can be successively tried until an unused one
   is found.  On the other hand, the collision count also helps an
   attacker in faking a CGA: It may use the same private/public-key pair
   to efficiently generate multiple CGAs.  For this reason, the
   collision count should usually be limited to a few bytes only.


Arkko & Vogt              Expires July 30, 2005                [Page 38]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

6.2.4  Credit-Based Authorization

   With CBA, a new care-of address can be probed in parallel with
   already using it.  This eliminates the handover latency that the
   reachability check entails when performed during the critical
   handover period.  Depending on how much credit a mobile node has at
   the time of handover, packets are either routed via its home network
   or directly to its care-of address.  The performance benefits depend
   on the relative delay characteristics of the direct path between the
   communicating peers and the path through the home agent.  They also
   depend on how fast the transport-layer protocol in use detects and
   retransmits lost packets.

   CBA depends on the mobile node being able to collect an amount of
   credit high enough to bring it through the next handover.  How easy
   it is for a mobile node to acquire new credit depends on the CBA
   mode, on the credit-aging factor, and on the application's traffic
   patterns.  (See Section 5.7 for a description of the two CBA modes.)
   In general, applications with symmetric traffic patterns make it easy
   for the mobile node to get sufficient credit.  CBA mode 1, however,
   can be problematic when most data is sent from the correspondent node
   to the mobile node unless the credit-aging factor is very small.  The
   reason is that, in this mode, earned credit is proportional to
   packets sent to the correspondent node, whereas spent credit is
   proportional to packets going into the opposite direction.  Also, CBA
   does not work well in either mode if the mobile node moves so rapidly
   that it does not manage to refill its credit account between two
   successive handovers.

   Note that CBA is an optimization technique which can be integrated
   into any mobility-management protocol that verifies IP addresses
   through probing.  Protocols that may benefit are, for instance, other
   Mobile IPv6 optimization techniques described in this paper such as
   CGA-based ones (cf.  Section 5.9).  Also, when Mobile IPv6 is used
   with pre-configured shared keys between mobile nodes and
   correspondent nodes (cf.  Section 6.2.2), but reachability checks are
   still prescribed to ensure that properly authenticated mobile nodes
   do not lie about their care-of address, CBA may be applied to
   eliminate the additional cost that the reachability checks would
   otherwise entail.  Moreover, in scenarios where a home agent cannot
   trust in the correctness of the registered mobile nodes' care-of
   addresses, CBA-based concurrent care-of-address tests could be
   proscribed even for home registrations.  The same is true for
   Hierarchical Mobile IPv6, which, as it stands, assumes that a MAP can
   be confident that mobile nodes use correct on-link care-of addresses,
   and so gets around the care-of-address test.

   Furthermore, CBA may also be used to parallelize reachability checks


Arkko & Vogt              Expires July 30, 2005                [Page 39]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   in the Host Identity Protocol (HIP) [22] and current Mobike
   proposals.  Note, however, that mobility-management protocols in
   general do not have an equivalent to Mobile IPv6's static home
   addresses through which mobile nodes stay reachable at all times.
   Hence, temporarily routing a mobile node's packets through a static
   IP address in case this mobile node runs out of credit during a
   handover may not always be an option.

   A nice property of CBA mode 1 is that it does not require support
   from the mobile node.  The mobile node neither needs to understand
   that CBA is effective at the correspondent node, nor does it have to
   have an idea of how much credit it currently has.  A legitimate
   question is whether this is true even if the correspondent node may
   temporarily send packets to the home address of a mobile node that
   has run out of credit.  After all, RFC 3775 suggests that mobile
   nodes interpret the reception of a tunneled packet as a hint to
   initiate a new correspondent registration, which would obviously be
   inappropriate in the described situation.  The answer is that all
   correspondent registration are subject to rate limiting, so mobile
   nodes can be expected not to misunderstand tunneled packets during
   the handover procedure.

   Care-of Address Spot Checks must be responded to by a mobile node.
   Consequently, CBA mode 2 can only be implemented transparently to the
   mobile node in scenarios where packet loss is not an issue and
   Care-of Address Spot Checks can be omitted.

   Last, but not least, an interesting question is whether CBA mode 2
   could be misused by an attacker that has an asymmetric connection to
   the Internet.  Wide-spread digital subscriber lines (DSL), for
   instance, typically have a much higher download rate than upload
   rate.  The limited upload rate would render most denial-of-service
   attempts through direct flooding meaningless.  But the strong
   download rate could be misused to illegitimately build up credit at
   one or many correspondent nodes.  The credit could then be used for a
   more potent, redirection-based flooding attack.  The reason why this
   has so far not been considered an issue is that, in order to build up
   enough credit at the remote end, the attacker would first have to
   expose itself to the same packet flood that it could then redirect
   towards the victim.  This is obviously true with respect to data
   volume.  Since credit is aged over time, it also applies to the data
   rate.

6.2.5  Prefix-Based Certificates

   The Mobile IPv6 base specification avoids strong authentication
   cryptography for signaling between mobile nodes and correspondent
   nodes.  One reason for this is the impracticality of a global trusted


Arkko & Vogt              Expires July 30, 2005                [Page 40]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   PKI that could approve bindings between the mobile nodes' identities
   and public keys.  Another reason is that limited power resources and
   processing capacity at the mobile nodes generally rule out any
   complex cryptographic operations.  Robustness to resource-exhaustion
   attacks requires a similar restrictiveness on the correspondent-node
   side.

   CBU circumvents the lack of a global PKI.  The reduction in the
   number of potentially required certificates makes certificate-based
   approaches to mobile-node authentication more feasible than it is
   today.  The approach also avoids heavy computations at mobile nodes
   since public-key cryptography is handled by the home agent.  On the
   other hand, the processing overhead at correspondent nodes actually
   increases compared to standard correspondent registrations.  This may
   not be an issue since resources at stationary correspondent nodes are
   usually higher than those of many mobile devices.  But it may be an
   issue if the correspondent node is a popular web server or other
   central resource that cannot afford doing complex cryptographic
   operations.  One should, however, bear in mind that the increased
   overhand implies a higher risk to resource-exhaustion attacks.

   CBU does not solve the issue with care-of-address spoofing: A
   vouching home agent does not prevent a malicious mobile node from
   faking its care-of address.  The culprit could cheat its home agent,
   or it could cooperate with it.  This said, CBU should be combined
   with a care-of-address test that rules out redirection-based flooding
   attacks.  A combination of concurrent care-of-address tests and CBA
   (cf.  Section 5.7) can be used to keep the signaling delay during
   handover as low as it currently is in [23].

   There is ongoing work on the integration of AAA with Mobile IPv6
   [13].  The current focus is on authentication between mobile nodes
   and home agents with the intention to replace the IPsec-based
   authentication protocol for home registrations.  But the concept of
   security proxies proposed in [23] may as well be re-used for
   enhancements to the AAA infrastructure.

6.3  Future Research

   Mobility-related optimizations are currently actively studied by many
   researchers at different protocol layers.  The preceding sections
   identify ideas and existing proposals for enhancing route
   optimization.  While some of the basic methods are fairly well
   understood and are being deployed, there are a number of interesting,
   newer approaches that deserve to be studied in more detail.  This
   section discusses research directions that appear fruitful, or
   necessary in the future, and that go beyond the existing proposals
   described so far.


Arkko & Vogt              Expires July 30, 2005                [Page 41]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

6.3.1  Research at Other Protocol Layers

   The efficiency and security related to movements does not depend on
   Mobile IPv6 route optimization alone, even if researchers often pose
   their analysis in that light.  A movement that is visible at the IP
   layer involves all lower layers as well.  This includes layer 2
   attachment procedures; layer 2 security mechanisms such as
   negotiation, authentication, and key agreement; IPv6 Router and
   Neighbor Discovery; as well as IPv6 Address Autoconfiguration and
   Duplicate Address Detection.  A complete network attachment typically
   requires over twenty link- and IP-layer messages, assuming that
   features necessary for a commercial deployment (such as security) are
   turned on.

   A significant research question is the performance of the
   network-access stack as a whole.  Current protocol stacks have a
   number of limitations in addition to the long attachment delays [31],
   such as denial-of-service vulnerabilities, difficulties in trusting a
   set of access nodes distributed to physically insecure locations, or
   the inability to retrieve sufficient information for making a handoff
   decision.

   A number attempts are ongoing to improve various parts of the stack,
   mostly focusing on handover performance.  These include link-layer
   enhancements, parameter tuning [39], network-access authentication
   mechanisms [1], fast-handover mechanisms [35], AAA architectures
   [21], and IP-layer attachment improvements [12].  It is uncertain how
   far this optimization can be taken by only looking at the different
   parts individually.  An integrated approach may be necessary to gain
   more significant improvements [32].

   It is also unclear at this time which components are the most
   critical ones.  [31] suggests that mobility-related signaling
   contributes only under 10% of the overall delay in an IEEE 802.11
   environment.  The most significant delays are caused at the link
   layer and for IPv6 attachment.  However, the results are not
   conclusive due to the high deviation between the measurements.  The
   results can also be affected by a number of conditions, such as the
   availability of specific link-layer optimizations, or the type of
   security mechanism used for Mobile IPv6 home registrations.

6.3.2  Further Route Optimization Research

   The primary driver to improve route optimization appears to be better
   efficiency for a few usage scenarios, such as fast movements or the
   ability to reduce signaling frequencies for hosts in standby mode.
   Ongoing work addresses these aspects already quite well, and many of
   the suggested methods are reasonably stable in this regard.  It is


Arkko & Vogt              Expires July 30, 2005                [Page 42]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   expected that further, perhaps smaller improvements will continue to
   be achieved through research and parameter tuning far into the
   future.  This is particularly true because the optimizations are
   often targeted to a specific usage scenario, and may not give the
   same improvement in other situations.  As a result, the publication
   of a few enhanced methods for different scenarios seems more
   reasonable than expecting to define a final, all-encompassing method.

   The development of an infrastructure-based route-optimization method
   is clearly a longer-term project.  At this stage, it is not even
   clear that such a mechanism is needed.  The Certificate-Based Binding
   Update Protocol shows some promise in this area, particularly if it
   can be combined with other mechanisms that use certificates, such as
   Secure Neighbor Discovery [20].  Pre-configuring keys into end hosts
   [15] is simple and efficient, but the number of scenarios where it
   applies is likely to be very limited only.

   The following is a list of interesting ideas for new
   route-optimization research.

   o  Local mobility or local repair optimizations that require no
      configuration.

   o  Care-of-address verification mechanisms that employ lower-layer
      assistance or Secure Neighbor Discovery.

   o  The introduction of optimizations developed in the context of
      Mobile IPv6 to HIP or other mobility protocols, or to link-layer
      mobility solutions.

   o  The extension of the developed techniques to full
      multi-addressing, including also multi-homing.

   o  Further development of techniques that are based on "asymmetric
      cost wars" [33], such as CBA.

   o  Integrated techniques taking into account both link and IP layer
      mobility tasks.

6.3.3  Experimentation and Simulation

   As discussed earlier, the contribution of different stack parts to
   the overall movement latency is still unclear.  The following is a
   list of areas where measurements and experimentation can yield
   further, valuable insight.



Arkko & Vogt              Expires July 30, 2005                [Page 43]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   o  Measurements of a realistic network scenario, enabling all
      features that would likely be needed in a commercial deployment.
      These features include link-layer access control, for instance.
      Similarly, it is necessary to consider support for existing
      enhancement proposals.

   o  Measurements and simulations of the performance impacts that
      existing enhancement proposals have on the different parts of the
      stack.

   o  Measurements and comparisons of different implementations that are
      based on the same specification.  For instance, it would be
      valuable to know how much implementations differ with regards to
      the use of parallelism that RFC 3775 allows in home and
      correspondent registrations, or with respect to early packet
      transmission before reception of a BA.

   o  Measurements of the impact that network conditions such as packet
      loss can have on existing and new route-optimization mechanisms.

   o  Statistical data collection on the behavior of mobile nodes in
      different networks.  Route-optimization techniques behave
      differently depending on what the frequency of movements is, or
      what traffic streams appear during a mobile node's lifetime.

   o  Measurements or simulations of the performance that existing
      route-optimization schemes show under different application
      scenarios, such as the use of applications with symmetric vs.
      asymmetric traffic patterns.

7.  Security Considerations

   Security issues related to route optimization are an integral part of
   this paper and are as such discussed throughout the paper.

8.  Conclusions

   Mobility-related optimizations are currently actively studied by many
   researchers.  Some of the basic techniques--such as the
   return-routability procedure, pre-configured keys, or CGAs--are
   either already being deployed or can expected to be in the near
   future.  A growing number of new proposals are being studied that
   attempt to optimize these basic techniques further, or to make them
   better applicable to a particular scenario.

   Many of the current proposals are mature enough to withstand close
   scrutiny.  Their relative advantages are rather subjective, however.
   For instance, some proposals are very efficient, but have a high cost


Arkko & Vogt              Expires July 30, 2005                [Page 44]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   in terms of configuration, whereas others do not require
   configuration, but are slower.  It hence appears likely that more
   than one new method will have to be standardized.  Deployment
   experience is also important, so publication of a few alternative
   methods as RFCs would be desirable.

   It is interesting to see that most if not all current proposals had
   predecessors that were shown to be insecure.  For instance, the
   initial return-routability procedure as well as the first versions of
   CGAs were published before the threat of flooding attacks was fully
   understood.  Concurrent care-of-address tests were also first
   suggested with insufficient protection against flooding attacks.  And
   several proposals employing semi-permanent security associations have
   initially suffered from impersonation attacks.  This shows the need
   to reserve a sufficient amount of time for community analysis and
   review of new methods.

   Another interesting observation is that most mature proposals combine
   a number of techniques and do not rely on any single approach.  This
   is due to the intricate nature of the problem: to build a mechanism
   that is efficient and at the same time avoids a quite significant
   number of potential security vulnerabilities.

   On the other hand, it is also necessary to avoid overly expensive or
   complex solutions.  For instance, in evaluating the security needs
   for route optimization, it is important to compare these needs to
   other vulnerabilities, e.g., denial-of-service attacks, that already
   exist for on-path attackers in an Internet without mobility support.
   Of course, a mobility-management protocol should not make these
   vulnerabilities worse.  But since the issues already exist, it is not
   necessarily a requirement that they be solved by a
   mobility-management protocol.

   A significant research question is the overall performance of the
   network stack in a mobile setting.  This includes mobility management
   at the IP layer, but is not limited to it.  Current network-access
   protocol stacks have a number of limitations, such as long attachment
   and movement latencies or significant denial-of-service
   vulnerabilities.  It is uncertain whether further, significant
   benefits can be achieved if one continues to look at the different
   parts of the network stack individually.  Most likely, a more
   comprehensive approach is needed.  It is also unclear at this time
   which components of the network stack are the most critical ones to
   optimize.

   Other significant research questions include what effect network
   conditions such as packet loss can have on current proposals, and to
   what degree proposals depend on specific application patterns.  Our


Arkko & Vogt              Expires July 30, 2005                [Page 45]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   current understanding about the different traffic patterns and their
   effects on mobility is limited, and experiments, modelling, and
   simulations will be needed.
























Arkko & Vogt              Expires July 30, 2005                [Page 46]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

9.  References

   [1]   Institute of Electrical and Electronics Engineers, "Local and
         Metropolitan Area Networks: Port-Based Network Access Control",
         IEEE Standard 802.1X, September 2001.

   [2]   Arkko, J. and C. Vogt, "Credit-Based Authorization for Binding
         Lifetime Extension",
         Internet-Draft draft-arkko-mipv6-binding-lifetime-extension-00,
         May 2004.

   [3]   Bradner, S., Mankin, A. and J. Schiller, "A Framework for
         Purpose-Built Keys (PBK)",
         Internet-Draft draft-bradner-pbk-frame-06, June 2003.

   [4]   Daley, G., "Location Privacy and Mobile IPv6",
         Internet-Draft draft-daley-mip6-locpriv-00, January 2004.

   [5]   Dupont, F. and J. Combes, "Using IPsec between Mobile and
         Correspondent IPv6 Nodes",
         Internet-Draft draft-dupont-mipv6-cn-ipsec-01, June 2004.

   [6]   Haddad, W., Madour, L., Arkko, J. and F. Dupont, "Applying
         Cryptographically Generated Addresses to Optimize MIPv6
         (CGA-OMIPv6)", Internet-Draft draft-haddad-mip6-cga-omipv6-02,
         June 2004.

   [7]   Haddad, W. and S. Krishnan, "Optimizing Mobile IPv6 (OMIPv6)",
         Internet-Draft draft-haddad-mipv6-omipv6-01, February 2004.

   [8]   Haddad, W., "Privacy for Mobile and Multi-homed Nodes: MoMiPriv
         Problem Statement",
         Internet-Draft draft-haddad-momipriv-problem-statement-00,
         October 2004.

   [9]   Moskowitz, R., "Host Identity Protocol",
         Internet-Draft draft-ietf-hip-base-00, June 2004.

   [10]  Kent, S., "IP Encapsulating Security Payload (ESP)",
         Internet-Draft draft-ietf-ipsec-esp-v3-08, March 2004.

   [11]  Loughney, J., "IPv6 Node Requirements",
         Internet-Draft draft-ietf-ipv6-node-requirements-11, August
         2004.

   [12]  Moore, N., "Optimistic Duplicate Address Detection for IPv6",
         Internet-Draft draft-ietf-ipv6-optimistic-dad-01, June 2004.


Arkko & Vogt              Expires July 30, 2005                [Page 47]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   [13]  Patel, A., Leung, K., Khalil, M., Akhtar, H. and K. Chowdhury,
         "Authentication Protocol for Mobile IPv6",
         Internet-Draft draft-ietf-mip6-auth-protocol-00, July 2004.

   [14]  Patel, A., "Problem Statement for bootstrapping Mobile IPv6",
         Internet-Draft draft-ietf-mip6-bootstrap-ps-00, July 2004.

   [15]  Perkins, C., "Preconfigured Binding Management Keys for Mobile
         IPv6", Internet-Draft draft-ietf-mip6-precfgKbm-00, April 2004.

   [16]  Nikander, P., Arkko, J., Aura, T., Montenegro, G. and E.
         Nordmark, "Mobile IP version 6 Route Optimization Security
         Design Background", Internet-Draft draft-ietf-mip6-ro-sec-01,
         July 2004.

   [17]  Koodli, R., "Fast Handovers for Mobile IPv6",
         Internet-Draft draft-ietf-mipshop-fast-mipv6-02, July 2004.

   [18]  Soliman, H., Castelluccia, C., Malki, K. and L. Bellier,
         "Hierarchical Mobile IPv6 mobility management (HMIPv6)",
         Internet-Draft draft-ietf-mipshop-hmipv6-02, June 2004.

   [19]  Aura, T., "Cryptographically Generated Addresses (CGA)",
         Internet-Draft draft-ietf-send-cga-06, April 2004.

   [20]  Arkko, J., Kempf, J., Sommerfeld, B., Zill, B. and P. Nikander,
         "SEcure Neighbor Discovery (SEND)",
         Internet-Draft draft-ietf-send-ndopt-06, July 2004.

   [21]  Arbaugh, W. and B. Aboba, "Experimental Handoff Extension to
         RADIUS", Internet-Draft draft-irtf-aaaarch-handoff-04, November
         2003.

   [22]  Moskowitz, R., Nikander, P. and P. Jokela, "Host Identity
         Protocol", Internet-Draft draft-moskowitz-hip-09, February
         2004.

   [23]  Bao, F., "Certificate-based Binding Update Protocol (CBU)",
         Internet-Draft draft-qiu-mip6-certificated-binding-update-02,
         August 2004.

   [24]  Roe, M., Aura, T., O'Shea, G. and J. Arkko, "Authentication of
         Mobile IPv6 Binding Updates and Acknowledgments",
         Internet-Draft draft-roe-mobileip-updateauth-02, March 2002.

   [25]  Vogt, C., Bless, R., Doll, M. and T. Kuefner, "Early Binding
         Updates for Mobile IPv6",
         Internet-Draft draft-vogt-mip6-early-binding-updates-00,


Arkko & Vogt              Expires July 30, 2005                [Page 48]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

         February 2004.

   [26]  Vogt, C., Arkko, J., Bless, R., Doll, M. and T. Kuefner,
         "Credit-Based Authorization for Mobile IPv6 Early Binding
         Updates",
         Internet-Draft draft-vogt-mipv6-credit-based-authorization-00,
         May 2004.

   [27]  Kent, S. and R. Atkinson, "IP Encapsulating Security Payload
         (ESP)", RFC 2406, November 1998.

   [28]  Perkins, C., "IP Mobility Support for IPv4", RFC 3344, August
         2002.

   [29]  Johnson, D., Perkins, C. and J. Arkko, "Mobility Support in
         IPv6", RFC 3775, June 2004.

   [30]  Arkko, J., Devarapalli, V. and F. Dupont, "Using IPsec to
         Protect Mobile IPv6 Signaling Between Mobile Nodes and Home
         Agents", RFC 3776, June 2004.

   [31]  Alimian, A. and B. Aboba, "Analysis of Roaming Techniques",
         IEEE Contribution 11-04-0377r1 2004.

   [32]  Arkko, J., Eronen, P., Nikander, P. and V. Torvinen, "Secure
         and Efficient Network Access", Extended abstract to be
         presented in the DIMACS workshop, November 2004.

   [33]  Arkko, J. and P. Nikander, "Weak Authentication: How to
         Authenticate Unknown Principals without Trusted Parties",
         Proceedings of Security Protocols Workshop 2002, Cambridge, UK,
         April 16-19,  2002.

   [34]  Ferguson, P. and D. Senie, "Network Ingress Filtering:
         Defeating Denial of Service Attacks which employ IP Source
         Address Spoofing", BCP 38, RFC 2827, May 2000.

   [35]  Mishra, A., Shin, M., Arbaugh, W., Lee, I. and K. Jang,
         "Proactive Key Distribution to Support Fast and Secure
         Roaming", IEEE Contribution 11-03-084r1-I, January 2003.

   [36]  Nikander, P., "Denial-of-Service, Address Ownership, and Early
         Authentication in the IPv6 World", Proceedings of the Cambridge
         Security Protocols Workshop, April 2001.

   [37]  O'Shea, G. and M. Roe, "Child-proof Authentication for MIPv6",
         Computer Communications Review, April 2001.


Arkko & Vogt              Expires July 30, 2005                [Page 49]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

   [38]  Paxson, V., "An Analysis of Using Reflectors for Distributed
         Denial-of-Service Attacks",  Computer Communication Review
         31(3)., July 2001.

   [39]  Velayos, H. and G. Karlsson, "Techniques to Reduce IEEE 802.11b
         MAC Layer Handover Time", Laboratory for Communication
         Networks, KTH, Royal Institute of Technology, Stockholm,
         Sweden, TRITA-IMIT-LCN R 03:02, April 2003.

Authors' Addresses

   Jari Arkko
   Ericsson Research NomadicLab
   FI-02420 Jorvas
   Finland

   Email: jari.arkko@ericsson.com

   Christian Vogt
   Institute of Telematics
   University of Karlsruhe
   P.O. Box 6980
   76128 Karlsruhe
   Germany

   Email: chvogt@tm.uka.de
   URI:   http://www.tm.uka.de/~chvogt/


Appendix A.  Acknowledgements

   The authors wish to thank Gabriel Montenegro and Rajeev Koodli for
   their support, review, and suggestions related to this paper.








Arkko & Vogt              Expires July 30, 2005                [Page 50]


Internet-Draft    MIP6 Route Optimization Enhancements      January 2005

Intellectual Property Statement

   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.

Disclaimer of Validity

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

Copyright Statement

   Copyright (C) The Internet Society (2005).  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.

Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.


Arkko & Vogt              Expires July 30, 2005                [Page 51]