Se utiliza para obtener informaci’on acerca del funcionamiento de la red.
Cuando un paquete IP no puede llegar a su destino por alguna raz’on, se
copian los primeros 8 bytes de dicho paquete y se env’ia un paquete IP
que encapsula un mensaje ICMP hacia el emisor para que ’este sepa qu’e
paquete gener’o el problema y cu’al es dicho problema.
2 Mensajes ICMP
3 Ejemplo: traceroute
Programa de diagn’ostico que permite conocer la ruta (routers) por los
que pasan los paquetes que viajan desde nuestra m’aquina (la que ejecuta
el programa traceroute) hasta la m’aquina destino.
Uso:
traceroute [flags] nodo_destino
Funciona aprovechando los servicios proporcionados por el ICMP (Internet
Control Message Protocol), que se utiliza para conocer qu’e est’a ocurriendo en
la red.
Uno de los mensajes que el ICMP proporciona es el de tiempo excedido
(time exceeded). Estos mensajes son generados s’olo por los routers
cuando no retransmiten un paquete porque su TTL (Time To Live) es
0.
El campo TTL figura en todas las cabeceras de los paquetes que son
transmitidos a trav’es de Internet y sirven para controlar c’omo de lejos
van a viajar. Cada vez que un paquete atraviesa un router su TTL se
decrementa.
traceroute fuerza a que los distintos routers contesten con un ICMP
TIME_EXCEEDED, enviando paquetes con un TTL que se va incrementando
en 1 en cada iteraci’on. Entonces traceroute calcula los tiempos de ida y
vuelta o RTT (Round-Trip Time) en 3 ocasiones.
Otro de los mensajes que el ICMP proporciona es el de puerto inalcanzable
(unreacheable port). Este tipo de mensaje es generado ’unicamente por los
hosts cuando les llega un paquete cuyo puerto destino no est’a siendo escuchado
por ninguna aplicaci’on.
traceroute obtiene el RTT del host destino aprovechando el mensaje ICMP
PORT_UNREACHEABLE generado por ’este, ya que el puerto destino usado (el
)
no suele utilizarse para otro prop’osito.
Un ejemplo de funcionamiento ser’ia:
hostX$ traceroute www.cica.es
traceroute to ataman.cica.es (150.214.4.16), 30 hops max, 38 byte packets
1 rou118.ual.es (193.147.118.1) 0.701 ms 0.574 ms 0.480 ms
2 11.0.0.5 (11.0.0.5) 0.840 ms 0.783 ms 0.767 ms
3 192.168.1.1 (192.168.1.1) 0.653 ms 0.644 ms 0.608 ms
4 almeria.cica.es (150.214.231.97) 1.795 ms 1.761 ms 2.740 ms
5 jds-rt2-almeria.cica.es (150.214.0.33) 13.333 ms 13.354 ms 12.946 ms
6 ataman.cica.es (150.214.4.16) 13.476 ms * 18.044 ms
Para conocer m’as sobre esta utilidad, en una m’aquina Unix ejecutar mantraceroute o visitar la p’agina Web http://www.traceroute.org.