Home - Redes - Routers - 1 - 2
Routers (II)
por Luciano Moreno, webmaster de HTMLWeb.
Cómo funciona un router
Los routers son dispositivos de red que raramente se encuentran aislados entre sí. Al contrario, suelen estar interconectados, formando una especie de “telaraña” que hace posible el tráfico de datos entre redes separadas físicamente.
Tomando como ejemplo la Red de redes, Internet, cuando un ordenador envía una serie de paquetes de datos a otro situado en otra ciudad o país, estos son encaminados de router a router a lo largo del camino entre ambas máquinas. Cada paso de un paquete de un router a otro se denomina “salto”, y el principal objetivo de todos y cada uno de los routers que intervienen en la transferencia del paquete es que éste llegue a su destino en el menor número posible de saltos, por la mejor ruta posible.
Para poder realizar esta tarea, los routers se comunican constantemente entre sí, informándose de las rutas bloqueadas, de las máquinas intermedias que se encuentran caídas o saturadas de tráfico, aprendiendo con ello cuál es el router idóneo para enviarle los paquetes recibidos.
Si consideramos ahora el caso de un router segmentando una red local (LAN), aunque ahora no debe enviar los paquetes a otro router, sí que tiene que saber por qué puerto debe enviar los datos para que lleguen a la máquina local destino.
Esta habilidad de “saber” a dónde tienen que enviar los paquetes de datos que reciben la consiguen almacenando en su interior una tabla especial, conocida como tabla de ruteo, en la que van anotando las direcciones IP de las máquinas que se comunican con él y el puerto por el que está accesible esa máquina.
Así, cuando a un router llega un paquete, mira en su tabla de ruteo. Si está en ella referenciada la dirección IP de la máquina destino, también lo estará el puerto por el que ésta es accesible, con lo que envía por él el paquete. En caso de no estar la IP en la tabla, manda una petición de respuesta por todos los puertos, preguntando en cuál de ellos se encuentra la máquina destino, y una vez obtenido el puerto de acceso, ingresa la nueva pareja IP/PUERTO en su tabla de ruteo, con lo que los próximos paquetes para esa máquina los enviará directamente.
Podemos buscar una análogía del funcionamiento de los routers con el de las oficinas de correos. Cuando enviamos una carta desde Mérida (Badajoz) a Linares (Jaén), ésta llega en primer lugar a la oficina local de Mérida, que la reenvía a la de Badajoz, que a su vez la manda a la de Jaén, que la remite a la oficina de Linares, que hace la entrega. Si la oficina de correos de Jaén está cerrada por obras, la de Badajoz la enviará a la de Madrid, que la remitirá a la de Andujar, que a su vez se encargará de mandarla a la de Linares, haciendo ésta de nuevo la entraga. Cierre la oficina que cierre, siempre se encontrará un camino para entregar la carta.
Para evitar mantener en su tabla direcciones IP que hayan quedado obsoletas, cada cierto tiempo borra aquellas que no tienen actividad y las que, tras enviarles paquetes, no han respondido. Esto lo consiguen manteniendo “conversaciones” entre ellos, en unos lenguajes especiales denominados “protocolos de enrutamiento”.

Componentes básicos de un router
Básicamente, podemos considerar un router como un ordenador especial que funciona solo en las tres primeras capas de la arquitectura TCP/IP, al que se la han eliminado una serie de componentes físicos y funcionalidades lógicas que no necesita para su trabajo, mientras que se le han añadido otros componentes de hardware y de software que le ayudan en su trabajo de enrutamiento.
Como todo ordenador, un router necesita un sistema de arranque (bootstrap), encargado de realizar un chequeo del resto de los componentes antes de pasar el control a un sistema operativo (Cisco IOS, en el caso de los routers Cisco).
El sistema de arranque se almacena en una memoria ROM (Read Only Memory=Memoria de Solo Lectura), junto con una parte básica del sistema operativo, la que toma el control inicialmente, mientras que el cuerpo principal de éste se almacena en una memoria especial, de tipo FLASH, que se puede borrar y reprogramar, permitiendo con ello las actualizaciones necesarias. El contenido de la memoria Flash se conserva en caso de cortes de energía o durante los reinicios del router.
Por otra parte, las funcionalidades operativas de los routers son configurables mediante una serie de instrucciones escritas en un fichero de texto, denominado archivo de configuración, que se almacena en un módulo de memoria de tipo NVRAM (No Volatil RAM), cuyo contenido se conserva durante un corte de energía o si se reinicia el equipo.
Una vez inicializado un router, el fichero de configuración es cargado en una memoria RAM (Random Access Memory=Memoria de Acceso Aleatorio), desde la que se va ejecutando el conjunto de órdenes en él contenido. También se almacenan en esta memoria las tablas de enrutamiento, encargadas de almacenar los puertos del router por los que son accesibles las diferentes máquinas.
Por último, el router posee una serie de puertos o interfaces físicas, puntos de conexión del mismo con las diferentes redes a las que está unido, y a través de los cuales se produce la entrada y salida de datos al equipo. El número de interfaces depende del tipo y funcionalidades del router (y de su precio, claro).

Tipos de routers
Los tipos de router a usar en una red varían dependiendo del tipo de ésta, del número de usuarios y de la función o funciones que deba desempeñar, pudiendo variar mucho la complejidad y el precio de ellos en función del tipo elegido.
Si queremos segmentar nuestra red en diferentes subredes, nos hará falta un router de segmentación, con tantos puertos Ethernet como subredes queremos crear (más los de enlace con otros routers), siendo siempre conveniente que nos sobren puertos, con vista a futuras ampliaciones en la red. Cada subred utilizará luego un hub concentrador o un switch para dar acceso a sus clientes individuales.
Podemos desear un ancho de banda dedicado para un número elevado de equipos individuales, prescindiendo así de los hubs. Necesitaremos entonces un routers de concentración, que precisa aún más puertos Ethernet, aunque no suele ser necesario que sean de alta velocidad de transmisión.
Para conectar una red corporativa a Internet necesitaremos un router de frontera, que actuará como gateway de la red interna, recogiendo todos aquellos paquetes de datos destinados a máquinas externas.
En caso de tener que conectar dos redes WAN o dos segmentos de red en sucursales o campus diferentes, necesitaremos un routers de backbone, que proporciona transporte óptimo entre nodos de la red, con interfaces de alta velocidad que proporcionan un elevado ancho de banda. Generalmente estarán basados en tecnología de fibra óptica.
Por último, también es posible al acceso a redes inalámbrico a redes mediante routers con tecnología wireless, un medio práctico de liberar los equipos de las limitaciones de los cables físicos.

Protocolos de enrutamiento
Hemos visto antes que los routers mantienen unas tablas de enrutamiento, en las que van anotando las direcciones IP de las máquinas destino y los puertos adecuados para darles salida de forma óptima.
Los routers suelen encontrarse interconectados entre ellos, pasándose los paquetes de datos de uno a otro, hasta llegar a la máquina destino. Como cada router tan solo es responsable de las máquinas directamente conectadas a él (incluyendo los routers vecinos), se hace necesario un mecanismo que permita a los routers comunicarse entre sí, para evitar que cada uno tenga en sus tablas registros inválidos.
Esto se consigue por medio de una serie de protocolos de enrutamiento, responsables de que los diferentes routers mantengan sus tablas de enrutamiento acordes, obteniéndose una red convergente. Con ello se consigue, por ejemplo, que si un ordenador o un servidor se apaga en una red, los routers sepan que ya no está accesible, evitando el envío de datos que no llegarán a su destino, y disminuyendo con ello el tráfico de red.
Para mantener las tablas de enrutamiento actualizadas, un router pueden mandar a los routers vecinos una copia de su tabla cada determinado periodo de tiempo (enrutamientos por vector de distancia) y también cuando alguna máquina en su red sufre algún cambio (enrutamiento por estado de enlace). Depende del protocolo de enrutamiento con que funcione.
Existen diferentes protocolos de comunicación entre routers, cada uno de los cuales utiliza mecanismos propios para conseguir la convergencia en la red y para determinar el mejor camino que puede seguir un paquete de datos en su viaje hasta la máquina destino, y cada uno utiliza un sistema de determinación de mejor ruta (métrica) diferente.
Según su misión en una red podemos diferenciar dos tipos principales de protocolos de enrutamiento: los protocolos de gateway interior (IGP), encargados de la comunicación entre routers de una misma red, entre los que destacan RIP e IGRP, y los protocolos de gateway exterior (EGP) o de frontera, encargados de la comunicación entre routers de redes diferentes.
Entre los más importantes protocolos de enrutamiento podemos destacar los siguientes:
El protocolo de enrutamiento a elegir en cada caso depende del tipo de red (LAN, WAN, etc.), de su topología y del uso de la misma, siendo posible en la mayoría de los casos configurar varios protocolos en un mismo router.