100% found this document useful (2 votes)
282 views43 pages

Internet Control Message Protocol (ICMP)

ICMP is used for error reporting and network management. It encapsulates ICMP packets and contains message types like echo request/reply for reachability checking, and destination unreachable, time exceeded, and parameter problem for error reporting. ICMP provides functions like querying hosts, measuring network performance, and assisting in dynamic routing.

Uploaded by

Viji Gopal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
282 views43 pages

Internet Control Message Protocol (ICMP)

ICMP is used for error reporting and network management. It encapsulates ICMP packets and contains message types like echo request/reply for reachability checking, and destination unreachable, time exceeded, and parameter problem for error reporting. ICMP provides functions like querying hosts, measuring network performance, and assisting in dynamic routing.

Uploaded by

Viji Gopal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 43

Internet Control

Message Protocol
(ICMP)

Position of ICMP in the network layer

Encapsulation of ICMP packet

TYPES OF ICMP MESSAGES

Type
0
3
3
3
4
5
8
9/10
11
12
13/14
17/18

Meaning
echo reply
network unreachable
host is unreachable
port is unreachable
source quench
redirection
echo request
router discovery/advertisement
time exceeded
parameter problem
time stamp request/reply
address mask request/reply

General format of ICMP messages

ERROR
REPORTING
ICMP always reports error messages to
the original source.

Error-reporting messages

Important points about ICMP error messages:

1. No ICMP error message, for a datagram


carrying
an
ICMP
error
message.
2. No ICMP error message for a fragmented
datagram that is not the first fragment.
3. No ICMP error message will be generated for a
datagram
having
a
multicast
address.
4. No ICMP error message for a datagram
with a special address such as 127.0.0.0
or 0.0.0.0.

Contents of data field for error messages

Destination-unreachable format

Destination-unreachable messages with codes 2 or 3


(port/protocol unreachable)can be created only by
the
destination
host.
Other destination-unreachable messages can be
created only by routers.

A router cannot detect all problems that


prevent the delivery of a packet.
Source-quench message
There is no flow-control mechanism
in the IP protocol.
Source-quench message add a kind of flow
control to the IP

Source-quench format

A source-quench message informs the source that a


datagram has been discarded due to congestion in a
router or the destination host.
The source must slow down the sending of datagrams
until the congestion is relieved.

One source-quench message should be sent for each


datagram that is discarded due to congestion.

Time-exceeded message
Whenever a router receives a datagram
with a time-to-live value of zero, it discards
the datagram and sends a time-exceeded
message to the original source.
When the final destination does not receive
all of the fragments in a set time, it
discards the received fragments and sends
a time-exceeded message to the original
source.

In a time-exceeded message,
code 0 is used only by routers
to show that the value of the time-to-live
field is zero.
Code 1 is used only by the destina-tion
host to show that not all of the fragments
have arrived within a set time.

Time-exceeded message format

Code 0: Time to live


Code 1: Fragmentation

Parameter-problem message
A router or the destination host discovers that an
ambiguous or missing value in any field of the
datagram, it discards the datagram and sends a
parameter-problem message to the source
A parameter-problem message can be created by a
router or the destination host.

10

Parameter-problem message format

Code 0: Main header problem


Code 1: Problem in the option field

11

Redirection concept

A host usually starts with a small


routing table that is gradually
augmented and updated.
One of the tools to accomplish
this is the redirection message.
A redirection message is sent from a
router to a host on the same local
network.

12

Redirection message format

Code 0:
Code 1:
Code 2:
Code 3:

Network specific
Host specific
Network specific (specified service)
Host specific (specified service)

13

Query messages

An echo-request message can be


sent by a host or router.
An echo-reply message is sent by the
host or router which receives
an echo-request message.

Echo-request and echo-reply messages


can be used by network managers to
check the operation of the IP protocol.

Echo-request and echo-reply messages


can test the reachability of a host. This
is usually done by invoking the ping
command.

14

Echo-request and echo-reply message format

Ping command can use theses messages.

15

Timestamp-request and
timestamp-reply message format

Sending time = value of receive timestamp value of original timestamp


Receiving time = time the packet returned value of transmit timestamp

Round-trip time = sending time +


receiving time

Timestamp-request and
timestamp-reply messages can be used
to calculate the round-trip time
between a source and a destination
machine even if their
clocks are not synchronized.

Given the following information:

Value of original timestamp: 46


Value of receive timestamp: 59
Value of transmit timestamp: 60
Time the packet arrived: 67

We can calculate:
Sending time = 59 - 46 = 13 milliseconds

Receiving time = 67 - 60 = 7 milliseconds


Round-trip time = 13 + 7 = 20 milliseconds

Given the actual one-way time,


Time difference = receive timestamp -

(original timestamp field


+ one-way time duration)
We have:

Time difference = 59 - (46 + 10)


=3

The timestamp-request and


timestamp-reply messages
can be used to synchronize two
clocks in two machines if the
exact one-way time duration is
known.

16

Address Mask-request and


mask-reply message format

Used to obtain the subnet mask of a host

17

Router solicitation message format

18

Router advertisement message format

CHECKSUM

19

Example of checksum calculation

Debugging tools
ping
traceroute

20

ICMP package

42

TCP/IP Protocol Suite

43

TCP/IP Protocol Suite

You might also like