Buenas, notamos que al hacer traceroute desde el cliente al servidor 1 obtenemos una mayor cantidad de "saltos" que los esperados. Detectamos que esto solo ocurre cuando se utiliza el protocolo UDP (que es el default) y cuando la tabla ARP del router no esta cargada, es decir luego de ocurridos 15 segundos. Si se utiliza la opcion -T en el comando traceroute, que es para utilizar paquetes TCP o el comando -I para utilizar paquetes ICMP, con ambas opciones el resultado es el esperado obteniendo 2 saltos. Tambien nos dimos cuenta que esto ocurre tanto en nuestra solucion como en la solucion brindada "sr_solution". El resultado en consola es este:
- mininet> client traceroute -n 192.168.2.2
- traceroute to 192.168.2.2 (192.168.2.2), 30 hops max, 60 byte packets
- 1 10.0.1.1 69.468 ms 73.546 ms 78.214 ms
- 2 * * *
- 3 * * *
- 4 * * *
- 5 * 192.168.2.2 235.659 ms 235.562 ms
Sin embargo, en el manual de traceroute encontramos lo siguiente:
"To speed up work, normally several probes are sent simultaneously. On the other hand, it creates a "storm of packages", especially in the reply direction. Routers can throttle the rate of icmp responses, and some of replies can be lost. To avoid this, decrease the number of simultaneous probes, or even set it to 1 (like in initial traceroute implementation), i.e. -N 1
The final (target) host can drop some of the simultaneous probes, and might even answer only the latest ones. It can lead to extra "looks like expired" hops near the final hop. We use a smart algorithm to auto-detect such a situation, but if it cannot help in your case, just use -N 1 too."
Utilizando esta opcion obtuvimos el resultado correcto. No estariamos viendo si es un problema que debemos resolver nosotros.
Muchas gracias.