Mobile IPv6 is a protocol that allows a mobile node to move from one network to another without loosing its connections. It is specified in RFC 3775.
Most Internet traffic uses TCP connections. A TCP connection is defined by the combination of IP address and port number of both endpoints of the communication. If one of these four numbers changes, the communication is disrupted and has to be reestablished. If a mobile node connects to a different access point to the network, it needs a new IP address. Mobile IP addresses the challenge of moving a node to a different connection point without changing its IP address by assigning the mobile node two different IP addresses. One is the home address, which is static and does not change, and it is therefore used to identify the TCP connection. The second IP address is called the care-of address. It changes depending on the network to which the node is currently attached. So this works within homogeneous networks (if the node moves from an Ethernet segment to another Ethernet segment) but also in heterogeneous networks (if the node moves from an Ethernet segment to a wireless LAN).
In a wireless network, we are familiar with the handover, the event where a device moves from one access point to another. This is a handover on the Link layer. Mobile IPv6 solves the handover issue on the Network layer and maintains connections to applications and services if a device changes its temporary IP address.
11.1.1. Mobile IPv6 Terms
Here comes the definition of some terms that are used throughout the chapter.
11.1.2. How Mobile IPv6 Works
Figure 11-1 shows the components of Mobile IPv6 and how they interact.
Figure 11-1. Overview Mobile IPv6
The home address is the IPv6 address within the home link prefix of a mobile node (MN). As long as the mobile node is at home, it receives packets through regular IP routing mechanisms and behaves like any other regular IP host. When the mobile node is away from home on a foreign link, it has an additional care-of address. It receives the care-of address through regular IPv6 mechanisms such as Stateless autoconfiguration or DHCPv6 when connecting to the new link.
The association of a home address and a care-of address is called a binding. While away from home, the mobile node registers its care-of address with a router on its home link, its home agent (HA). To register its care-of address, the mobile node sends a binding update message to the home agent. The home agent responds with a binding acknowledgement. Every node communicating with a mobile node is called a correspondent node (CN). Mobile nodes can also send registrations to the correspondent node directly (called a correspondent registration). A correspondent node can also be a mobile node.
There are two ways to communicate for a correspondent node and a mobile node:
The advantage of route optimization is that the shortest available path can be used between correspondent node and mobile node. The packets do not have to go through the home agent. This not only ensures shorter communication paths but also reduces the load on the home agent and the home link. This becomes very important when we talk about high numbers of mobile nodes constantly moving around, for instance in a VoIP (Voice over IP) scenario.
Mobile IPv6 also supports the option to have multiple home agents, and the mobile node can learn about reconfiguration of its home link or a change of IP address of its home agent through Dynamic Home Agent Address Discovery. If the prefix of its home link changes, the mobile node uses the Mobile Prefix Discovery mechanism to learn about the new prefix.
The following sections describe the protocol and new messages, options, and flags in more detail. After this, I dive into the communication flows that have just been described in an overview. Some people prefer to learn this way; other people prefer to learn about the processes and flows first and then about the technical details. Please read the sections in the order that best fits your preference.