ICMPv6

Internet Control Message Protocol for IPv6 is used by IPv6 nodes/hosts to report errors occurred during the datagram routing process and also provides diagnostic functions as ping. Defined in RFC 4443, this protocol uses and simplifies functions already defined in ICMPv4 and ARP. In order to avoid network overloading, no ICMP error message will be sent after that an error occurred on an ICMP error message.

ICMPv6 messages
Type Signification
1 Destination Unreachable
2 Packet Too Big
3 Time Exceeded
4 Parameter Problem
128 Echo Request
129 Echo Reply
130 Group Membership Query
131 Group Membership Report
132 Group Membership Reduction
133 Router Solicitation
134 Router Advertisement
135 Neighbor Solicitation
136 Neighbor Advertisement
137 Redirect

The following picture is the format of the error message. Type field informs about the nature of the message. Code field informs about what caused this message. And checksum allows to detect error.

Format of the error message

All error messages (type and code) here.

Operation

Reminder

Mobile Node (MN): mobile host that changes access point.
Home Agent (HA) : MN’s home network router.
Foreign Agent (FA) : visited network’s main router.
Correspondent Node (CN) : any node in a network, fixed or mobile.
Home Address (HoA): the mobile node’s home address.
Care-of address (CoA): current node’s address.
Access router (AR): current router that provides access point to the network.

In Mobile IPv6 there is no FA. Indeed this mobile protocol requires every mobile node to support IPv6 decapsulation, address autoconfiguration and neighbor discovery. The CN uses IPv6 routing header and not IP encapsulation. It naturally supports Route Optimization.

Specific internal functions

Binding Update: allows an MN to let its HA or any other CN know about its new care-of address.
Binding Acknowledgement: acknowledgement of the receipt of a BU.
Binding Request: any node can use it to request an MN to send a BU with its care-of address.

MIPv6 Packets Exchanges

The global scheme of a Mobile IPv6 communication is the same as the one described on the Mobile IP part. We now focus on packets exchanges process illustrated by the figure above. Those packets exchanges occur after a movement from the MN.

The movement detection is automatic thanks to the standard IPv6 auto-configuration mechanism (RFC 4862).

This connection to a new network associates a new CoA to the MN with the prefix of the AR.

Then a BU is sent to its HA in order to update its new binding information such as its HoA and CoA.

The HA sets up an IPv6 tunnel between itself and the MN. This action fills up its Binding Cache (data structure) with mapping information linking its HoA to its CoA. Home Agent sends back a BA to confirm the achievement of the binding phase.

Finally the MN sends an ICMPv6 Echo request to the CN; this message is sent through the tunnel to its HA which decapsulates the message and forwards it to the CN. The correspondent answers to the MN by an ICMPv6 Echo Reply through the HA and the tunnel too.