Talk:Internet Control Message Protocol

Is it true that ICMP is a transport layer protocol?
In CISCO CCNA Curriculum materials is correct answer for question "At which layer of the OSI model does ICMP operate?" is network layer —Preceding unsigned comment added by 85.70.144.73 (talk) 17:52, 17 March 2008 (UTC)


 * The lead section of the article recently accumulated some controversial statements on this subject, such as a rewrite of this old paragraph:


 * ICMP differs in purpose from TCP and UDP in that it is not used to send and receive data between end systems. It is usually not used directly by user network applications, with some notable exceptions being the ping tool and traceroute.


 * into this paragraph on 3 April 2008:


 * From a strictly technical perspective, ICMP functions at the transport layer of IP. However, it differs in purpose from other transport protocols such as TCP and UDP in that it is typically not used to ::send and receive data between end systems. It is usually not used directly by user network applications, with some notable exceptions being the ping tool and traceroute. As such, ICMP is often ::considered to be a "network" layer protocol.


 * and this additional final paragraph on 4 May 2008:


 * ICMP can "never" be considered a Network Layer protocol. If it were to be considered so, then, it will have to rely on another transport layer protocol to carry its data i.e. Its data will become the payload for a transport layer protocol, as in the case of IP. ICMP is a Transport layer protocol just like TCP and UDP.


 * A user deleted that contentious paragraph on 5 May 2008, promptly enough, but at the same time amplified the controversial conclusion:


 * As such, ICMP is commonly (but incorrectly) considered to be a "network" layer protocol.


 * Now it may be true that some analysts of how the Internet works after the fact have working definitions of "network layer" "Internet layer" and "transport layer" where ICMP fits in the "transport layer" and no other. However, ICMP was part of the Internet layer by definition, when it was built into the Internet. Understanding why it was in that layer would be part of understanding the historical development of the Internet. If what is commonly considered its "layer" has changed, that should be supported with some reference rather than argued originally, or worse, merely asserted.


 * The company Network Sorcery provides an online guide to Internet protocols that has a simple scheme for classifying protocols into layers that has apparently been favorably received by at least some technical writers and students. Network layer protocols have Ethertype numbers. Transport layer protocols have IP protocol numbers. Application layer protocols have port numbers. Unfortunately, that puts some protocols that have conventionally been considered in the network layer into the transport layer, including ICMP.


 * According to information, the OSI model has seven layers, then a conventional explanation of the TCP/IP model in terms of five layers developed. Meanwhile, the article Internet protocol suite currently has a chart that provides a nuanced view of only four layers, and historical references to support that view. It puts ICMP in the top of three sublayers in the Internet layer.


 * The difficulty that some have with this may be that "Internet layer" and "network layer" seem to be synonymous, yet what's in the "Internet layer" may be a matter of history and specific technical implementation, while what's in the "network layer" vs. in the "transport layer" may be a matter of classification according to information systems theory.
 * --Sonny Moonie (talk) 09:58, 17 May 2008 (UTC)


 * I think the important point is that the CCNA referes to the OSI modle, but here we refere to the TCP/IP-5-Layer Model. -- AssetBurned (talk) 16:29, 20 May 2008 (UTC)


 * ICMP is one of the layer 3 Protocol Network layer. Not a transport layer protocol Goodtiming1788 (talk) 04:42, 14 September 2018 (UTC)

Transport layer control protocol
ICMP is part of the transport layer, but the Internet protocol suite sidebar lists it as being in the network layer.

ICMP above IP
I thought so as well, so why didn't anybody fix it before? fixed now.

Is this still fixed??? Just checked and ICMP is listed at the internet layer. Very confusing!!!

Bad packet structure
how come the source address and destination address in the packet structure table are only 16 bits long ? ips are 32 bits long. see also IP packet format