Un bucle de enrutamiento es un problema común en varios tipos de redes , en particular en las redes de computadoras . Se forman cuando ocurre un error en el funcionamiento del algoritmo de enrutamiento y, como resultado, en un grupo de nodos, la ruta hacia un destino particular forma un bucle. [1]
En la versión más simple, un bucle de enrutamiento de tamaño dos, el nodo A piensa que la ruta a algún destino (llamémoslo C) pasa por su nodo vecino, el nodo B. Al mismo tiempo, el nodo B piensa que la ruta a C comienza en el nodo A.
Por lo tanto, cada vez que el tráfico para C llega a A o B, se repetirá infinitamente entre A y B, a menos que exista algún mecanismo para evitar ese comportamiento.
Por ejemplo, en esta ilustración, el nodo A está transmitiendo datos al nodo C a través del nodo B. Si el enlace entre los nodos B y C se cae y B aún no ha informado al nodo A sobre la interrupción, el nodo A transmite los datos al nodo B asumiendo que el enlace ABC está operativo y es de menor costo. El nodo B sabe que el enlace está roto e intenta llegar al nodo C a través del nodo A, enviando así los datos originales de vuelta al nodo A. Además, el nodo A recibe los datos que originó de vuelta desde el nodo B y consulta su tabla de enrutamiento. La tabla de enrutamiento del nodo A dirá que puede llegar al nodo C a través del nodo B (porque aún no ha sido informado de la interrupción) enviando así sus datos de vuelta al nodo B creando un bucle infinito. Este problema de bucle de enrutamiento también se llama bucle de dos nodos .
Consideremos ahora qué sucede si tanto el enlace de A a C como el enlace de B a C desaparecen al mismo tiempo (esto puede suceder si el nodo C ha dejado de funcionar). A cree que C todavía es accesible a través de B, y B cree que C es accesible a través de A. En un protocolo de accesibilidad simple, como EGP , el bucle de enrutamiento persistirá para siempre.
En un protocolo de vector de distancia ingenuo, como el protocolo de información de enrutamiento , el bucle persistirá hasta que las métricas de C alcancen el infinito (la cantidad máxima de enrutadores que un paquete puede atravesar en RIP es 15. El valor 16 se considera infinito y el paquete se descarta).
En un protocolo de enrutamiento de estado de enlace , como OSPF o IS-IS , un bucle de enrutamiento desaparece tan pronto como la nueva topología de red se envía a todos los enrutadores dentro del área de enrutamiento. Suponiendo que la red es lo suficientemente confiable, esto sucede en unos pocos segundos. [2]
Los protocolos de enrutamiento por vector de distancia más nuevos, como EIGRP , DSDV y Babel, tienen prevención de bucles incorporada: utilizan algoritmos que garantizan que los bucles de enrutamiento nunca puedan ocurrir, ni siquiera de manera transitoria. Los protocolos de enrutamiento más antiguos, como RIP e IGRP, no implementan las formas más nuevas de prevención de bucles y solo implementan mitigaciones como horizonte dividido , envenenamiento de ruta y temporizadores de espera .