Protocolo de información de enrutamiento

Protocolo de red informática

El Protocolo de información de enrutamiento ( RIP ) es uno de los protocolos de enrutamiento por vector de distancia más antiguos que emplea el conteo de saltos como métrica de enrutamiento . RIP evita los bucles de enrutamiento al implementar un límite en la cantidad de saltos permitidos en una ruta desde el origen hasta el destino. La mayor cantidad de saltos permitidos para RIP es 15, lo que limita el tamaño de las redes que RIP puede admitir.

RIP implementa los mecanismos de horizonte dividido , envenenamiento de ruta y retención para evitar que se propague información de enrutamiento incorrecta.

En RIPv1, los enrutadores transmitían actualizaciones con su tabla de enrutamiento cada 30 segundos. En las primeras implementaciones, las tablas de enrutamiento eran lo suficientemente pequeñas como para que el tráfico no fuera significativo. Sin embargo, a medida que las redes crecían en tamaño, se hizo evidente que podía haber una ráfaga masiva de tráfico cada 30 segundos, incluso si los enrutadores se habían inicializado en momentos aleatorios.

En la mayoría de los entornos de red, RIP no es la opción preferida de protocolo de enrutamiento , ya que su tiempo de convergencia y escalabilidad son deficientes en comparación con EIGRP , OSPF o IS-IS . Sin embargo, es fácil de configurar, ya que RIP no requiere ningún parámetro, a diferencia de otros protocolos.

RIP utiliza el Protocolo de datagramas de usuario (UDP) como protocolo de transporte y se le asigna el número de puerto reservado 520. [1]

Desarrollo de enrutamiento por vector de distancia

Basados ​​en el algoritmo Bellman-Ford y el algoritmo Ford-Fulkerson , los protocolos de enrutamiento por vector de distancia comenzaron a implementarse a partir de 1969 en redes de datos como ARPANET y CYCLADES . El predecesor de RIP fue el Protocolo de Información de Puerta de Enlace (GWINFO), que fue desarrollado por Xerox a mediados de la década de 1970 para enrutar su red experimental. Como parte de la suite de protocolos Xerox Network Systems (XNS), GWINFO se transformó en el Protocolo de Información de Enrutamiento XNS. Este RIP XNS a su vez se convirtió en la base de los primeros protocolos de enrutamiento, como el RIP IPX de Novell , el Protocolo de Mantenimiento de Tablas de Enrutamiento (RTMP) de AppleTalk y el RIP IP. La distribución de software Berkeley de 1982 del sistema operativo UNIX implementó RIP en el demonio enrutado . La versión 4.2BSD resultó popular y se convirtió en la base para las versiones posteriores de UNIX, que implementaron RIP en el demonio enrutado o controlado . Finalmente, RIP se había implementado ampliamente [2] antes de que el estándar, escrito por Charles Hedrick, se aprobara como RIPv1 en 1988. [3]

El recuento de saltos RIP

La métrica de enrutamiento que utiliza RIP cuenta la cantidad de enrutadores que se deben atravesar para llegar a una red IP de destino. El conteo de saltos 0 denota una red que está conectada directamente al enrutador. 16 saltos denotan una red a la que no se puede acceder, según el límite de saltos de RIP. [4]

Versiones

Hay tres versiones estandarizadas del Protocolo de información de enrutamiento: RIPv1 y RIPv2 para IPv4 , y RIPng para IPv6 .

RIP versión 1

La especificación original de RIP fue publicada en 1988. [3] Al iniciarse, y cada 30 segundos a partir de entonces, un enrutador con implementación RIPv1 transmite a 255.255.255.255 un mensaje de solicitud a través de cada interfaz habilitada para RIPv1. Los enrutadores vecinos que reciben el mensaje de solicitud responden con un segmento RIPv1, que contiene su tabla de enrutamiento . El enrutador solicitante actualiza su propia tabla de enrutamiento, con la dirección de red IP alcanzable, el conteo de saltos y el siguiente salto, que es la dirección IP de la interfaz del enrutador desde la que se envió la respuesta RIPv1. A medida que el enrutador solicitante recibe actualizaciones de diferentes enrutadores vecinos, solo actualizará las redes alcanzables en su tabla de enrutamiento, si recibe información sobre una red alcanzable que aún no tiene en su tabla de enrutamiento o información de que una red que tiene en su tabla de enrutamiento es alcanzable con un conteo de saltos menor. Por lo tanto, un enrutador RIPv1 en la mayoría de los casos solo tendrá una entrada para una red alcanzable, la que tenga el conteo de saltos más bajo. Si un enrutador recibe información de dos enrutadores vecinos diferentes de que se puede acceder a la misma red con el mismo número de saltos pero a través de dos rutas diferentes, la red se ingresará en la tabla de enrutamiento dos veces con enrutadores de siguiente salto diferentes. El enrutador habilitado con RIPv1 realizará lo que se conoce como equilibrio de carga de igual costo para los paquetes IP. [4]

Los enrutadores compatibles con RIPv1 no sólo solicitan las tablas de enrutamiento de otros enrutadores cada 30 segundos, sino que también escuchan las solicitudes entrantes de los enrutadores vecinos y envían su propia tabla de enrutamiento a su vez. Por lo tanto, las tablas de enrutamiento RIPv1 se actualizan cada 25 a 35 segundos. [4] El protocolo RIPv1 agrega una pequeña variable de tiempo aleatoria al tiempo de actualización, para evitar que las tablas de enrutamiento se sincronicen a través de una LAN. [5] Se pensaba que, como resultado de la inicialización aleatoria, las actualizaciones de enrutamiento se distribuirían en el tiempo, pero esto no era cierto en la práctica. Sally Floyd y Van Jacobson demostraron en 1994 que, sin una ligera aleatorización del temporizador de actualización, los temporizadores se sincronizaban a lo largo del tiempo. [6]

RIPv1 se puede configurar en modo silencioso, de modo que un enrutador solicite y procese las tablas de enrutamiento vecinas y mantenga actualizadas su tabla de enrutamiento y el conteo de saltos para las redes alcanzables, pero no envíe innecesariamente su propia tabla de enrutamiento a la red. El modo silencioso se implementa comúnmente en los hosts. [7]

RIPv1 utiliza enrutamiento con clases . Las actualizaciones periódicas de enrutamiento no incluyen información de subredes y no admiten máscaras de subred de longitud variable (VLSM). Esta limitación hace que sea imposible tener subredes de diferentes tamaños dentro de la misma clase de red . En otras palabras, todas las subredes de una clase de red deben tener el mismo tamaño. Tampoco hay compatibilidad con la autenticación de enrutadores, lo que hace que RIP sea vulnerable a varios ataques.

Descanse en paz versión 2

Debido a las deficiencias de la especificación RIP original, se desarrolló la versión 2 de RIP (RIPv2) en 1993 [4] , se publicó en 1994 [8] y se declaró el estándar de Internet 56 en 1998 [9]. Incluía la capacidad de transportar información de subred, lo que permitía el enrutamiento entre dominios sin clases (CIDR). Para mantener la compatibilidad con versiones anteriores, se mantuvo el límite de 15 saltos. RIPv2 tiene funciones para interoperar completamente con la especificación anterior si se especifican correctamente todos los campos de protocolo Must Be Zero en los mensajes RIPv1. Además, una función de cambio de compatibilidad [9] permite realizar ajustes de interoperabilidad de grano fino.

En un esfuerzo por evitar una carga innecesaria en los hosts que no participan en el enrutamiento, RIPv2 envía por multidifusión toda la tabla de enrutamiento a todos los enrutadores adyacentes en la dirección 224.0.0.9 , a diferencia de RIPv1 que utiliza broadcast . El direccionamiento unicast aún está permitido para aplicaciones especiales.

La autenticación MD5 para RIP se introdujo en 1997. [10] [11]

En la versión 2 de RIP también se agregaron etiquetas de ruta. Esta funcionalidad permite distinguir entre rutas aprendidas del protocolo RIP y rutas aprendidas de otros protocolos.

Descanse en paz

RIPng (RIP next generation) es una extensión de RIPv2 para soportar IPv6 , el Protocolo de Internet de próxima generación. [12] Las principales diferencias entre RIPv2 y RIPng son:

  • Soporte de redes IPv6.
  • Mientras que RIPv2 admite la autenticación de actualizaciones RIPv1, RIPng no lo hace. En ese momento, se suponía que los enrutadores IPv6 usaban IPsec para la autenticación. [ cita requerida ]
  • RIPv2 codifica el siguiente salto en cada entrada de ruta, RIPng requiere una codificación específica del siguiente salto para un conjunto de entradas de ruta.

RIPng envía actualizaciones en el puerto UDP 521 utilizando el grupo de multidifusión ff02::9 .

Mensajes RIP entre enrutadores

Los mensajes RIP utilizan el Protocolo de Datagramas de Usuario en el puerto 520 y todos los mensajes RIP intercambiados entre enrutadores se encapsulan en un datagrama UDP. [4]

Mensajes RIPv1

RIP define dos tipos de mensajes:

Solicitar mensaje
Solicitar a un enrutador vecino habilitado para RIPv1 que envíe su tabla de enrutamiento.
Mensaje de respuesta
Lleva la tabla de enrutamiento de un enrutador.

Temporizadores

El protocolo de información de enrutamiento utiliza los siguientes temporizadores como parte de su funcionamiento: [13]

Temporizador de actualización
Controla el intervalo entre dos mensajes de respuesta gratuitos. Por defecto, el valor es 30 segundos. El mensaje de respuesta se transmite a todas las interfaces con RIP habilitado. [13]
Temporizador inválido
El temporizador no válido especifica cuánto tiempo puede permanecer una entrada de enrutamiento en la tabla de enrutamiento sin actualizarse. Esto también se denomina temporizador de vencimiento. De manera predeterminada, el valor es de 180 segundos. Una vez que el temporizador expire, el recuento de saltos de la entrada de enrutamiento se establecerá en 16, lo que marcará el destino como inalcanzable. [13]
Temporizador de descarga
El temporizador de vaciado controla el tiempo que transcurre entre la invalidación o marcación de la ruta como inalcanzable y la eliminación de la entrada de la tabla de enrutamiento. De manera predeterminada, el valor es de 240 segundos. Esto es 60 segundos más que el temporizador de inválidos. Por lo tanto, durante 60 segundos, el enrutador anunciará esta ruta inalcanzable a todos sus vecinos. Este temporizador debe configurarse en un valor más alto que el temporizador de inválidos. [13]
Temporizador de retención
El temporizador de espera se inicia por cada entrada de ruta, cuando el conteo de saltos cambia de un valor más bajo a un valor más alto. Esto permite que la ruta se estabilice. Durante este tiempo, no se puede realizar ninguna actualización a esa entrada de enrutamiento. Esto no es parte de la RFC 1058. Esta es la implementación de Cisco . El valor predeterminado de este temporizador es 180 segundos. [13]

Limitaciones

  • El número de saltos no puede superar los 15, o se descartarán las rutas.
  • Las máscaras de subred de longitud variable no son compatibles con la versión 1 de RIP (que está obsoleta).
  • RIP tiene problemas de convergencia lenta y de conteo hasta el infinito . [14]

Implementaciones

  • Cisco IOS , software utilizado en enrutadores Cisco (compatible con la versión 1, la versión 2 y RIPng)
  • Software Cisco NX-OS utilizado en conmutadores de centros de datos Cisco Nexus (solo admite RIPv2 [15] )
  • Software Junos utilizado en enrutadores, conmutadores y firewalls Juniper (compatible con RIPv1 y RIPv2)
  • Enrutamiento y acceso remoto, una característica de Windows Server , contiene soporte RIP
  • Quagga , una suite de enrutamiento de software libre y de código abierto basada en GNU Zebra
  • BIRD , un paquete de software de enrutamiento gratuito y de código abierto
  • Zeroshell , una suite de enrutamiento de software de código abierto y gratuito
  • Una implementación de RIP introducida por primera vez en 4.2BSD , routed, sobrevive en varios de sus descendientes, incluidos FreeBSD [16] y NetBSD [17] .
  • OpenBSD introdujo una nueva implementación, ripd, en la versión 4.1 [18] y retiró routed en la versión 4.4.
  • Los enrutadores Netgear suelen ofrecer la opción de dos implementaciones de RIPv2; [19] estas se denominan RIP_2M y RIP_2B. RIP_2M es la implementación estándar de RIPv2 que utiliza multidifusión (lo que requiere que todos los enrutadores de la red admitan RIPv2 y multidifusión), mientras que RIP_2B envía paquetes RIPv2 mediante difusión de subred, lo que lo hace más compatible con enrutadores que no admiten multidifusión, incluidos los enrutadores RIPv1.
  • Los enrutadores ADSL/VDSL HG633 de Huawei admiten enrutamiento pasivo y activo con RIP v1 y v2 en el lado LAN y WAN.

Protocolos similares

El protocolo de enrutamiento de puerta de enlace interior (IGRP) patentado por Cisco era un protocolo algo más capaz que RIP. Pertenece a la misma familia básica de protocolos de enrutamiento por vector de distancia .

Cisco ha dejado de ofrecer soporte y distribución de IGRP en su software de enrutador. Fue reemplazado por el Protocolo de enrutamiento de puerta de enlace interior mejorado (EIGRP), que es un diseño completamente nuevo. Si bien EIGRP aún utiliza un modelo de vector de distancia, se relaciona con IGRP solo en el uso de la misma métrica de enrutamiento compuesta. Tanto IGRP como EIGRP calculan una única métrica compuesta para cada ruta, a partir de una fórmula de cinco variables: ancho de banda , retraso , confiabilidad , carga y MTU ; aunque en los enrutadores Cisco, de manera predeterminada, solo se utilizan el ancho de banda y el retraso en este cálculo.

Véase también

Referencias

  1. ^ "Registro de números de puerto de protocolo de transporte y nombre de servicio". www.iana.org . Autoridad de Números Asignados de Internet (IANA). p. 10 . Consultado el 25 de febrero de 2022 .
  2. ^ Jeff Doyle; Jennifer Carroll (2005). CCIE Professional Development: Routing TCP/IP Volumen I, Segunda edición . ciscopress.com. pág. 169. ISBN 9781587052026.
  3. ^ ab C. Hedrick (junio de 1988). Protocolo de información de enrutamiento. Grupo de trabajo de redes. doi : 10.17487/RFC1058 . RFC 1058. Histórico. Actualizado por RFC 1388 y 1723.
  4. ^ abcde Jeff Doyle; Jennifer Carroll (2005). CCIE Professional Development: Routing TCP/IP Volumen I, Segunda edición . ciscopress.com. pág. 170. ISBN 9781587052026.
  5. ^ Jeff Doyle; Jennifer Carroll (2005). CCIE Professional Development: Routing TCP/IP Volumen I, Segunda edición . ciscopress.com. pág. 171. ISBN 9781587052026.
  6. ^ La sincronización de mensajes de enrutamiento periódico, S. Floyd y V. Jacobson, abril de 1994
  7. ^ Jeff Doyle; Jennifer Carroll (2005). CCIE Professional Development: Routing TCP/IP Volumen I, Segunda edición . ciscopress.com. pág. 175. ISBN 9781587052026.
  8. ^ G. Malkin (noviembre de 1994). RIP versión 2: transporte de información adicional. Grupo de trabajo de redes. doi : 10.17487/RFC1723 . RFC 1723. Obsoleto. Queda obsoleto según RFC 2453. Deja obsoleto RFC 1388. Actualiza RFC 1058.
  9. ^ ab G. Malkin (noviembre de 1998). RIP versión 2. Grupo de trabajo de redes. doi : 10.17487/RFC2453 . STD 53. RFC 2453. Estándar de Internet. Obsoletos RFC 1723 y 1388. Actualizado por RFC 4822.
  10. ^ F. Baker ; R. Atkinson (enero de 1997). Autenticación RIP-2 MD5. Grupo de trabajo de redes. doi : 10.17487/RFC2082 . RFC 2082. Obsoleto. Quedó obsoleto según RFC 4822.
  11. ^ R. Atkinson; M. Fanto (febrero de 2007). Autenticación criptográfica RIPv2. Grupo de trabajo de redes. doi : 10.17487/RFC4822 . RFC 4822. Norma propuesta. Deja obsoleta la RFC 2082. Actualiza la RFC 2453.
  12. ^ G. Malkin; R. Minnear (enero de 1997). RIPng para IPv6. Grupo de trabajo de redes. doi : 10.17487/RFC2080 . RFC 2080. Norma propuesta.
  13. ^ abcde Balchunas, Aaron. "Routing Information Protocol (RIP v1.03)" (PDF) . routeralley.com. Archivado (PDF) del original el 10 de octubre de 2022 . Consultado el 25 de abril de 2014 .
  14. ^ C. Hendrik (junio de 1988). "RFC 1058 Sección 2.2". Protocolo de información de enrutamiento . The Internet Society. doi : 10.17487/RFC1058 .
  15. ^ "Guía de configuración de enrutamiento unicast NX-OS de Cisco Nexus serie 9000, versión 6.x: configuración de RIP [conmutadores Cisco Nexus serie 9000]".
  16. ^ "routed, rdisc – demonio de enrutamiento para detección de enrutadores y RIP de red". Páginas del manual de FreeBSD .
  17. ^ "routed, rdisc – demonio de enrutamiento para detección de enrutadores y RIP de red". Páginas del manual de NetBSD .
  18. ^ "ripd – Demonio del protocolo de información de enrutamiento". Páginas del manual de OpenBSD .
  19. ^ "¿Cómo puedo cambiar la configuración TCP/IP de LAN en mi enrutador Nighthawk?". Páginas de soporte de Netgear .

Lectura adicional

  • Malkin, Gary Scott (2000). RIP: Un protocolo de enrutamiento intradominio . Addison-Wesley Longman. ISBN 0-201-43320-6 . 
  • Edward A. Taft, Protocolo de información de puerta de enlace (revisado) (Xerox Parc, Palo Alto, mayo de 1979)
  • Estándar de integración de sistemas de Xerox: Protocolos de transporte de Internet (Xerox, Stamford, 1981)
Obtenido de "https://es.wikipedia.org/w/index.php?title=Protocolo_de_información_de_enrutamiento&oldid=1230859736"