IP mobility support may be provided only when needed instead of being provided by default. Three cases can be considered:
-
Nomadic case: No address continuity is required. The IP address used by the MNchanges after a movement and traffic using the old address is disrupted. Ifsession continuity is required, then it needs to be provided by a solutionrunning at Layer 4 or above.
-
Mobility case with traffic redirection: Address continuity is required. When theMN moves, the previous anchor still anchors the traffic using the old IPaddress and forwards it to the new MN's location. The MN obtains a new IPaddress anchored to the new location and preferably uses it for newcommunications established while connected at the new location.
-
Mobility case with anchor relocation: Address continuity is required. In this case,the route followed by the traffic is optimized by using some means for trafficindirection to deviate from default routes.
A straightforward choice of mobility anchoring is the following: the MN chooses, as a source IP address for packets belonging to an IP flow, an address allocated by the network the MN is attached to when the flow was initiated. As such, traffic belonging to this flow traverses the MN's mobility anchor [
DMM-DMA] [
RFC 8885].
The IP prefix/address at the MN's side of a flow may be anchored to the Access Router (AR) to which the MN is attached. For example, when an MN attaches to a network (Net1) or moves to a new network (Net2), an IP prefix from the attached network is assigned to the MN's interface. In addition to configuring new link-local addresses, the MN configures from this prefix an IP address that is typically a dynamic IP address (meaning that this address is only used while the MN is attached to this access router, so the IP address configured by the MN dynamically changes when attaching to a different access network). It then uses this IP address when a flow is initiated. Packets from this flow addressed to the MN are simply forwarded according to the forwarding table.
There may be multiple IP prefixes/addresses that an MN can select when initiating a flow. They may be from the same access network or different access networks. The network may advertise these prefixes with cost options [
PREFIX-COST] so that the mobile node may choose the one with the least cost. In addition, the IP prefixes/addresses provided by the network may be of different types regarding whether mobility support is supported [
RFC 8653]. An MN will need to choose which IP prefix/address to use for each flow according to whether or not it needs IP mobility support, for example, using the mechanisms described in [
RFC 8653].
When IP mobility support is not needed for a flow, the LM and FM functions are not utilized so that the configurations in
Section 3.1 are simplified as shown in
Figure 3.
Net1 Net2
+---------------+ +---------------+
|AR1 | AR is changed |AR2 |
+---------------+ -------> +---------------+
|CPA: | |CPA: |
|---------------| |---------------|
|DPA(IPa1): | |DPA(IPa2): |
|anchors IP1 | |anchors IP2 |
+---------------+ +---------------+
+...............+ +---------------+
.MN(IP1) . MN moves |MN(IP2) |
.flow(IP1,...) . =======> |flow(IP2,...) |
+...............+ +---------------+
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 or not IP mobility is needed, if the flow has not terminated before the MN moves to a new network, the flow may subsequently restart using the new IP address assigned from the new network.
When IP session continuity is needed, even if an application flow is ongoing as the MN moves, it may still be desirable for the application flow to change to using the new IP prefix configured in the new network. The application flow may then be closed at the IP level and then be restarted using a new IP address configured in the new network. Such a change in the IP address used by the application flow may be enabled using a higher-layer mobility support that is not in the scope of this document.
In
Figure 3, a flow initiated while the MN was using the IP prefix IP1, anchored to a previous access router AR1 in network Net1, has terminated before the MN moves to a new network Net2. After moving to Net2, the MN uses the new IP prefix IP2, anchored to a new access router AR2 in network Net2, to start a new flow. Packets may then be forwarded without requiring IP-layer mobility support.
An example call flow is outlined in
Figure 4. An MN attaches to AR1, which sends a router advertisement (RA) including information about the prefix assigned to the MN, from which the MN configures an IP address (IP1). This address is used for new communications, for example, with a correspondent node (CN). If the MN moves to a new network and attaches to AR2, the process is repeated (the MN obtains a new IP address, IP2, from AR2). Since the IP address (IP1) configured at the previously visited network is not valid at the current attachment point, any existing flows have to be reestablished using IP2.
Note that in these scenarios, if there is no mobility support provided by Layer 4 or above, application traffic would stop.
MN AR1 AR2 CN
|MN attaches to AR1: | | |
|acquires MN-ID and profile | |
|--RS---------------->| | |
| | | |
|<----------RA(IP1)---| | |
| | | |
Assigned prefix IP1 | | |
IP1 address configuration | |
| | | |
|<-Flow(IP1,IPcn,...)-+------------------------------------------>|
| | | |
|MN detaches from AR1 | | |
|MN attaches to AR2 | | |
| | | |
|--RS------------------------------>| |
| | | |
|<--------------RA(IP2)-------------| |
| | | |
Assigned prefix IP2 | | |
IP2 address configuration | |
| | | |
|<-new Flow(IP2,IPcn,...)-----------+---------------------------->|
| | | |
When IP mobility is needed for a flow, the LM and FM functions in
Section 3.1 are utilized. There are two possible cases: (i) the mobility anchor remains playing that role and forwards traffic to a new locator in the new network, and (ii) the mobility anchor (data-plane function) is changed but binds the MN's transferred IP address/prefix. The latter enables optimized routes but requires some data-plane node that enforces traffic indirection. We focus on the first case in this section. The second case is addressed in
Section 4.3.
Mobility support can be provided by using mobility management methods, such as the approaches surveyed in the following academic papers: [
IEEE-DISTRIBUTED-MOBILITY], [
PMIP-DMA], and [
DMM-MOBILE-INTERNET]. After moving, a certain MN's traffic flow may continue using the IP prefix from the prior network of attachment. Yet, some time later, the application generating this traffic 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 dynamic IP prefix/address, rather than a permanent one, is used. Packets belonging to this flow may then use the new IP prefix (the one allocated 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, which is now in the new network, does not move again to another network.
An example call flow in this case is outlined in
Figure 5. In this example, the AR1 plays the role of the FM-DP entity and redirects the traffic (e.g., using an IP tunnel) to AR2.
MN AR1 AR2 CN
|MN attaches to AR1: | | |
|acquires MN-ID and profile | |
|--RS---------------->| | |
| | | |
|<----------RA(IP1)---| | |
| | | |
Assigned prefix IP1 | | |
IP1 address configuration | |
| | | |
|<-Flow(IP1,IPcn,...)-+------------------------------------------>|
| | | |
|MN detaches from AR1 | | |
|MN attaches to AR2 | | |
| | | |
|--RS------------------------------>| |
(some IP mobility support solution)
|<--------------RA(IP2,IP1)---------| |
| | | |
| +<-Flow(IP1,IPcn,...)---------------------->|
| +<===========>+ |
|<-Flow(IP1,IPcn,...)-------------->+ |
| | | |
Assigned prefix IP2 | | |
IP2 address configuration | |
| | | |
Flow(IP1,IPcn) terminates | |
| | | |
|<-new Flow(IP2,IPcn,...)-----------+---------------------------->|
| | | |
Another solution could be to place an FM-DP entity closer to the CN network to perform traffic steering to deviate from default routes (which will bring the packet to AR1 per default routing). The LM and FM functions are implemented as shown in
Figure 6.
Net1 Net2
+---------------+ +---------------+
|AR1 | |AR2 |
+---------------+ +---------------+
|CPA: | |CPA: |
| | |LM:IP1 at IPa1 |
|---------------| IP1 (anchored to Net1) |---------------|
|DPA(IPa1): | is redirected to Net2 |DPA(IPa2): |
|anchors IP1 | =======> |anchors IP2 |
|FM:IP1 via IPa2| |FM:IP1 via IPa1|
+---------------+ +---------------+
+...............+ +---------------+
.MN(IP1) . MN moves |MN(IP2,IP1) |
.flow(IP1,...) . =======> |flow(IP1,...) |
. . |flow(IP2,...) |
+...............+ +---------------+
Multiple instances of DPAs (at access routers), which are providing IP prefixes to the MNs, are needed to provide distributed mobility anchoring in an appropriate configuration such as those described in
Figure 1 (
Section 3.1.1) for network-based distributed mobility or in
Figure 2 (
Section 3.1.2) for client-based distributed mobility.
We focus next on the case where the mobility anchor (data-plane function) is changed but binds the MN's transferred IP address/prefix. This enables optimized routes but requires some data-plane node that enforces traffic indirection.
IP mobility is invoked to enable IP session continuity for an ongoing flow as the MN moves to a new network. The anchoring of the IP address of the flow is in the home network of the flow (i.e., different from the current network of attachment). A centralized mobility management mechanism may employ indirection from the anchor in the home network to the current network of attachment. Yet, it may be difficult to avoid using an unnecessarily long route (when the route between the MN and the CN via the anchor in the home network is significantly longer than the direct route between them). An alternative is to move the IP prefix/address anchoring to the new network.
The IP prefix/address anchoring may move without changing the IP prefix/address of the flow. The LM function in
Figure 1 of
Section 3.1.1 is implemented as shown in
Figure 7.
Net1 Net2
+---------------+ +---------------+
|AR1 | |AR2 |
+---------------+ +---------------+
|CPA: | |CPA: |
|LM:IP1 at IPa1 | |LM:IP1 at IPa2 |
| changes to | | |
| IP1 at IPa2 | | |
|---------------| |---------------|
|DPA(IPa1): | IP1 anchoring effectively moved |DPA(IPa2): |
|anchored IP1 | =======> |anchors IP2,IP1|
+---------------+ +---------------+
+...............+ +---------------+
.MN(IP1) . MN moves |MN(IP2,IP1) |
.flow(IP1,...) . =======> |flow(IP1,...) |
+...............+ +---------------+
As an MN with an ongoing session moves to a new network, the flow may preserve IP session continuity by moving the anchoring of the original IP prefix/address of the flow to the new network.
One way to accomplish such a move is to use a centralized routing protocol, but such a solution may present some scalability concerns and its applicability is typically limited to small networks. One example of this type of solution is described in [
BGP-ATN-IPS]. When an MN associates with an anchor, the anchor injects the MN's prefix into the global routing system. If the MN moves to a new anchor, the old anchor withdraws the /64 and the new anchor injects it instead.