thumb|Los encaminadores en el modelo OSI|upright=2.0 Un rúter, enrutador (del inglés router) o encaminador es un dispositivo que permite interconectar redes con distinto prefijo en su dirección IP. Su función es la de establecer la mejor ruta que destinará a cada paquete de datos para llegar a la red y al dispositivo de destino. Es bastante utilizado para conectarse a Internet, ya que conecta la red de nuestro hogar, oficina o cualquier red a la red de nuestro proveedor de este servicio. La mayoría de los rúteres que se utilizan para el hogar y oficinas tienen incorporadas otras funciones adicionales al enrutador, como por ejemplo: punto de acceso inalámbrico, que permite crear y conectarse a una red Wifi; módem, que convierte las señales analógicas a digitales y viceversa; Conmutador, que conecta varios dispositivos a través de cable, creando una red local.
Historia El primer dispositivo o hardware que tenía fundamentalmente la misma funcionalidad que lo que el día de hoy entendemos por encaminador, era el Interface Message Processor o IMP. Los IMP eran los dispositivos que formaban la ARPANET, la primera red de conmutación de paquetes. La idea de un encaminador (llamado por aquel entonces puerta de enlace) vino inicialmente de un grupo internacional de investigadores en redes de computadoras llamado el International Network Working Group (INWG). Creado en 1972 como un grupo informal para considerar las cuestiones técnicas que abarcaban la interconexión de redes diferentes, se convirtió ese mismo año en un subcomité del International Federation for Information Processing.Davies, Shanks, Heart, Barker, Despres, Detwiler and Riml, "Report of Subgroup 1 on Communication System", INWG Note No. 1.
Esos dispositivos se diferenciaban de los conmutadores de paquetes que existían previamente en dos características. Por una parte, conectaban tipos de redes diferentes, mientras que por otra parte, eran dispositivos sin conexión, que no aseguraban fiabilidad en la entrega de datos, dejando este rol enteramente a los anfitriones. Esta última idea había sido ya planteada en la red CYCLADES.
La idea fue investigada con más detalle, con la intención de crear un sistema prototipo como parte de dos programas. Uno era el promovido por DARPA, programa que creó la arquitectura TCP/IP que se usa actualmente,Vinton Cerf, Robert Kahn, "A Protocol for Packet Network Intercommunication", IEEE Transactions on Communications, Volume 22, Issue 5, May 1974, pp. 637 - 648. y el otro era un programa en Xerox PARC para explorar nuevas tecnologías de redes, que produjo el sistema llamado PARC Universal Packet. Debido a la propiedad intelectual que concernía al proyecto, recibió poca atención fuera de Xerox durante muchos años.David Boggs, John Shoch, Edward Taft, Robert Metcalfe, "Pup: An Internetwork Architecture" , IEEE Transactions on Communications, Volume 28, Issue 4, April 1980, pp. 612- 624.
Un tiempo después de 1974, Xerox consiguió el primer encaminador funcional, aunque el primer y verdadero enrutador IP fue desarrollado por Virginia Stazisar en BBN, como parte de ese esfuerzo promovido por DARPA, durante 1975-76. A finales de 1976, tres encaminadores basados en PDP-11 entraron en servicio en el prototipo experimental de Internet.Craig Partridge, S. Blumenthal, "Data networking at BBN"; IEEE Annals of the History of Computing, Volume 28, Issue 1; January–March 2006.
El primer encaminador multiprotocolo fue desarrollado simultáneamente por un grupo de investigadores del MIT y otro de Stanford en 1981. El encaminador de Stanford se le atribuye a William Yeager y el del MIT a Noel Chiappa. Ambos estaban basados en PDP-11.Valley of the Nerds: Who Really Invented the Multiprotocol Router, and Why Should We Care? , Public Broadcasting Service, Accessed August 11, 2007.Router Man , NetworkWorld, Accessed June 22, 2007.David D. Clark, "M.I.T. Campus Network Implementation", CCNG-2, Campus Computer Network Group, M.I.T., Cambridge, 1982; pp. 26.Pete Carey, "A Start-Up's True Tale: Often-told story of Cisco's launch leaves out the drama, intrigue", San Jose Mercury News, December 1, 2001. Como ahora prácticamente todos los trabajos en redes usan IP en la capa de red, los encaminadores multiprotocolo son en gran medida obsoletos, a pesar de que fueron importantes en las primeras etapas del crecimiento de las redes de ordenadores, cuando varios protocolos distintos de TCP/IP eran de uso generalizado. Los encaminadores que manejan IPv4 e IPv6 son multiprotocolo, pero en un sentido mucho menos variable que un encaminador que procesaba AppleTalk, DECnet, IP, y protocolos de XeroX. Desde mediados de los años 1970 y en los años 1980, los miniordenadores de propósito general servían como enrutadores.
Actualmente, los encaminadores de alta velocidad están altamente especializados, ya que se emplea un hardware específico para acelerar las funciones de encaminamiento más específicas, como son el encaminamiento de paquetes y funciones especiales como la encriptación IPsec.
Funcionamiento El funcionamiento básico de un enrutador o encaminador, como se deduce de su nombre, consiste en enviar los paquetes de red por el camino o ruta más adecuada en cada momento. Para ello almacena los paquetes recibidos y procesa la información de origen y destino que poseen. Con arreglo a esta información reenvía los paquetes a otro encaminador o bien al anfitrión final, en una actividad que se denomina 'encaminamiento'. Cada encaminador se encarga de decidir el siguiente salto en función de su tabla de reenvío o tabla de encaminamiento, la cual se genera mediante protocolos que deciden cuál es el camino más adecuado o corto, como protocolos basado en el algoritmo de Dijkstra.
Por ser los elementos que forman la capa de red, tienen que encargarse de cumplir las dos tareas principales asignadas a la misma: Reenvío de paquetes: cuando un paquete llega al enlace de entrada de un encaminador, este tiene que pasar el paquete al enlace de salida apropiado. Una característica importante de los encaminadores es que no difunden tráfico difusivo. Encaminamiento de paquetes: mediante el uso de algoritmos de encaminamiento tiene que ser capaz de determinar la ruta que deben seguir los paquetes a medida que fluyen de un emisor a un receptor. Por tanto, debemos distinguir entre reenvío y encaminamiento. Reenvío consiste en coger un paquete en la entrada y enviarlo por la salida que indica la tabla, mientras que por encaminamiento se entiende el proceso de hacer esa tabla.
Arquitectura física thumb|Representación simbólica de un encaminador En un enrutador se pueden identificar cuatro componentes: Puertos de entrada: realiza las funciones de la capa física consistentes en la terminación de un enlace físico de entrada a un encaminador; realiza las funciones de la capa de enlace de datos necesarias para interoperar con las funciones de la capa de enlace de datos en el lado remoto del enlace de entrada; realiza también una función de búsqueda y reenvío de modo que un paquete reenviado dentro del entramado de conmutación del encaminador emerge en el puerto de salida apropiado. Entrada de conmutación: conecta los puertos de entrada del enrutador a sus puertos de salida. Puertos de salida: almacena los paquetes que le han sido reenviados a través del puerto de conmutación y los transmite al enlace de salida. Realiza entonces la función inversa de la capa física y de la capa de enlace que el puerto de entrada. Procesador de encaminamiento: ejecuta los protocolos de ip encaminamiento, mantiene la información de encaminamiento y las tablas de reenvío y realiza funciones de gestión de red dentro del enrutador.
Tipos de enrutamiento Tanto los enrutadores como los anfitriones guardan una tabla de enrutamiento. El daemon de enrutamiento de cada sistema actualiza la tabla con todas las rutas conocidas. El núcleo del sistema lee la tabla de enrutamiento antes de reenviar paquetes a la red local. La tabla de enrutamiento enumera las direcciones IP de las redes que conoce el sistema, incluida la red local predeterminada del sistema. La tabla también enumera la dirección IP de un sistema de portal para cada red conocida. El portal es un sistema que puede recibir paquetes de salida y reenviarlos un salto más allá de la red local.
Enrutamiento estático El enrutamiento estático es un método de enrutamiento en el cual un administrador de red configura manualmente la tabla de enrutamiento de un enrutador. Esto implica especificar de forma estática las rutas y destinos de red que el enrutador utilizará para reenviar el tráfico a través de la red. En el enrutamiento estático, las rutas se configuran directamente en el enrutador y no cambian a menos que el administrador de red realice cambios manuales en la configuración.
Determinación de enrutamiento La información de enrutamiento que el encaminador aprende desde sus fuentes de enrutamiento se coloca en su propia tabla de enrutamiento. El encaminador se vale de esta tabla para determinar los puertos de salida que debe utilizar para retransmitir un paquete hasta su destino. La tabla de enrutamiento es la fuente principal de información del enrutador acerca de las redes. Si la red de destino está conectada directamente, el enrutador ya sabrá el puerto que debe usar para reenviar los paquetes. Si las redes de destino no están conectadas directamente, el encaminador debe aprender y calcular la ruta más óptima a usar para reenviar paquetes a dichas redes. La tabla de enrutamiento se constituye mediante uno de estos dos métodos o ambos:
Manualmente, por el administrador de la red. A través de procesos dinámicos que se ejecutan en la red.
Rutas estáticas Las rutas estáticas se definen administrativamente y establecen rutas específicas que han de seguir los paquetes para pasar de un puerto de origen hasta un puerto de destino. Se establece un control preciso de enrutamiento según los parámetros del administrador.
Las rutas estáticas por defecto especifican una puerta de enlace de último recurso, a la que el enrutador debe enviar un paquete destinado a una red que no aparece en su tabla de enrutamiento, es decir, se desconoce.
Las rutas estáticas se utilizan habitualmente en enrutamientos desde una red hasta una red de conexión única, ya que no existe más que una ruta de entrada y salida en una red de conexión única, evitando de este modo la sobrecarga de tráfico que genera un protocolo de enrutamiento. La ruta estática se configura para conseguir conectividad con un enlace de datos que no esté directamente conectado al enrutador. Para conectividad de extremo a extremo, es necesario configurar la ruta en ambas direcciones. Las rutas estáticas permiten la construcción manual de la tabla de enrutamiento.
Enrutamiento dinámico El enrutamiento dinámico le permite a los encaminadores ajustar, en tiempo real, los caminos utilizados para transmitir paquetes IP. Cada protocolo posee sus propios métodos para definir rutas (camino más corto, utilizar rutas publicadas por pares, etc.).
Algoritmos de enrutamiento dinámico
Vector a distancia: Cada enrutador cuenta con una tabla donde se almacena la mejor distancia y la línea de comunicación que se debe utilizar para llegar al origen. Estado - Cliente: Descubre a los vecinos y obtiene las direcciones de red de estas.
Introducción a RIP