Resumen
de redes
Comparación entre los protocolos de
enrutamiento Vector distancia y Estado de enlace.
El
enrutamiento de un protocolo basado en vector de distancias requiere que un
router informe a sus vecinos de los cambios en la topología periódicamente y en
algunos casos cuando se detecta un cambio en la topología de la red. Comparado
a los protocolos de estado de enlace, que necesitan que un router informe a
todos los nodos de una red acerca de los cambios en su topología, los
algoritmos de vector de distancias tienen mucha menos complejidad
computacional. Además, las principales características de los diferentes
algoritmos VD (vector de distancias) son siempre las mismas.
Limitaciones
Un
problema es el de la transmisión de malas noticias por la red tales como la
ruptura de un enlace o la desaparición de un nodo. Este algoritmo converge
lentamente en estos casos. Aunque el principal inconveniente de este algoritmo
es el de la cuenta a infinito.
Ventaja
Recorte por horizonte dividido.
Se trata
de una de las soluciones utilizadas para solventar el conteo a infinito. Es una
modificación del algoritmo VD para evitar que un nodo informe a su vecino sobre
la distancia que conoce hasta el nodo X cuando la trayectoria hacia X pasa a
través de ese nodo vecino. Lo que realmente hace es informar que dicha
distancia es infinita.
El
algoritmo por horizonte dividido consigue que las “malas noticias” se propaguen
con la misma rapidez que las “buenas noticias”. Sin embargo este algoritmo no
funciona para todas las combinaciones de topologías posibles por lo que sólo
mitiga el problema sin solucionarlo. Esto ha llevado al desarrollo de más
complejos algoritmos de encaminamiento tales como los de estado de enlace.
A continuación vamos a describir el protocolo Estado de
enlace, asi como también se abordaran las comparaciones con respecto al
protocolo anterior.
Estado de enlace
Estado de
enlace Se basa en que un router o encaminador comunica a los restantes nodos de
la red, identifica cuáles son sus vecinos y a qué distancia está de ellos. Con
la información que un nodo de la red recibe de todos los demás, puede construir
un "mapa" de la red y sobre él calcular los caminos óptimos. El
encaminamiento por estado de enlace nace en 1979 cuando en ARPANET sustituyó al
método de vector de distancias.
Funcionamiento
Lo
podemos dividir en cinco pasos fundamentales:
1.
Descubrir a sus vecinos y sus direcciones.
2. Medir
el costo a cada uno de sus vecinos.
3.
Construir el paquete con la información recabada.
4. Enviar
este paquete al resto de routers.
5.
Calcular la ruta mínima al resto de routers.
Determinar
los vecinos de cada nodo. Lo primero que debe hacer un router al activarse es
averiguar quiénes son sus vecinos. Para ello, manda un paquete especial
dependiendo que protocolo utilices, si es OSPF utilizara HELLO por cada línea
punto a punto. Todo router que reciba este paquete debe responder indicando su
identidad.
Cálculo
del coste a los vecinos. Para medir el retardo a cada nodo, el router manda un
paquete especial ECHO a través de la línea el cual debe volver a su origen. El
tiempo de ida y vuelta dividido entre dos nos da una aproximación razonable del
costo a cada vecino de la red.
Elaboración
de paquete de estado de enlace. El siguiente paso consiste en que cada router
construye un paquete con todos los datos que informan del estado de la red. La
estructura de este paquete es la siguiente:
·
Identidad
del router
·
Secuencia
·
Edad
·
Lista de
nodos vecinos
El
problema de esta etapa es el momento de la creación de estos paquetes. Hay
varias alternativas como hacerlo de manera periódica o bien cuando haya ocurrido
un evento en la red como la caída de un nodo.
Distribución
del paquete de estado de enlace. Es la parte más complicada del algoritmo.
Básicamente lo que hace, es repartir el paquete por toda la red por inundación.
Para controlarla, cada paquete incluye un número de secuencia que aumenta con
cada paquete nuevo enviado. Cada router contiene una tabla con toda la
información de tal manera que:
- Si recibe un paquete nuevo, este se envía por todas las líneas excepto por la que llega.
- Si se trata de un duplicado, lo elimina.
- Si es un paquete con secuencia menor que el mayor visto hasta el momento, lo rechaza.
A pesar
de todo, surgen ciertos problemas como el reinicio de la secuencia. Si ocurre
esto, se producirá un caos en la red. Este problema se soluciona usando
secuencias de 32 bits, lo suficientemente grandes para no tener que poner la
secuencia a 0 suponiendo que se envía un paquete por segundo. Otros conflictos
surgen en el caso de caída de un router (reinicio del número de secuencia) o si
se recibe un número de secuencia equivocado por haberse modificado alguno de
sus bits durante la transmisión. La solución para esto, es introducir la edad
de cada paquete e ir disminuyéndola en un intervalo pequeño de tiempo. Cuando
la edad llegue a 0, estos paquetes son descartados. Además, este método permite
que los paquetes no circulen de manera indefinida por la red. Cálculo de ruta
mínima. Una vez que el router ha completado la recopilación de información,
puede construir el grafo de la subred. De esta manera, se puede utilizar el
algoritmo de Dijkstra para calcular el camino más corto a todos los nodos.
Estado de enlace vs vector
distancia
A
continuación se realiza una comparativa entre estos dos algoritmos:
Ancho de
banda. Puesto que la métrica de retardo es la longitud de la cola, el vector
distancia no considera el ancho de banda usado. Antes de 1979 el máximo ancho
de banda era de 56Kb posteriormente se modernizaron las líneas a 230Kbps o
incluso a 1,5Mbps lo que hizo necesario el uso de mejores técnicas.
Convergencia.
El algoritmo por vector distancia tarda demasiado en converger aún con la
técnica del horizonte dividido. Información de la red. En encaminamiento por
vector distancia, cada router envía información sólo a sus vecinos, pero esta
es sobre toda la red. Sin embargo el encaminamiento por EE envía a todos los
nodos de la red, pero su información es relativa a sus vecinos. Además el
enrutamiento por vector distancia no permite conocer la topología de la red.
Capacidad
y uso de memoria. Con algoritmos basados en estado de enlace, el tráfico de la
red siempre es el mismo sin depender del tamaño de la red. Con vectores
distancia, se transmiten vectores de un tamaño proporcional al número de nodos.
El routing por vector distancia sólo guarda las distancias al resto de nodos.
Con estado de enlace se ha de almacenar además la topología de la red.
Sucesos
en la red. Al no tener información sobre la topología, el routing por vector
distancia no se adapta tan bien a los cambios en la red como el basado en
estado de enlace. Sin embargo, el encaminamiento basado en vector distancia es
mucho más sencillo que el de estado de enlace, lo que en ocasiones puede
resultar bastante útil.