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.
<patrigna@pascal ~>ping wilma.cs.brown.edu
PING wilma.cs.brown.edu: (128.148.19.15): 56 data bytes 64 bytes from 128.148.19.15: icmp_seq=1 ttl=239 time=1736 ms 64 bytes from 128.148.19.15: icmp_seq=2 ttl=239 time=1507 ms 64 bytes from 128.148.19.15: icmp_seq=6 ttl=239 time=1209 ms 64 bytes from 128.148.19.15: icmp_seq=8 ttl=239 time=762 ms 64 bytes from 128.148.19.15: icmp_seq=9 ttl=239 time=1235 ms 64 bytes from 128.148.19.15: icmp_seq=11 ttl=239 time=1566 ms 64 bytes from 128.148.19.15: icmp_seq=13 ttl=239 time=586 ms 64 bytes from 128.148.19.15: icmp_seq=14 ttl=239 time=352 ms 64 bytes from 128.148.19.15: icmp_seq=22 ttl=239 time=910 ms ^C ----wilma.cs.brown.edu PING Statistics---- 29 packets transmitted, 9 packets received, 68% packet loss round-trip min/avg/max = 352/1095/1736 ms <patrigna@pascal ~> |