Internet DRAFT - draft-sarikaya-dmm-dmipv6

draft-sarikaya-dmm-dmipv6






Network Working Group                                        B. Sarikaya
Internet-Draft                                                Huawei USA
Intended status: Standards Track                        February 1, 2012
Expires: August 4, 2012


                        Distributed Mobile IPv6
                    draft-sarikaya-dmm-dmipv6-00.txt

Abstract

   As networks are moving towards flat architectures, a distributed
   approach is needed to Mobile IPv6.  This document defines a
   distributed mobility management protocol.  Protocol is based on
   Mobile IPv6 and its extensions for multiple care of address
   registration, flow mobility and dual stack mobile IPv6 with minimum
   extensions.  Control and data plane separation is achieved by
   separating Home Agent functionalities into the control and data
   planes.

Status of this Memo

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

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on August 4, 2012.

Copyright Notice

   Copyright (c) 2012 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must



Sarikaya                 Expires August 4, 2012                 [Page 1]

Internet-Draft              Distributed MIPv6              February 2012


   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  4
   3.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . . .  4
   4.  Correspondent Node Operation . . . . . . . . . . . . . . . . .  5
   5.  Home Agent Operation . . . . . . . . . . . . . . . . . . . . .  6
   6.  Mobile Node Operation  . . . . . . . . . . . . . . . . . . . .  7
     6.1.  Multiple Interface Operation . . . . . . . . . . . . . . .  8
   7.  IPv4 Support . . . . . . . . . . . . . . . . . . . . . . . . .  8
   8.  Control and Data Plane Separation  . . . . . . . . . . . . . .  9
   9.  Authentication for Distributed Mobility Management . . . . . . 10
   10. Security Considerations  . . . . . . . . . . . . . . . . . . . 11
   11. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 11
   12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11
   13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11
     13.1. Normative References . . . . . . . . . . . . . . . . . . . 11
     13.2. Informative references . . . . . . . . . . . . . . . . . . 12
   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 13



























Sarikaya                 Expires August 4, 2012                 [Page 2]

Internet-Draft              Distributed MIPv6              February 2012


1.  Introduction

   Mobile IPv6 defines client based mobility support to the mobile nodes
   and is defined in [RFC6275].  There are several extensions to Mobile
   IPv6 such as multiple Care-of Address registration for multi-homed
   mobile nodes [RFC5648], flow mobility [RFC6089] and Dual Stack Mobile
   IPv6 [RFC5555].  Mobile IPv6 is based on a centralized mobility
   anchoring architecture.

   Centralized mobility anchoring has several drawbacks such as single
   point of failure, routing in a non optimal route, overloading of the
   centralized data anchor point due to the data traffic increase, low
   scalability of the centralized route and context management
   [I-D.liu-mext-distributed-mobile-ip].

   In this document, we define a client based distributed mobility
   management protocol.  The protocol assumes a flat network
   architecture as shown in Figure 1
   [I-D.liu-mext-distributed-mobile-ip].  Access router on each link
   mobile node visits is expected to have the home agent capabilities.
   Unlike in Mobile IPv6, mobile node at a given time may be registered
   with more than one home agent and may be receiving data tunneled from
   these home agents.  Mobile IPv6 used in such a flat architecture
   removes the need for route optimization which has many flaws such as
   revealing the mobile nodes location to the outside
   [I-D.liu-mext-distributed-mobile-ip].

   Control and data plane separation is stated as a requirement for the
   distributed mobility management.  Mobile IPv6 control plane is used
   for registration and handover signaling and for establishing security
   association, e.g.  IPSec SAs.  Data plane is used for data transfer
   from the corresponding nodes (CN) to MN and from MN to CNs.
   Typically control plane traffic is much ligther than the data plane
   traffic and thus the control plane can be centralized while
   distributing the data plane.  This separation however requires new
   signaling between the control and data plane functional entities
   [I-D.yokota-dmm-scenario].

   Client based distributed mobility management protocol is designed
   based on Mobile IPv6 protocols and its many extensions with a minimum
   amount of extensions.

   Due to the popularity of mobile nodes with multiple interfaces client
   based distributed mobility management protocol must support multi-
   homed mobile nodes.  In this document, this is achieved by way of
   using [RFC5648].  Flow mobility among the interfaces need to be
   supported and this is accomplished using [RFC6089].  Mobile nodes in
   IPv4 only networks also need to be supported and this is done using



Sarikaya                 Expires August 4, 2012                 [Page 3]

Internet-Draft              Distributed MIPv6              February 2012


   [RFC5555].

   Access to a content delivery network (CDN) is done using
   multicasting.  Mobile node operation for multicasting is needed for a
   client based distributed mobility management protocol.  The current
   trend is that service providers tend to relieve the core network
   traffic by placing the content closer to the users in the access
   network in the form of cache or local CDN servers.  Multicast support
   in the client based distributed mobility management protocol is out
   of scope.


                         +---+          +---+         +---+
                         |CN1|          |CN2|         |CN3|
                         +---+          +---+         +--,+
                               _.---------+----------.    \
                        ,----''           |           `---'-.
                     ,-'                  |                \ `-.
                   ,'                     |                '   `.
                  (             IP Network|                 \
                   `.                     |                  '  ,'
                     `-.                  ;                  ,\'
                        ;-----.          ;            _.----'  '
                      ,'       `---------+----------''         |
                     /                   |                      '
                +---'---+            +---:---+            +-------+
                |  AR1  |            | AR2   |------------|  AR3  |
                |  HA   |            |  HA   |------------|HA     |
                +-------+            +-------+            +-------+
                                                               \\ \
                                                                \\ '
                                      +-----+                    +--\--+
                                      | MN  | ----move------->   | MN  |
                                      +-----+                    +-----+

        Figure 1: Architecture of Distributed Mobile IPv6 Protocol


2.  Terminology

   This document uses the terminology defined in [RFC6275].


3.  Overview

   This section presents an overview of the protocol.

   Home agent capable access routers (AR) send router advertisements



Sarikaya                 Expires August 4, 2012                 [Page 4]

Internet-Draft              Distributed MIPv6              February 2012


   (RA) with Home Agent Information Option.  Mobile node caches the home
   agent address when it receives such an RA.  Cache entries expire
   after a timeout period.  Only the first entry from MN's home link
   does not expire.

   Mobile node uses a home agent after it moves to another link and if
   it still has ongoing communication with a correspondent node.  MN
   gets a new Care-of Address (CoA) on the new link and MN sends a
   Binding Update message to the HA on the previous link to register CoA
   with HA.  Binding Acknowledgement received from HA completes the
   registration.  MN starts to receive the packets over HA-MN link from
   CN and MN starts to reverse tunnel packets to the CN.

   At each link, mobile node goes through bootstrapping if the router
   advertisement from the access router does not contain Home Agent
   Information Option.  Using [RFC5026] MN either does DNS lookup by
   home agent name or by service name.  MN gets the local domain name
   during link establishment.  This constitutes dynamic assignment of
   the home agent and [RFC5026] allows such a dynamic assignment as
   mentioned in Section 5.1.1.

   Alternatively, MN can use stateless DHCP for Home Info discovery as
   in [I-D.ietf-mip6-hiopt].  Dynamic home agent address assignment
   using DHCP is allowed as mentioned in Section 1.

   After the bootstrapping, MN gets a new Care-of Address.  MN uses this
   new address as its new Home Address and registers it in the DNS.  HA
   can register MN's address in the DNS if MN sets DNS Update Mobility
   Option defined in [RFC5026] and sends it in the binding update to HA.
   MN sets R bit to zero.  The procedure for sending a dynamic DNS
   update message is specified in [RFC2136].  AAA server could also
   register MN's new address in the DNS.  MN also removes DNS entries
   with MN's Home Addresses that are no longer used.  MN sends BU with
   DNS Update Mobility Option.  MN sets the R flag in the option and
   sets its old address as the FQDN in the option.

   MN uses Cryptographically Generated Addresses if the link is a public
   multi-access link.  Wireless LAN links especially in public hotspots
   are examples of such links.


4.  Correspondent Node Operation

   This protocol removes the need for route optimization.  Corresponding
   nodes receive regular IPv6 data packets sent by the mobile nodes and
   reverse tunneled from the home agent.  Also corresponding nodes do
   not need to be involved in any route optimization message exchanges
   nor maintaining state, i.e. binding cache.



Sarikaya                 Expires August 4, 2012                 [Page 5]

Internet-Draft              Distributed MIPv6              February 2012


   Correspondent nodes when communicating with the same mobile node may
   only receive regular IPv6 data packets with no mobility headers.  In
   some cases these packets are directly sent by the mobile node, i.e.
   when the mobile node is not using its home agent and in some other
   cases, i.e. when the mobile node starts using a home agent, coming
   via the home agent.


5.  Home Agent Operation

   Home agent provides mobility support to the mobile nodes as defined
   in [RFC6275].

   Home agent receiving the DNS Update mobility option MUST process the
   option as described in Section 6 of [RFC5026].  The dynamic DNS
   update SHOULD be performed in a secure way.  After the DNS update,
   the home agent MUST send a Binding Acknowledgement message to the
   Mobile Node, including the DNS Update mobility option with the
   correct value in the Status field.

   Home agent receiving the DNS Update mobility option with R-flag set
   the Home Agent MUST remove the DNS entry and MUST send Binding
   Acknowledgement message to the Mobile Node, including the DNS Update
   mobility option with the correct value in the Status field.  Home
   agent MUST remove the DNS entry upon receiving a deregistration BU
   from the mobile node.  Home agent MAY use the binding cache entry
   expiration as a trigger to remove the DNS entry.

   In this specification route optimization is DISABLED.  This means
   that Home Test Init, Care-of Test Init, Home Test, Care-of Test
   messages defined in [RFC6275] are not used in this specification.

   Home agent MUST support multiple Care-of address registration
   [RFC5648] and flow mobility for multi homed mobile nodes [RFC6089].
   Home agent MUST maintain several flow bindings for a given home
   address and to direct packets to different care-of addresses
   according to flow bindings.  Home agent MUST keep a flow binding list
   which is associated with the mobile node with an entry for each flow
   that is registered.

   Dual stack home agent MUST support Dual Stack Mobile IPv6 protocol
   defined in [RFC5555].  When home agent receives Binding Update
   message with IPv4 CoA option and IPv4 Home Address option home agent
   sets a home address and/or prefix, creates a binding cache entry for
   this mobile node and then sends back a binding acknowledgement
   message with IPv4 Address Acknowledgement option which includes an
   IPv4 home address.




Sarikaya                 Expires August 4, 2012                 [Page 6]

Internet-Draft              Distributed MIPv6              February 2012


6.  Mobile Node Operation

   Mobile nodes keep a cache of home agent addresses.  This cache is
   called Binding Update List in [RFC6275] and is used for route
   optimization.  In this specification, home agent cache or binding
   update list is used to keep track of the home agents with which the
   mobile node is currently registered and not for route optimization.

   Mobile node sends periodic binding update messages to each home agent
   in the home agent cache if the sessions initiated when mobile node
   was on home agent's link.  This keeps the HA-MN tunnel active.
   Mobile node MAY send a deregistration BU when the sessions initiated
   with the home agent are no longer active.

   If mobile node receives a router advertisement with Home Agent
   Information option it adds an entry to the home agent cache.  Mobile
   node does not establish a binding with a home agent until it moves to
   a new link and still has active sessions initiated when on link.  On
   the new link, if a binding update message is not sent the cache entry
   for this home agent is removed.

   On a new link, mobile node does a DNS lookup for a Home Agent address
   if it is configured with a DNS server address.  If the Mobile Node is
   configured with the Fully Qualified Domain Name of the Home Agent it
   does DNS lookup by home agent name.  Otherwise mobile node does DNS
   lookup by service name and constructs a request with QNAME set to
   "_mip6._ipv6.example.com" and QTYPE to SRV.

   On a new link, mobile node does home agent address discovery using
   stateless DHCP if configured.  Mobile node as DHCP Client exchanges
   home network information with DHCP server.  Mobile node sends
   Information-request message including the Home Network Information
   option.  Mobile node indicates its preference about the requested
   home network with the Id-type in the Home Network Information option.
   Mobile node MUST set the Id-type to 2 to indicate that the mobile
   node has no preferred home network.  Such a value is needed for
   bootstrapping on any link.  DHCP server returns the Reply message
   including a Home Network Information option which contains home agent
   address and home network prefix.

   In the registration binding update message mobile node MUST set DNS
   Update mobility option so that home agent does DNS update on its
   behalf.  Mobile node does not set the flag R in the option.  Mobile
   node sets the MN identity field in DNS Update option with its FQDN
   and sets its Home Address in the Home Address Option.  DNS update is
   made based on these values.

   Mobile node starts to use a home agent after it moves to a new link



Sarikaya                 Expires August 4, 2012                 [Page 7]

Internet-Draft              Distributed MIPv6              February 2012


   and if it still has ongoing communication with a correspondent node.
   MN registers its care-of address with the home agent.  MN changes its
   communication with the corresponding node: MN starts to receive the
   packets over HA-MN link from CN and MN starts to reverse tunnel
   packets to the CN.  To the corresponding nodes this change is
   invisible except for some additional delays the tirangular route may
   introduce.

6.1.  Multiple Interface Operation

   When a new interface becomes active such as Wi-Fi the mobile node
   forms an address and starts using that interface for communication on
   that link.  No home agent is involved.  When the mobile node starts
   to use a home agent any new communication on the new interface MUST
   use the registered home address.  Mobile node MUST register its
   care-of address with this home agent as described in [RFC5648].  In
   the Binding Update message, Binding Identifier Mobility option
   defined in MUST be used.  Mobile node MUST assign a BID for this
   Care-of Address which is unique.  Mobile node also MUST assign a BID-
   PRI for this BID with lower value indicating a higher priority.  If
   the registration is successful mobile node receives a binding
   acknowledgement with Status set to zero in the Binding Identifier
   Mobility option.

   Multiple Care-of address registration allows flow mobility between
   interfaces of a mobile node.  Mobile node can then move flows by
   sending BU with flow identification mobility option.

   Multiple interfaces and possible use of multiple home address
   registered with the home agents makes it important for the mobile
   node to select the correct source address in sending packets.


7.  IPv4 Support

   In IPv4 only foreign networks mobile node gets an IPv4 care-of
   address.  It registers this address with a dual stack home agent only
   after moving to a new link and with open sessions with the
   correspondent nodes.  Mobile node includes IPv4 CoA option and IPv4
   Home Address option in the binding update message when registering
   and gets an IPv4 Home Address assigned.  Mobile node does a DNS
   update registering its IPv4 home address on the DNS.

   In IPv4 only foreign networks mobile node does stateless DHCP in
   order to receive the home network information.  Mobile node MUST use
   Home Network Information DHCPv4 option defined in
   [I-D.xia-mext-hioptv4].




Sarikaya                 Expires August 4, 2012                 [Page 8]

Internet-Draft              Distributed MIPv6              February 2012


8.  Control and Data Plane Separation

                          ------------+----------.
                        /    Binding Cache and      \
                        |    Security Associations  |
                         \                          /
                          -------------------------
                    ,-'                  |                 `-.
               +---'----+            +---:----+            +--------+
               |  HA    |            |  HA    |            |  HA    |
               | Data   |            | Data   |            | Control|
               | Plane  |            | Plane  |            | Plane  |
               |Function|            |Function|            |Function|
               +--------+            +--------+            +--------+
                                                      /        \\ \
                                                  /             \\ '
                                          +-----+                +--\--+
                                          | MN  |---move---->    | MN  |
                                          +-----+                +-----+

             Figure 2: Architecture of Control and Data Planes

   Control and data plane separation can be achieved by dividing HA into
   two functional entities: control plane functional entity and data
   plane functional entity as shown in Figure 2.  These functional
   entities can be hosted on different physical entities.  These two
   entities must share a common database.  The database contains the
   binding cache and the security association information such as IPSec
   keys.

   MN first communicates with the control plane function to establish
   security association.  Address configuration and binding registration
   follows.  Next MN receives/sends data packets using the data plane
   function closest to the link MN is attached.

   When MN moves MN does handover signaling with the control plane
   function which updates the binding cache based on this move.  Control
   plane function informs the new data plane function of this binding
   cache update and then this MN starts to receive and send data to the
   new data plane function.  MN MUST keep HA control plane function
   address in cache so that it can conduct handover signaling with it.

   When MN boots, it goes through authentication and security
   association establishment.  Next MN sends a binding update.  MN does
   these steps with HA control plane function.  MN sends Binding Update
   message to HA control plane function and receives a Binding
   Acknowledgement message and in this message MN MUST receive HA data
   plane function address.



Sarikaya                 Expires August 4, 2012                 [Page 9]

Internet-Draft              Distributed MIPv6              February 2012


   HA data plane function address can be provided by HA control plane
   function to MN in Alternate Home Agent Tunnel Address option defined
   in [I-D.perkins-mext-hatunaddr] of BA message [RFC6275].

   Control and data plane separation does not require protocol
   extensions except the sharing of binding cache and security
   associations database.  How this sharing can be accomplished is left
   out of scope with this specification.


9.  Authentication for Distributed Mobility Management

   Currently, MN and HA create security associations (SA) based on the
   home address using IKEv2 as the key exchange protocol.  When MN moves
   SAs are reestablished when MN gets a new care-of address.  After SA
   is established, MN and HA use Encapsulating Security Payload (ESP)
   encapsulation for Binding Updates and Binding Acknowledgements
   [RFC4877].

   IKEv2 enables the use of EAP authentication and provides EAP
   transport between MN as the peer and HA as the authenticator.  EAP
   authentication is done using one of the EAP methods such as EAP-AKA
   [RFC4187].

   MN is authorized as a valid user using EAP authentication.  IKEv2
   public key signature authentication with certificates is used to
   authenticate the home agent and derive keys to be used in exchanging
   BU/BA securely.  MN can use the same identity, e.g.  MN-NAI during
   both EAP and IKEv2 authentication.

   On the other hand MN goes through the access authentication when it
   first connects to the network.  A typical access authentication
   protocol is AKA.  MSK derived from this authentication serves as the
   session key in accessing the air interface.

   There is an overlap between the access and user authentications
   sometimes done using the same protocol, e.g.  AKA.  Full EAP method
   execution may take several round trips, some times five or more round
   trips and slow down the user access to the Internet.  This is
   especially an important consideration in Distributed Mobility
   Management since MN may connect to several home agents instead of
   staying anchored at one home agent.

   In order to reduce the number of round trips EAP authenticaton can be
   combined with reauthentication.  Reauthentication is EAP method
   dependent.  EAP-AKA reauthentication takes only one round trip
   [RFC4187].  MN must go through an EAP-AKA reauthentication before
   when MN was connected to the previous HA.  During reauthentication



Sarikaya                 Expires August 4, 2012                [Page 10]

Internet-Draft              Distributed MIPv6              February 2012


   reauthentication ID is generated.  MN MUST use its reauthentication
   ID during IKEv2 EAP authentication with the new home agent.  This
   ensures that EAP-AKA authentication takes only one round trip.  MN
   continues to use its reauthentication ID in subsequent
   reauthentication runs with the same HA.


10.  Security Considerations

   TBD.


11.  IANA Considerations

   TBD.


12.  Acknowledgements

   Romain Kuntz provided many comments that has lead to improvements in
   this document.


13.  References

13.1.  Normative References

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

   [RFC2136]  Vixie, P., Thomson, S., Rekhter, Y., and J. Bound,
              "Dynamic Updates in the Domain Name System (DNS UPDATE)",
              RFC 2136, April 1997.

   [RFC6275]  Perkins, C., Johnson, D., and J. Arkko, "Mobility Support
              in IPv6", RFC 6275, July 2011.

   [RFC5026]  Giaretta, G., Kempf, J., and V. Devarapalli, "Mobile IPv6
              Bootstrapping in Split Scenario", RFC 5026, October 2007.

   [RFC5555]  Soliman, H., "Mobile IPv6 Support for Dual Stack Hosts and
              Routers", RFC 5555, June 2009.

   [RFC5648]  Wakikawa, R., Devarapalli, V., Tsirtsis, G., Ernst, T.,
              and K. Nagami, "Multiple Care-of Addresses Registration",
              RFC 5648, October 2009.

   [RFC6089]  Tsirtsis, G., Soliman, H., Montavont, N., Giaretta, G.,



Sarikaya                 Expires August 4, 2012                [Page 11]

Internet-Draft              Distributed MIPv6              February 2012


              and K. Kuladinithi, "Flow Bindings in Mobile IPv6 and
              Network Mobility (NEMO) Basic Support", RFC 6089,
              January 2011.

   [I-D.ietf-mip6-hiopt]
              Jang, H., Yegin, A., Chowdhury, K., and J. Choi, "DHCP
              Options for Home Information Discovery in MIPv6",
              draft-ietf-mip6-hiopt-17 (work in progress), May 2008.

   [I-D.xia-mext-hioptv4]
              Xia, F. and B. Sarikaya, "DHCPv4 Options for Home
              Information Discovery in Dual Stack MIPv6",
              draft-xia-mext-hioptv4-04 (work in progress),
              January 2012.

   [RFC3810]  Vida, R. and L. Costa, "Multicast Listener Discovery
              Version 2 (MLDv2) for IPv6", RFC 3810, June 2004.

   [RFC3376]  Cain, B., Deering, S., Kouvelas, I., Fenner, B., and A.
              Thyagarajan, "Internet Group Management Protocol, Version
              3", RFC 3376, October 2002.

   [RFC4187]  Arkko, J. and H. Haverinen, "Extensible Authentication
              Protocol Method for 3rd Generation Authentication and Key
              Agreement (EAP-AKA)", RFC 4187, January 2006.

   [RFC4877]  Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with
              IKEv2 and the Revised IPsec Architecture", RFC 4877,
              April 2007.

13.2.  Informative references

   [I-D.liu-mext-distributed-mobile-ip]
              Liu, D., "Distributed Deployment of Mobile IPv6",
              draft-liu-mext-distributed-mobile-ip-00 (work in
              progress), March 2011.

   [I-D.yokota-dmm-scenario]
              Yokota, H., Seite, P., Demaria, E., and Z. Cao, "Use case
              scenarios for Distributed Mobility Management",
              draft-yokota-dmm-scenario-00 (work in progress),
              October 2010.

   [I-D.perkins-mext-hatunaddr]
              Perkins, C., "Alternate Tunnel Source Address for Home
              Agent", draft-perkins-mext-hatunaddr-02 (work in
              progress), October 2011.




Sarikaya                 Expires August 4, 2012                [Page 12]

Internet-Draft              Distributed MIPv6              February 2012


Author's Address

   Behcet Sarikaya
   Huawei USA
   5340 Legacy Dr. Building 175
   Plano, TX  75074

   Phone: +1 469 277 5839
   Email: sarikaya@ieee.org










































Sarikaya                 Expires August 4, 2012                [Page 13]