Sari la conținut

Internet Control Message Protocol

De la Wikipedia, enciclopedia liberă

Internet Control Message Protocol (abreviat ICMP) este un protocol din suita TCP/IP care folosește la semnalizarea și diagnosticarea problemelor din rețea. Protocolul este definit in rfc792. Mesajele ICMP sunt încapsulate în interiorul pachetelor IP.

Exemple de utilizare

Probabil cele mai utilizate programe care se bazează pe ICMP sunt ping și traceroute.

Ping trimite mesaje ICMP de tip echo request ("cerere de ecou") către calculatorul țintă și așteaptă de la acesta mesaje ICMP de tip echo reply ("răspuns de tip ecou"). Dacă acestea nu sunt primite, se poate presupune că ceva este în neregulă cu conexiunea dintre cele două calculatoare.

Toate pachetele IP au în antet un câmp special numit TTL (Time To Live). Acest câmp este decrementat de fiecare dată când trece printr-un ruter. Pentru a evita buclele de routare, în momentul în care câmpul TTL ajunge la zero pachetul nu este trimis mai departe. În această situație, router-ul care a decrementat câmpul TTL la zero trimite către calculatorul-origine al pachetului (adresa acestuia se află tot în prologul IP) un mesaj ICMP de tip time exceeded. Programul traceroute profită de acest mecanism și trimite către calculatorul țintă pachete UDP cu valori ale câmpului TTL din ce în ce mai mari, cu scopul de a obține mesaje time exceeded de la toate routerele aflate pe traseu.