IETF Mobile IP Working Group Shiao-Li Tsao Jen-Chi Liu INTERNET-DRAFT Siemens 12 July 2000 Mobility Support for IPv4 and IPv6 Interconnected Networks based on Dual-Stack Model Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at: http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at: http://www.ietf.org/shadow.html. This document is an individual submission for the mobile-ip Working Group of the Internet Engineering Task Force (IETF). Comments should be submitted to the MOBILE-IP@STANDARDS.NORTELNETWORKS.COM mailing list. Abstract To support IP mobility, mobile IPv4 was designed for IPv4 network and the mobility extension for IPv6 has been also drafted. However, mobile IPv4 and mobile IPv6 are not compatible to each other so that a mobile IPv4 host can not function properly while it changes its point of attachment to IPv6 networks and vice versa. The document specifies an architecture and mechanisms to solve mobility problems in IPv4 and IPv6 interconnected networks. The solution presents a dual stack model that implements a new address mapper on mobile hosts. The address mapper on a mobile host associates the home address in one protocol such as IPv4 with a care-of-address in the other protocol, i.e. IPv6. It dispatches IPv4/IPv6 packets to proper layers of the protocol stack, and provides transparent services to upper layers regardless of the attached networks. Therefore, the new architecture facilitates the mobility of hosts in IPv4 and IPv6 interconnected networks. Tsao and Liu Expires 12 January 2001 [Page 1] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 1. Introduction Mobile IP aims to solve addressing and packet routing problems while a mobile host changes its point of attachment to a new network but still wants to communicate with other hosts by its original address [1][2]. For a mobile host moves to a new network, the packets to the original address can not be routed to the new network since the network has a different network prefix as its home network. To solve this problem, mobile IP is proposed. Mobile IPv4 was designed for Internet Protocol version 4 (IPv4) as well as mobile IPv6 has been also drafted for IPv6. Mobile IPv6 shares many ideas in mobile IPv4, and inherits some new features in IPv6. However, mobile IPv6 is not backward compatible to mobile IPv4 and the mobility issues in IPv4/IPv6 interconnected networks are ignored in the present RFCs and Internet drafts. Table 1 lists 10 possible scenarios for a mobile host changing its point of attachment to a new network. Scenario 1 and Scenario 6 are the normal cases that a mobile IPv4 host moves to an IPv4 network and a mobile IPv6 host moves to an IPv6 network respectively. While a mobile IPv4 host changes its point of attachment to a new network, it expects to receive agent advertisement messages from agents in the visited network. However, mobile IPv6 removes agent advertisement messages so that the mobile IPv4 host can not detect the movement to the new network, and also fails in home agent registration. On the other hard, a mobile IPv6 host changes its point of attachment to an IPv4 network, it expects to receive router advertisement messages. Unfortunately, IPv4 does not have router advertisement so that the registration procedures are also failed. In that way, mobile IP can not function properly in the above two situations which are Scenario 2 and Scenario 7. Scenario 4 and Scenario 8 are similar to Scenario 1 and Scenario 6 except IPv4/IPv6 protocol translators are exist. In the two situations, hosts can communicate with both IPv4 and IPv6 hosts since IPv4 to IPv6 and IPv6 to IPv4 packet translation are done by the IPv4/IPv6 protocol translator. In Scenario 5 and Scenario 10, a mobile IPv4 host moves to an IPv6 network that implements mobile IPv4 and an IPv4/IPv6 protocol translator and vice versa. In these cases, a mobile IPv4 host can receive agent advertisement messages and accomplish the registration procedures, and a mobile IPv6 host can also receive router advertisement messages and register at its home agent. There will be no problem to support mobility in the above two cases. Scenario 3 and Scenario 9 are two cases that implement only one protocol, support the translation of the IPv4/IPv6 protocols, but lack the mobile IP extension for the other protocol. This document specifies an architecture and mechanisms to overcome the lack of mobility support in IPv4 and IPv6 interconnected networks for Scenario 3 and Scenario 9. Tsao and Liu Expires 12 January 2001 [Page 2] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 The proposed dual-stack architecture implements a new address mapper on mobile hosts. The address mapper initiates registration, binding, and etc. procedures while it detects the movement to new networks with different version protocols. It obtains a care-of- address in the visited network, and associates the home address with the care-of-address. Then, the address mapper can dispatch IPv4/IPv6 packets to proper layers of the protocol stack, and provides transparent services to upper layers regardless of the attached networks. Therefore, the mobility can be provided in IPv4 and IPv6 interconnected networks. Table 1. Scenarios for mobile hosts changing its point of attachment to the visited networks. +--------+--------------+------------------------------------------+ | |Mobile Host |Visited Network | +--------+--------------+--------------+-------------+-------------+ |Scenario| |IPv4/MIPv4 |IPv6/MIPv6 |IPv4/IPv6 PT | +--------+--------------+--------------+-------------+-------------+ |1 |IPv4/MIPv4 |X | | | +--------+--------------+--------------+-------------+-------------+ |2 |IPv4/MIPv4 | |X | | +--------+--------------+--------------+-------------+-------------+ |3 |IPv4/MIPv4 | |X |X | +--------+--------------+--------------+-------------+-------------+ |4 |IPv4/MIPv4 |X | |X | +--------+--------------+--------------+-------------+-------------+ |5 |IPv4/MIPv4 |X |X |X | +--------+--------------+--------------+-------------+-------------+ |6 |IPv6/MIPv6 |X | | | +--------+--------------+--------------+-------------+-------------+ |7 |IPv6/MIPv6 | |X | | +--------+--------------+--------------+-------------+-------------+ |8 |IPv6/MIPv6 | |X |X | +--------+--------------+--------------+-------------+-------------+ |9 |IPv6/MIPv6 |X |X | | +--------+--------------+--------------+-------------+-------------+ |10 |IPv6/MIPv6 |X |X |X | +--------+--------------+--------------+-------------+-------------+ Note : IPv4/IPv6 PT : IPv4/IPv6 Protocol Translator 2. Terminology Mobile IPv4 network An IPv4 network implements mobile IPv4 and has mobile IPv4 entities such as home and foreign agents. It can understand and process mobile IPv4 messages but can not understand IPv6 and mobile IPv6 protocols. Tsao and Liu Expires 12 January 2001 [Page 3] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 Mobile IPv6 network An IPv6 network implements mobile IPv6 and can understand mobile IPv6 messages. However, it can not understand IPv4 and mobile IPv4 protocols. Mobile IPv4 host A host has IPv4 and mobile IPv4 protocol stacks, and registers an IPv4 address as its home address. The host can change its point of attachment from one link to another, while still being reachable via its home address. Mobile IPv6 host A host has IPv6 and mobile IPv6 protocol stacks, and registers an IPv6 address as its home address. The host can change its point of attachment from one link to another, while still being reachable via its home address. IPv4/IPv6 protocol translator A node, that can convert IPv4 packets to IPv6 packets and vice versa, facilities communications between IPv4-only hosts and IPv6- only hosts. IPv4/IPv6 DNS A domain name server that holds IPv4 to IPv6 and IPv4 to IPv6 address mapping can provide address look up services to hosts. 3. Dual stack model The document specifies a new stack model on mobile hosts. Besides IPv4 and IPv6 protocols with mobile IPv4 and mobile IPv6 extensions, the stack implements a new address mapper. The new protocol stack on mobile hosts is depicted in Figure 1. The two network protocols, i.e. IPv4 and IPv6, process IPv4 and IPv6 packets from/to the correspondent nodes respectively. Mobile IPv4 and mobile IPv6 are the extensions that process mobile IPv4/mobile IPv6 messages. The address mapper that extends mobile IP functions initiates the registion, binding, and etc procedures while the host detects the movement to networks with a different network protocol. The address mapper makes an assocattion of the IPv4 home address and an IPv6 care- of-address or the IPv6 home address and an IPv4 care-of- address. Then, it can dispatch IPv4/IPv6 packets to right layers, and provide a transparent service to upper layer protocols. Tsao and Liu Expires 12 January 2001 [Page 4] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 +----------------------------+-------------------------------+ | | | | IPv4 Applications | IPv6 Applications | | | | +----------------------------+-------------------------------+ | Socket v4/v6 Interfaces | +------------------------------------------------------------+ | | | TCP / UDP | | | +------+-----------+-------------------+------+--------------+ |ICMPv4|Mobile IPv4| Address Mapper |ICMPv6|Mobile IPv6 | +------+-----------+---------+---------+------+--------------+ | | | | IPv4 | IPv6 | | | | +----------------------------+-------------------------------+ | | | Physical and Link Layers | | | +------------------------------------------------------------+ Figure 1. Dual stack architecture on mobile hosts. 4. Scenarios 4.1 Movement from IPv4 network to IPv6 network The first scenario is that a mobile host registered an IPv4 address as its home address moves to an IPv6 network. The mobile host can receive and transmit packets in its home IPv4 network. While it moves to an IPv6 network, it can receive router advertisement from IPv6 router via its IPv6 protocol stack. The address mapper receives the packets and detects that it moves to an IPv6 network. The address mapper generates an IPv6 care-of-address by using the subnet prefix of the visited network. Once the mobile host obtains an IPv6 care-of-address, it resolves the IPv6 address by an IPv4 address and also obtains the IPv6 address of its IPv4 home agent. The IPv6 care-of-address and its mapped IPv4 address have to be co-located addresses allocated by the visited network or the network protocol translator. Here, we assume that the mapping between IPv6 and IPv4 addresses can be found in an IPv4/IPv6 domain name server. The allocation of the care-of-address in the visited network can be static assignment or dynamic allocation. The generation of the IPv6 address and the mapping of IPv4 and IPv6 addresses are out of scope of this document. The related information can be found in [3][4][5][6][7]. Tsao and Liu Expires 12 January 2001 [Page 5] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 The address mapper in the mobile host constructs a mobile IPv4 registration message and transmits it to its home agent through an IPv6 network. We assume that the protocol translation is done by the IPv4/IPv6 protocol translator or other similar mechanisms provided by the network. Home agent receives the registration message and can update its care-of-address. Therefore, packets to the mobile host can be transmitted to the host with the new IPv4 care-of- address directly. It is important to know that all IPv4 packets to the care-of-address in IPv4 will be translated into IPv6 packets to the care-of-address in IPv6 by the IPv4/IPv6 protocol translator. Then, we consider the packet flows in the protocol stack on a mobile node. The packets received in the home network are through the IPv4 stack. Once it moves to IPv6 network, it received packets via the IPv6 stack. The address mapper receives the packets, detects the movement to an IPv6 network, and generates registration packets to its home agent. The address mapper also makes an association of the old IPv4 address and the new IPv6 care-of- address. After registering in the home agent, packets from correspondent hosts to the care-of-address will be delivered to the IPv4/IPv6 protocol translator, translated into IPv6 packets and forwarded to the mobile host first. Packets to the new address will be merged and forward to upper layers by the address translator. The procedures for a mobile IPv4 host which migrates from an IPv4 network to an IPv6 network are summarized as : o In IPv4 network, IPv4 packets are received and processed by IPv4 protocol stack on a mobile host. o The mobile host, which moves to an IPv6 network, receives the router advertisement from IPv6 router via the IPv6 protocol stack. o The mobile host obtains an IPv6 care-of-address by some mechanisms in the visited network. It resolves the IPv6 address by an IPv4 address, and the IPv6 address of its home agent. The mechanisms to obtain an IPv6 care-of-address and the translation between IPv6 and IPv4 addresses are out of scope of the document. o The address mapper generates mobile IPv4 messages in ICMPv4 or other protocol formats to register its new IPv4 care-of-address to its home agent. The mobile IPv4 messages in ICMPv4 or other protocol formats are carried by an IPv6 network. These IPv6 packets are translated into IPv4 packets and forwarded to correspondent hosts by the IPv4/IPv6 network translator. The address mapper then makes an association of the original IPv4 home address and the new IPv6 care-of- address. o The mobile node receives packets whose destination address is the IPv6 care-of-address from the visited network. The packets are forwarded and dispatched by the address mapper to upper layers. Then, upper layer protocols will receive transparent services regardless of the network address of the packets. Tsao and Liu Expires 12 January 2001 [Page 6] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 o The IPv4 mobile host migrates from IPv4 networks to IPv6 networks successfully. 4.2 Movement from IPv6 network to IPv4 network Another scenario is that a mobile host registered an IPv6 address moves to an IPv4 network. Suppose a mobile host registers an IPv6 address and moves to an IPv4 network, the mobile host can receive foreign agent advertisement messages from the mobile IPv4 protocol stack. The address mapper on a mobile host detects the movement to an IPv4 network. The address mapper obtains a co-located IPv4 care- of-address by some mechanisms. Once it has an IPv4 care-of- address, it resolves the IPv4 address by an IPv6 address and also obtains the IPv4 address of its home agent located in an IPv6 network. The IPv4 care-of-address can be obtained by DHCP or some other dynamic address allocation schemes [4][5]. The address mapping can be solved by IPv4/IPv6 DNS [4]. Above two issues are out of the scope of this document. After the address mapper resolves the addresses, it generates mobile IPv6 registration messages in ICMPv6 or other protocol formats to its home agent. Besides that, it also generates mobile IPv6 binding messages to correspondent hosts and home agents. It is important to know that the IPv6 and mobile IPv6 packets are carried by IPv4 network. These IPv4 packets will be transmitted through IPv4 networks, translated by IPv4/IPv6 protocol translator and then routed to the IPv6 home agents and correspondent hosts. Therefore, packets to/from the mobile hosts can be routed by the new IPv4 care- of- address through the IPv4 network. The IPv4 care-of-address is associated with the home IPv6 address in the protocol stack on the mobile host. Packets of home IPv6 address and IPv4 care-of-address are merged and dispatched to the upper layer by the address mapper. The procedures to move from IPv6 to IPv4 networks are summarized as : o In IPv6 network, IPv6 packets are received and processed by IPv6 protocol stack on a mobile host. o The mobile host, which moves to an IPv4 network, receives the agent advertisement from mobile IPv4 foreign agent via the mobile IPv4 protocol stack. o The mobile host obtains an IPv4 care-of-address by some mechanisms. It resolves the IPv4 address by an IPv6 address, and the IPv4 address of the mobile IPv6 home agent. The means to obtain an IPv4 address and the translation between IPv4 and IPv6 addresses are out of scope of the document. Tsao and Liu Expires 12 January 2001 [Page 7] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 o The address mapper generates mobile IPv6 messages in ICMPv6 or other protocol formats. It registers the care-of-address in IPv6 to its home agent and updates binding information to home agents and correspondent hosts. The address mapper then makes an association of the original IPv6 address and the IPv4 care-of-address address. o The mobile host receives IPv4 packets whose destination is the care-of-address from the visited network. The packets are forwarded and dispatched by the address mapper. Then, upper layer protocols will receive transparent services regardless of network addresses of the packets and underlying network protocols. o The IPv6 mobile host migrates from IPv6 networks to IPv4 networks successfully. 5. References [1] Charles E. Perkins, "IP Mobility Support", IETF RFC 2002, Oct. 1996. [2] David B. Johnson and Charles E. Perkins, "Mobility Support in IPv6", draft-ietf-mobileip-ipv6-11.txt, March 2000, (work in progress). [3] K. Yamamoto and M. Sumikawa, "Overview of Transition Techniques for IPv6-only to Talk to IPv4-only communication", draft-ietf- ngtrans- translator-03.txt, March 2000, (work in progress). [4] G. Tsirtsis and P. Srisuresh, "Network Address Translation - Protocol Translation (NAT-PT)", IETF RFC 2766, Feb. 2000. [5] E. Nordmark, "Stateless IP/ICMP Translation Algorithm (SIIT)", IETF RFC 2765, Feb. 2000. [6] S. Thomson and T. Narten, "IPv6 Stateless Address Autoconfiguration", IETF RFC 2462, Dec. 1998. [7] T. Narten, E. Nordmark, and W. Simpson, "Neighbor Discovery for IP Version 6 (IPv6)", IETF RFC 2461, Dec. 1998. Authors' Addresses Shiao-Li Tsao Siemens, K400 CCL/ITRI Bldg. 51, 195-11 Sec. 4, Chung Hsing Rd., Chutung, Hsinchu, Taiwan, 310, R.O.C. Tel: +886-3-5914651 Fax: +886-3-5820310 E-mail: sltsao@itri.org.tw Tsao and Liu Expires 12 January 2001 [Page 8] Internet Draft Mobility Support for v4/v6 Internetworks 12 July 2000 Jen-Chi Liu Siemens, K400 CCL/ITRI Bldg. 51, 195-11 Sec. 4, Chung Hsing Rd., Chutung, Hsinchu, Taiwan, 310, R.O.C. Tel: +886-3-5914663 Fax: +886-3-5820310 E-mail: jcliu@itri.org.tw