comandi che fanno uso del protocollo ICMP

ping

Il ping è un termine onomatopeico nato per indicare un segnale sonoro di breve durata e di alta tonalità emesso da un sottomarino per segnalare la propria presenza e la propria raggiungibilità ad un altro sottomarino.
Nel linguaggio informatico il termine è stato adottato per designare un particolare comando (presente su molti sistemi diversi, come UNIX, DOS, Windows95) che invia una successione di pacchetti ad una stazione per verificarne la raggiungibilità, e che ricorre a tal fine al protocollo ICMP.
Vediamo come funziona: supponiamo che dalla stazione A si voglia controllare l'integrità della connessione fino alla stazione B. Si esegue il comando ping, passandogli come argomento l'indirizzo della stazione B. Il programma manda una serie di messaggi ICMP ECHO_REQUEST (generalmente uno al secondo) dalla stazione A verso la stazione B. Quando la stazione B riceve un pacchetto ECHO_REQUEST, il suo strato internet si occupa di rispondere con un nuovo datagramma ICMP ECHO_REPLY, che viene mandato indietro alla macchina A. il programma ping userà le informazioni così collezionate (esistenza dei pacchetti di ritorno, tempo intercorso per ogni pacchetto, etc.) per calcolare dei valori statistici sulla bontà della connessione e presentarli all'utente.
Questo che segue è un esempio di ping eseguito da una macchina sita nell'Universita' di Roma Tre ad un'altra macchina sita nella Brown University (Providence, USA). Il tempo medio che si registra in condizioni normali per questa connessione per l'andata e il ritorno del pacchetto di controllo è di circa un terzo di secondo.
 

Come si vede il comando segnala ogni pacchetto ECHO_REPLY che viene ricevuto in risposta, il suo numero sequenziale, ed il tempo in millisecondi intercorso tra l'invio dell'ECHO_REQUEST e la ricezione dell'ECHO_REPLY.  Molti pacchetti sono andati persi: mancano i pacchetti corrispondenti ai numeri 3, 4, 5, 7, 10, 12, ecc...
Quando l'utente ha premuto la combinazione di tasti CTRL-C (visualizzato sul display con "^C") il programma ha interrotto l'invio di pacchetti e ha mostrato i dati statistici collezionati. Si noti l'alto numero di pacchetti persi (68% di packet loss), e che il tempo medio è tre volte superiore al tempo minimo. La connessione non è buona, ma non si ha nessuna indicazione sul punto esatto in cui si presenta il problema.

pagina precedente    prossima pagina