Download - ICMPv6 Error Message Types Informational Message Types.

Transcript
Page 1: ICMPv6 Error Message Types Informational Message Types.

ICMPv6

• Error Message Types• Informational Message Types

Page 2: ICMPv6 Error Message Types Informational Message Types.

ICMPv6 Header

1Type (1 Byte)

Code (1Byte)

Checksum (2 Bytes)

Data (Variable)

Page 3: ICMPv6 Error Message Types Informational Message Types.

ICMPv6 Error Message

• Destination Unreachable• Packet too Big• Time Exceeded• Parameter Problem

Page 4: ICMPv6 Error Message Types Informational Message Types.

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

Page 5: ICMPv6 Error Message Types Informational Message Types.

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

Page 6: ICMPv6 Error Message Types Informational Message Types.

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

Page 7: ICMPv6 Error Message Types Informational Message Types.

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

Page 8: ICMPv6 Error Message Types Informational Message Types.

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.

Page 9: ICMPv6 Error Message Types Informational Message Types.

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

Page 10: ICMPv6 Error Message Types Informational Message Types.

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).

Page 11: ICMPv6 Error Message Types Informational Message Types.

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.

Page 12: ICMPv6 Error Message Types Informational Message Types.

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.

Page 13: ICMPv6 Error Message Types Informational Message Types.

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

Page 14: ICMPv6 Error Message Types Informational Message Types.

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

Page 15: ICMPv6 Error Message Types Informational Message Types.

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

Page 16: ICMPv6 Error Message Types Informational Message Types.

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

Page 17: ICMPv6 Error Message Types Informational Message Types.

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