In wired and wireless environments where users carry mobile devices across multiple LAN subnets those devices often change their IP addresses, because IP address uniquely identifies host's physical attachment to the Internet. Such changes to the network cause problems in many applications, like e.g. VPN or VoIP. To overcome this inconvenience Mobile IP was designed. Mobile IP is an Internet Engineering Task Force (IETF) standard communications protocol realizing mobility in the internet. Transport and higher-layer connections are preserved, when Mobile Hosts change their point-of-attachment to the internet. It is because Mobile Host's IP address is not altered. Mobile IP does not propagate host-specific routes to provide the mobility.
How it works
A Mobile Host has two addresses: a home address and a temporary address called care-of-address. The first address is a permanent address of the Mobile Host in its home network, while the latter is associated with the network the Mobile Host is visiting. In order to preserve the Mobile Host's IP address there are two nodes responsible for tunneling the packets: a Home Agent in the home address's network, and a Foreign Agent in the network the Mobile Host is visiting. A Home Agent manages information about Mobile Hosts whose permanent address is in the Home Agent's network, while a Foreign Agent stores information about Mobile Hosts visiting its network. Foreign Agents also advertise care-of-address by sending Agent Advertisement messages. Those are extensions of the ICMP router discovery messages and are part of the Mobile IP standard. The communication scheme's shape forms a triangle (where nodes are: a Correspondent Host, a Home Agent, and a Foreign Agent), and is therefore called a triangle routing.
In order to communicate with the Mobile Host its home address is used to send packets. After the Correspondent Host sends packets, they are then intercepted by the Home Agent using Proxy ARP, and tunneled by the Home Agent to the Mobile Host's care-of address with a new IP header, but preserving the original IP header. Then the Foreign Agent decapsulates the packets to remove the added IP header and deliveres them to the Mobile Host.
The Mobile Host sends packets directly to the other communicating node through the Foreign Agent. If needed, the Foreign Host tunnels the packets to the Home Agent, which in turn forwards them to the communicating host (reverse tunneling).
The Mobile IP protocol defines also an authenticated registration procedure used to inform Home Agents of Mobile Hosts' care-of-addresses. The packet routing, including the specification of one mandatory tunneling mechanism and several optional tunneling mechanisms is also part of the standard.
Mobility triggers performance problems, especially in the case of TCP connections. One of them are blackouts. These are periods of time when Mobile Hosts are moving within the same network and are disconnected from the network, so Mobile IP mechanisms are not used. It may be related with signal decay or places the Mobile Host user is moving. Blackouts may last from a several up to several tens seconds. During the blackout, TCP retransmission timers will count down to 0, and TCP will assume that there is a severe network congestion. The congestion window will be decreased to the size of one packet and the slow start procedure will be started. If blackouts happen often, the bandwidth of TCP connections may decrease significantly.
The other performance drawback of Mobile IP is packet loss. When a Mobile Host moves to the new network, the Home Agent updates the information so it could tunnel the packets to the new Foreign Agent. While updating, all packets are tunneled to the previous Foreign Agent, where they are discarded. When TCP stack discovers the loss, it will decrease the window to the size of one packet and the slow start procedure will begin. If the Mobile Host changes networks often, the bandwidth decrease will be noticable. The problem exacerbates with the distance from the Mobile Host's home network.
Triangle Routing also influences the performance. All packets destined for the Mobile Host need to go through its Home Agent. This increases the delay (Round-Trip Time) in delivering packets and wastes bandwidth. This problem is solved with Mobile IP Working Group draft paper. A binding update is sent to the a Correspondent Host and to the previous Foreign Agent.
The Mobile Hosts registration in the Home Agent is another bottleneck in Mobile IP performance, called slow hando time. The registration reply is a function of the RTT from the Home Agent to the Mobile Host, and thus is sensitive to the distance from the Home Agent.
- RFC 3344 IP Mobility Support for IPv4, Charles Perkins, August, 2002 obsoleting:
- RFC 3775 Mobility Support in IPv6 David B. Johnson, Charles Perkins, J. Arkko, June, 2004
- Route Optimization in Mobile IP draft-ietf-mobileip-optim-09.txt, Charles Perkins, David B. Johnson, February 15, 2000
- RFC 4721 Mobile IPv4 Challenge/Response Extensions (Revised), Charles Perkins, P. Calhoun, J. Bharatia, January, 2007
–- 05 Sep 2007