[1] ICMP (engl. Internet Control Messageing Protocol) je protokol sloja mreže koji obezbeđuje pojedine mehanizme oglašavanja. U suštini, ICMP obezbeđuje povratnu spregu u vezi problema u komunikaciji u okruženju. Primeri upotrebe ICMP-a su kada paket ne može da stigne do odredišta, ruter nema dovoljnu veličinu bafera da bi ga prosledio (korisnik da bi ga primio) ili kada ruter može da uputi poruku da postoji kraća ruta. U većini slučajeva, ICMP poruka se šalje kao odgovor na paket, bilo da ga šalje ruter koji se nalazi na putu datagrama ili host koji je odredište.
Iako je ICMP na istom sloju kao i IP u TCP/IP arhitekturi, on je ustvari korisnik IP-a. ICMP poruka se prvo napravi pa se onda predaje IP-u koji spaja poruku sa IP zaglavljem i onda prenosi rezultujući paket na već uobičajeni način. Iz razloga što se ICMP poruke šalju kao IP paketi, njihova isporuka nije garantovana niti je njihovo korišćenje pouzdano.
[2] Osnovna namena ICMP protokola je kontrola prenosa podataka do odredišta. Ovaj protokol ne osigurava pouzdani prenos podataka. Poruke se šalju samo kao odgovor na poslane IP pakete, na poslane ICMP pakete odgovor se ne šalje. U slučaju gubitka ICMP poruke, ne generiše se nova ICMP poruka o nastaloj grešci. ICMP poruke se šalju koristeći osnovno IP zaglavlje. Prvi oktet polja podataka IP paketa definiše tip ICMP poruke, čime je određen format ostatka paketa. Vrednost polja „Protocol“ za ICMP poruku je 1.
[3] Kao deo osnovne implementacije IP protokola javlja se još jedan protokol koji se naziva ICMP protokol ili Internet Control Message Protocol. ICMP je u stvari obavezni deo implementacije IP protokola jer nadopunjuje nedostatke samog IP protokola, tj. šalje obaveštenje o potencijalnom problemu koji se desio u procesu isporuke podataka.
Prevashodni cilj ICMP protokola je da nas obavesti o tome kakva se greška desila u situacijama kada uopšte nema komunikacije, a ne obaveštavanje o greškama u toku isporuke podataka i kada je komunikacija već uspostavljena.
[1] http://sr.wikipedia.org/sr-el/ICMP
[2] http://mreze.layer-x.com/s030300-0.html
[3] http://www.link-elearning.com/lekcija-ICMP-protokol_5716