HIP HOP
Jordi Adell
Web nº 6, mayo 1996, pág. 27.
La Internet interconecta varias decenas de miles de redes informáticas mediante un conjunto de protocolos denominado TCP/IP. La redes se conectan mediante unos cacharros, llamados «routers» o encaminadores, que se pasan entre sí paquetes IP. En cada paquete va incluída la dirección IP del dispositivo remitente y del destino. Los «routers», cuando reciben un paquete, miran la dirección de destino y lo reenvían al siguiente router por la ruta más adecuada. Hasta aquí, todo correcto. Pero la Internet ha crecido tanto que en ocasiones es necesario que un paquete pase por muchos routers antes de llegar a su destino. Estos saltos se denominan «hops» és la jerga de los gurús. Por ejemplo, para que un paquete IP vaya desde, digamos, la UJI (en Castellón) hasta el servidor donde está +web (<URL:http://www.partal.com/+web>) tiene que dar 19 hops. Bueno, ¿y donde está el problema?
El más evidente es que, se mire como se mire, son muchos «hops» y esto no es eficiente. La red académica, donde están la gran mayoria de los usuarios y máquinas de Internet del Estado, y la comercial (formada por cada día más proveedores que contratan sus líneas a «carriers» diversos) intercambian paquetes en la otra parte del mundo. Literalmente. Algunos, por ejemplo, en Washington. Eso produce varios efectos: en primer lugar, si mi vecino del quinto me envía un mensaje por correo electrónico, pues va y viene de Washington. Naturalmente en el Web es peor: la cosa va leeeeeeenta. En segundo lugar, todo el tráfico se pasea arriba y abajo por las líneas internacionales contratadas por los proveedores, que son las más caras. La solución (que todos esperamos ya): crear un «punto neutro» más cerca de donde estamos todos, en el que los proveedores puedan interconectar sus routers e intercambiar paquetes. Así las líneas internacionales se usarán sólo para el tráfico internacional.
Pero otro problema más curioso, y que no sólo ocurre aquí (la información que cito proviene de una nota del excelente webmaster del NIC de Switch, la red académica suiza), es que el número de hops necesarios para alcanzar ciertos lugares de Internet se acerca peligrosamente al número mágico 30. Bueno, ¿y qué pasa con el 30?
La explicación es sencilla. En la cabecera de todos los paquetes IP hay un campo de 8 bits denominado TTL (que son las siglas de «Time To Life»). La gente que hizo el TCP/IP (que era realmente muy lista) pensó que era necesario crear un mecanismo para evitar que hubiera paquetes que se pasaran de aquí a la eternidad dando vueltas por la Internet sin llegar jamás a su destino (por el mal funcionamiento de algún router, por ejemplo) saturando las conexiones. El ordenador que envia un paquete IP ajusta el TTL a un valor inicial (digamos 30). Cada router por el que pasa le resta una unidad a dicha cifra. Si a un router llega un paquete IP «caducado», en lugar de reenviarlo, lo liquida de manera limpia e indolora.
Para prevenir los efectos del crecimiento de la red, se creó un mecanismo basado en el protocolo ICMP que informa al ordenador que envia el paquete que éste ha sido eliminado por un router eficiente. De este modo, la máquina podría incrementar el valor del TTL para retransmitir el paquete nuevamente. Desgraciadamente, esta opción no se ha desarrollado en algunos sistemas. Es decir, van a piño fijo a 30 hops más o menos y punto. Pero es incluso peor: aunque tengamos un sistema que ajuste dinámicamente el TTL a más de 30, si el receptor no lo hace, los paquetes de retorno de éste (ajustados a 30) no nos llegarán.
Hay una manera de averiguar la distancia en hops entre nuestro sistema y cualquier otro de la Internet. En Unix (y en otros sistemas) hay una pequeña utilidad llamada «traceroute». Sólo hay que pasarle como parámetro el nombre de la máquina destino y averiguaremos por cuantos routers pasa, esto es, cuantos hops da el paquete hasta llegar a destino y cuantos milisegundos le cuesta entre cada router. Por ejemplo, entre la UJI y cierta famosa compañia de software de Seattle hay… ¡25 hops!. Si yo usara uno de sus sistemas operativos y estuviera tras algunos routers más dentro de la UJI, puede que pronto no pudiera conectarme a su servidor WWW.
¿Y que sistemas van a piño fijo? De entre los más difundidos y según la información que circula por la red, los comercializados por la citada compañia de Seattle (cuyo presidente decidió arreglarles (más) la vejez a los Stones) incluyendo su flamante modelo 95, ajustan el TTL a piñón fijo a 32 hops tanto en los paquetes TCP como UDP. Sus rivales (los de la manzana), en cambio, están ajustados a 60 hops. Otros sistemas tienen valores más altos. Pero, tranquilos: hay remedio. Es posible «retocar» los sistemas para aumentar el TTL. Consultad a vuestro gurú Internet favorito. Moraleja: para ser el Rey del Mundo hay que hilar más fino :-).
http://www.switch.ch/switch/docs/ttl_info.html
http://www.switch.ch/switch/docs/ttl_default.html