Internet DRAFT - draft-ma-mobility-support-ipv4-ipv6
draft-ma-mobility-support-ipv4-ipv6
Network Working Group Zhegming Ma
Internet Draft Qingyu Tan
Intended status: Standards Track Zheng Xiang
Expires: December 2008 Zhongshan University
June 28, 2008
Mobility Support in IPv4/v6
draft-ma-mobility-support-ipv4-ipv6-00.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that
any applicable patent or other IPR claims of which he or she is
aware have been or will be disclosed, and any of which he or she
becomes aware will be disclosed, in accordance with Section 6 of
BCP 79.
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 Internet-Draft will expire on December 28, 2008.
Copyright Notice
Copyright (C) The IETF Trust (2008).
Abstract
This document specifies a protocol named Mobile IPv4/v6, which allows
mobile nodes to remain reachable while moving in IPv4/v6 mixed
networks. A translation gateway called Mobile IPv4/v6 Translation
Gateway (MIPv4/v6-TG) is introduced in this protocol. MIPv4/v6-TG is
based on NAT-PT gateway and equipped with a newly introduced
application level gateway called MIP-ALG. MIPv4/v6-TG is located
between IPv4 network and IPv6 network. On IPv4 network side,
Ma Expires December 28, 2008 [Page 1]
Internet-Draft Mobility Support in IPv4/v6 June 2008
MIPv4/v6-TG acts as a Mobile IPv4 entity and interacts with other
Mobile IPv4 entities under Mobile IPv4, while on IPv6 network side,
it acts as a Mobile IPv6 entity and interacts with other Mobile IPv6
entities under Mobile IPv6. In MIPv4/v6-TG, Mobile IPv4 entities and
Mobile IPv6 entities are translated with each other. In order to
maintain each of Mobile IP sessions that pass through MIPv4/v6-TG, a
data structure called Mobile IP Table is introduced.
Table of Contents
1. Introduction...................................................3
2. Comparison with Mobile IP for IPv4 and IPv6....................5
3. Terminology....................................................6
3.1. General Terms.............................................6
3.2. Mobile IPv4/v6 Terms......................................7
4. Overview of Mobile IPv4/v6.....................................8
5. Extended Messages and New Messages............................10
5.1. Extended Registration Request Message....................11
5.2. Agent Request Message....................................13
5.3. Agent Reply message......................................14
6. Requirements for Types of Nodes...............................16
6.1. All IPv4 Nodes...........................................16
6.2. All IPv6 Nodes...........................................16
6.3. Mobile Nodes moving in IPv4/v6 mixed networks............16
6.4. MIPv4/v6 Translation Gateway.............................17
7. Mobile Nodes Operation........................................18
7.1. Overview.................................................18
7.2. Conceptual Data Structures...............................18
7.3. The Acquisition of Related Addresses.....................19
7.3.1. Acquiring Addresses of HA and CN through DNS Query..19
7.3.2. Acquiring Home Address..............................19
7.4. Movement Detection.......................................20
7.5. Supporting New Messages..................................20
8. MIPv4/v6-TG Operation.........................................21
8.1. Conceptual Data Structures...............................21
8.2. Intercepting Mechanisms of MIPv4/v6-TG...................22
8.3. Creating MIP Table Entries...............................23
8.3.1. Creating Entries triggered by Agent Request messages25
8.3.2. Creating Entries triggered by BU messages...........27
8.3.3. Creating Entries triggered by Extended Registration
Request messages...........................................31
8.3.4. Creating Entries triggered by HoTI messages or CoTI
messages...................................................34
8.4. The Usage of MIP Table...................................36
8.4.1. The usage of Type 1 MIP Table Entry.................36
8.4.2. The usage of Type 2 MIP Table Entry.................37
Ma Expires December 28, 2008 [Page 2]
Internet-Draft Mobility Support in IPv4/v6 June 2008
8.4.3. The usage of Type 3 MIP Table Entry.................38
8.4.4. The usage of Type 4 MIP Table Entry.................38
8.4.5. The usage of Type 5 MIP Table Entry.................38
8.4.6. The usage of Type 6 MIP Table Entry.................39
8.5. The Update of MIP Table Entries..........................40
8.5.1. The Update of Type 1 MIP Table Entries..............40
8.5.2. The Update of Type 2 MIP Table Entries..............41
8.5.3. The Update of Type 3 MIP Table Entries..............42
8.5.4. The Update of Type 4 MIP Table Entries..............43
8.5.5. The Update of Type 5 MIP Table Entries..............44
8.5.6. The Update of Type 6 MIP Table Entries..............45
9. Protocol Constants............................................46
10. Security Considerations......................................46
10.1. Security policy for HA, MN and CN.......................46
10.2. Security Considerations for MIPv4/v6-TG.................46
11. IANA Considerations..........................................47
12. Normative References.........................................48
Authors' Addresses...............................................48
Intellectual Property Statement..................................49
Disclaimer of Validity...........................................49
1. Introduction
This document specifies a protocol named Mobile IPv4/v6, which allows
mobile nodes to remain reachable while moving in IPv4/v6 mixed
networks. Mobile IP studies how to support mobile communications on
the Internet. Specifically, Mobile IPv4 [1] studies how to support
mobile communications on IPv4 network; Mobile IPv6 [2] studies how to
support mobile communications on IPv6 network. Mobile IPv4/v6 studies
how to support mobile communications on IPv4/v6 mixed networks. IETF
has specified the latest versions of Mobile IPv4 and Mobile IPv6 in
RFC3344 and RFC3775. But no RFC on Mobile IPv4/v6 has been published.
This document provides a protocol on Mobile IPv4/v6.
Mobile IP (Mobile IPv4/Mobile IPv6/Mobile IPv4/v6) defines three
entities: mobile node (MN), home agent (HA) and correspondent node
(CN). Among these three entities, HA and CN are usually considered as
stationary nodes, while MN can move around from one link to another.
In IPv4/v6 mixed networks, some entities may be located in IPv4
network, while other entities may be located in IPv6 network. In this
circumstance, without additional mobility support, communications
between the entities located in the different networks may not be
available. Therefore, a new protocol on Mobile IPv4/v6 has to be
introduced.
Mobile IPv4/v6 studies how to maintain communications between MN and
CN when MN moves in IPv4/v6 networks. According to the combination of
Ma Expires December 28, 2008 [Page 3]
Internet-Draft Mobility Support in IPv4/v6 June 2008
IP versions of networks where HA and CN are located, Mobile IPv4/v6
problems can be divided into the following four base problems:
o HA and CN are located in IPv6 network, while MN moves between
IPv4/v6 networks.
o HA and CN are located in IPv4 network, while MN moves between
IPv4/v6 networks.
o HA is located in IPv6 network, CN is located in IPv4 network,
while MN moves between IPv4/v6 networks.
o HA is located in IPv4 network, CN is located in IPv6 network,
while MN moves between IPv4/v6 networks.
According to the movement of MN, each base problem can further be
divided into four sub-problems:
o MN moves within IPv6 network.
o MN moves within IPv4 network.
o MN moves from IPv6 network to IPv4 network.
o MN moves from IPv4 network to IPv6 network.
Mobile IPv4/v6 will provide detailed solutions to each of the above
16 sub-problems. In order to maintain mobile communications in
IPv4/v6 networks, a translation gateway called Mobile IPv4/v6
Translation Gateway (MIPv4/v6-TG) is introduced in this protocol.
MIPv4/v6-TG is based on NAT-PT [3][4] gateway and equipped with a
newly introduced application level gateway called MIP-ALG. MIPv4/v6-
TG is located between IPv4 network and IPv6 network, and functions as
follows.
o On IPv6 network side, MIPv4/v6-TG acts as one of the Mobile IPv6
entities (HAv6, MNv6 or CNv6) to interact with other MIPv6
entities inside the IPv6 network as specified in RFC3775.
o On IPv4 network side, MIPv4/v6-TG acts as one of the Mobile IPv4
entities (HAv4, MNv4 or CNv4) to interact with other MIPv4
entities inside the IPv4 network as specified in RFC3344.
o Inside MIPv4/v6-TG, the Mobile IP entities that MIPv4/v6-TG acts
as are transformed from one to another, namely, from a MIPv4
entity to a MIPv6 entity or vice versa.
Ma Expires December 28, 2008 [Page 4]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o MIPv4/v6-TG maintains a conceptual data structure called the
Mobile IP Table (MIP Table). The function of MIP table is similar
to that of NAT table on NAT-PT. Each entry of MIP table maintains
a MIP session that passes through MIPv4/v6-TG. The contents
recorded in a MIP table entry are the IP versions of HA, MN and CN,
the bindings of home address and care-of address, entrances for
the entry, and so on. It is based on the entry contents that
MIPv4/v6-TG processes the messages and datagrams involved in the
corresponding MIP session.
2. Comparison with Mobile IP for IPv4 and IPv6
Compared with Mobile IPv4 and Mobile IPv6, Mobile IPv4/v6 has the
following major differences.
o Mobile IPv4/v6 is designed for IPv4/v6 mixed networks, while
Mobile IPv4 and Mobile IPv6 are designed for pure IPv4 network and
pure IPv6 network, respectively. This makes these three protocols
different from each other.
o IPv4/v6 mixed network is a transition network from IPv4 to IPv6.
Mobile IPv4/v6 is a transition protocol from Mobile IPv4 to Mobile
IPv6, and should be able to work compatibly with both Mobile IPv4
and Mobile IPv6 to ensure a smooth transition process. In Mobile
IPv4/v6, a translation gateway, called Mobile IPv4/v6 Translation
Gateway and made up of NAT-PT and Mobile IP-ALG, is introduced to
translate between Mobile IPv4 and Mobile IPv6.
o Among the three Mobile IP entities (HA, MN and CN), HA and CN are
usually considered as stationary nodes. In this protocol, if HA or
CN is located in IPv4 network or IPv6 network, it can operate
under Mobile IPv4 or Mobile IPv6, and needn't know whether MN is
moving in IPv4 network or IPv6 network. If MN only moves within
IPv4 network or IPv6 network, it can operate under Mobile IPv4 or
Mobile IPv6, and needn't care whether HA and CN are located in
IPv4 network or IPv6 network. If MN moves from IPv4 network to
IPv6 network or from IPv6 network to IPv4 network, it should
support extra functions introduced in Mobile IPv4/v6. Firstly, MN
must be able to detect whether it is in IPv4 network or IPv6
network, and shift to Mobile IPv4 or Mobile IPv6 accordingly.
Secondly, MN must keep in mind the domain names of HA and CN. When
HA or CN is located in the network of IP version different from
that of MN, the addresses acquired through DNS query are in fact
the addresses of NAT-PT. Finally, when MN moves from IPv6 network
to IPv4 network, it must support the following messages introduced
in Mobile IPv4/v6: the extended Registration Request message, the
Agent Request message and the Agent Reply message.
Ma Expires December 28, 2008 [Page 5]
Internet-Draft Mobility Support in IPv4/v6 June 2008
3. Terminology
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in BCP 14, RFC 2119 [5].
3.1. General Terms
IP: Internet Protocol
IPv4: Internet Protocol Version 4
IPv6: Internet Protocol Version 6
MIP: Mobile IP
MIPv4: Mobile IPv4
MIPv6: Mobile IPv6
Node: A device that implements IP (IPv4, IPv6 or both)
Router: A node that forwards IP packets not explicitly addressed to
itself.
Link: A communication facility or medium over which nodes can
communicate at the link layer, such as an Ethernet (simple or
bridged). A link is the layer immediately below IP.
Interface: A node's attachment to a link.
Packet: An IP header plus payload.
Message: A kind of packet specially used in the registration process.
MIPv4/v6 messages: The three messages newly introduced in this
protocol. They are the extended Registration Request message, the
Agent Request message and the Agent Reply message.
Datagram: A kind of packet that carries data in the payload, used in
the communication process.
"#": A symbol that is attached after an IPv4 address to indicate that
this is an IPv4 address from the NAT-PT address pool, which is used
by the NAT-PT to map an IPv6 address.
Ma Expires December 28, 2008 [Page 6]
Internet-Draft Mobility Support in IPv4/v6 June 2008
"*": A symbol that is attached after an IPv6 address to indicate that
this is an IPv6 address formed by adding a 96-bit NAT-PT prefix to an
IPv4 address.
"<-->": A symbol connecting two IP addresses, used in a binding or an
address mapping.
3.2. Mobile IPv4/v6 Terms
Home address (HoA): A unicast routable address assigned to a mobile
node. This address is within the mobile node's home link. A mobile
node with an IPv4 home agent is assigned an IPv4 home address, while
a mobile node with an IPv6 home agent is assigned an IPv6 home
address.
Home subnet prefix: The IP subnet prefix corresponding to a mobile
node's home address.
Home link: The link on which a mobile node's home subnet prefix is
defined.
Mobile node (MN): A node that can change its point of attachment from
one link to another within IPv4 network, IPv6 network, or between
IPv4/v6 mixed networks, while still being reachable via its home
address.
Movement: A change in a mobile node's point of attachment to the
Internet such that it is no longer connected to the same link as it
was previously. If a mobile node is not currently attached to its
home link, the mobile node is said to be "away from home".
Correspondent node (CN): A peer node with which a mobile node is
communicating. The correspondent node may be attached to IPv4 network
or IPv6 network, and it may be either mobile or stationary.
Foreign subnet prefix: Any IP subnet prefix other than the mobile
node's home subnet prefix.
Foreign link: Any link other than the mobile node's home link.
Care-of address (CoA): A unicast routable address associated with a
mobile node while visiting a foreign link; the subnet prefix of this
IP address is a foreign subnet prefix.
Home agent: A router on a mobile node's home link with which the
mobile node has registered its current care-of address. In this
protocol, communication between mobile nodes and correspondent nodes
Ma Expires December 28, 2008 [Page 7]
Internet-Draft Mobility Support in IPv4/v6 June 2008
use "route optimization" mode. Therefore, packets do not have to pass
through the home link. This reduce burden of the home link and home
agent.
HAA: Home Agent Address
CNA: Correspondent Node Address
Binding: The association of the home address of a mobile node with a
care-of address for that mobile node, along with the remaining
lifetime of that association.
Registration: The process during which a mobile node informs its home
agent or correspondent node of the new care-of address.
MIP Table: A data structure maintained by MIPv4/v6-TG that is used to
record some useful information for all the mobile IP communication.
Each entry of the table corresponds to a communication process. There
are in sum six different kinds of MIP entries. More information about
MIP table is available in chapter 8.
4. Overview of Mobile IPv4/v6
Mobile IPv4/v6 is a protocol that supports mobile communications on
IPv4/v6 mixed networks. There are mainly three mechanisms for the
transition of IPv4 to IPv6: dual stacks, tunneling and NAT-PT. This
protocol is based on NAT-PT. NAT-PT gateway is a network layer device
that is located between the IPv4 network and IPv6 network, making the
two networks transparent and independent to each other.
Due to the differences between IPv4 and IPv6, the ways for them to
support the same application, such as mobile communication, are also
different. Therefore, an ALG (Application Level Gateway) is often
added on the NAT-PT gateway to support an application on the IPv4/v6
mixed network. FTP-ALG and DNS-ALG are two famous examples. Motivated
by the idea of ALG, Mobile IPv4/v6 specified in this document adds a
MIP-ALG on NAT-PT gateway to support mobile communication on IPv4/v6
mixed network.
Mobile IPv4/v6 uses a traditional NAT-PT and a MIP-ALG added on the
NAT-PT to form a new device named MIPv4/v6-TG. On IPv6 network side,
MIPv4/v6-TG acts as one of the Mobile IPv6 entities (HAv6, MNv6 or
CNv6) to combine with other MIPv6 entities inside the IPv6 network to
form a complete MIPv6 model described in RFC3775. In this way, inside
the IPv6 network, the registration process and communication process
can be performed as specified in RFC3775. Similarly, on IPv4 network
side, MIPv4/v6-TG acts as one of the Mobile IPv4 entities (HAv4, MNv4
Ma Expires December 28, 2008 [Page 8]
Internet-Draft Mobility Support in IPv4/v6 June 2008
or CNv4) to combine with other MIPv4 entities inside the IPv4 network
to form a complete MIPv4 model described in RFC3344. In this way,
inside the IPv4 network, the registration process and communication
process can be performed as specified in RFC3344.
Among the MIP entities, HA and CN are regarded as stationary nodes,
(although CN may also change its location), while MN can move within
the network with the same IP version or across the networks with
different IP versions. The role that MIPv4/v6-TG acts varies with the
location of HA, MN and CN.
(1) HA and CN are located in IPv4 network, while MN moves within IPv4
network. In this scenario, on the IPv6 network side, MIPv4/v6-TG acts
as MNv6 and communicates with CNv6 according to RFC3775. On the IPv4
network side, MIPv4/v6-TG acts as CNv4 to receive packets and as HAv4
to send packets through a tunnel according to RFC3344.
(2) HA and CN are located in IPv4 network, while MN moves within IPv6
network. In this scenario, on IPv4 network side, MIPv4/v6-TG acts as
MNv4 and communicate with HAv4 and CNv4 according to RFC3344. On IPv6
network side, MIPv4/v6-TG acts as CNv6 and communicates with MNv6
according to RFC3775.
(3) HA is located in IPv6 network, CN is located in IPv4 network:
o MN moves in IPv6 network. In this scenario, on IPv6 network side,
MIPv4/v6-TG acts as CNv6 and communicates with MNv6 according to
RFC3775. On IPv4 network side, MIPv4/v6-TG acts as HAv4 to receive
packets from CNv4 and as MNv4 to send packets to CNv4 according to
RFC3344.
o MN moves in IPv4 network. In this scenario, on IPv4 network side,
MIPv4/v6-TG acts as HAv4 and communicates with CNv4 and MNv4
according to RFC3344.
(4)HA is located in IPv4 network, CN is located in IPv6 network.
o MN moves in IPv4 network. In this scenario, on IPv4 network side,
MIPv4/v6-TG acts as CNv4 and communicates with HAv4 and MNv4
according to RFC3344. On IPv6 network side, MIPv4/v6-TG acts as
MNv6 and communicates with CNv6 according to RFC3775.
o MN moves in IPv6 network. In this scenario, MNv6 and CNv6 can
communicate directly with each other. In order to make HAv4 keep
aware the location of MN, MIPv4/v6-TG must maintain the binding of
HoA and CoA.
Ma Expires December 28, 2008 [Page 9]
Internet-Draft Mobility Support in IPv4/v6 June 2008
In order for MIPv4/v6-TG to maintain every communication process that
goes through MIPv4/v6-TG, this protocol introduces a data structure
called MIP table. The features and functions of MIP table are as
follows:
(1) MIP table is maintained by MIP-ALG and is used together with NAT
table, which is maintained by NAT-PT.
(2) There are totally six types of table entries in the MIP table,
each of which corresponds with a combination of locations of HA, MN
and CN.
(3) Each entry of the MIP table maintains a communication process
that goes through MIPv4/v6-TG. MIP-ALG handles MIP-related messages
and datagrams based on the information recorded in the entry.
(4) Each entry has four entrances through which the entry can be
accessed. They are the IPv6 message entrance, the IPv6 datagram
entrance, the IPv4 message entrance and the IPv4 datagram entrance.
The IPv6 message entrance is set to IPv6 home address, the IPv6
datagram entrance is set to the destination address of the coming
datagrams, and the IPv4 message entrance and datagram entrance are
set to the destination addresses of the coming messages and datagrams,
respectively.
(5) When MIPv4/v6-TG intercepts a packet, it first judges whether it
is a MIP message. If it is a MIP message, MIPv4/v6-TG will further
judge whether it is an extended Registration Request message or an
agent request message introduced in the protocol. If it is, a new
entry is created. If not, MIPv4/v6-TG will lookup the IPv4 or IPv6
message entrances. If no entry matches the message, a new entry is
created.
(6) If MIPv4/v6-TG judges that the packet is not a message, it will
lookup the IPv4 or IPv6 datagram entrances, using the destination
address of the packet. If no entry matches the packet, MIPv4/v6-TG
will judge that the packet has nothing to do with Mobile IP and will
not deliver it to MIP-ALG for further disposal.
5. Extended Messages and New Messages
In this protocol, MIPv4 and MIPv6 are reused respectively in IPv4
network and IPv6 network. On IPv6 network side, all MIPv6 messages
are reused without any change. On IPv4 network side, MIPv4 messages
are reused without any change, except for two circumstances. When HA
is located in IPv6 network while MN moves from IPv6 network into IPv4
network, Registration Request message is extended. When HA is located
Ma Expires December 28, 2008 [Page 10]
Internet-Draft Mobility Support in IPv4/v6 June 2008
in IPv4 network, CN is located in IPv6 network, while MN moves from
IPv6 network into IPv4 network, two new messages called Agent
Request/Reply message are introduced.
5.1. Extended Registration Request Message
The Extended Registration Request message is used in two scenarios.
One is HA and CN are located in IPv6 network, while MN moves from
IPv6 network to IPv4 network and performs the first registration
process. The other is HA is located in IPv6 network, CN is located in
IPv4 network, while MN moves from IPv6 network to IPv4 network and
performs the first registration process. In both scenarios, the
registration needs some additional information that the original
Registration Request message does not supply. This additional
information should be carried in the extended Registration Request
message. Note that the extended message is used only in the first
registration process. After that, the original message is used.
IP fields:
Source Address is the interface address from which the message is
sent. Typically, it is the new Care-of Address (CoAv4) that MN wants
to register with HA. CoAv4 will be changed to CoAv6* by adding a 96-
bit NAT-PT prefix to CoAv4 when the message passes MIPv4/v6-TG.
Destination Address is the IP address of the HA (HAAv4#). HAAv4# is
acquired through DNS query. It is in fact an IPv4 address from the
NAT-PT address pool. Messages or datagrams with such kind of address
as the destination address will be routed to the NAT-PT gateway. When
passing through MIPv4/v6-TG, HAAv4# will be changed to HAAv6 by
searching the NAT table.
UDP fields:
Source Port: variable
Destination Port: 434
The UDP header is followed by the Mobile IP fields shown below:
Ma Expires December 28, 2008 [Page 11]
Internet-Draft Mobility Support in IPv4/v6 June 2008
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type |S|B|D|M|G|r|T|x| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Address: 0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Agent: HAAv4# |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Care-of Address: CoAv4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Identification +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extension: CNAv4(#) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extension: HoAv6 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Other Extensions ...
+-+-+-+-+-+-+-+-+-+-+-
Type: 4.
S, B, D, M, G, r, T, x, and Lifetime: the meanings of these fields
are the same with those of the original Registration Request message.
Home Address: By the time when MN sends this message, it only knows
its IPv6 home address and has no idea about the IPv4 home address.
Hence, this field is set to 0.
Home Agent Address: the IPv4 Home Agent Address HAAv4#. It is the
same with the destination address of the message.
Care-of Address: the IPv4 care-of address CoAv4#. It is the same with
the source address of the message.
Identification: A 64-bit number, constructed by MN, used for matching
Registration Requests with Registration Replies, and for protecting
against replay attacks of registration messages, as defined in MIPv4.
Extensions: CNAv4/CNAv4# and HoAv6.
CNAv4/CNAv4# is the IPv4 address of CN. It is acquired through DNS
query. MIPv4/v6-TG can use this address to decide whether CN is in
IPv4 network or IPv6 network. If the address is from the NAT-PT
Ma Expires December 28, 2008 [Page 12]
Internet-Draft Mobility Support in IPv4/v6 June 2008
address pool, it means that CN is in IPv6 network. Otherwise, CN is
in IPv4 network.
HoAv6 is the IPv6 home address of MN. Here it is used as an
identification of MN. After the extended Registration Request message
is translated into a BU message, HoAv6 is carried in the BU message
so that HAv6 knows which MN is sending the message.
Other Extensions: The fixed portion of the extended Registration
Request is followed by one or more of the extensions, as defined in
MIPv4.
5.2. Agent Request Message
The Agent Request message is used in the scenario where HA is located
in IPv4 network, CN is located in IPv6 network, while MN moves from
IPv6 network to IPv4 network and performs the first registration
process. When MN is still in IPv6 network and communicating with CN,
CN keeps the cached binding of HoAv6 and CoAv6. After MN moves from
IPv6 network to IPv4 network, in addition to Registration Request
message sent to HAv4, MN has to send an Agent Request message to
MIPv4/v6-TG, requesting MIPv4/v6-TG to update the binding cache on CN
so that CN can send the packets to the right place. The format of
Agent Request message is the same with that of the Registration
Request message except for a different Type value.
IP fields:
Source Address: CoAv4, the new care-of address MN has just acquired
in IPv4 network.
Destination Address: CNAv4#. This address is acquired through DNS
query. It is in fact an IPv4 address from the NAT-PT address pool.
Messages or datagrams with such kind of address as the destination
address will be routed to the NAT-PT gateway.
UDP fields:
Source Port: variable
Destination Port: 434
The UDP header is followed by the Mobile IP fields shown below:
Ma Expires December 28, 2008 [Page 13]
Internet-Draft Mobility Support in IPv4/v6 June 2008
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type |S|B|D|M|G|r|T|x| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Address: HoAv4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Agent: HAAv4# |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Care-of Address: CoAv4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Identification +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Other Extensions...
+-+-+-+-+-+-+-+-+-+-+-
Type: 5.
S, B, D, M, G, r, T, x, Lifetime and Identification: the meanings of
these fields are the same with those of the original Registration
Request message.
Home Address: HoAv4.
Home Agent Address: HAAv4.
Care-of Address: the new IPv4 care-of address that MN wants to
register with CN. In MIPv4/v6-TG, this address will be changed to
IPv6 form by adding a 96-bit NAT-PT prefix.
5.3. Agent Reply message
Agent Reply message is a message sent by MIPv4/v6-TG as a reply to
the Agent Request message. It informs MN of the result of the update
procedure with CN. The format of Agent Reply message is the same with
that of Registration Reply message, as shown below.
Ma Expires December 28, 2008 [Page 14]
Internet-Draft Mobility Support in IPv4/v6 June 2008
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Address: HoAv4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Home Agent: HAAv4# |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Identification +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Extensions...
+-+-+-+-+-+-+-+-
IP fields:
Source Address: CNAv4#. This address can be copied directly from the
destination address field of the Agent Request message.
Destination Address: CoAv4. This address can be copied directly from
the source address field of the Agent Request message.
UDP fields:
Source Port: 434, copied from the destination port of the Agent
Request message.
Destination Port: variable, copied from the source port of the Agent
Request message.
Type: 6.
Code: indicates the result of the update procedure. So far only two
possible results are defined:
0: unfinished. This means that the procedure is not completed. MN
should try again later or try other means.
1: finished. This means that the procedure is completed. And the
Lifetime field indicates the lifetime of the new binding.
Lifetime: The number of seconds remaining before the binding is
considered expired. A value of zero indicates a request for
deregistration. A value of 0xffff indicates infinity.
Ma Expires December 28, 2008 [Page 15]
Internet-Draft Mobility Support in IPv4/v6 June 2008
Home Address: HoAv4, copied from the Agent Request message.
Home Agent Address: HAAv4, copied from the Agent Request message.
Identification: it is the same with that of the Registration Reply
message.
6. Requirements for Types of Nodes
6.1. All IPv4 Nodes
Any IPv4 node may be a correspondent node of a mobile node, no matter
whether the mobile node is in IPv4 network or IPv6 network. When an
IPv4 node acts as a correspondent node, it only needs to meet the
requirements described in MIPv4. The protocol presented in this
document places no additional requirements on such kind of nodes.
This protocol also places no additional requirements on nodes that
act as home agents. But when an IPv4 node acts as a mobile node, it
needs extending with some new features. This will be discussed later
in chapter 7.
6.2. All IPv6 Nodes
In MIPv6, communication between a mobile node and a correspondent
node may use two possible modes: bidirectional tunneling and route
optimization. This protocol suggests that in IPv6 network, route
optimization be chosen. Here, "in IPv6 network" refers not only to
the scenario where both MN and CN are located in IPv6 network, but
also to the scenarios where only MN or CN is located in IPv6 network.
Therefore, for any IPv6 node that acts as a correspondent node, it
must support route optimization. This implies that when MN changes
its location and gets a new care-of address, it must update the
binding cache on the correspondent node by some means. Specifically,
if MN is also in IPv6 network, MN will itself perform correspondent
registration. If MN is in IPv4 network, MIPv4/v6-TG will do the job
on behalf of MN.
When an IPv6 node acts as home agent, it only needs to meet the
requirements described in MIPv6. This protocol places no additional
requirements on such kind of nodes.
6.3. Mobile Nodes moving in IPv4/v6 mixed networks
Mobile nodes moving in IPv4/v6 mixed networks must meet the following
requirements.
Ma Expires December 28, 2008 [Page 16]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(1) Mobile nodes should support both MIPv4 and MIPv6. They must be
able to detect whether they are in IPv4 network or IPv6 network and
work under MIPv4 or MIPv6 accordingly.
(2) Mobile nodes must support DNS. They should know the domain names
of the home agents and the correspondent nodes. When HA or CN is
located in a network whose version is different from that of MN, it
is through DNS query that MN discovers a suitable MIPv4/v6-TG located
between MN and HA or CN. MIPv4/v6-TG will return an IPv4 address from
NAT-PT address pool, or an IPv6 address with 96-bit NAT-PT prefix. MN
uses the returned address to communicate with HA or CN. MN may
periodically perform DNS query to discover a more suitable MIPv4/v6-
TG.
(3) Mobile nodes must support the MIPv4/v6 messages introduced in
this protocol, including:
o Mobile Nodes must support the extended Registration Request
message. The extended Registration Request message carries some
information about MIPv4/v6, and is used in some special
circumstances. More detail is available in section 5.1. Mobile
nodes should know when and how to use this message.
o Mobile Nodes must support the Agent Request message. Agent Request
message is one that has a similar format with the Registration
Request message. Mobile Nodes use this message to request
MIPv4/v6-TG to inform CN of new care-of addresses. More detail is
available in section 5.2. Mobile nodes should know when and how to
use this message.
o Mobile Nodes must support the Agent Reply message. Agent Reply
message is a reply sent by MIPv4/v6-TG to inform the MN of the
update result. More detail is available in section 5.3. Mobile
nodes should know when and how to use this message.
6.4. MIPv4/v6 Translation Gateway
MIPv4/v6-TG is made up of NAT-PT and MIP-ALG. MIPv4/v6-TG plays a
crucial role in MIPv4/v6. It must meet the following requirements.
(1) MIPv4/v6-TG must support all the functionalities of MIPv4 and
MIPv6 entities. That is to say, MIPv4/v6-TG will act as a MIPv4
entity on IPv4 network side and as a MIPv6 entity on IPv6 network.
(2) MIPv4/v6-TG should have an efficient mechanism to intercept MIP-
related messages and datagrams and process them correctly.
Ma Expires December 28, 2008 [Page 17]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(3) NAT-PT is a fundamental function of MIPv4/v6-TG, and is
responsible for address translation and protocol translation between
IPv4 and IPv6. In this protocol, NAT-PT must be equipped with DNS-ALG.
(4) MIP-ALG maintains a MIP table, a conceptual data structure newly
introduced in this protocol. Each entry of MIP table records
necessary information for each MIP session that passes through
MIPv4/v6-TG. It is based on the information contained in the MIP
table that MIP-ALG knows how to process MIP messages and datagrams.
7. Mobile Nodes Operation
7.1. Overview
MN moving in IPv4/v6 mixed network must support both MIPv4 and MIPv6.
When MN moves within IPv4 network, its operations comply with MIPv4.
When MN moves within IPv6 network, its operations comply with MIPv6.
Besides, MN must possess the following abilities.
o When MN moves from IPv4 network to IPv6 network or from IPv6
network to IPv4 network, it must be able to detect the change of
IP versions of the network.
o If the IP version of the network in which HA or CN is located is
different from that of MN, MN must keep in mind the domain names
of HA or CN, and look for an available MIPv4/v6-TG by DNS query.
MN communicates with HA or CN through the MIPv4/v6-TG.
o When MN moves from IPv6 network to IPv4 network, MN must be able
to support the extended Registration Request message, Agent
Request message and Agent Reply message newly introduced in this
protocol.
This chapter will describe the newly introduced abilities of MN in
details. Those abilities of MN described in MIPv4 and MIPv6 will be
not repeated.
7.2. Conceptual Data Structures
In this protocol, when MN moves from IPv4 network to IPv6 network or
from IPv6 network to IPv4 network, it should support the extended
Registration Request message, Agent Request message and Registration
Reply message. Besides the conceptual data structures mentioned in
MIPv4 and MIPv6, new conceptual data structures must be introduced
for MN to keep in mind the necessary state information of these three
messages.
Ma Expires December 28, 2008 [Page 18]
Internet-Draft Mobility Support in IPv4/v6 June 2008
7.3. The Acquisition of Related Addresses
If the IP version of network in which HA or CN is located is
different from that of MN, MN must find a MIPv4/v6-TG through which
MN can communicate with HA or CN. MIPv4/v6-TG will give MN an IP
address. Packets with this IP address as destination address will be
routed to MIPv4/v6-TG, and translated and delivered to HA or CN. In
addition, if MN and HA are located in the networks of different IP
versions, the home address will be not routable in the network in
which MN is located. In this circumstance, MN must acquire an IP
address from MIPv4/v6-TG to substitute for the home address.
7.3.1. Acquiring Addresses of HA and CN through DNS Query
In this protocol, MN is required to know the domain names of HA and
CN. DNS query is not only used to get the IP address of HA or CN, but,
more importantly, used to find an available MIPv4/v6-TG when MN and
HA or CN are located in the networks of different IP versions.
When HA is located in IPv6 network and MN is located in IPv4 network,
MN can acquire the home agent address of IPv4 version through DNS
query. According to RFC2766, NAT-PT will take out an IPv4 address
HAAv4# from its address pool and create a mapping of HAAv6<-->HAAv4#
in its NAT table. When CN is located in IPv6 network and MN is
located in IPv4 network, CNAv4# can be acquired in the same way.
When HA is located in IPv4 network and MN is located in IPv6 network,
MN can acquire the home agent address of IPv6 version through DNS
query. According to RFC2766, NAT-PT will add a 96-bit NAT-PT prefix
to HAAv4 to form HAAv6*. When CN is located in IPv4 network and MN is
located in IPv6 network, CNAv6* can be acquired in the same way.
7.3.2. Acquiring Home Address
The IP version of MN home address is the same with that of home link.
When MN moves to a network whose IP version is different from that of
home link, its home address is not usable. Under this circumstance,
MN must find a way to acquire an IP address used as its home address
in the network.
If HA is located in IPv4 network and MN moves from IPv4 network to
IPv6 network, MN home address HoAv4 is not usable in the IPv6 network.
Under this circumstance, MN will add a 96-bit NAT-PT prefix to HoAv4
to form an IPv6 home address HoAv6*. The 96-bit NAT-PT prefix is
taken from HAAv6*, which can be acquired by DNS query as described in
7.3.1.
Ma Expires December 28, 2008 [Page 19]
Internet-Draft Mobility Support in IPv4/v6 June 2008
If HA is located in IPv6 network and MN moves from IPv6 network to
IPv4 network, MN home address HoAv6 is not usable in the IPv4 network.
Under this circumstance, MN will send to MIPv4/v6-TG an extended
Registration Request message, rather than a conventional Registration
Request message. In the extended Registration Request message, the
home address field is set to 0, and the extended home address field
is set to HoAv6. MIPv4/v6-TG will take an IPv4 address from NAT-PT
address pool as MN home address HoAv4#. HoAv4# will be sent to MN in
a Registration Reply message.
7.4. Movement Detection
MN can judge whether it has moved to a new link by comparing the
subnet prefix in the Router Advertisements with the prefix of its
current care-of address. As a dual stack node, MN can judge whether
it is located in IPv4 network or IPv6 network by Router
Advertisements.
MN records the Lifetime taken from Agent Advertisements. When the
Lifetime nearly expires, MN will send an Agent Solicitation message.
If MN is not sure whether it is located in IPv4 network or IPv6
network, it can send both IPv4 and IPv6 Agent Solicitation messages.
If MN receives an IPv6 reply, it knows that it is now in IPv6 network.
If MN receives an IPv4 reply, it knows that it is now in IPv4 network.
7.5. Supporting New Messages
In addition to MIPv4 and MIPv6 messages described in MIPv4 and MIPv6,
this protocol introduces three new messages for MIPv4/v6.
If HA is located in IPv6 network and MN moves from IPv6 network to
IPv4 network, MN acquires HAAv4# and CNAv4/CNAv4# by DNS query. MN
generates an extended Registration Request message, in which the
destination address is set to HAAv4#, the home address field is set
to 0, the extended home address field is set to HoAv6, and the
extended correspondent node address is set to CNAv4/CNAv4#.
If HA is located in IPv4 network, CN is located in IPv6 network, and
MN moves from IPv6 network to IPv4 network, MN acquires CNAv4# by DNS
query. MN generates an Agent Request message, in which the
destination address is set to CNAv4#, the home address field is set
to HoAv4, the home agent address field is set to HAAv4, and the care-
of address field is set to CoAv4. On receiving this Agent Request
message, MIPv4/v6-TG will update the binding cache on CNv6 on behalf
of MNv4, and return to MNv4 an Agent Reply message.
Ma Expires December 28, 2008 [Page 20]
Internet-Draft Mobility Support in IPv4/v6 June 2008
8. MIPv4/v6-TG Operation
8.1. Conceptual Data Structures
MIP table is a conceptual data structure newly introduced in this
protocol. MIP table records the information for each MIP session that
passes through MIPv4/v6-TG, such as the IP versions of HA, MN and CN,
the bindings of home address and care-of address, entrances for MIP
table entries, and so on. The function of MIP table is similar to
that of NAT table on NAT-PT. When a MIP packet passes through
MIPv4/v6-TG, MIPv4/v6-TG will lookup the MIP table for a
corresponding entry and use the information recorded in the entry to
process the packet. The creation of MIP table entry is triggered by
some special MIP messages. On IPv4 network side, only Extended
Registration Request messages and Agent Request messages can make
MIPv4/v6-TG create new MIP table entries. On IPv6 network side, those
MIP messages for which no matching entries can be found will make
MIPv4/v6-TG create new MIP table entries. Each entry should contain
the following fields.
o The IP versions of HA, MN and CN. The role that MIPv4/v6-TG plays
is determined by the combination of IP versions of the three MIP
entities. When a MIP datagram is intercepted, MIPv4/v6-TG lookups
the MIP table for the corresponding entry, and in this way, learns
the IP versions of three MIP entities. Then MIPv4/v6-TG knows how
to process the datagram.
o Bindings of home address and care-of address. The bindings of home
address and care-of address make possible the transparent routing
of packets in MIP communications. The bindings in a particular
table entry may be of IPv4 form or IPv6 form. Some of the entries
may have IPv4 bindings and IPv6 bindings at the same time. This
depends on the combination of IP versions of HA, MN and CN.
o Entry entrances. Entry entrances are fields that are particularly
set for entry lookup. Packets that MIPv4/v6-TG intercepts may come
from IPv4 network or IPv6 network. Therefore, MIP table should
support bi-directional lookup. Moreover, the intercepted MIP
packets may be messages or datagrams. Therefore, MIP table should
further support message and datagram lookup, respectively. In this
protocol, four entrances are defined: the IPv6 message entrance,
the IPv6 datagram entrance, the IPv4 message entrance and the IPv4
datagram entrance. The IPv6 message entrance is set to IPv6 home
address, the IPv6 datagram entrance is set to the destination
address of the coming datagrams, and the IPv4 message entrance and
datagram entrance are set to the destination addresses of the
coming messages and datagrams, respectively.
Ma Expires December 28, 2008 [Page 21]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o Lifetime of the entry. Lifetime is a positive number indicating
how many seconds before the entry is considered expired. This
number is set to the minimal one of the lifetimes of the existing
bindings. Lifetime can be updated through registration processes.
Since MN also knows the value of lifetime, when the lifetime is
nearly expired, MN may perform a registration process in order to
update the lifetime. If the lifetime becomes zero, MIPv4/v6-TG
will delete this entry.
o State of the entry. There are two possible states for each entry:
finished and unfinished. An unfinished state indicates that the
entry is now being created or updated. Entries with an unfinished
state can not be used by the MIPv4/v6-TG as a guide to process the
packets.
8.2. Intercepting Mechanisms of MIPv4/v6-TG
MIPv4/v6-TG is made up of a NAT-PT and a MIP-ALG. Not all coming
packets are MIP-related. Therefore, MIPv4/v6-TG should develop a
effective mechanism to intercept MIP-related packets and deliver them
to MIP-ALG for further processing. In this protocol, MIPv4/v6-TG uses
the following rules to intercept MIP-related packets.
(1) MIPv4/v6-TG intercepts MIP-related messages based on message
types.
o On IPv4 network side, MIPv4/v6-TG needs to process four kinds of
MIP messages: Registration Request message, Registration Reply
message, extended Registration Request message, Agent Request
message and Agent Reply message. The first two messages are
specified in RFC3344 while the others are newly introduced in this
protocol. The registration request message, extended registration
request message, and agent request message are all sent through
UDP destination port 434. The registration reply message and agent
reply message are both sent through UDP source port 434. MIPv4/v6-
TG uses these features to distinguish them from other messages.
Furthermore, these five MIP-related messages have different type
values, and can be distinguished from one another by these type
values. The Type values of the Registration Request message and
Registration Reply message are 1 and 3, respectively. For extended
Registration Request message, Agent Request message and Agent
Reply message, 5, 6 and 7 are used, respectively.
Ma Expires December 28, 2008 [Page 22]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o On IPv6 side, MIPv4/v6-TG needs to process six kinds of messages:
HoTI, CoTI, HoT, CoT, BU and BA. These messages contain a mobility
header identified by a Payload Proto number 135, and can be
distinguished by this feature from other messages. Furthermore,
MIP-ALG uses the MH type value in the mobility header to
distinguish from one another. For HoTI, CoTI, HoT, CoT, BU and BA,
the MH type values are 1, 2, 3, 4, 5 and 6, respectively.
(2) MIPv4/v6-TG intercepts MIP-related datagrams by checking their
destination addresses. When MIPv4/v6-TG receives a packet, it will
check if it is a MIP-related message, using the method described in
(1). If it is not a MIP-related message, MIPv4/v6-TG takes out its
destination address and compares it with the datagram entrance of the
existing entries. If the datagram entrance of any entry equals to the
destination address, it means that this is a MIP-related datagram.
MIPv4/v6-TG will then deliver it to MIP-ALG for further processing,
based on the information recorded in that entry.
8.3. Creating MIP Table Entries
In this protocol, there are four kinds of messages that can trigger
the creation of new MIP table entries. They are: the extended
Registration Request message, Agent Request message, BU, and HoTI or
CoTI. There are six kinds of entries in MIP table, each of which
corresponds with one possible combination of IP versions of HA, MN
and CN. Note that in the scenarios where HA, MN and CN are all
located in IPv4 network or IPv6 network, MIPv4/v6-TG needn't
participate in MIP registration and communication processes.
Therefore, no MIP table entry is needed to be created for such
scenarios.
An MIP table entry should, typically, have the following fields.
Type: A three-bit field indicating the IP versions of HA, MN and CN
respectively. For each bit, a value of 1 indicates the MIP entity is
located in IPv6 network, while a value of 0 indicates the MIP entity
is located in IPv4 network. Type value varies from 001 to 110. 000
and 111 indicate that HA, MN and CN are all located in IPv4 network
and IPv6 network, respectively, and do not need to be considered.
MIPv6 message entrance: A 128-bit field through which a particular
MIP table entry can be found and accessed when a MIPv6 message is
intercepted by MIPv4/v6-TG. Usually, this field is set to the IPv6
home address. All MIPv6 messages contain IPv6 home addresses. When a
MIPv6 message is intercepted by MIPv4/v6-TG, MIPv4/v6-TG takes out
the IPv6 home address from the intercepted message and uses it as an
index to search the MIP table. In this process, MIPv4/v6-TG compares
Ma Expires December 28, 2008 [Page 23]
Internet-Draft Mobility Support in IPv4/v6 June 2008
the IPv6 message entrance field of each entry with the IPv6 home
address. If an entry is found, MIPv4/v6-TG will use the information
recorded in the entry to process the intercepted message. If no entry
is found, MIPv4/v6-TG will create a new entry.
MIPv6 datagram entrance: A 128-bit field through which a particular
entry can be found and accessed when a MIPv6 datagram is intercepted
by MIPv4/v6-TG. If an intercepted packet is not a MIPv6 message,
MIPv4/v6-TG will take out its destination address and use the address
as an index to search the MIP table. In this process, MIPv4/v6-TG
compares the IPv6 datagram entrance filed of each entry with the
address. If an entry is found, the intercepted packet is a MIPv6
datagram, and will be processed based on the information recorded in
the entry. If no entry is found, the intercepted packet is not a
MIPv6 datagram.
MIPv4 message entrance: A 32-bit field through which a particular
entry can be found and accessed when a MIPv4 message is intercepted
by MIPv4/v6-TG. On intercepting a MIPv4 message, MIPv4/v6-TG takes
out its destination address and uses the address as an index to
search for the corresponding MIP table entry. It is based on the MIP
table entry that MIPv4/v6-TG processes the intercepted MIPv4 message.
MIPv4 datagram entrance: A 32-bit field through which a particular
entry can be found and accessed when a MIPv4 datagram is intercepted
by MIPv4/v6-TG. If an intercepted packet is not a MIPv4 message,
MIPv4/v6-TG will take out its destination address and use the address
as an index to search the MIP table. In this process, MIPv4/v6-TG
compares the IPv4 datagram entrance filed of each entry with the
address. If an entry is found, the intercepted packet is a MIPv4
datagram, and will be processed based on the information recorded in
the entry. If no entry is found, the intercepted packet is not a
MIPv4 datagram.
Cached bindings: Bindings of home address and care-of address that
are used by MIPv4/v6-TG when it acts as a particular MIP entity.
Bindings may be of IPv4 form or of IPv6 form. Entries may have no
binding, one binding, or two bindings. This depends on the types of
the entries.
Source port: A 16-bit field that records the source port value of
Registration Request message, extended Registration Request message,
or Agent Request message. All of these three messages are sent
through UDP ports. When MIPv4/v6-TG intercepts such kind of message,
it fills this field with the source port value. This field is used as
the destination port when MIPv4/v6-TG sends back a reply later.
Ma Expires December 28, 2008 [Page 24]
Internet-Draft Mobility Support in IPv4/v6 June 2008
Destination port: A 16-bit field that records the destination port
value of Registration Request message, extended Registration Request
message, or Agent Request message. It will be uses as the source port
when MIPv4/v6-TG sends back a reply later.
State: A 1-bit field indicating whether the entry is finished or not.
There are two possible states for each entry: 1 (finished) and 0
(unfinished). An unfinished state indicates that the entry is now
being created or updated. Entries with an unfinished state can not be
used by the MIPv4/v6-TG as a guide to process MIP datagrams.
Lifetime: A 16-bit field indicating entry lifetime. The meaning of
this field depends on the value of the State field. When the State is
0 (unfinished), Lifetime means the entry should be completed before
the time expires. When the State is 1 (finished), Lifetime means the
number of seconds left before the entry is considered expired. In
either case, when this filed becomes 0, MIPv4/v6-TG will delete the
entry.
8.3.1. Creating Entries triggered by Agent Request messages
Agent Request message is a new message introduced in this protocol.
Its format is available in section 5.2.
In this protocol, Agent Request message is used only when HA is
located in IPv4 network, CN is located in IPv6 network, and MN has
just moved from IPv6 network to IPv4 network. Since the IP version of
MN has changed from IPv6 to IPv4. The original entry becomes invalid
and a new entry should be created. MIPv4/v6-TG takes the following
steps to create a new entry.
(1) MIPv4/v6-TG intercepts an Agent Request message and delivers it
to MIP-ALG for further processing. Here, MIPv4/v6-TG uses the
intercepting mechanism described above to intercept and recognize the
Agent Request message.
(2) On receiving the Agent Request message, MIP-ALG can infer that HA
is located in IPv4 network, CN is located IPv6 network and MN has
just moved from IPv6 network to IPv4 network, as only in this
scenario can MIPv4/v6-TG receive an Agent Request message. Therefore,
a new entry with the Type value 001 (binary) is created.
MIP-ALG sets the field of MIPv6 Message Entrance to HoAv6*, MIPv6
Datagram Entrance to CoAv6*, MIPv4 Datagram Entrance to CNAv4#,
Cached Bindings to HoAv6*<-->CoAv6*, Source Port and Destination Port
to the source port number and destination port number of the Agent
Request message respectively. HoAv6*, CoAv6* and HAAv6* can be
Ma Expires December 28, 2008 [Page 25]
Internet-Draft Mobility Support in IPv4/v6 June 2008
acquired by adding a 96-bit NAT-PT prefix to HoAv4, CoAv4, HAAv4,
while CNAv6 can be acquired by checking the NAT table, using CNAv4#
as the index. HoAv4, CoAv4, HAAv4 and CNAv4# are carried in the Agent
Request message.
MIP-ALG sets the fields of HoTI/HoT, CoTI/CoT and State to 0, and
then sets the Lifetime to a value in which the creation of the entry
must be accomplished.
(3) MIP-ALG generates HoTI message and CoTI message. The source
address and destination address of HoTI message are HoAv6* and CNAv6,
respectively, while the source address and destination address of
CoTI message are CoAv6* and CNAv6, respectively. Both of these
messages will be routed to CNv6.
(4) MIPv4/v6-TG intercepts HoT message and CoT message replied from
CNv6, uses HoAv6* carried in these messages as an index to search MIP
table, and finds this entry.
(5) For HoT message, MIP-ALG sets the HoTI/HoT field of the entry to
1, while for CoT message, MIP-ALG sets the CoTI/CoT field of the
entry to 1. When both HoTI/HoT field and CoTI/CoT field become 1,
MIP-ALG will generate a BU message, with CoAv6* and CNAv6 as its
source address and destination address, respectively. This BU message
will be routed to CNv6.
(6) MIPv4/v6-TG intercepts BA message replied from CNv6. Then,
MIPv4/v6-TG uses HoAv6* carried in the message as an index to search
MIP table and finds this entry.
(7) MIP-ALG generates an Agent Reply message with CNAv4# and CoAv4 as
its source address and destination address, respectively. This
message is sent through UDP. The source port and destination port are
copied from the fields of Destination Port and Source Port,
respectively. This Agent Reply message will be routed to MNv4.
(8) MIP-ALG sets the State of the entry to 1 (finished), and sets the
Lifetime of the entry to the lifetime of the binding cache.
When the creation of a Type 1 entry finishes, the value of each field
is as follows.
Type: 001. HA and MN are located in IPv4 network, CN is located in
IPv6 network. On intercepting an Agent Request message, MIPv4/v6-TG
knows the IP versions of HA, MN and CN.
Ma Expires December 28, 2008 [Page 26]
Internet-Draft Mobility Support in IPv4/v6 June 2008
MIPv6 Message Entrance: HoAv6*. HoAv6* is acquired by adding a 96-bit
NAT-PT prefix to HoAv4, which is carried in the Agent Request message.
MIPv6 Datagram Entrance: CoAv6*. CoAv6* is acquired by adding a 96-
bit NAT-PT prefix to CoAv4, which is carried in the Agent Request
message.
MIPv4 Message Entrance: blank. Except for Agent Request message,
MIPv4/v6-TG will not receive any other MIPv4 messages.
MIPv4 Datagram Entrance: CNAv4#. CNAv4# is acquired from the
destination address field of the Agent Request message.
Cache Bindings: HoAv6*<-->CoAv6*. Both HoAv6* and CoAv6 can be
acquired from the Agent Request message.
HoTI/HoT: 1. HoTI/HoT has arrived.
CoT/CoTI: 1. CoTI/CoT has arrived.
Source Port: variable. The source port number of the Agent Request
message, which is variable.
Destination Port: 434. The destination port number of the Agent
request message is 434.
State: 1. Finished.
Lifetime: set to the lifetime of the entry.
8.3.2. Creating Entries triggered by BU messages
When MIPv4/v6-TG intercepts a BU message, it takes out HoAv6* from
the message and uses it as an index to search the MIP table. If no
matching entry is found, MIPv4/v6-TG will create a new entry, using
the information carried in the BU message. If a matching entry is
found, MIPv4/v6-TG will go further to see if the second bit of the
Type is equal to 1 (i.e., MN is in IPv6 network). If so, MIP-ALG will
just update the existing entry, without creating a new entry.
Otherwise, MIP-ALG will create a new entry and the following steps
will be performed.
(1) On receiving the BU message, MIP-ALG can infer that HA is located
in IPv4 network and MN is located in IPv6 network. However, MIP-ALG
does not know the IP version of CN and needs other means to learn
this information later.
Ma Expires December 28, 2008 [Page 27]
Internet-Draft Mobility Support in IPv4/v6 June 2008
MIP-ALG creates a new entry and sets the field of Cached Bindings to
HoAv6*<-->CoAv6, MIPv6 Message Entrance to HoAv6*, MIPv4 Message
Entrance to CoAv4#. CoAv4# is an IPv4 address taken from the NAT-PT
address pool and mapped with CoAv6. The fields of HoTI/HoT, CoTI/CoT
and State are all set to 0. Lifetime is set to a value in which the
creation of the entry must be accomplished.
(2) MIP-ALG translates the BU message into a Registration Request
message with CoAv4# and HAAv4 as its source address and destination
address, respectively. HoAv4 is carried in the new message. HAAv4 and
HoAv4 are acquired from HAAv6* and HoAv6*, respectively. This
Registration Request message will be routed to HAv4.
(3) MIPv4/v6-TG intercepts the Registration Reply message replied
from HAv4, takes out the destination address as an index to search
the MIP table and finds this entry.
(4) MIP-ALG translates the intercepted Registration Reply message
into a BA message with HAAv6* and CoAv6 as its source address and
destination address, respectively. HoAv6* is carried in the message.
HAAv6* and HoAv6* are acquired by adding a 96-bit NAT-PT prefix to
HAAv4 and HoAv4. CoAv6 is acquired by searching the NAT table, using
CoAv4# as the index. HAAv4, HoAv4, and CoAv6 can be all acquired from
the intercepted Registration Reply message. This BA message will be
routed to MNv6.
If CN is located in IPv4 network, the following steps will be
performed:
(1) MIPv4/v6-TG intercepts HoTI message or CoTI message, takes out
HoAv6* from the intercepted message as an index to search the MIP
table, and finds this entry. Note that HoTI arrives through tunneling.
(2) MIP-ALG can judge the IP version of CN by the destination address
of HoTI message or CoTI message. Then MIP-ALG sets the field of Type
to 010, HoTI/HoT or CoTI/CoT to 1, and then generates HoT message or
CoT message as a reply. Note that HoT is sent through tunneling.
(3) MIPv4/v6-TG intercepts a BU message, takes out HoAv6* from the
intercepted message as an index to search the MIP table and finds
this entry.
(4) MIP-ALG sets the field of MIPv4 Datagram Entrance to CoAv4#, and
MIPv6 Datagram Entrance to CNAv6*. Then MIP-ALG generates a BA
message, and its source address and destination address are copied
directly from the destination address and source address fields of
the BU message. The BA message will be routed to MNv6.
Ma Expires December 28, 2008 [Page 28]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(5) MIP-ALG sets the State to 1, and then sets the Lifetime to the
lifetime of the binding.
If CN is located in IPv6 network, the following steps will be
performed:
(1) MIPv4/v6-TG intercepts HoTI message, takes out HoAv6* from the
intercepted message as an index to search the MIP table and finds
this entry. Note that HoTI arrives through tunneling.
(2) MIP-ALG can judge the IP version of CN by the destination address
of HoTI. MIP-ALG sets the field of Type to 011, and then sends HoTI
to CNv6.
(3) MIPv4/v6-TG intercepts HoT message replied from CNv6, takes out
HoAv6* from the intercepted message as an index to search the MIP
table and finds this entry.
(4) MIP-ALG sets the HoTI/HoT field to 1, and then sends HoT to MNv6.
Note that the HoT message is sent through tunneling.
(5) MIP-ALG sets the State to 1, and then sets the Lifetime to the
lifetime of the binding.
When the creation of a Type 2 entry finishes, the value of each field
is as follows.
Type: 010. HA and CN are located in IPv4 network, MN is located in
IPv6 network. On intercepting HoTI or CoTI, MIPv4/v6-TG can judge the
IP versions of HA, MN and CN.
MIPv6 Message Entrance: HoAv6*. HoAv6* is acquired from the BU
message.
MIPv6 Datagram Entrance: CNAv6*. CNAv6* is acquired from the
destination address of the BU message.
MIPv4 Message Entrance: CoAv4#. CoAv4# is a mapping of CoAv6 and can
be acquired by searching the NAT table, using CoAv6 as the index.
CoAv6 is acquired from the BU message sent to HA. If no mapping is
found, MIP-ALG takes an IPv4 address from NAT-PT address pool and
uses it as CoAv4#. Meanwhile, a binding of CoAv4# and CoAv6 will be
recorded in NAT table.
MIPv4 Datagram Entrance: CoAv4#. Ditto. The only difference is that
CoAv6 is acquired from the source address of the BU message sent to
CN.
Ma Expires December 28, 2008 [Page 29]
Internet-Draft Mobility Support in IPv4/v6 June 2008
Cache Bindings: HoAv6*<-->CoAv6. Both HoAv6* and CoAv6 are acquired
from the BU message sent to CN.
HoTI/HoT: 1. HoTI/HoT has arrived.
CoT/CoTI: 1. CoTI/CoT has arrived.
Source Port: variable. The source port number of the Registration
Request message, which is variable.
Destination Port: 434. The destination port number of the
Registration request message is 434.
State: 1. Finished.
When the creation of a Type 3 entry finishes, the value of each field
is as follows.
Type: 011. HA is located in IPv4 network, MN and CN are located in
IPv6 network. On Receiving HoTI message, the IP versions of HA, MN
and CN can be inferred.
MIPv6 Message Entrance: HoAv6*. HoAv6* is acquired from the BU
message sent to HA.
MIPv6 Datagram Entrance: blank.
MIPv4 Message Entrance: CoAv4#. CoAv4# is a mapping of CoAv6 and can
be acquired by searching the NAT table, using CoAv6 as the index.
CoAv6 is acquired from the BU message sent to HA. If no mapping is
found, MIP-ALG takes an IPv4 address from NAT-PT address pool and
uses it as CoAv4#. Meanwhile, a binding of CoAv4# and CoAv6 will be
recorded in NAT table.
MIPv4 Datagram Entrance: blank.
Cache Bindings: HoAv6*<-->CoAv6. Both HoAv6* and CoAv6 are acquired
from the BU message sent to HAv6.
HoTI/HoT: 1. HoTI/HoT has arrived.
CoT/CoTI: 1. CoTI/CoT has arrived.
Source Port: variable. The source port number of the Registration
Request message, which is variable.
Ma Expires December 28, 2008 [Page 30]
Internet-Draft Mobility Support in IPv4/v6 June 2008
Destination Port: 434. The destination port number of the
Registration request message is 434.
State: 1. Finished.
Lifetime: set to the lifetime of the entry.
8.3.3. Creating Entries triggered by Extended Registration Request
messages
The format of the Extended Registration Request message is available
in section 5.1.
In this protocol, MN sends the Extended Registration Request message
only when it moves from IPv6 network to IPv4 network and performs the
first registration. After MN's movement from IPv6 network to IPv4
network, the original entry becomes invalid. Therefore, a new entry
should be created.
(1) On receiving the Extended Registration Request message, MIP-ALG
can learn the IP versions of the three entities: HA is in IPv6
network, MN is in IPv4 network. As for CN, if the IPv4 address of CN
carried in the extension field of the message belongs to the NAT-PT
address pool, the IP version of CN is IPv6. Otherwise, the IP version
of CN is IPv4.
MIP-ALG creates a new entry and sets the fields of Source Port and
Destination Port to the source port number and destination port
number of the intercepted message, respectively, the field of State
to 0, and the field of Lifetime to a value in which the creation of
the entry must be accomplished.
o If CN is located in IPv4 network, MIP-ALG sets the field of Type
to 100, MIPv6 Message Entrance to HoAv6, MIPv4 Message Entrance to
HAAv4#, MIPv4 Datagram Entrance to HoAv4#, Cached Bindings to
HoAv4#<-->CoAv4.
o If CN is located in IPv6 network, MIP-ALG sets the field of Type
to 101, MIPv6 Message Entrance to HoAv6, MIPv6 Datagram Entrance
to CoAv6*, MIPv4 Message Entrance to HAAv4#, MIPv4 Datagram
Entrance to CNAv4#, Cached Bindings to HoAv6<-->CoAv6* and
HoAv4#<-->CoAv4, HoTI/HoT and CoTI/CoT to 0.
(2) MIP-ALG generates a BU message with CoAv6* and HAAv6 as its
source address and destination address, respectively. HoAv6 is
carried in the message. Here, HAAv6 is acquired by checking the NAT
table using HAAv4# as the index, while CoAv6* is acquired by adding a
Ma Expires December 28, 2008 [Page 31]
Internet-Draft Mobility Support in IPv4/v6 June 2008
96-bit NAT-PT prefix to CoAv4. Both HAAv4# and CoAv4 are taken from
the Extended Registration Request message. This message will be
routed to HAv6.
(3) MIPv4/v6-TG intercepts the BA message replied from HAv6, takes
out HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
If CN is located in IPv4 network, the following steps will be
performed:
(1) MIP-ALG generate Registration Reply message, with HAAv4# and
CoAv4 as its source address and destination address, respectively.
This message is sent through UDP, with the source port number and
destination port number copied from the Destination Port field and
Source Port field. This message will be routed to MNv4.
(2) MIP-ALG sets the State field to 1, and sets the Lifetime field to
the lifetime of the binding.
If CN is located in IPv6 network, the following steps will be
performed:
(1) MIP-ALG generates a HoTI message and a CoTI message. The source
address and destination address of HoTI are HoAv6 and CNAv6,
respectively. The HoTI message is sent to HAv6 through reverse
tunneling, and then sent to CNv6. The beginning point and endpoint of
the tunnel are CoAv6* and HAAv6, respectively. The source address and
destination of CoTI are CoAv6* and CNAv6.
(2) MIPv4/v6-TG intercepts the HoT message or the CoT message, takes
out HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
(3) MIP-ALG sets the HoTI/HoT field, or the CoTI/CoT field to 1,
indicating the arrival of the HoT message or the CoT message.
(4) When both HoTI/HoT and CoTI/CoT fields become 1, MIP-ALG
generates a BU message, with CoAv6* and CNAv6 as its source address
and destination address, respectively. HoAv6 is carried in the
message. This message will be routed to CNv6.
(5) MIPv4/v6-TG intercepts a BA message replied from CNv6, takes out
HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
Ma Expires December 28, 2008 [Page 32]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(6) MIP-ALG generate Registration Reply message, with HAAv4# and
CoAv4 as its source address and destination address, respectively.
This message is sent through UDP, with the source port number and
destination port number copied from the Destination Port field and
Source Port field. This message will be routed to MNv4.
(7) MIP-ALG sets the State field to 1, and sets the Lifetime field to
the lifetime of the binding.
When the creation of a Type 4 entry finishes, the value of each field
is as follows.
Type: 100. HA is located in IPv6 network, MN and CN are located in
IPv4 network.
MIPv6 Message Entrance: HoAv6. HoAv6 is acquired from the extension
field of the Extended Registration Request message.
MIPv6 Datagram Entrance: blank.
MIPv4 Message Entrance: HAAv4#. HAAv4# is acquired from the
destination address field of the Extended Registration Request
message.
MIPv4 Datagram Entrance: HoAv4#. HoAv4# is a mapping address of HoAv6
and can be acquired by searching the NAT table, using HoAv6 as the
index. HoAv6 is acquired from the Extended Registration Request
message. If no mapping is found, MIP-ALG takes an IPv4 address from
NAT-PT address pool and uses it as HoAv4#. Meanwhile, a mapping of
HoAv4# and HoAv6 will be recorded in NAT table.
Cache Bindings: HoAv4#<-->CoAv4. CoAv4 is acquired from the source
address field of the Extended Registration Request message.
HoTI/HoT: 1. HoTI/HoT has arrived.
CoT/CoTI: 1. CoTI/CoT has arrived.
Source Port: variable. The source port number of the Extended
Registration Request message, which is variable.
Destination Port: 434. The destination port number of the Extended
Registration Request message is 434.
Lifetime: set to the lifetime of the entry.
Ma Expires December 28, 2008 [Page 33]
Internet-Draft Mobility Support in IPv4/v6 June 2008
When the creation of a Type 5 entry finishes, the value of each field
is as follows.
Type: 101. HA and CN are located in IPv6 network, MN is located in
IPv4 network.
MIPv6 Message Entrance: HoAv6. HoAv6 is acquired from the extension
fields of extended Registration Request message.
MIPv6 Datagram Entrance: CoAv6*. CoAv6* is acquired by adding a 96-
bit NAT-PT prefix to CoAv4, which is acquired from the Extended
Registration Request message.
MIPv4 Message Entrance: HAAv4#. HAAv4# is acquired from the
destination address field of the Extended Registration Request
message.
MIPv4 Datagram Entrance: CNAv4#. CNAv4# is acquired from the
extension field of extended Registration Request message.
Cache Bindings: HoAv4#<-->CoAv4, HoAv6<-->CoAv6*. HoAv4# is a mapping
address of HoAv6 and can be acquired by searching the NAT table,
using HoAv6 as the index. HoAv6 is acquired from the Extended
Registration Request message. If no mapping is found, MIP-ALG takes
an IPv4 address from NAT-PT address pool and uses it as HoAv4#.
Meanwhile, a mapping of HoAv4# and HoAv6 will be recorded in NAT
table.
HoTI/HoT: 1. HoTI/HoT has arrived.
CoT/CoTI: 1. CoTI/CoT has arrived.
Source Port: variable. The source port number of the Extended
Registration Request message, which is variable.
Destination Port: 434. The destination port number of the Extended
Registration Request message is 434.
Lifetime: set to the lifetime of the entry.
8.3.4. Creating Entries triggered by HoTI messages or CoTI messages
When MIPv4/v6-TG intercepts a HoTI message or CoTI message, it takes
out HoAv6 from the message and uses it as an index to search the MIP
table. MIPv4/v6-TG compares the MIPv6 Message Entrance with HoAv6. If
no matching entry is found, MIPv4/v6-TG will create a new entry,
using the information carried in the HoTI or CoTI message. If a
Ma Expires December 28, 2008 [Page 34]
Internet-Draft Mobility Support in IPv4/v6 June 2008
matching entry is found, MIPv4/v6-TG will go further to see if the
second bit of the Type is equal to 1 (i.e., MN is in IPv6 network).
If so, MIP-ALG will just update the existing entry, without creating
a new entry. Otherwise, MIP-ALG will create a new entry and the
following steps will be performed.
(1) MIP-ALG infers that both HA and MN are located in IPv6 network
and CN is located in IPv4 network, since only in this scenario can
MIPv4/v6-TG receive a HoTI message or CoTI message without receiving
BU from the same MN before.
MIP-ALG sets the field of Type to 110, MIPv6 Message Entrance to
HoAv6, MIPv6 Datagram Entrance to CNAv6*, MIPv4 Datagram Entrance to
HoAv4#, State to 0, and Lifetime to a value in which the creation of
this entry must be accomplished.
(2) MIP-ALG generates a HoT message or CoT message. The HoT message
is first sent to HAv6, then to MNv6 by HAv6 through tunneling. CoT
message is sent directly to MNv6.
(3) MIPv4/v6-TG intercepts the BU message, takes out HoAv6 and uses
it as an index to search the MIP table, and finds this entry.
(4) MIP-ALG sets the field of Cached Bindings to HoAv6<-->CoAv6, and
then generates a BA message, with its source address and destination
address copied directly from the destination address and source
address of the BU message. The BA message will be routed to MNv6.
(5) MIP-ALG sets the State field to 1, and then sets the Lifetime to
the lifetime of the binding.
When the creation of a Type 6 entry finishes, the value of each field
is as follows.
Type: 110. Both HA and MN are located in IPv6 network, and CN is
located in IPv4 network. On receiving HoTI or CoTI, MIPv4/v6-TG can
judge the versions of HA, MN and CN.
MIPv6 Message Entrance: HoAv6. HoAv6 is acquired from the HoTI or
CoTI message.
MIPv6 Datagram Entrance: CNAv6*. CNAv6* is acquired from the
destination address field of the HoTI message or CoTI message.
MIPv4 Message Entrance: blank.
Ma Expires December 28, 2008 [Page 35]
Internet-Draft Mobility Support in IPv4/v6 June 2008
MIPv4 Datagram Entrance: HoAv4#. HoAv4# is a mapping address of HoAv6
and can be acquired by searching the NAT table, using HoAv6 as the
index. HoAv6 is acquired from the HoTI message or CoTI message. If no
mapping is found, MIP-ALG takes an IPv4 address from NAT-PT address
pool and uses it as HoAv4#. Meanwhile, a mapping of HoAv4# and HoAv6
will be recorded in NAT table.
Cache Bindings: HoAv6<-->CoAv6. Both HoAv6 and CoAv6 are acquired
from the BU message sent to CN.
HoTI/HoT: blank.
CoT/CoTI: blank.
Source Port: blank.
Destination Port: blank.
Lifetime: set to the lifetime of the entry.
8.4. The Usage of MIP Table
The introduction of MIP table aims to maintain MIP sessions in
IPv4/v6 mixed networks. When a datagram sent by MN or CN passes
through MIPv4/v6-TG, MIPv4/v6-TG will take out the destination
address of the datagram and uses it as an index to search the MIP
table. If a matching entry is found, MIPv4/v6-TG will process the
datagram, based on the information recorded in the entry.
8.4.1. The usage of Type 1 MIP Table Entry
The contents of Type 1 entry are available in section 8.3.1.
(1) When an IPv4 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
will take out its destination address and uses it as an index to
search the MIP table. If a Type 1 entry is found, MIPv4/v6-TG will
process the datagram as follows.
o NAT-PT, a component of MIPv4/v6-TG, translates the datagram into
IPv6 format.
o MIP-ALG inserts a Destination Option extension header into the
IPv6 datagram, and fills the header with the source address of the
IPv6 datagram. Then MIP-ALG uses the source address as an index to
search Cached Bindings field, and takes out the care-of address
bound with the source address, and replaces the source address
with the care-of address.
Ma Expires December 28, 2008 [Page 36]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o MIPv4/v6-TG sends the processed IPv6 datagram.
(2) When an IPv6 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
takes out its destination address and uses it as an index to search
the MIP table. If a Type 1 entry is found, MIPv4/v6-TG will process
the datagram as follows.
o MIPv4/v6-TG replaces the destination address of the datagram with
the IPv6 home address, which is taken from the type 2 routing
header of the datagram.
o NAT-PT translates the datagram into IPv4 format.
o MIPv4/v6-TG sends the processed IPv4 datagram.
8.4.2. The usage of Type 2 MIP Table Entry
The contents of Type 2 entry are available in section 8.3.2.
(1) When an IPv4 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
will take out its destination address and uses it as an index to
search the MIP table. If a Type 2 entry is found, MIPv4/v6-TG will
process the datagram as follows.
o MIP-ALG decapsulates the IPv4 datagram and gets the inner datagram.
o NAT-PT translates the datagram into IPv6 format.
o MIP-ALG inserts a type 2 routing header into the IPv6 datagram,
and fills the header with the destination address of the IPv6
datagram. Then MIP-ALG uses the destination address as an index to
search Cached Bindings field, and takes out the care-of address
bound with the destination address, and replaces the destination
address with the care-of address.
o MIPv4/v6-TG sends the processed IPv6 datagram.
(2) When an IPv6 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
takes out its destination address and uses it as an index to search
the MIP table. If a Type 2 entry is found, MIPv4/v6-TG will process
the datagram as follows.
o MIPv4/v6-TG replaces the source address of the datagram with the
IPv6 home address, which is taken from the Destination Option
extension header of the datagram.
o NAT-PT translates the datagram into IPv4 format.
Ma Expires December 28, 2008 [Page 37]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o MIPv4/v6-TG sends the processed IPv4 datagram.
8.4.3. The usage of Type 3 MIP Table Entry
A Type 3 entry corresponds to a scenario where both MN and CN are
located in IPv6 network. In this scenario, MN and CN can communicate
with each other without the participation of MIPv4/v6-TG. Therefore,
Type 3 entries will not be used in the communication processes.
8.4.4. The usage of Type 4 MIP Table Entry
The contents of Type 4 entry are available in section 8.3.3.
When an IPv4 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG will
take out its destination address and uses it as an index to search
the MIP table. If a Type 4 entry is found, MIPv4/v6-TG will process
the datagram as follows.
o MIP-ALG encapsulates the datagram in a new IPv4 datagram. The
source address of the outer IP header is copied from MIPv4 Message
Entrance field. Then MIP-ALG uses the destination address of the
inner IP header as an index to search Cached Bindings field, and
takes out the care-of address bound with the destination address,
and uses the care-of address as the destination address of the
outer IP header.
o MIPv4/v6-TG sends the processed IPv4 datagram.
In the scenarios related to Type 4 entries, no MIPv6 datagrams will
arrive at MIPv4/v6-TG.
8.4.5. The usage of Type 5 MIP Table Entry
The contents of Type 5 entry are available in section 8.3.3.
(1) When an IPv4 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
will take out its destination address and uses it as an index to
search the MIP table. If a Type 5 entry is found, MIPv4/v6-TG will
process the datagram as follows.
o NAT-PT translates the datagram into IPv6 format.
Ma Expires December 28, 2008 [Page 38]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o MIP-ALG inserts a Destination Option extension header into the
IPv6 datagram, and fills the header with the source address of the
IPv6 datagram. Then MIP-ALG uses the source address as an index to
search Cached Bindings field, and takes out the care-of address
bound with the source address, and replaces the source address
with the care-of address.
o MIPv4/v6-TG sends the processed IPv6 datagram.
(2) When an IPv6 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
takes out its destination address and uses it as an index to search
the MIP table. If a Type 5 entry is found, MIPv4/v6-TG will process
the datagram as follows.
o MIP-ALG replaces the destination address of the datagram with the
IPv6 home address, which is taken from the type 2 routing header
of the datagram.
o NAT-PT translates the datagram into IPv4 format.
o MIP-ALG encapsulates the datagram in a new IPv4 datagram. The
source address of the outer IP header is copied from MIPv4 Message
Entrance field. Then MIP-ALG uses the destination address of the
inner IP header as an index to search Cached Bindings field, and
takes out the care-of address bound with the destination address,
and uses the care-of address as the destination address of the
outer IP header.
o MIPv4/v6-TG sends the processed IPv4 datagram.
8.4.6. The usage of Type 6 MIP Table Entry
The contents of Type 6 entry are available in section 8.3.4.
(1) When an IPv4 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
will take out its destination address and uses it as an index to
search the MIP table. If a Type 6 entry is found, MIPv4/v6-TG will
process the datagram as follows.
o NAT-PT translates the datagram into IPv6 format.
o MIP-ALG inserts a Type 2 routing header into the IPv6 datagram,
and fills the header with the destination address of the IPv6
datagram. Then MIP-ALG uses the destination address as an index to
search Cached Bindings field, and takes out the care-of address
bound with the destination address, and replaces the destination
address with the care-of address.
Ma Expires December 28, 2008 [Page 39]
Internet-Draft Mobility Support in IPv4/v6 June 2008
o MIPv4/v6-TG sends the processed IPv6 datagram.
(2) When an IPv6 datagram passes through MIPv4/v6-TG, MIPv4/v6-TG
takes out its destination address and uses it as an index to search
the MIP table. If a Type 6 entry is found, MIPv4/v6-TG will process
the datagram as follows.
o MIPv4/v6-TG replaces the source address of the datagram with the
IPv6 home address, which is taken from the Destination Option
extension header of the datagram.
o NAT-PT translates the datagram into IPv4 format.
o MIPv4/v6-TG sends the processed IPv4 datagram.
8.5. The Update of MIP Table Entries
When MN moves within network of the same IP version and acquires a
new care-of address, it will update the binding caches on HA and CN
(when CN is in IPv6 network) as well as the binding caches on the
related MIP table entry under some circumstances. Like the creation
of MIP table entries, the update of the entry is triggered by MIP
messages, such as Registration Request messages, BU messages,
HoTI/HoT messages and CoTI/CoT messages. In the creation process,
MIPv4/MIPv6 Message Entrance of the entry have been set. MIPv4/v6-TG
can access a corresponding entry through these entrances when it
intercepts a MIP message, and then updates the entry.
Note that when MN moves to a network of a different IP version, the
original entry (if any) becomes invalid and a new MIP table entry
should be created. This has been discussed in section 8.3.
8.5.1. The Update of Type 1 MIP Table Entries
The contents of Type 1 entry are available in section 8.3.1.
A Type 1 entry corresponds to a scenario where both HA and MN are
located in IPv4 network, and CN is located in IPv6 network. According
to RFC3344, MN does not register with CN. Therefore, MIPv4/v6-TG will
not receive any Registration Request message sent by MN. The contents
of the corresponding entry, except the Lifetime, do not need to be
updated.
According to RFC3775, CN also maintains a binding cache which should
be updated after MN acquires a new care-of address. In this scenario,
however, the destination address of datagrams sent by CN consists of
two parts: a 96-bit NAT-PT prefix and IPv4 care-of address. It is
Ma Expires December 28, 2008 [Page 40]
Internet-Draft Mobility Support in IPv4/v6 June 2008
only based on the 96-bit NAT-PT prefix that the datagrams are routed
to MIPv4/v6-TG. MIPv4/v6-TG will then send the datagrams to HA,
rather than MN. Therefore, as long as the binding cache on HA has
been updated, the datagrams sent by CN will be correctly delivered to
MN by HA.
8.5.2. The Update of Type 2 MIP Table Entries
The contents of a Type 2 MIP table entry are available in section
8.3.2.
A Type 2 entry corresponds to a scenario where both HA and CN are
located in IPv4 network, and MN is located in IPv6 network. The
update process of a Type 2 MIP table entry is as follows.
MIPv4/v6-TG intercepts a BU message, takes out the IPv6 home address
from the intercepted message, uses it as an index to search the MIP
table, and finds the related Type 2 entry.
If the State value is equal to 1, then the following steps will be
performed:
(1) MIP-ALG sets the fields of State to 0, and Lifetime to a value in
which the update of this entry must be accomplished.
(2) MIP-ALG takes CoAv4# from MIPv4 Message Entrance and uses it as
an index to search the NAT table. A mapping of CoAv4#<-->CoAv6 will
be found. Then MIP-ALG updates the mapping with the new CoAv6 carried
in the BU message.
(3) MIP-ALG generates a BA message. The source address and
destination address are copied from the destination address and
source address of the BU message. HoAv6* is also carried in the BA
message. This BA message will be routed to MNv6.
(4) MIPv4/v6-TG intercepts a HoTI message or a CoTI message, takes
out HoAv6* from the intercepted message as an index to search the MIP
table and finds this entry.
(5) MIP-ALG replies with a HoT message or CoT message.
(6) MIPv4/v6-TG intercepts a BU message, takes out the IPv6 home
address from the intercepted message, uses it as an index to search
the MIP table, and finds this entry.
(7) MIP-ALG updates Cached Bindings HoAv6*<-->CoAv6 with the new
CoAv6 carried in the BU message.
Ma Expires December 28, 2008 [Page 41]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(8) MIP-ALG generates BA message, the source address and destination
address are copied from the destination address and source address of
the BU message. HoAv6* is also carried in the BA message. This BA
message will be routed to MNv6.
(9) MIP-ALG sets the State field to 1, and then sets the Lifetime to
the lifetime of the binding.
If the State value is equal to 0, then the following steps will be
performed:
(1) MIP-ALG updates Cached Bindings HoAv6*<-->CoAv6 with the new
CoAv6 carried in the BU message.
(2) MIP-ALG generates BA message, the source address and destination
address are copied from the destination address and source address of
the BU message. HoAv6* is also carried in the BA message. This BA
message will be routed to MNv6.
(3) MIP-ALG sets the State field to 1, and then sets the Lifetime to
the lifetime of the binding.
8.5.3. The Update of Type 3 MIP Table Entries
The contents of a Type 3 MIP table entry are available in section
8.3.2.
A Type 3 entry corresponds to a scenario where HA is located in IPv4
network, while MN and CN are located in IPv6 network. The update
process of a Type 3 MIP table entry is as follows.
(1) MIPv4/v6-TG intercepts a BU message, takes out HoAv6* and uses it
as an index to search the MIP table, and finds a related Type 3 entry.
(2) MIP-ALG sets the fields of State to 0, and Lifetime to a value in
which the update of this entry must be accomplished.
(3) MIP-ALG takes CoAv4# from MIPv4 Message Entrance and uses it as
an index to search the NAT table. A mapping of CoAv4#<-->CoAv6 will
be found. Then MIP-ALG updates the mapping with the new CoAv6 carried
in the BU message.
(4) MIP-ALG updates Cached Bindings HoAv6*<-->CoAv6 with the new
CoAv6 carried in the BU message.
(5) MIP-ALG generates a BA message. The source address and
destination address are copied from the destination address and
Ma Expires December 28, 2008 [Page 42]
Internet-Draft Mobility Support in IPv4/v6 June 2008
source address of the BU message. HoAv6* is also carried in the BA
message. This BA message will be routed to MNv6.
(6) MIPv4/v6-TG intercepts a HoTI message, takes out HoAv6* from the
intercepted message as an index to search the MIP table and finds
this entry. This HoTI message will be then delivered to CNv6.
(7) MIPv4/v6-TG intercepts a HoT message, takes out HoAv6* from the
intercepted message as an index to search the MIP table and finds
this entry. This HoT message will be routed to MNv6 through tunneling.
The beginning point and endpoint of the tunnel are HAAv6* and CoAv6.
CoAv6 can be acquired from the Cached Bindings field of the entry.
(8) MIP-ALG sets the field of State to 1, and the Lifetime to the
lifetime of the binding.
8.5.4. The Update of Type 4 MIP Table Entries
The contents of a Type 4 MIP table entry are available in section
8.3.3.
A Type 4 entry corresponds to a scenario where HA is located in IPv6
network, while MN and CN are located in IPv4 network. The update
process of a Type 4 MIP table entry is as follows.
(1) MIPv4/v6-TG intercepts a Registration Request message, takes out
destination address from the intercepted message as an index to
search the MIP table and finds a related Type 4 entry.
(2) MIP-ALG sets the fields of State to 0, Lifetime to a value in
which the update of this entry must be accomplished, and Source Port
and Destination Port to the source port number and destination port
number of the intercepted message.
(3) MIP-ALG updates Cached Bindings HoAv4#<-->CoAv4 with the new
CoAv4 carried in the Registration Request message.
(4) MIP-ALG generates a BU message based on the Registration Request
message. The source address and destination address of the BU message
are CoAv6* and HAAv6, respectively. HoAv6 is carried in the message.
CoAv6* is acquired by adding a 96-bit NAT-PT prefix to CoAv4. HAAv6
and HoAv6 are acquired by checking the NAT table, using HAAv4# and
HoAv4# as the index. This BU message will be routed to HAv6.
(5) MIPv4/v6-TG intercepts a BA message replied from HAv6, takes out
HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
Ma Expires December 28, 2008 [Page 43]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(6) MIP-ALG generates a Registration Reply message, with HAAv4# and
CoAv4 as the source address and destination address. This message is
sent through UDP. The source port number and destination port number
are copied from the Destination Port and Source Port, respectively.
This message will be routed to MNv4.
(7) MIP-ALG sets the field of State to 1, and the Lifetime to the
lifetime of the binding.
8.5.5. The Update of Type 5 MIP Table Entries
The contents of a Type 5 MIP table entry are available in section
8.3.3.
A Type 5 entry corresponds to a scenario where both HA and CN are
located in IPv6 network, and MN is located in IPv4 network. The
update process of a Type 5 MIP table entry is as follows.
(1) MIPv4/v6-TG intercepts a Registration Request message, takes out
destination address from the intercepted message as an index to
search the MIP table and finds a related Type 5 entry.
(2) MIP-ALG sets the fields of State, HoTI/HoT and CoTI/CoT to 0,
MIPv6 Datagram Entrance to CoAv6*, Lifetime to a value in which the
update of this entry must be accomplished, and Source Port and
Destination Port to the source port number and destination port
number of the message. CoAv6* is acquired by adding a 96-bit NAT-PT
prefix to CoAv4. CoAv4 can be acquired from the source address field
of the Registration Request message.
(3) MIP-ALG generates a BU message based on the Registration Request
message. The source address and destination address of the BU message
are CoAv6* and HAAv6, respectively. HoAv6 is carried in the message.
CoAv6* is acquired by adding a 96-bit NAT-PT prefix to CoAv4. HAAv6
and HoAv6 are acquired by checking the NAT table, using HAAv4# and
HoAv4# as the index. This message will be routed to HAv6.
(4) MIPv4/v6-TG intercepts a BA message, takes out HoAv6 from the
intercepted message as an index to search the MIP table and finds
this entry.
(5) MIP-ALG generates a HoTI message and a CoTI message. The source
address and destination address of the HoTI message are HoAv6 and
CNAv6, respectively. The HoTI message is first sent to HAv6 through
reverse tunneling and then to CNv6. The beginning point and endpoint
of the tunnel are CoAv6* and HAAv6, respectively. The source address
and destination address of the CoTI message are CoAv6* and CNAv6,
Ma Expires December 28, 2008 [Page 44]
Internet-Draft Mobility Support in IPv4/v6 June 2008
respectively. CNAv6 is acquired by checking the NAT table, using
CNAv4# as the index.
(6) MIPv4/v6-TG intercepts a HoT message or a CoT message, takes out
HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
(7) MIP-ALG sets the fields of HoTI/HoT or CoTI/CoT to 1. When both
HoTI/HoT and CoTI/CoT fields become 1, MIP-ALG generates a BU message
with CoAv6* and CNAv6 as the source address and destination address.
This message will be routed to CNv6.
(8) MIPv4/v6-TG intercepts the BA message replied from CNv6, takes
out HoAv6 from the intercepted message as an index to search the MIP
table and finds this entry.
(9) MIP-ALG updates Cached Bindings HoAv4#<-->CoAv4 and HoAv6<--
>CoAv6* with the new CoAv4 and CoAv6*, respectively.
(10) MIP-ALG generates a Registration Reply message, with HAAv4# and
CoAv4 as the source address and destination address. This message is
sent through UDP. The source port number and destination port number
are copied from Destination Port and Source Port. This message will
be routed to MNv4.
(11) MIP-ALG sets the State field to 1, and then sets the Lifetime to
the lifetime of the binding.
8.5.6. The Update of Type 6 MIP Table Entries
The contents of a Type 6 MIP table entry are available in section
8.3.4.
A Type 6 entry corresponds to a scenario where both HA and MN are
located in IPv6 network, while CN is located in IPv4 network. The
update process of a Type 6 MIP table entry is as follows.
(1) MIPv4/v6-TG intercepts a HoTI message or a CoTI message, takes
out HoAv6 from the intercepted message as an index to search the MIP
table and finds a related Type 6 entry.
(2) MIP-ALG sets the State field to 0.
(3) MIP-ALG generates a HoT message or a CoT message. HoT message is
first sent to HA and then delivered to MNv6 through tunneling. CoT
message is sent directly to MNv6.
Ma Expires December 28, 2008 [Page 45]
Internet-Draft Mobility Support in IPv4/v6 June 2008
(4) MIPv4/v6-TG intercepts a BU message, takes out HoAv6 from the
intercepted message as an index to search the MIP table and finds
this entry.
(5) MIP-ALG updates the binding of HoAv6<-->CoAv6 with the new CoAv6
acquired from the BU message.
(6) MIP-ALG generates a BA message, the source address and
destination address of which are copied from the destination address
and source address of the BU message. This message will be routed
MNv6.
(7) MIP-ALG sets the State field to 1, and then sets the Lifetime to
the lifetime of the binding.
9. Protocol Constants
MAX_MIP_CREATE_TIMEOUT 30 seconds
In this protocol, the creation of MIP table entry should be
accomplished within an interval of 30 seconds after the creation
begins. If the creation is not accomplished after 30 seconds, the
unfinished MIP table entry will be deleted.
10. Security Considerations
10.1. Security policy for HA, MN and CN
This protocol places no additional requirements on HA, MN and CN.
Security policy for a particular entity depends on which network the
entity is located in. If it is located in IPv4 network, it should
meet the security requirements described in RFC3344. If it is located
in IPv6 network, it should meet the security requirements described
in RFC3775.
10.2. Security Considerations for MIPv4/v6-TG
As for MIPv4/v6-TG, the following aspects should be considered.
MIPv4/v6-TG is made up of NAT-PT and MIP-ALG. Security threats to
NAT-PT, such as DoS attacks, single point failure, are also potential
threats to MIPv4/v6-TG. There have been some methods to deal with
such threats. These methods can be applied to MIPv4/v6-TG. For
example, to avoid single point failure, a backup MIPv4/v6-TG can be
introduced.
Ma Expires December 28, 2008 [Page 46]
Internet-Draft Mobility Support in IPv4/v6 June 2008
On IPv4 network side, MIPv4/v6-TG acts as an IPv4 entity, while on
IPv6 network side, it acts as an IPv6 entity. MIPv4/v6-TG has to deal
with MIPv4 or MIPv6 messages and datagrams. When processing these
messages and datagrams, MIPv4/v6-TG also faces the same security
threats as any MIPv4 or MIPv6 entity. In RFC3344 and RFC3775, some
security policies have been introduced to protect MIPv4 registration
processes and communication processes. These security policies are
adopted in this protocol. For example, when MIPv4/v6-TG acts as a
MIPv6 entity, it should support the Return Routability Procedure.
When MIPv4/v6-TG acts as a MIPv4 entity, it should use Authentication
extension to protect the registration processes.
11. IANA Considerations
This protocol introduces three news messages: the extended
Registration Request message, the Agent Request message and the Agent
Reply message. These three messages have similar message format with
the Registration Request/Reply message in RFC3344, but with different
message Type values. In this document, the Type values of these three
messages are 4, 5 and 6, respectively. These values are to be
determined by IANA.
Ma Expires December 28, 2008 [Page 47]
Internet-Draft Mobility Support in IPv4/v6 June 2008
12. Normative References
[1] C. Perkins, Ed., "IP Mobility Support for IPv4", RFC 3344,
August 2002
[2] D. Johnson, C. Perkins and J. Arkko, "Mobility Support in IPv6",
RFC 3775, June 2004
[3] Nordmark, E., "Stateless IP/ICMP Translator (SIIT)", RFC 2765,
February 2000.
[4] Tsirtsis, G. and P. Srisuresh, "Network Address Translation -
Protocol Translation (NAT-PT)", RFC 2766, February 2000.
[5] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997.
Authors' Addresses
Zhengming Ma
Zhongshan University
Department of Electronics and Engineering, Zhongshan University, 135
Xingangxi Road, Guangzhou, P.R. China
Email: issmzm@mail.sysu.edu.cn
Qingyu Tan
Zhongshan University
Department of Electronics and Engineering, Zhongshan University, 135
Xingangxi Road, Guangzhou, P.R. China
Email: tqytan@163.com
Zheng Xiang
Zhongshan University
Department of Electronics and Engineering, Zhongshan University, 135
Xingangxi Road, Guangzhou, P.R. China
Email: rousseau2000@163.com
Ma Expires December 28, 2008 [Page 48]
Internet-Draft Mobility Support in IPv4/v6 June 2008
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Ma Expires December 28, 2008 [Page 49]