DMM H. Chan
Internet-Draft X. Wei
Intended status: Informational Huawei Technologies
Expires: January 9, 2017 J. Lee
Sangmyung University
S. Jeon
Instituto de Telecomunicacoes
F. Templin
Boeing Research and Technology
July 8, 2016

Distributed Mobility Anchoring
draft-chan-dmm-distributed-mobility-anchoring-08

Abstract

This document defines distributed mobility anchoring. Multiple anchors and nodes are configured with appropriate mobility functions and work together to enable mobility solutions. Example solution is mid-session switching of the IP prefix anchor. Without ongoing session requiring session continuity, a flow can be started or re-started using the new IP prefix which is allocated from the new network and is therefore anchored to the new network. With ongoing session, the anchoring of the prior IP prefix may be relocated to the new network to enable session continuity.

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 January 9, 2017.

Copyright Notice

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

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


Table of Contents

1. Introduction

A key requirement in distributed mobility management [RFC7333] is to enable traffic to avoid traversing single mobility anchor far from the optimal route. Distributed mobility management solutions do not make use of centrally deployed mobility anchor [Paper-Distributed.Mobility]. As such, the traffic of a flow SHOULD be able to change from traversing one mobility anchor to traversing another mobility anchor as the mobile node moves, or when changing operation and management requirements call for mobility anchor switching, thus avoiding non-optimal routes. This draft proposes distributed mobility anchoring to enable making such route changes.

Distributed mobility anchoring employs multiple anchors in the data plane. In general, the control plane function may be separate from the data plane functions and be centralized but may also co-located with the data plane function at these distributed anchors. Different configurations (Section 3.1) of distributed anchoring are then possible. Yet the distributed anchors need to have expected behaviors (Section 3.2).

A mobile node (MN) attached to an access router of a network may be allocated an IP prefix which is anchored to that router. It may then use the IP address configured from this prefix as the source IP address to run a flow with its correspondent node (CN). When there are multiple anchors, the flow may need to select the anchor when it is initiated (Section 4). Using an anchor in MN's network of attachment has the advantage that the packets can simply be forwarded according to the forwarding table. Although the anchor is in the MN's network of attachment when the flow was initiated, the MN may later move to another network, so that the IP address no longer belongs to the new network of attachment of the MN. Whether the flow needs session continuity will determine how to ensure that the IP address of the flow will be anchored to the new network of attachment. If the ongoing IP flow can cope with an IP prefix/address change, the flow can be reiniated with a new IP address anchored in the new network (Section 4.1.1). On the other hand, if the ongoing IP flow cannot cope with such change, the IP address anchoring can be moved from the original network to the new network (Section 4.2).

2. Conventions and Terminology

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

All general mobility-related terms and their acronyms used in this document are to be interpreted as defined in the Mobile IPv6 base specification [RFC6275], the Proxy Mobile IPv6 specification [RFC5213], and the DMM current practices and gap analysis [RFC7429]. This includes terms such as mobile node (MN), correspondent node (CN), home agent (HA), home address (HoA), care-of-address (CoA), local mobility anchor (LMA), and mobile access gateway (MAG).

In addition, this document uses the following term:

Home network of an application session (or of an HoA):
the network that has allocated the IP address (HoA) used for the session identifier by the application running in an MN. An MN may be running multiple application sessions, and each of these sessions can have a different home network.

IP prefix/address anchoring:
An IP prefix, i.e., Home Network Prefix (HNP), or address, i.e., Home Address (HoA), allocated to a mobile node is topologically anchored to a node when the anchor node is able to advertise a connected route into the routing infrastructure for the allocated IP prefix.

Internetwork Location Management (LM) function:
managing and keeping track of the internetwork location of an MN. The location information may be a binding of the IP advertised address/prefix, e.g., HoA or HNP, to the IP routing address of the MN or of a node that can forward packets destined to the MN. It is a control plane function.

In a client-server protocol model, location query and update messages may be exchanged between a Location Management client (LMc) and a Location Management server (LMs).

With separation of control plane and data plane, the LM function is in the control plane. It may be a logical function at the control plane node, control plane anchor, or mobility controller.

It may be distributed or centralized.

Forwarding Management (FM) function:
packet interception and forwarding to/from the IP address/prefix assigned to the MN, based on the internetwork location information, either to the destination or to some other network element that knows how to forward the packets to their destination.

This function may be used to achieve indirection. With separation of control plane and data plane, FM may split into a FM function in the data plane (FM-DP) and a FM function in the control plane (FM-CP).

FM-DP may be distributed with distributed mobility management. It may be a function in a data plane anchor or data plane node.

FM-CP may be distributed or centralized. It may be a function in a control plane node, control plane anchor or mobility controller.

Security Management (SM) function:
The security management function controls security mechanisms/protocols providing access control, integrity, authentication, authorization, confidentiality, etc. for the control plane and data plane.

This function resides in all nodes such as control plane anchor, data plane anchor, mobile node, and correspondent node.

3. Distributed anchoring

3.1. Distributed anchoring configurations

The mobility functions may be implemented in different configurations of distributed anchoring in architectures separating the control and data planes. The separation as described in [I-D.wt-dmm-deployment-models] has defined home control plane anchor (Home-CPA), home data plane anchor (Home-DPA), access control plane node (Access-CPN), and access data plane node (Access-DPN), which are respectively abbreviated as CPA, DPA, CPN, and DPN here. Some configurations are described in [I-D.sijeon-dmm-deployment-models].

Figure 1 shows 4 configurations of network-based mobility management. In each configuration, an MN is allocated an IP prefix/address IP1 and is using IP1 to communicate with a correspondent node (CN) not shown in the figure. The flow of this communication session is shown as flow(IP1, ...) which uses IP1 and other parameters.

      (a)                (b)                (c)                (d)     
                          +-----+                               +-----+
                          |LMs  |                               |LMs  |
                          +-----+                               +-----+

+------------+     +------------+     +------------+     +------------+
|CPA:        |     |CPA:        |     |CPA:        |     |CPA:        |
|FM-CP, LM   |     |FM-CP, LMc  |     |FM-CP, LMs  |     |FM-CP, LMp  |
+------------+     +------------+     +------------+     +------------+
+------------+     +------------+     +------------+     +------------+
|DPA(IPa1):  |     |DPA(IPa1):  |     |DPA(IPa1):  |     |DPA(IPa1):  |
|anchors IP1 |     |anchors IP1 |     |anchors IP1 |     |anchors IP1 |
|FM-DP       |     |FM-DP       |     |FM-DP       |     |FM-DP       |
+------------+     +------------+     +------------+     +------------+


                                      +------------+     +------------+
                                      |CPN:        |     |CPN:        |
                                      |FM-CP, LMc  |     |FM-CP, LMc  |
                                      +------------+     +------------+
                                      +------------+     +------------+
                                      |DPN(IPn1):  |     |DPN(IPn1):  |
                                      |FM-DP       |     |FM-DP       |
                                      +------------+     +------------+


+------------+     +------------+     +------------+     +------------+
|MN(IP1)     |     |MN(IP1)     |     |MN(IP1)     |     |MN(IP1)     |
|flow(IP1,..)|     |flow(IP1,..)|     |flow(IP1,..)|     |flow(IP1,..)|
+------------+     +------------+     +------------+     +------------+
  

Figure 1. (a) FM-CP and LM at CPA, FM-DP at DPA; (b) Separate LMs, FM-CP and LMc at CPA, FM-DP at DPA; (c) FM-CP and LMs at CPA, FM-DP at DPA, FM-CP and LMc at CPN, FM-DP at DPN; (d) Separate LMs, FM-CP and LMp at CPA, FM-DP at DPA, FM-CP and LMc at CPN, FM-DP at DPN.

In Figures 1(a), 1(b), 1(c), and 1(d), the IP address of the MN, IP1, is anchored to the DPA which has the IP prefix/address IPa1. The data plane is distributed so that there may be multiple instances of the DPA (not shown). The control plane may either be distributed or centralized. When the CPA co-locates with the distributed DPA there will be multiple instances of the co-located CPA and DPA (not shown).

In Figure 1(a) and Figure 1(b), the network is flat with FM-DP at the distributed DPA.

In Figure 1(a), LM and FM-CP co-locate at CPA. Then LM may be distributed or centralized according to whether the CPA is distributed or centralized.

Figure 1(b) differs from Figure 1(a) in that the LM function is split into a server LMs and a client LMc. LMc and FM-CP are at the CPA. The LMs may be centralized whereas the LMc may be distributed or centralized according to whether the CPA is distributed or centralized.

In Figure 1(c) and Figure 1(d), the network is hierarchical where there may be multiple DPN's for each DPA. There is FM-DP at each of the distributed DPA and at each of the distributed DPN.

In Figure 1(c), LMs and FM-CP are at the CPA. In addition, there are FM-CP and LMc at the CPN. Again, LMs may be distributed or centralized according to whether the CPA is distributed or centralized. The CPA may co-locate with DPA or may separate.

Figure 1(d) differs from Figure 1(c) in that the LMs is separated out, and a proxy LMp is added between the LMs and LMc. LMp and FM-CP are at the CPA. Again, there are FM-CP and LMc at the CPN. The LMs may be centralized whereas the LMp may be distributed or centralized according to whether the CPA is distributed or centralized.

Host-based variants of the mobility function configurations from Figures 1(c) and 1(d) are shown in Figures 2(a) and 2(b) where the role to perform mobility functions by CPN and DPN are now taken by the MN. The MN then need to possess the mobility functions FM and LMc.

      (a)                (b)            
                          +-----+
                          |LMs  |
                          +-----+

+------------+     +------------+
|CPA:        |     |CPA:        |
|FM-CP, LMs  |     |FM-CP, LMp  |
+------------+     +------------+
+------------+     +------------+
|DPA(IPa1):  |     |DPA(IPa1):  |
|anchors IP1 |     |anchors IP1 |
|FM-DP       |     |FM-DP       |
+------------+     +------------+


+------------+     +------------+
|MN(IP1)     |     |MN(IP1)     |
|flow(IP1,..)|     |flow(IP1,..)|
|FM,    LMc  |     |FM,    LMc  |
+------------+     +------------+
  

Figure 2. (a) FM-CP and LMs at CPA, FM-DP at DPA, FM and LMc at MN; (b) Separate LMs, FM-CP and LMp at CPA, FM-DP at DPA, FM and LMc at MN.

In Figure 2(a) and Figure 2(b), FM-DP is at the distributed DPA as before.

In Figure 2(a), LMs and FM-CP are at the CPA. The LMs may be distributed or centralized according to whether the CPA is distributed or centralized.

Figure 2(b) differs from Figure 2(a) in that the LMs is separated out and the proxy LMp is added between the LMs and LMc. LMp and FM-CP are at the CPA. The FMs may be centralized whereas the LMp may be distributed or centralized according to whether the CPA is distributed or centralized.

3.2. Distributed anchoring behaviors and message information elements

The behaviors of distributed anchoring are defined in this section in order that they may work together in expected manners to produce a distributed mobility solution. The needed information elements are passed as message parameters.

3.2.1. Location management behaviors and message information elements

It is seen in (Section 3.1) that

(1)
LMs may be a separate server or may co-locate with LMc at CPA;
(2)
LMc may be at CPA, CPN, or MN.

Example LM design may consists of a distributed database of LMs servers in a pool of distributed servers. The location information about the prefix/address of a MN is primarily at a given LMs. Peer LMs may exchange the location information with each other. LMc may retrieve a given record or send a given record update to LMs.

Location information bebaviors:

(LM:1)
LM may manage the location information in a client-server database system. The example LM database functions are:
(LM:1-1)
LMc may query LMs about location information for a prefix of MN (pull).
Parameters:
IP prefix of MN.
(LM:1-2)
LMs may reply to LMc query about location information for a prefix of MN (pull).
Parameters:
IP prefix of MN,
IP address of FM-DP/DPA/DPN to forward the packets of the flow.
(LM:1-3)
LMs may inform LMc about location information for a prefix of MN (push).
Parameters:
IP prefix of MN,
IP address of FM-DP/DPA/DPN to forward the packets of the flow.
(LM:1-4)
LMc may inform LMs about update location information for a prefix of MN.
Parameters:
IP prefix of MN,
IP address of FM-DP/DPA/DPN to forward the packets of the flow.

(LM:2)
The LM may be a distributed database with multiple LMs servers. For example:
(LM:2-1)
A LMs may join a pool of LMs servers.
Parameters:
IP address of the LMs,
IP prefixes for which the LMs will host the primary location information.
(LM:2-2)
LMs may query a peer LMs about location information for a prefix of MN.
Parameters:
IP prefix.
(LM:2-3)
LMs may reply to a peer LMs about location information for a prefix of MN.
Parameters:
IP prefix of MN,
IP address of FM-DP/DPA/DPN to forward the packets of the flow.

3.2.2. Forwarding management behaviors and message information elements

It is seen in (Section 3.1) that

(1)
FM-CP may be at CPA, CPN, MN;
(2)
FM-DP may be at DPA, DPN, MN.

The FM behaviors and message information elements are:

(FM:1)
With distributed FM functions, the role of FM for a flow may pass to another FM as the DPA or DPN changes.
(FM:2)
In addition to above, a flow/session may be stateful for the required information for QoS, charging, etc. are needed. These states need to be transferred from the old anchor to the new anchor.
(FM:3)
An anchor may act on packets on a per flow basis and perform the changes to the forwarding path upon a change of point of attachment of a MN:
(FM:3-1)
FM filters the packets up to the granularity of a flow.
Example matching parameters are the 5-tuple of a flow.
(FM:3-2)
FM makes the necessary changes to the forwarding path of a flow.
Example mechanism is through forwarding table update activated by DHCPv6-PD.
(FM:3-3)
FM reverts the previously made changes to the forwarding path of a flow when such changes are no longer needed, e.g., when ongoing flows using an IP prefix/address requiring session continuity have closed.
Example mechanism is through expiration of DHCPv6-PD.


(FM:4)
An anchor may discover and be discovered such as through an anchor registration system:
(FM:4-1)
FM registers and authenticates itself with a centralized mobility controller.
Parameters:
IP address of DPA and its CPA;
IP prefix anchored to the DPA.
(FM:4-2)
registration reply: acknowledge of registration and echo the input parameters.
(FM:4-3)
FM discovers the FM of another IP prefix by querying the mobility controller based on the IP prefix.
Parameters:
IP prefix of MN.
(FM:4-4)
when making anchor discovery FM expects the answer parameters as: IP address of DPA to which IP prefix of MN is anchored; IP prefix of the corresponding CPA.


(FM:5)
With separation of control plane function and data plane function, these function must work together.
(FM:5-1)
CPA/FM-CP sends forwarding table updates to DPA/FM-DP.
Parameters:
new forwarding table entries to add;
expired forwarding table entries to delete.
(FM:5-2)
DPA/FM-DP sends to CPA/FM-CP about its status and load.
Parameters:
state of forwarding function being active or not;
loading percentage.


(FM:6)
An anchor can buffer packets of a flow in a mobility event:
(FM:6-1)
CPA/FM-CP informs DPA/FM-DP to buffer packets of a flow.
Trigger:
MN leaves DPA in a mobility event.
Parameters:
IP prefix of the flow for which packets need to be buffered.
(FM:6-2)
CPA/FM-CP on behalf of a new DPA/FM-DP informs the CPA/FM-CP of the prior DPA/FM-DP that it is ready to receive any buffered packets of a flow.
Parameters:
destination IP prefix of the flow's packets;
IP address of the new DPA.


4. Example mobility solutions with distributed anchoring

The IP prefix/address at the MN's side of a flow may be anchored at the access router to which the MN is attached. For example, when an MN attaches to a network (Net1) or moves to a new network (Net2), it is allocated an IP prefix from that network. It configures from this prefix an IP address which is typically a dynamic IP address. It then uses this IP address when a flow is initiated. Packets to the MN in this flow are simply forwarded according to the forwarding table.

There may be multiple IP prefixes/addresses to choose from. They may be from the same access network or different access networks. The network may advertise these prefixes with cost options [I-D.mccann-dmm-prefixcost] so that the mobile node may choose the one with the least cost. In addition, these IP prefixes/addresses may be of different types regarding whether mobility support is needed [I-D.ietf-dmm-ondemand-mobility]. A flow will need to choose the appropriate one according to whether it needs IP mobility support.

4.1. IP mobility support only when needed

IP mobility support may be provided only when needed instead of being provided by default. The simplest configuration in this case is shown in Figures 1(a) and 1(b) in Section 3.1 for which the LM and FM functions are utilized only when needed.

A straightforward choice of mobility anchoring is for a flow to use the IP prefix of the network to which the MN is attached when the flow is initiated [I-D.seite-dmm-dma].

4.1.1. Not needed: Changing to the new IP prefix/address

When IP mobility support is not needed for a flow, the LM and FM functions are not utilized so that the configuration from Figures 1(a) and 1(b) in Section 3.1 simplifies to that shown in Figure 3.

Net1                                                   Net2     

+---------------+                                      +---------------+
|AR1            |                                      |AR2            |
+---------------+                                      +---------------+
|CPA:           |                                      |CPA:           |
|---------------|                                      |---------------|
|DPA(IPa1):     |                                      |DPA(IPa2):     |
|anchors IP1    |                                      |anchors IP2    |
+---------------+                                      +---------------+


+...............+                                      +---------------+
.MN(IP1)        .                 move                 |MN(IP2)        |
.flow(IP1,...)  .               =======>               |flow(IP2,...)  |
+...............+                                      +---------------+
  

Figure 3. Changing to the new IP prefix/address. MN running a flow using IP1 in Net1 changes to running a flow using IP2 in Net2.

When there is no need to provide IP mobility to a flow, the flow may use a new IP address acquired from a new network as the MN moves to the new network.

Regardless of whether IP mobility is needed, if the flow has terminated before the MN moves to a new network, the flow may subsequently restart using the new IP address allocated from the new network.

When session continuity is needed, even if a flow is ongoing as the MN moves, it may still be desirable for the flow to change to using the new IP prefix configured in the new network. The flow may then close and then restart using a new IP address configured in the new network. Such a change in the IP address of the flow may be enabled using a higher layer mobility support which is not in the scope of this document.

In Figure 3, a flow initiated while the MN was in Net1 has terminated before the MN moves to a new network Net2. After moving to Net2, the MN uses the new IP prefix anchored in Net2 to start a new flow. The packets may then be forwarded without requiring IP layer mobility support.

The call flow is outlined in Figure 4.

 MN                    p-AR          n-AR                             CN
  |MN attaches to p-AR: |             |                                |
  |acquire MN-ID and profile          |                                |
  |--RS---------------->|             |                                |
  |                     |             |                                |
  |<----------RA(HNP1)--|             |                                |
  |                     |             |                                |
Allocated prefix HNP1
IP1 address configuration
  |                     |             |                                |
  |<-Flow(IP1,IPcn,...)-+--------------------------------------------->|
  |                     |             |                                |
  |MN detaches from p-AR|             |                                |
  |MN attaches to n-AR  |             |                                |
  |                     |             |                                |
  |--RS------------------------------>|                                |
  |                     |             |                                |
  |<--------------RA(HNP2)------------|                                |
  |                     |             |                                |
Allocated prefix HNP2
IP2 address configuration
  |                     |             |                                |
  |<-new Flow(IP2,IPcn,...)-----------+------------------------------->|
  |                     |             |                                |

  

Figure 4. A flow uses the IP allocated from the network at which the MN is attached when the flow is initiated.

The security management function in the anchor node at a new network must allow to assign a valid IP prefix/address to a mobile node.

4.1.2. Needed: Providing IP mobility support

When IP mobility is needed for a flow, the LM and FM functions in Figures 1(a) and 1(b) in Section 3.1 are utilized. The mobility support may be provided by IP prefix anchor switching to the new network to be described in Section 4.2 or by using other mobility management methods ([Paper-Distributed.Mobility.PMIP] and [Paper-Distributed.Mobility.Review]). Then the flow may continue to use the IP prefix from the prior network. Yet some time later, the user application for the flow may be closed. If the application is started again, the new flow may not need to use the prior network's IP address to avoid having to invoke IP mobility support. This may be the case where a permanent IP prefix/address is not used. The flow may then use the new IP prefix in the network where the flow is being initiated. Routing is again kept simpler without employing IP mobility and will remain so as long as the MN has not moved away from that network.

The call flow in this case is outlined in Figure 5.

 MN                    p-AR          n-AR                             CN
  |MN attaches to p-AR: |             |                                |
  |acquire MN-ID and profile          |                                |
  |--RS---------------->|             |                                |
  |                     |             |                                |
  |<----------RA(HNP1)--|             |                                |
  |                     |             |                                |
Allocated prefix HNP1
IP1 address configuration
  |                     |             |                                |
  |<-Flow(IP1,IPcn,...)-+--------------------------------------------->|
  |                     |             |                                |
  |MN detach from p-AR  |             |                                |
  |MN attach to n-AR    |             |                                |
  |                     |             |                                |
  |--RS------------------------------>|                                |

IP mobility support such as that described in next sub-section
  |<--------------RA(HNP2,HNP1)-------|                                |
  |                     |             |                                |
  |<-Flow(IP1,IPcn,...)---------------+------------------------------->|
  |                     |             |                                |
Allocated prefix HNP2
IP2 address configuration
  |                     |             |                                |
Flow(IP1,IPcn) teminates
  |                     |             |                                |
  |<-new Flow(IP2,IPcn,...)-----------+------------------------------->|
  |                     |             |                                |

  

Figure 5. A flow uses the IP allocated from the network at which the MN is attached when the flow is initiated.

To provide IP mobility support with distributed anchoring, the distributed anchors may need to message with each other. When such messaging is needed, the anchors may need to discover each other as described in the FM behaviors and information elements (FM:2) in Section 3.2.2.

Then the anchors need to properly forward the packets of the flows as described in the FM behaviors and information elements (FM:1) in Section 3.2.2.

If there are in-flight packets toward the old anchor while the MN is moving to the new anchor, it may be necessary to buffer these packets and then forward to the new anchor after the old anchor knows that the new anchor is ready. Such are described in the FM behaviors and information elements (FM:4) in Section 3.2.2.

4.2. IP prefix/address anchor switching to the new network

The IP prefix/address anchoring may move without changing the IP prefix/address of the flow. Here the LM and FM functions in Figures 1(a) and 1(b) in Section 3.1 are implemented as shown in Figure 6.

Net1                                                   Net2     

+---------------+                                      +---------------+
|AR1            |                                      |AR2            |
+---------------+                                      +---------------+
|CPA:           |                                      |CPA:           |
|LM:IP1<-->IPa2 |                                      |LM:IP1<-->IPa2 |
|---------------|                                      |---------------|
|DPA(IPa1):     |                                      |DPA(IPa2):     |
|anchors IP1    |                 move                 |anchors IP2,IP1|
|FM:DHCPv6-PD   |               =======>               |FM:DHCPv6-PD   |
+---------------+                                      +---------------+


+...............+                                      +---------------+
.MN(IP1)        .                 move                 |MN(IP2,IP1)    |
.flow(IP1,...)  .               =======>               |flow(IP1,...)  |
+...............+                                      +---------------+
  

Figure 6. IP prefix/address anchor switching to the new network. MN with flow using IP1 in Net1 continues to run the flow using IP1 as it moves to Net2.

As an MN with an ongoing session moves to a new network, the flow may preserve session continuity by moving the anchoring of the original IP prefix/address of the flow to the new network. An example is in the use of BGP UPDATE messages to change the forwarding table entries as described in [I-D.mccann-dmm-flatarch] and also for 3GPP Evolved Packet Core (EPC) network in [I-D.matsushima-stateless-uplane-vepc]. However, the response time and scalability of using a distributed routing protocol to update forwarding tables may be controversial. Use of a centralized routing protocol with a centralized control plane as described in Section 4.2.1 will be more scalable.

The location management provides information about which IP prefix from an AR in the original network is being used by a flow in which AR in a new network. Such information needs to be deleted or updated when such flows have closed so that the IP prefix is no longer used in a different network. The LM behaviors are described in Section 3.2.1.

The FM functions are implemented through the DHCPv6-PD protocol. Here the anchor behavior to properly forward the packets for a flow as described in the FM behaviors and information elements FM:1 in Section 3.2.2 is realized by changing the anchor with DHCPv6-PD and also by reverting such changes later after the application has already closed and when the DHCPv6-PD timer expires. If there are in-flight packets toward the old anchor while the MN is moving to the new anchor, it may be necessary to buffer these packets and then forward to the new anchor after the old anchor knows that the new anchor is ready. Such are described in the FM behaviors and information elements FM:4 in Section 3.2.2. The anchors may also need to discover each other as described in the FM behaviors and information elements FM:2.

The security management function in the anchor node at a new network must allow to assign the original IP prefix/address used by the mobile node at the previous (original) network. As the assigned original IP prefix/address is to be used in the new network, the security management function in the anchor node must allow to advertise the prefix of the original IP address and also allow the mobile node to send and receive data packets with the original IP address.

The security management function in the mobile node must allow to configure the original IP prefix/address used at the previous (original) network when the original IP prefix/address is assigned by the anchor node in the new network. The security management function in the mobile node also allows to use the original IP address for the previous flow in the new network.

4.2.1. Centralized control plane

An example of IP prefix anchor switching is in the case where Net1 and Net2 both belong to the same operator network with separation of control and data planes ([I-D.liu-dmm-deployment-scenario] and [I-D.matsushima-stateless-uplane-vepc]), where the controller may send to the switches/routers the updated information of the forwarding tables with the IP address anchoring of the original IP prefix/address at AR1 moved to AR2 in the new network. That is, the IP address anchoring in the original network which was advertising the prefix will need to move to the new network. As the anchoring in the new network advertises the prefix of the original IP address in the new network, the forwarding tables will be updated so that packets of the flow will be forwarded according to the updated forwarding tables. The configuration in Figures 1(a) and 1(b) in Section 3.1 for which FM-CP and LM are centralized and FM-DP's are distributed. applies here. Figure 7 shows its implementation where LM is a binding between the original IP prefix/address of the flow and the IP address of the new DPA, whereas FM uses the DHCPv6-PD protocol.

Net1                                                   Net2
+----------------------------------------------------------------------+
|                            CPA:                                      |
|                            LM:IP1<-->IPa2                            |
|                            FM-CP                                     |
+----------------------------------------------------------------------+


+---------------+                                      +---------------+
|AR1            |                                      |AR2            |
+---------------+                                      +---------------+
|DPA(IPa1):     |                                      |DPA(IPa2):     |
|anchors IP1    |                 move                 |anchors IP2,IP1|
|FM:DHCPv6-PD   |               =======>               |FM:DHCPv6-PD   |
+---------------+                                      +---------------+


+...............+                                      +---------------+
.MN(IP1)        .                 move                 |MN(IP2,IP1)    |
.flow(IP1,...)  .               =======>               |flow(IP1,...)  |
+...............+                                      +---------------+
  

Figure 7. IP prefix/address anchor switching to the new network with with LM and FM-CP in a centralized control plane whereas the FM-DP's are distributed.

The call flow in Figure 8 shows that MN is allocated HNP1 when it attaches to the p-AR. A flow running in MN may or may not need IP mobility. If it does, it may continue to use the previous IP prefix. If it does not, it may use a new IP prefix allocated from the new network.

 MN                    p-AR          n-AR              DHCP Servers   CN
  |MN attaches to p-AR: |             |                     |          |
  |acquire MN-ID and profile          |                     |          |
  |--RS---------------->|             |                     |          |
  |<----------RA(HNP1)--|             |                     |          |
  |                     |             |             Allocate MN-HNP1   |
IP addr config          |             |                     |          |
  |                     |             |                     |          |
  |<-Flow(IP1,IPcn,...)-+--------------------------------------------->|
  |                     |             |                     |          |
  |MN detach from p-AR  |             |                     |          |
  |MN attach to n-AR    |             |                     |          |
  |                     |             |                     |          |
  |--RS------------------------------>|                     |          |
  |                     |             |                     |          |
  |                     |------DHCPv6 release-------------->|          |
  |                     |             |                     |          |
  |                     |             |--DHCPv6 PD request->|          |
  |                     |             |<-DHCPv6 PD reply--->|          |
  |                     |             |                     |          |
  |                 forwarding table updates                |          |
  |                     |             |                     |          |
  |<--------------RA(HNP2,HNP1)-------|                     |          |
  |                     |             |             Allocate MN-HNP2   |
IP addr config          |             |                     |          |
  |                     |             |                     |          |
  |<-Flow(IP1,IPcn,...)---------------+------------------------------->|
  |                     |             |                     |          |
  |  Flow(IP1,IPcn,...) terminates    |                     |          |
  |                     |             |                     |          |
  |                     | DHCPv6-PD timeout                 |          |
  |                     |             |                     |          |
  |                 forwarding table updates                |          |
  |                     |             |                     |          |
  |                     |             |                     |          |
  |<-new Flow(IP2,IPcn,...)-----------+------------------------------->|
  |                     |             |                     |          |

  

Figure 8. DMM solution. MN with flow using IP1 in Net1 continues to run the flow using IP1 as it moves to Net2.

As the MN moves from p-AR to n-AR, the p-AR as a DHCP client may send a DHCP release message to release the HNP1. It is now necessary for n-AR to learn the IP prefix of the MN from the previous network so that it will be possible for Net2 to allocate both the previous network prefix and the new network prefix. The network may learn the previous prefix in different methods. For example, the MN may provide its previous network prefix information by including it to the RS message [I-D.jhlee-dmm-dnpp].

Knowing that MN is using HNP1, the n-AR sends to a DHCP server a DHCPv6-PD request to move the HNP1 to n-AR. The server sends to n-AR a DHCPv6-PD reply to move the HNP1. Then BGP route updates will take place here.

In addition, the MN also needs a new HNP in the new network. The n-AR may now send RA to n-AR, with prefix information that includes HNP1 and HNP2. The MN may then continue to use IP1. In addition, the MN is allocated the prefix HNP2 with which it may configure its IP addresses. Now for flows using IP1, packets destined to IP1 will be forwarded to the MN via n-AR.

As such flows have terminated and DHCP-PD has timed out, HNP1 goes back to Net1. MN will then be left with HNP2 only, which it will use when it now starts a new flow.

The anchor behavior to properly forward the packets for a flow as described in the FM behaviors and information elements (FM:1) in Section 3.2.2 is realized by changing the anchor with DHCPv6-PD and undoing such changes later when its timer expires and the application has already closed. With the anchors being separated in control and data planes with LMs and FM-CP centralized in the same control plane, messaging between anchors and the discovery of anchors become internal to the control plane. However, the centralized FM-CP needs to communicate with the distributed FM-DP as described as described in the FM behaviors and information elements (FM:3). Such may be realized by the appropriate messages in [I-D.ietf-dmm-fpc-cpdp]. Again, if there are in-flight packets toward the old anchor while the MN is moving to the new anchor, it may be necessary to buffer these packets and then forward to the new anchor after the old anchor knows that the new anchor is ready. The corresponding FM behaviors and information elements (FM:4) are however realized by the internal behavior in the control plane together with signaling between the control plane and distributed data plane.

4.2.2. Hierarchical network

The configuration for a hierarchical network is shown in Figures 1(c) and 1(d) in Section 3.1. With centralized control and with a centralized anchor, LM, CPA, CPN are co-located at the centralized control, and there is an AR with the DPA function supporting multiple forwarding switches (FW's) each with a DPN function. A mobility event in this configuration involving change of FW but not of AR is shown in Figure 9.

Here the IP prefix allocated to the MN is anchored at the access router (AR) supporting the old FW to which the MN was originally attached as well as the new FW to which the MN has moved.

The realization of LM may bet the binding between the IP prefix/address of the flow used by the MN and the IP address of the DPN to which MN has moved. The implementation of FM to enable change of FW without changing AR may be accomplished using tunneling between the AR and the FW as described in [I-D.korhonen-dmm-local-prefix] and in [I-D.templin-aerolink] or using some other L2 mobility mechanism.

Net1                                                   Net2
+----------------------------------------------------------------------+
|                            CPA,CPN:                                  |
|                            LM:IP1<-->IPn2                            |
|                            FM-CP                                     |
+----------------------------------------------------------------------+


                           +---------------+
                           |AR1            |
                           +---------------+
                           |DPA(IPa1):     |
                           |anchors IP1    |
                           |FM:DHCPv6-PD   |
                           +---------------+


+---------------+                                      +---------------+
|FW1            |                                      |FW2            |
+---------------+                 move                 +---------------+
|DPN(IPn1):     |               =======>               |DPN(IPn2):     |
+---------------+                                      +---------------+


+...............+                                      +---------------+
.MN(IP1)        .                 move                 |MN(IP2)        |
.flow(IP1,...)  .               =======>               |flow(IP1,...)  |
+...............+                                      +---------------+
  

Figure 9. Mobility without involving change of IP anchoring in a network with hierarchy in which the IP prefix allocated to the MN is anchored at an Edge Router supporting multiple access routers to which the MN may connect.

Here, the LM behaviors and information elements described in Section 3.2.1 provides information of which IP prefix from its FW needs to be used by a flow using which new FW. The anchor behaviors to properly forward the packets of a flow described in the FM behaviors and information elements (FM:1) may be realized with PMIPv6 protocol ([I-D.korhonen-dmm-local-prefix]) or with AERO protocol ([I-D.templin-aerolink]) to tunnel between the AR and the FW.

4.2.3. Hierarchical network with anchoring change

The configuration for a hierarchical network is still shown in Figures 1(c) and 1(d) in Section 3.1. Again, with centralized control and with a centralized anchor, LM, CPA, CPN are co-located at the centralized control, and there is an AR with the DPA function supporting multiple forwarding switches (FW's) each with a DPN function. However, the mobility event involving change of FW may also involve a change of AR. Such configuration is shown in Figure 10.

This deployment case involves both a change of anchor from AR1 to AR2 and a network hierarchy AR-FW. It can be realized by a combination of changing the IP prefix/address anchoring from AR1 to AR2 with the mechanism as described in Section 4.2.1 and then forwarding the packets with network hierarchy AR-FW as described in Section 4.2.2.

To change AR, AR1 acting as a DHCP-PD client may exchange message with the DHCP server to release the prefix IP1. Meanwhile, AR2 acting as a DHCP-PD client may exchange message with the DHCP server to delegate the prefix IP1 to AR2.

Net1                                                   Net2
+----------------------------------------------------------------------+
|                            CPA,CPN:                                  |
|                            LM:IP1<-->IPa2,IPn2                       |
|                            FM-CP                                     |
+----------------------------------------------------------------------+

                            +---------------+
                            |Aggregate Point|
                            |---------------|
                            |FM,    LM      |
                            +---------------+


+---------------+                                      +---------------+
|AR1            |                                      |AR2            |
+---------------+                                      +---------------+
|DPA(IPa1):     |                                      |DPA(IPa2):     |
|anchors IP1    |                 move                 |anchors IP2,IP1|
|FM:DHCPv6-PD   |               =======>               |FM:DHCPv6-PD   |
+---------------+                                      +---------------+


+---------------+                                      +---------------+
|FW1            |                                      |FW2            |
+---------------+                 move                 +---------------+
|DPN(IPn1):     |               =======>               |DPN(IPn2):     |
+---------------+                                      +---------------+


+...............+                                      +---------------+
.MN(IP1)        .                 move                 |MN(IP2,IP1)    |
.flow(IP1,...)  .               =======>               |flow(IP1,...)  |
+...............+                                      +---------------+
  

Figure 10. Mobility involving change of IP anchoring in a network with hierarchy in which the IP prefix allocated to the MN is anchored at an Edge Router supporting multiple access routers to which the MN may connect.

5. Security Considerations

TBD

6. IANA Considerations

This document presents no IANA considerations.

7. Contributors

This document has benefited from other work on mobility solutions using BGP update, on mobility support in SDN network, on providing mobility support only when needed, and on mobility support in enterprise network. These work have been referenced. While some of these authors have taken the work to jointly write this document, others have contributed at least indirectly by writing these drafts. The latter include Philippe Bertin, Dapeng Liu, Satoru Matushima, Peter McCann, Pierrick Seite, Jouni Korhonen, and Sri Gundavelli.

Valuable comments have also been received from John Kaippallimil, ChunShan Xiong, and Dapeng Liu.

8. References

8.1. Normative References

[I-D.ietf-dmm-fpc-cpdp] Liebsch, M., Matsushima, S., Gundavelli, S., Moses, D. and L. Bertz, "Protocol for Forwarding Policy Configuration (FPC) in DMM", Internet-Draft draft-ietf-dmm-fpc-cpdp-03, March 2016.
[I-D.ietf-dmm-ondemand-mobility] Yegin, A., Moses, D., Kweon, K., Lee, J. and J. Park, "On Demand Mobility Management", Internet-Draft draft-ietf-dmm-ondemand-mobility-07, July 2016.
[I-D.jhlee-dmm-dnpp] Lee, J. and Z. Yan, "Deprecated Network Prefix Provision", Internet-Draft draft-jhlee-dmm-dnpp-01, April 2016.
[I-D.korhonen-dmm-local-prefix] Korhonen, J., Savolainen, T. and S. Gundavelli, "Local Prefix Lifetime Management for Proxy Mobile IPv6", Internet-Draft draft-korhonen-dmm-local-prefix-01, July 2013.
[I-D.liu-dmm-deployment-scenario] Liu, V., Liu, D., Chan, A., Lingli, D. and X. Wei, "Distributed mobility management deployment scenario and architecture", Internet-Draft draft-liu-dmm-deployment-scenario-05, October 2015.
[I-D.matsushima-stateless-uplane-vepc] Matsushima, S. and R. Wakikawa, "Stateless user-plane architecture for virtualized EPC (vEPC)", Internet-Draft draft-matsushima-stateless-uplane-vepc-06, March 2016.
[I-D.mccann-dmm-flatarch] McCann, P., "Authentication and Mobility Management in a Flat Architecture", Internet-Draft draft-mccann-dmm-flatarch-00, March 2012.
[I-D.mccann-dmm-prefixcost] McCann, P. and J. Kaippallimalil, "Communicating Prefix Cost to Mobile Nodes", Internet-Draft draft-mccann-dmm-prefixcost-03, April 2016.
[I-D.seite-dmm-dma] Seite, P., Bertin, P. and J. Lee, "Distributed Mobility Anchoring", Internet-Draft draft-seite-dmm-dma-07, February 2014.
[I-D.sijeon-dmm-deployment-models] Jeon, S. and Y. Kim, "Deployment Models for Distributed Mobility Management", Internet-Draft draft-sijeon-dmm-deployment-models-03, July 2016.
[I-D.templin-aerolink] Templin, F., "Asymmetric Extended Route Optimization (AERO)", Internet-Draft draft-templin-aerolink-67, June 2016.
[I-D.wt-dmm-deployment-models] Gundavelli, S., "DMM Deployment Models and Architectural Considerations", Internet-Draft draft-wt-dmm-deployment-models-00, April 2016.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.
[RFC5213] Gundavelli, S., Leung, K., Devarapalli, V., Chowdhury, K. and B. Patil, "Proxy Mobile IPv6", RFC 5213, DOI 10.17487/RFC5213, August 2008.
[RFC6275] Perkins, C., Johnson, D. and J. Arkko, "Mobility Support in IPv6", RFC 6275, DOI 10.17487/RFC6275, July 2011.
[RFC7333] Chan, H., Liu, D., Seite, P., Yokota, H. and J. Korhonen, "Requirements for Distributed Mobility Management", RFC 7333, DOI 10.17487/RFC7333, August 2014.
[RFC7429] Liu, D., Zuniga, JC., Seite, P., Chan, H. and CJ. Bernardos, "Distributed Mobility Management: Current Practices and Gap Analysis", RFC 7429, DOI 10.17487/RFC7429, January 2015.

8.2. Informative References

[Paper-Distributed.Mobility] Lee, J., Bonnin, J., Seite, P. and H. Chan, "Distributed IP Mobility Management from the Perspective of the IETF: Motivations, Requirements, Approaches, Comparison, and Challenges", IEEE Wireless Communications, October 2013.
[Paper-Distributed.Mobility.PMIP] Chan, H., "Proxy Mobile IP with Distributed Mobility Anchors", Proceedings of GlobeCom Workshop on Seamless Wireless Mobility, December 2010.
[Paper-Distributed.Mobility.Review] Chan, H., Yokota, H., Xie, J., Seite, P. and D. Liu, "Distributed and Dynamic Mobility Management in Mobile Internet: Current Approaches and Issues", February 2011.

Authors' Addresses

H Anthony Chan Huawei Technologies 5340 Legacy Dr. Building 3 Plano, TX 75024, USA EMail: h.a.chan@ieee.org
Xinpeng Wei Huawei Technologies Xin-Xi Rd. No. 3, Haidian District Beijing, 100095, P. R. China EMail: weixinpeng@huawei.com
Jong-Hyouk Lee Sangmyung University 708 Hannuri Building Cheonan 330-720, Korea EMail: jonghyouk@smu.ac.kr
Seil Jeon Instituto de Telecomunicacoes Campus Universitario de Santiago Aveiro 3810-193, Portugal EMail: seiljeon@av.it.pt
Fred L. Templin Boeing Research and Technology P.O. Box 3707 Seattle, WA 98124 USA EMail: fltemplin@acm.org