Why is the ICMP protocol considered to run at layer 3 on the wikipedia page ? (same layer as IP) when the ICMP protocol data is a payload of the IP packet?

this is the article on wikipedia that states that ICMP is in the same layer as IP protocol. I am confused about this. https://en.wikipedia.org/wiki/Internet_protocol_suite


ICMP is an IP protocol, like TCP and UDP. But it is not a higher layer protocol that travels inside a TCP or UDP datagram, from one ip:port tuple to another. So its not really a 'payload' in the IP sense

  • So therefore wouldn't it be normal that ICMP be consideret at the same level as TCP as both of them run over IP ? Tcp is the payload of the IP the same way the ICMP is. It just does not has anything encapsulated from above like TCP or UDP does. – yoyo_fun Mar 15 '16 at 17:44
  • 1
    Inside the IP header is a protocol byte that declares what protocol the packet is supporting. For IPv4, protocol type 1 is ICMP, protocol type 6 is TCP, and protocol type 17 is UDP. IPv6 has different numbers. So all three are in the same 'layer' in terms of packet structure. Wiki is probably labeling it based functionality rather than structure. ICMP is used to manage transport, so it could be considered a lower layer – infixed Mar 15 '16 at 17:56
  • ICMP is IP as IP is IP, they're at the same level. You're trying to make it a child of IP when it's a sibling. – Fiasco Labs Mar 15 '16 at 18:14
  • I am to lazy to fact check your comments, I have enough actual answers to fact check, so your comment(s) should be part of your answer. Comments are subject to removal. – Ramhound Mar 15 '16 at 18:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.