Browse Prior Art Database

Internet Control Message Protocol (RFC0792)

IP.com Disclosure Number: IPCOM000003841D
Original Publication Date: 1981-Sep-01
Included in the Prior Art Database: 2000-Sep-13
Document File: 15 page(s) / 28K

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

J. Postel: AUTHOR

Abstract

The Internet Protocol (IP) [1] is used for host-to-host datagram service in a system of interconnected networks called the Catenet [2]. The network connecting devices are called Gateways. These gateways communicate between themselves for control purposes via a Gateway to Gateway Protocol (GGP) [3,4]. Occasionally a gateway or destination host will communicate with a source host, for example, to report an error in datagram processing. For such purposes this protocol, the Internet Control Message Protocol (ICMP), is used. ICMP, uses the basic support of IP as if it were a higher level protocol, however, ICMP is actually an integral part of IP, and must be implemented by every IP module.

This text was extracted from a ASCII document.
This is the abbreviated version, containing approximately 10% of the total text.

Network Working Group J. Postel

Request for Comments: 792 ISI

September 1981

Updates: RFCs 777, 760

Updates: IENs 109, 128

INTERNET CONTROL MESSAGE PROTOCOL

DARPA INTERNET PROGRAM

PROTOCOL SPECIFICATION

Introduction

The Internet Protocol (IP) [1] is used for host-to-host datagram

service in a system of interconnected networks called the

Catenet [2]. The network connecting devices are called Gateways.

These gateways communicate between themselves for control purposes

via a Gateway to Gateway Protocol (GGP) [3,4]. Occasionally a

gateway or destination host will communicate with a source host, for

example, to report an error in datagram processing. For such

purposes this protocol, the Internet Control Message Protocol (ICMP),

is used. ICMP, uses the basic support of IP as if it were a higher

level protocol, however, ICMP is actually an integral part of IP, and

must be implemented by every IP module.

ICMP messages are sent in several situations: for example, when a

datagram cannot reach its destination, when the gateway does not have

the buffering capacity to forward a datagram, and when the gateway

can direct the host to send traffic on a shorter route.

The Internet Protocol is not designed to be absolutely reliable. The

purpose of these control messages is to provide feedback about

problems in the communication environment, not to make IP reliable.

There are still no guarantees that a datagram will be delivered or a

control message will be returned. Some datagrams may still be

undelivered without any report of their loss. The higher level

protocols that use IP must implement their own reliability procedures

if reliable communication is required.

The ICMP messages typically report errors in the processing of

datagrams. To avoid the infinite regress of messages about messages

etc., no ICMP messages are sent about ICMP messages. Also ICMP

messages are only sent about errors in handling fragment zero of

fragemented datagrams. (Fragment zero has the fragment offeset equal

zero).

September 1981

RFC 792

Message Formats

ICMP messages are sent using the basic IP header. The first octet of

the data portion of the datagram is a ICMP type field; the value of

this field determines the format of the remaining data. Any field

labeled "unused" is reserved for later extensions and must be ze...