ICMP
ICMP non rende affidabile IP, ma si limita a segnalare errori e malfunzionamenti, senza effettuare le necessarie correzioni.
Il protocollo ICMP svolge funzioni di controllo per IP, quindi è incluso in tutte le implementazioni IP come un protocollo a basso livello che si appoggia direttamente su IP: risiede su ogni elaboratore, host o router, come protocollo abbinato all'IP e i pacchetti ICMP sono incapsulati all'interno di datagrammi IP.
Quando si verifica un errore o un malfunzionamento che impedisce la consegna del datagramma, viene generato un messaggio che comunica all' host che il suo destinatario è irraggiungibile. I messaggi viaggiano nel campo dati del datagramma IP e vengono manipolati dal SW IP.
La struttura del messaggio ICMP è la seguente:
-
tipo: definisce il tipo di messaggio ICMP, che può essere: messaggio di errore o messaggio di richiesta di informazioni.
-
codice: descrive il tipo di errore e ulteriori dettagli;
-
checksum: per il controllo di errore;
-
add. field: dipendono dal tipo di messaggio ICMP;
-
data: per trasmettere dati legati al particolare messaggio ICMP o parte del datagramma che ha generato l'errore.