ICMPv6
• Error Message Types• Informational Message Types
ICMPv6 Header
1Type (1 Byte)
Code (1Byte)
Checksum (2 Bytes)
Data (Variable)
ICMPv6 Error Message
• Destination Unreachable• Packet too Big• Time Exceeded• Parameter Problem
Destination Unreachable• A Destination Unreachable message is generated if
an IP datagram cannot be delivered.• A Type field with the value 1 identifies this message.
1Type (1 Byte)
Code (1Byte)
Checksum (2 Bytes)
Unused (4 Bytes)
Data (Variable)
Must be zero ignored by receiver
Code:0: no route to destination1: communication administratively prohibited2: address unreachable4: port unreachable
Packet Too Big• If a router cannot forward a packet because it is larger than the MTU of
the outgoing link, it will generate a Packet Too Big message.
• This ICMPv6 message type is used as part of the Path MTU discovery process that I discuss later in this chapter.
2Type (1 Byte)
0Code (1Byte)
Checksum (2 Bytes)
MTU (4 Bytes)
Data (Variable)
The Maximum transmission unit of the next hop link
Time Exceeded• When a router forwards a packet, it always
decrements the hop limit by one.
• The hop limit makes sure that a packet does not endlessly travel through a network.
• If a router receives a packet with a hop limit of 1 and decrements the limit to 0, it discards the packet, generates a Time Exceeded message with a code value of 0, and sends this message back to the source host
Time Exceeded
3Type (1 Byte)
Code (1Byte)
Checksum (2 Bytes)
Unused (4 Bytes)
Data (Variable)
Must be zero ignored by receiver
Code:0: Hop limit exceeded in transit1: Fragment reassembly time exceeded
Parameter Problem
• If an IPv6 node cannot complete the processing of a packet because it has a problem identifying a field in the IPv6 header or in an Extension header.
• it must discard the packet, and it should send an ICMP Parameter Problem message back to the source of the problem packet.
Parameter Problem
4Type (1 Byte)
Code (1Byte)
Checksum (2 Bytes)
Pointer (4 Bytes)
Data (Variable)
Identify the offset where error was decided
Code:0: Erroneous header field encountered1: Unrecognized next header type encountered2: Unrecognized IPv6 option encountered
ICMP Informational Messages
• In RFC 4443, two types of informational messages are defined: the Echo Request and the Echo Reply messages.
• Other ICMP informational messages are used for Path MTU Discovery and Neighbor Discovery.
• The Echo Request and Echo Reply messages are used for one of the most common TCP/IP utilities: Packet INternet Groper (ping).
Echo Request Message128
0Code (1Byte)
Checksum (2 Bytes)
Sequence No (2 Bytes)
Identifier (2 Bytes)
Used to Match echo reply to this request may be zero
Used to Match echo reply to this request may be zero
Type (1 Byte)
Data (Variable)
Zero or more bytes of arbitrary data
• The Identifier and Sequence Number fields are used to match requests with replies.•The reply must always contain the same numbers as the request.
Echo Reply Message129
0Code (1Byte)
Checksum (2 Bytes)
Sequence No (2 Bytes)
Identifier (2 Bytes)
The SN from the invoking echo request
The identifier from the invoking echo request
Type (1 Byte)
Data (Variable)
Data from the invoking echo request
• The Identifier and Sequence Number fields must match the fields in the request•The reply must always contain the same numbers as the request.
Neighbor Discovery (ND)
• combines Address Resolution Protocol (ARP) and ICMP Router Discovery and Redirect
• With IPv4, we have no means to detect whether a neighbor is reachable
• With the Neighbor Discovery protocol, a Neighbor Unreachability Detection (NUD) mechanism has been defined
• Duplicate IP address detection (DAD) has also been implemented
Neighbor Discovery (ND)
• For autoconfiguration of IPv6 addresses• To determine network prefixes, routes and other
configuration information• For Duplicate IP address detection (DAD)• To determine layer two addresses of nodes on the same link• To find neighboring routers that can forward their packets• To keep track of which neighbors are reachable and which are
not • To detect changed link-layer addresses
Router Solicitation and Router Advertisement
• Routers send out Router Advertisement messages at regular intervals
• Hosts can request Router Advertisements by issuing a Router Solicitation message
• This will trigger routers to issue Router Advertisements immediately, outside of the regular interval
Neighbor Solicitation and Neighbor Advertisement
• This pair of messages fulfills two functions: the link-layer address resolution that is handled by ARP in IPv4, and the Neighbor Unreachability Detection mechanism
Path MTU Discovery
• With IPv6, routers do not fragment packets anymore• Path MTU discovery tries to ensure that a packet is sent using
the largest possible size that is supported on a certain route• The Path MTU is the smallest link MTU of all links from a
source to a destination• a host assumes that the Path MTU is the same as the MTU of
the first hop link and it uses that size.• If the packet is too big for a certain router along the path to
deliver the packet to the next link, the router discards the packet and sends back an ICMPv6 Packet Too Big message
Top Related