Windows 7 / Networking

Mobile IPv6 Message Exchanges

Before understanding the various processes used for Mobile IPv6, it is important to understand the different sets of messages and data exchanged between mobile nodes and correspondent nodes and between mobile nodes and home agents. This section examines the following types of Mobile IPv6 message exchanges:

  • Data between a mobile node and a correspondent node
  • Binding maintenance
  • Home Agent Discovery
  • Mobile Prefix Discovery

Data Between a Mobile Node and a Correspondent Node

Data between a mobile node that is away from home and a correspondent node can be sent in the following ways:

  • Indirect delivery via Home Agent because there is no binding (bidirectional tunneling)
  • Direct delivery because there is a binding (route optimization)

Indirect Delivery via the Home Agent

When a correspondent node either does not yet have a binding for the mobile node (correspondent registration is in progress) or does not support Mobile IPv6, it sends packets to the mobile node using only its home address. These data packets are forwarded to the home address of the mobile node.

Figure below shows the correspondent node sending data packets to a mobile node that is away from home via indirect delivery.

Note:
In Figure below and subsequent figures, CNA is the correspondent node's address, CoA is the mobile node's care-of address, HoA is the mobile node's home address, and HAA is the home agent's global address.
Data packets sent by a correspondent node to the mobile node's home address

These packets contain the following:

  • IPv6 header:
    In the IPv6 header, the source address is the correspondent node address and the destination address is the mobile node's home address. Because a binding cache entry does not exist, the correspondent node sends the packet as if the mobile node were physically attached to the home link.
  • Upper layer PDU:
    The upper-layer PDU contains the Application layer data sent from the correspondent node to the mobile node.

When the home agent intercepts a packet sent to a mobile node's home address, it tunnels the packet to the mobile node using the form shown in Figure below.

Intercepted packet tunneled to a mobile node by its home agent

These packets contain the following:

  • IPv6 header (outer): In the outer IPv6 header, the source address is the home agent's address on the home link and the destination address is the mobile node's care-of address.
  • IPv6 header (inner): In the inner IPv6 header, the source address is the correspondent node's address and the destination address is the mobile node's home address.
  • Upper-layer PDU: The upper-layer protocol data unit (PDU) contains the Application layer data sent from the correspondent node to the mobile node at its home address. From the Application layer perspective, the data was addressed from the correspondent node address to the home address.

Optionally, the home agent can protect the packet by using IPsec ESP. In this case, an ESP header is placed between the outer IPv6 header and the inner IPv6 header (not shown in Figure above).

When the correspondent registration process is not yet complete or the correspondent node is not Mobile IPv6-capable, the mobile node that is away from home sends packets to the correspondent node by tunneling them to the home agent, as shown in Figure below.

Tunneled packets to a home agent

These packets contain the following:

  • IPv6 header (outer) In the outer IPv6 header, the source address is the mobile node's care-of address and the destination address is the home agent's address on the home link.
  • IPv6 header (inner) In the inner IPv6 header, the source address is the mobile node's home address and the destination address is the correspondent node's address.
  • Upper-layer PDU The upper-layer PDU contains the Application layer data sent from the mobile node to the correspondent node.

Optionally, the mobile node can protect the packet by using IPsec ESP. In this case, an ESP header is placed between the outer IPv6 header and the inner IPv6 header (not shown in Figure below).

The home agent forwards tunneled data packets from a mobile node that is away from home to a correspondent node using the form shown in Figure below.

Forwarded packet from a home agent to a correspondent node

These packets contain the following:

  • IPv6 header The source address is the mobile node's home address and the destination address is the correspondent node's address.
  • Upper-layer PDU The upper-layer PDU contains the Application layer data sent from the mobile node to the correspondent node.

Direct Delivery

When the mobile node is away from home, it can choose to send data either from its home address using Mobile IPv6 or from its care-of address without using Mobile IPv6, based on the following:

  • For Transport layer connection data (such as Transmission Control Protocol [TCP] sessions) that is long-term and being sent to a correspondent node with which it has completed correspondent registration, the mobile node sends the data from its home address and includes the Home Address option.
  • For short-term communication that does not require a logical connection, such as the exchange of Domain Name System (DNS) Name Query Request and Name Query Response messages for DNS name resolution, the mobile node can send data from its care-of address and not use a Home Address option. In this case, the mobile node is sending and receiving packets normally from its care-of address.

Figure below shows data packets sent directly from the mobile node to the correspondent node when the mobile node has a binding update list entry for the correspondent node's address.

Data sent from the mobile node to the correspondent node

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the mobile node's care-of address and the destination address is the correspondent node's address. By using the care-of address rather than the home address, ingress filtering by the foreign-link router does not prevent the packet from being forwarded.
  • Destination Options header: In the Destination Options extension header, the Home Address option contains the home address of the mobile node. When the correspondent node processes the Home Address option, it replaces the source address of the packet with the home address.
  • Upper-layer PDU: The upper-layer (PDU contains the Application layer data sent from the mobile node to the correspondent node. From the Application layer perspective, the data was addressed from the home address to the correspondent node address.
Note:
The drawings in this article assume that the data packets being sent by the mobile node and the correspondent node do not contain additional IPv6 extension headers.

If the correspondent node is also a mobile node that is away from home, the destination address in the IPv6 header is set to the correspondent node's care-of address and the packet includes a Type 2 Routing header with the correspondent node's home address. The Type 2 Routing header is placed before the Destination Options header. This is not shown in Figure above.

Figure beloe shows the form of data packets sent from the correspondent node to the mobile node when the correspondent node has a binding cache entry for the mobile node's home address.

Data sent from the correspondent node when a binding cache entry for the mobile node is present

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the correspondent node's address and the destination address is the mobile node's care-of address. By using the care-of address rather than the home address, the packet is delivered to the mobile node's current location on an IPv6 network.
  • Type 2 Routing header: In the Type 2 Routing header, the Home Address field is set to the mobile node's home address. When the mobile node receives the packet, it removes the Type 2 Routing header and replaces the care-of address with the home address as the destination address in the IPv6 header. When the packet is passed to the upper-layer protocol, it appears to have been addressed to the mobile node's home address.
  • Upper-layer PDU: The upper-layer PDU contains the Application layer data sent from the correspondent node to the mobile node. From the Application layer perspective, the data was addressed from the correspondent node address to the home address.

If the correspondent node is also a mobile node that is away from home, the source address in the IPv6 header is set to the correspondent node's care-of address and the packet includes a Destination Options header with the Home Address option containing the correspondent node's home address. The Destination Options header is placed after the Type 2 Routing header. This is not shown in Figure above.

Binding Maintenance

Bindings with the home agent and the correspondent node must be created, refreshed, and when the mobile node returns home, removed. Bindings must be maintained with the home agent and with correspondent nodes.

Home-Agent Binding Maintenance

Figure below shows Binding Update messages sent from the mobile node to the home agent for home registration.

The packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the mobile node's care-of address and the destination address is the home agent's address. By using the care-of address rather than the home address, ingress filtering by the foreign-link router does not prevent the packet from being forwarded.
  • Destination Options header: The Destination Options extension header contains the Home Address option. By including the Home Address option, the home address for the binding is indicated to be the home agent.
  • ESP header: An IPsec ESP header is used to provide data integrity protection, data origin authentication, data confidentiality, and replay protection for the Binding Update message.
  • Mobility header: The Mobility header contains the Binding Update message with the Home Registration flag set to 1, indicating that the sender is requesting that the receiver be the home agent for the mobile node. The Acknowledgement flag is also set to 1 to request a binding acknowledgement from the home agent.
Binding updates sent from the mobile node to the home agent

Binding maintenance messages sent from the home agent to the mobile node are either binding acknowledgments or binding refresh requests and are shown in Figure below.

Binding maintenance packets sent from the home agent to the mobile node

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the home agent's address and the destination address is the mobile node's care-of address.
  • Type 2 Routing header: The Type 2 Routing header contains the mobile node's home address. The mobile node removes the Type 2 Routing header and logically replaces the care-of address with the home address as the destination in the IPv6 header.
  • ESP header: An ESP header is used to provide data integrity protection, data origin authentication, replay protection, and data confidentiality for the binding acknowledgments or binding refresh requests.
  • Mobility header: The Mobility header contains either a Binding Acknowledgement message (sent in response to a binding update) or a Binding Refresh Request message.

Correspondent Node Binding Maintenance

Figure below shows Binding Update messages sent from the mobile node to the correspondent node as part of correspondent registration.

Binding updates sent from the mobile node to the correspondent node

These packets contain the following:

  • IPv6 header In the IPv6 header, the source address is the mobile node's care-of address and the destination address is the correspondent node's address. By using the care-of address rather than the home address, ingress filtering by the foreign link router does not prevent the packet from being forwarded.
  • Destination Options header The Destination Options extension header contains the Home Address option. By including the Home Address option, the home address for the binding is indicated to be the correspondent node.
  • Mobility header The Mobility header contains the Binding Update message, which contains the cryptographic proof that the mobile node has knowledge of the binding management key derived from the Return Routability procedure performed with the correspondent node.

If the correspondent node is also a mobile node that is away from home, the destination address in the IPv6 header is set to the correspondent node's care-of address and the packet includes a Type 2 Routing header with the correspondent node's home address. The Type 2 Routing header is placed before the Destination Options header. This is not shown in Figure below.

Binding maintenance messages sent from the correspondent node to the mobile node are either binding acknowledgments or binding refresh requests and are shown in Figure below.

Binding maintenance packets sent from the correspondent node to the mobile node

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the correspondent node's address and the destination address is the mobile node's care-of address.
  • Type 2 Routing header: In the Type 2 Routing header, the Home Address field is set to the mobile node's home address. When the mobile node receives the packet, it removes the Type 2 Routing header and replaces the care-of address with the home address as the destination address in the IPv6 header.
  • Mobility header: The Mobility header contains either a Binding Acknowledgement message (if a received binding request had the Acknowledgement flag set to 1) or a Binding Refresh Request message.

If the correspondent node is also a mobile node that is away from home, the source address in the IPv6 header is set to the correspondent node's care-of address and the packet includes a Destination Options header with a Home Address option containing the correspondent node's home address. The Destination Options header is placed after the Type 2 Routing header. This is not shown in Figure above.

Home Agent Discovery

When the mobile node sends an ICMPv6 Home Agent Address Discovery Request message, it has the form shown in Figure below.

ICMPv6 Home Agent Address Discovery Request message sent from the mobile node

These packets contain the following:

  • IPv6 header In the IPv6 header, the source address is the care-of address of the mobile node and the destination address is the Mobile IPv6 Home Agents anycast address corresponding to the home link prefix.
  • ICMPv6 Home Agent Address Discovery Request message The mobile node uses the ICMPv6 Home Agent Address Discovery Request message to query the home link for a list of home agents. For more information, see the "ICMPv6 Messages for Mobile IPv6" section in this article.

When the home agent sends an ICMPv6 Home Agent Address Discovery Reply message in response to an ICMPv6 Home Agent Address Discovery Request message, it has the form shown in Figure below.

ICMPv6 Home Agent Address Discovery Reply message sent from the home agent

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the home agent's address and the destination address is the mobile node's care-of address.
  • ICMPv6 Home Agent Address Discovery Reply message The ICMPv6 Home Agent Address Discovery Reply message contains the list of home agents on the home link in order of preference. For more information, see the "ICMPv6 Messages for Mobile IPv6" section in this article.

Mobile Prefix Discovery

When the mobile node sends an ICMPv6 Mobile Prefix Solicitation message, it has the form shown in Figure below.

ICMPv6 Mobile Prefix Solicitation message sent from the mobile node

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the care-of address of the mobile node and the destination address is the home agent's global address on the home link.
  • Destination Options header: The Destination Options extension header contains the Home Address option. By including the Home Address option, the home address for the binding is indicated to the home agent.
  • ESP header: An ESP header is used to provide data confidentiality, data integrity protection, data origin authentication, and replay protection for the ICMPv6 Mobile Prefix Solicitation message.
  • ICMPv6 Mobile Prefix Solicitation message: The mobile node uses the ICMPv6 Mobile Prefix Solicitation message to query its home agent for the current home subnet prefix. For more information, see the "ICMPv6 Messages for Mobile IPv6" section in this article.

When the home agent sends an ICMPv6 Mobile Prefix Advertisement message in response to a Mobile Prefix Solicitation message or periodically to refresh the mobile node's home address, it has the form shown in Figure below.

ICMPv6 Mobile Prefix Advertisement message sent from the mobile node

These packets contain the following:

  • IPv6 header: In the IPv6 header, the source address is the home agent's global address on the home link and the destination address is the mobile node's care-of address.
  • Type 2 Routing header: The Type 2 Routing header contains the mobile node's home address. The mobile node removes the Type 2 Routing header and logically replaces the care-of address with the home address as the destination in the IPv6 header.
  • ESP header: An ESP header is used to provide data confidentiality, data integrity protection, data origin authentication, and replay protection for the ICMPv6 Mobile Prefix Advertisement message.
  • ICMPv6 Mobile Prefix Advertisement message: The ICMPv6 Mobile Prefix Solicitation message contains the current home subnet prefix. For more information, see the "ICMPv6 Messages for Mobile IPv6" section in this article.
[Previous] [Contents] [Next]