Mobile IP: Harbinger of Untethered Computing

Gary C. Kessler
September 1998

An edited version of this paper appeared with the title "Future mobility" in the September 21, 1998 issue of Telephony.

In decades past, the depiction of a person communicating with another person from wherever the two happened to be located was considered science fiction. Cellular telephones, of course, have provided that very capability for many years and they are in common use today. And what cell phones did for telephony, Mobile IP will do for TCP/IP-based communications.

What is Mobile IP — and Why?

Mobile IP refers to an emerging set of protocols being created by the Internet Engineering Task Force (IETF). Mobile IP-based computing does not merely refer to a portable computer or a remote user who can dial-up into the Internet or corporate network. As alluded to above, mobile IP uses the roaming concept of cellular telephony, where a user can make a single call to an IP-based network and maintain what appears to be a single Internet Protocol (IP) connection even as the system is handed off from one IP network to another.

Mobile IP is being developed for a number of reasons. Most obvious is the explosive growth of the Internet over the last half-decade, the increased dependence that users have on that network (and the resulting necessity to access it at any time), and the growing number of service providers and vendors who's very existence depends upon the Net. But an equally important factor is the growing use of the TCP/IP protocol suite. TCP/IP is not just the protocol suite for the Internet but has recently become the most widely used data communications protocols to the desktop, as well. Furthermore, service providers everywhere are closely watching TCP/IP to see if that is what emerges as the protocol suite for next-generation services and networks.

Office automation, from the telephone, calculator, and fax machine to the personal computer, local area network (LAN), and e-mail, has significantly changed the face of the typical office environment and the way in which we do business. Mobility — from devices such as the portable phone, cell phone, and mobile radio — has caused an even more fundamental change in the workplace paradigm because it allows people to re-examine how they go about their work and other day-to-day activities once they are free from the "tyranny of the desktop." Mobile IP is merely an extension to this "untethered office" concept, allowing unfettered access to the Internet (or corporate network) at any time from any location.

This type of mobility is already available today in some forms using satellite access to an ISP. But satellites provide access to a single ISP at a time as long as the user is within the satellite's "footprint." And mobile IP builds on readily accessible cellular communication technology. Like other mobile services, Mobile IP requires that carriers and ISPs supply the necessary infrastructure, but this could be an overlay on the current cellular telephone network.

Mobile IP, then, provides a way for carriers to offer assured, continuous access to the Internet or a private IP-based network. As suggested above, this model is similar to that of cellular telephony, which allows users to call any other telephone in the world regardless of the caller's physical location — as long as there is a cellular telephone service provider within "reach" of the caller.

How Does Mobile IP Work?

When a client and server communicate over the Internet (such as the communication between a browser and a Web server), they generally employ the Transmission Control Protocol (TCP) for reliable end-to-end communication. TCP is connection-oriented, meaning that a logical connection (or virtual circuit) must be created between the client and server prior to the exchange of data. When this logical connection is created, a port number is assigned at the client end and server end so that these two hosts can keep track of the connection. Every end-to-end TCP virtual circuit, then, is uniquely identified by four values: client IP address, client TCP port, server IP address, and server TCP port. And a final note — the values must be static for the duration of the connection.

The basic problem of Mobile IP should now be clear. In Mobile IP, the client system may be moving from network to network. Therefore, the client's IP address may be constantly changing in which case the four values cannot remain static. If the client's address changes during an open TCP connection, packets cannot be routed back and the connection will eventually be lost.

Solving this problem in Mobile IP is analogous to handling cellular telephone calls (although the analogy is far from perfect). Let's say that my cell phone has the telephone number 802-555-5377. That is the publicly advertised number of the phone although that may not be the number used for routing purposes because I may not actually be physically located in the "802" area (Vermont) at any given moment. If I am in Dallas, Texas, for example, my phone must advertise its presence in the 214 area. While the call setup request may go to 802, calls are completed directly to 214.

Several terms and concepts have been introduced to describe Mobile IP operation (Figure 1). Mobile IP hosts (mobile nodes) — normally laptop-class systems — are assigned two IP addresses. The first is called the home address, a static address used to identify the end-to-end connection and used by the mobile node when connected to its home network. The second address is called the care-of address, a dynamic address used for packet routing only and used by the mobile node by the foreign network; the care-of address changes every time the mobile node changes to a new network.

Mobility agents are Mobile IP-aware servers or routers that know where the mobile node is actually connected. The home agent is the home network's Mobile IP agent that has the responsibility of forwarding the mobile node's packets to the foreign network where the mobile node is actually connected. The foreign agent is responsible for delivering the packets to the transient mobile node.

The mobile node, of course, can communicate with any other device on the Internet, mobile or not. The entire Mobile IP process, in fact, makes the mobile node's roaming transparent. Thus, other Internet hosts only know the mobile node by its advertised home address and do not know where the mobile node physically resides.

The process by which a mobile node (running a browser, for example) and an Internet host (e.g., a Web server) would exchange packets is roughly as follows:

  1. The Internet host sends a packet to the mobile node using the mobile node's home address.
  2. The packet is delivered to the home agent.
  3. If the mobile node is on the home network, the home agent delivers the packet locally. If the mobile node is on a foreign network, the home agent forwards the packet to the foreign agent.
  4. The foreign agent delivers the packet to the mobile node.
  5. Packets from the mobile node to the Internet host are sent via the home or foreign agent (whichever is local to the mobile node) using normal Internet routing procedures.

Note that all packets between the Internet host and mobile node use the mobile node's home address regardless of whether the mobile node is on a home or foreign network; the care-of address is only used for communication with mobility agents and is never seen by an Internet host.

Registration

A mobile node has to register its location information with the appropriate mobility agents so that the node can be found. Mobile nodes first have to find a mobility agent and the two ways that this can be accomplished are variations on existing procedures for IP router discovery. In the first method, the mobile node merely waits for the local mobility agent's periodic broadcast of an Agent Advertisement message; in the second method, the mobile node broadcasts an Agent Solicitation message. In either case, this process allows a mobile node to identify mobility agents, obtain one or more care-of addresses, learn about any special services provided by a foreign agent, and determine whether it is connected to its home network or a foreign one.

A mobile node starts out on its home network. While attached to the home network, the node is registered with the home agent and operates normally using its home address.

As the mobile node roams, it will be connected to a series of one or more foreign networks. It has to register with a foreign network to advertise its presence and obtain a care-of address, and then has to register the care-of address with its home agent. This process provides a binding between the home and care-of addresses, and defines the lifetime of the registration. Encryption is used to authenticate the registration information.

The mobile node eventually returns home after being registered on a foreign network. At that time, the node has to deregister the foreign network information with the home agent.

Mobile nodes need to be able detect to what network the are connected as they roam from network to network. The simplest mechanism is based upon the registration lifetime, mentioned above. As long as a node stays on a foreign network, the registration will be periodically renewed. If the registration expires, the mobile node can safely assume that communication with the foreign network has been lost. Meanwhile, if the node has moved to another network, it should start to see new Agent Advertisement messages, at which time it should attempt registration on the new network.

Tunneling

The communication scenario depicted in Figure 2 shows four devices: a host on the Internet (such as a Web server), the mobile node, the mobile node's home agent on the home network, and the mobile node's foreign agent on the foreign network. When an Internet host sends a packet to the mobile node, it uses the mobile node's home address since that is the address that is "advertised."

If the mobile node is currently connected to a foreign network, the home agent forwards the original packet to the registered foreign agent. This new packet contains the two agents' host addresses so that it can be properly routed. To make Mobile IP truly transparent, the original packet arrives at the mobile node unchanged using a scheme called tunneling, whereby the original packet is placed inside of the forwarded packet.

When the Internet host sends a packet to the mobile node, it merely assembles an ordinary IP packet (Figure 3): the Source Address (SA) field contains the Internet host's address, the Destination Address (DA) field contains the mobile node's home address, and the Protocol Identifier (PID) indicates the next higher layer protocol (e.g., TCP, UDP, OSPF, ICMP, etc.) that comprises the contents of the packet payload. This packet is routed through the Internet to the mobile node's home network using normal IP routing.

When the packet arrives at the mobile node's home network, it is intercepted by the home agent which knows that the mobile node is not currently connected to this network. Furthermore, the home agent knows to which foreign network the mobile node is connected and knows the care-of address. The home agent encapsulates the original IP packet into another IP packet so that the original data can be forwarded to the mobile node on the foreign network; this is the tunneling protocol. The new packet (Figure 3) contents include an SA with the home agent's address, a DA with the mobile node's care-of address, and a PID indicating the use of tunneling; the payload of this packet is the original IP packet sent by the Internet host. The new packet is routed through the Internet to the foreign network, also using normal IP routing. The foreign agent forwards the tunneled packet to the mobile node using the care-of address and the mobile node retrieves the original packet.

When the mobile node sends a packet back to the original Internet host, it prepares an ordinary IP packet using it's home address (SA) and the Internet host's IP address (DA). That packet is then tunneled between the mobile node and foreign agent using the foreign agent's address and the node's care-of address. The foreign agent then retrieves the packet to be routed to the Internet host.

The tunneling scheme described above is called IP-within-IP encapsulation because one IP packet is placed inside of another one. An alternate tunneling protocol, called Minimal Encapsulation within IP, accomplishes the same result but has less protocol overhead by eliminating some redundant header information.

Regardless of which tunneling protocol is employed, packet routing in the Mobile IP environment is asymmetric; the route from the Internet host to the mobile node is different than the route back. The necessity for the tunnel should be obvious, however. An end-to-end connection between two host systems must employ the same host addresses in all packets in both directions. In the mobile environment, this is clearly impossible since the mobile node keeps moving and changing its IP address. The tunnel accommodates node mobility by making the dynamic nature of the address transparent to both the Internet host and the mobile node.

Open Issues

While Mobile IP specifications are an active area of research and development, it is still an emerging technology and there remain a number of open issues, including:

Mobile IP is still in a growth stage and its potential importance in years to come should not be underestimated. Although most Internet service providers do not offer Mobile IP support and there are still relatively few products and implementations to date, untethered telecommunications offers such potential to users that it will become a significant revenue stream to carriers who offer the service in the future.


SIDEBAR/FACTOID: The IETF's Role with Mobile IP

The Mobile IP specifications are being defined by the Internet Engineering Task Force (IETF) IP Routing for Wireless/Mobile Hosts (mobileip) Working Group (WG). More information about the mobileip WG can be found on the Internet at http://www.ietf.org/html.charters/mobileip-charter.html.

Several Request for Comments (RFC) and Internet Drafts (I-D) have already been written about Mobile IP. Three of particular interest are:

Other related documents include:

A complete (and current) list of RFCs and I-Ds can be found at the mobileip WG's Web site.

Finally, there are also at least two books available on Mobile IP, both written by members of the mobileip WG and both published in late 1997: Mobile IP : Design Principles and Practices by C.E. Perkins, B. Woolf, and S.R. Alpert (Addison-Wesley) and Mobile IP: The Internet Unplugged by J. Solomon (Prentice Hall).


ABOUT THE AUTHOR: At the time of this article's publication, Gary C. Kessler was the V.P., Information Technology at Hill Associates, a telecommunications training and education firm with headquarters in Colchester, VT. His e-mail address is kumquat@sover.net.