Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Trabajo de Algoritmos de Enrutamiento PDF
Trabajo de Algoritmos de Enrutamiento PDF
TRABAJO
Estudiante:
KAREN LORENA RUIZ
Docente:
ORLANDO CRISTANCHO
INGENIERÍA DE SISTEMAS
● La subred
● La máscara d e la subred
● La interfaz de salida de R1 (S0/0/0) o el siguiente salto (next-hop), es
decir la dirección IP (172.16.4.2) configurada en la interfaz del siguiente
enrutador, que es R2.
● ENRUTAMIENTO DINÁMICO:El enrutamiento adaptativo, también llamado
enrutamiento dinámico, es un proceso para determinar la ruta óptima que
debe seguir un paquete de datos a través de una red para llegar a un destino
específico. El enrutamiento adaptativo se puede comparar con un viajero
tomando una ruta diferente hacia el trabajo después de saber que el tráfico
en su ruta habitual está retrasado.
El enrutamiento adaptativo utiliza algoritmos y protocolos de enrutamiento
que leen y responden a cambios en la topología de la red. Además de Open
Shortest Path First (OSPF), otros protocolos de enrutamiento que facilitan el
enrutamiento adaptativo incluyen el protocolo de Sistema Intermedio a
Sistema Intermedio (IS-IS) para redes grandes como internet y el protocolo de
información de enrutamiento (RIP) para transporte de corta distancia.
Al igual que el GPS, que utiliza información sobre las condiciones del camino
para redirigir a los conductores, el enrutamiento adaptativo utiliza
información sobre la congestión de la red y la disponibilidad del nodo para
dirigir los paquetes. Cuando un paquete llega a un nodo, el nodo utiliza
información compartida entre routers de red para calcular qué ruta es la más
adecuada. Si la ruta predeterminada está congestionada, el paquete se envía
a lo largo de una ruta de acceso diferente y la información se comparte entre
routers de red.
Ventajas y retos del enrutamiento adaptativo
El propósito del enrutamiento adaptativo es ayudar a prevenir fallos en la
entrega de paquetes, mejorar el rendimiento de la red y aliviar la congestión
de la red. El enrutamiento adaptativo puede causar que los nodos se
sobrecarguen, sin embargo, debido a las complejas decisiones de
procesamiento que toman. Dado que los enrutadores comparten información
sobre la topología de red, el enrutamiento adaptativo puede ser menos seguro
que los procesos de enrutamiento no adaptativos, y requiere más ancho de
banda.
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.
El algoritmo Bellman-Ford utilizado en VD no previene de la aparición de
bucles. Aunque protocolos como IGRP están modificados para detectar
bucles en la red. El problema de la cuenta a infinito es que hace que los
costes o distancias se incrementen indefinidamente sin que el algoritmo
llegue a converger nunca.
Para ilustrarlo, tomemos como ejemplo el de la figura.
● Inicialmente A está desactivado. Cuando A se activa, B se entera de
que A existe al recibir su vector distancia y actualizar su tabla
indicando que A dista 1.
● El nodo C se entera de que A existe porque B le indica que tiene un
enlace hacia A de coste 1. Entonces C actualiza su tabla
registrando una trayectoria hacia A de coste 2.
● Si el nodo A se desconecta entonces B no recibe el VD de A. Sin
embargo el nodo C le dice que tiene una trayectoria hasta A de
distancia 2. B no sabe que la trayectoria de C a A pasa por el mismo
y por tanto cree que puede llegar a A a través de C por lo que
actualiza su tabla registrando la distancia 2 + 1 = 3 hasta A
● En el siguiente intercambio, el nodo C comprueba que sus vecinos
B y D tienen una trayectoria hasta A de distancia 3. C calcula su
propia distancia hasta A en 3 + 1 = 4. En los siguientes
intercambios, los nodos elevan ilimitadamente su distancia a A
(cuenta a infinito).
Mientras no se interrumpa la cuenta a infinito, el algoritmo no converge.
Aunque se han propuesto diversas soluciones a este problema
● ENRUTAMIENTO POR ESTADO DE ENLACE:
Los protocolos de estado-enlace o SPF (Shortest Path First = Primero el
camino más corto) requieren que cada router tenga información de la
topología completa de la red, es decir, que todos los routers tengan un mapa
que muestre a los demás routers y las redes que conectan.
Los routers envían periódicamente mensajes cortos para comprobar el
estado de todos los enlaces con routers vecinos. Si el router vecino está
activo, se define el enlace como activo (up) y en caso contrario se define el
enlace como inactivo o caído (down).
Los routers difunden la información sobre el estado de sus enlaces
conocidos a los routers vecinos. Esta información sólo se envía cuando se
produce un cambio.
En cada router la información de la topología de la red se almacena en forma
de árbol, donde los routers se corresponden con los nodos y las redes
accesibles con los arcos o enlaces entre nodos. El propio router será el nodo
raíz y las ramas son todas las rutas posibles hacia cada red destino.
Los routers transmiten este grafo a los routers adyacentes. Una vez que llega
la información a cada router, se evalúa y se calcula cual es la ruta más
adecuada para cada destino, para ello se utiliza el algoritmo Dijkstra que se
encarga de recalcular las rutas más cortas.
El router elabora una lista de las mejores rutas a las redes de destino y de las
interfaces que permiten llegar a ellas. Esta información se incluye en la tabla
de encaminamiento.
Entre los inconvenientes de los protocolos de estado-enlace es que los
routers que los usan requieren más memoria y más capacidad de
procesamiento, que los que usan protocolos de enrutamiento por
vector-distancia. Los routers deben tener la memoria suficiente para
almacenar la tabla de encaminamiento, el árbol completo con la topología de
la red y los sucesivos pasos del algoritmo de Dijkstra para el cálculo de la
distancia más corta. Además se requiere de una potencia mayor de proceso
de datos para poder ejecutar el algoritmo de Dijkstra.
Cuando se inician los routers de la red, el ancho de banda consumido por los
algoritmos de estado-enlace es alto ya que todos los routers envían la
información inicial a los demás. Esta acción genera un gran volumen de
tráfico y reduce temporalmente el ancho de banda disponible para el tráfico
de los usuarios. Después de esta disminución inicial de la eficiencia de la red,
los protocolos de enrutamiento de estado-enlace generalmente consumen un
ancho de banda mínimo, sólo para envíos ocasionales de mensajes que
informan de algún cambio en la topología.
Los protocolos de estado-enlace convergen más rápidamente que los de
vector-distancia, puesto que se envía menos cantidad de información y
menos veces.
El protocolo OSPF es un protocolo de estado-enlace.
Protocolo OSPF
El protocolo OSPF, Open Short Path First (Primero la ruta más corta), es uno
de los protocolos del estado-enlace más importantes. Este protocolo
estándar descrito en el RFC 2328 se caracteriza por:
● Realizar la actualización de la información de encaminamiento según
el algoritmo de estado-enlace.
● Utilizar el algoritmo SPF (Short Path First) para calcular el costo más
bajo hasta un destino.
● Poder determinar la red destino del mensaje utilizando máscaras
diferentes a la máscara por defecto de la clase a la que pertenece el
equipo destino. Es un protocolo classless o sin clases
● Soportar tipos de servicio. Los administradores de red pueden instalar
múltiples rutas hacia un destino dado, una por cada tipo de servicio.
● Proporcionar balanceo de carga entre rutas de igual peso. Si un
administrador especifica múltiples rutas hacia un destino con el
mismo coste, el protocolo OSPF distribuye el tráfico entre todas las
rutas de la misma manera. Esta es una diferencia importante con
respecto a RIP que calcula una sola ruta para cada destino.
● Permitir la partición en áreas y sistemas autónomos para el
encaminamiento independiente en cada área. Los anuncios del estado
de los enlaces se envían a todos los routers de un área.
● Realizar la localización automática de routers vecinos.
● Permitir la propagación de rutas aprendidas de fuentes externas.
● Propagar entre los enlaces las tablas de encaminamiento sólo cuando
se detecta un cambio en la configuración de la red, ya que cuando se
realizan actualizaciones, se produce un gran volumen de tráfico en la
red.
● El protocolo OSPF supera las limitaciones de otros protocolos; como,
por ejemplo, RIP que converge lentamente y a veces elige rutas lentas
porque no tiene en cuenta aspectos críticos como el ancho de banda a
la hora de determinar la ruta.
2. Algoritmos de enrutamiento:
● Algoritmo de Dijkstra:
También llamado algoritmo de caminos mínimos, es un algoritmo para la
determinación del camino más corto dado un vértice origen al resto de
vértices en un grafo con pesos en cada arista. Su nombre se refiere a Edsger
Dijkstra, quien lo describió por primera vez en 1959.
Aplicaciones:En múltiples aplicaciones donde se aplican los grafos, es
necesario conocer el camino de menor costo entre dos vértices dados:
● Distribución de productos a una red de establecimientos comerciales.
● Distribución de correos postales.
Sea G = (V, A) un grafo dirigido ponderado.
El problema del camino más corto de un vértice a otro consiste en determinar
el camino de menor costo, desde un vértice u a otro vértice v. El costo de un
camino es la suma de los costos (pesos) de los arcos que lo conforman.
● Es un algoritmo greddy.
● Trabaja por etapas, y toma en cada etapa la mejor solución sin considerar
consecuencias futuras.
● El óptimo encontrado en una etapa puede modificarse posteriormente si
surge una solución mejor.
Compara todos los posibles caminos a través del grafo entre cada par de
vértices. El algoritmo es capaz de hacer esto con sólo V3 comparaciones, lo hace
mejorando una estimación del camino más corto entre dos vértices, hasta que se
sabe que la estimación es óptima.
Sea un grafo G con conjunto de vértices V, numerados de 1 a N. Sea además
una función caminoMinimo(i,j,k) que devuelve el camino mínimo de i a j usando
únicamente los vértices de 1 a k como puntos intermedios en el camino. Ahora,
dada esta función, el objetivo es encontrar el camino mínimo desde cada i a cada
j usando únicamente los vértices de 1 hasta k + 1.
Hay dos candidatos para este camino: un camino mínimo, que utiliza únicamente
los vértices del conjunto (1...k); o bien existe un camino que va desde i hasta k +
1, después de k + 1 hasta j que es mejor. Sabemos que el camino óptimo de i a j
que únicamente utiliza los vértices de 1 hasta k está definido por
caminoMinimo(i,j,k), y está claro que si hubiera un camino mejor de i a k + 1 a j,
la longitud de este camino sería la concatenación del camino mínimo de i a k + 1
(utilizando vértices de (1...k)) y el camino mínimo de k + 1 a j (que también utiliza
los vértices en (1...k)).
Para que haya coherencia numérica, Floyd-Warshall supone que no hay ciclos
negativos (de hecho, entre cualquier pareja de vértices que forme parte de un
ciclo negativo, el camino mínimo no está bien definido porque el camino puede
ser infinitamente pequeño). No obstante, si hay ciclos negativos, Floyd-Warshall
puede ser usado para detectarlos. Si ejecutamos el algoritmo una vez más,
algunos caminos pueden decrementarse pero no garantiza que, entre todos los
vértices, caminos entre los cuales puedan ser infinitamente pequeños, el camino
se reduzca. Si los números de la diagonal de la matriz de caminos son negativos,
es condición necesaria y suficiente para que este vértice pertenezca a un ciclo
negativo.
PSEUDOCÓDIGO
ALGORITMOS DE BELLMAN-FORD
● Cada ruteador mantiene una tabla (un vector) que almacena las mejores
distancias conocidas a cada destino y las líneas a usar para cada destino. Se
actualizan las tablas intercambiando información con los vecinos.
● La tabla de un ruteador almacena una entrada para cada uno de los ruteadores
en la subred (los ruteadores son los índices). Las entradas almacenan la línea
preferida de salida y una estimación del tiempo o la distancia al destino. Se
pueden usar métricas distintas (saltos, retrasos, etc.).
● Cada ruteador tiene que medir las distancias a sus vecinos. Por ejemplo, si la
métrica es el retraso, el ruteador la puede medir usando paquetes de eco.
● Cada T msegs los ruteadores intercambian sus tablas con sus vecinos. Un
ruteador usa las tablas de sus vecinos y sus mediciones de las distancias a sus
vecinos para calcular una nueva tabla.
Este algoritmo funciona en teoría, pero tiene un gran problema en la práctica: aunque
converge en la respuesta correcta, puede hacerlo de forma lentamente. En particular,
reacciona con rapidez a las buenas noticias, pero con lentitud ante las malas.
Ejemplo:
Aquí tenemos un ejemplo de cómo se actualiza la tabla de encaminamiento del nodo J,
supóngase que se reciben 4 vectores de retardos de los nodos vecinos al enrutador J.
El retardo desde J a sus vecinos A,I,H,K, es de 8,10,12,6 mseg, respectivamente.
Por ejemplo, para estimar el valor a C, se procedería de la siguiente forma, se sabe que
los tiempos son 25,18,19 y 36 mseg, el menor de estos es 18, que es ofrecido por el
enrutador I, luego J actualizará la distancia a C, con 18 + lo que tarda en llegar a I, que
es 10, luego sería 18+10 =28 y la línea de salida sería I.
Algoritmos aislados.
Algoritmos de inundación:
El principal inconveniente que plantea este método es el gran número de paquetes que
se generan, que llegaría a ser infinito si no se establece alguna forma de limitación.
Existen diversas posibilidades para ello. Por ejemplo, cada nodo puede mantener una
lista de los paquetes ya transmitidos, y al recibir un duplicado destruirlo y no
retransmitirlo. Otra posibilidad, más simple, es limitar el tiempo de vida del paquete. En
uno de sus campos puede incluirse un contador de saltos, que se decrementará cada
vez que el paquete atraviese un enlace; Cuando el contador llega a cero el paquete se
descarta. El valor del contador puede inicializarse al diámetro de la red.
Este método de encaminamiento permite encontrar todas las rutas posibles entre origen
y destino, entre ellas la ruta mínima; por lo que puede utilizarse como métrica para
comparar con otros métodos o para establecer la ruta de un circuito virtual. Por el
mismo motivo es, además, muy robusto lo que hace adecuada su aplicación en
entornos militares.
Son los usados en redes locales. Cuando llega un paquete a un nodo con destino a otro
nodo cualquiera, se hace lo siguiente:
Si el destino se conoce, se envía el paquete por la ruta que se indica en las tablas.
En principio, cuando todos los nodos hayan aprendido las mejores rutas se acabará la
inundación. Sin embargo, a las entradas se les asocia un tiempo de vida, que se
renueva cada vez que se hace uso de la entrada. Si transcurrido el tiempo de vida la
entrada no ha sido empleada se borra, volviendo a inundar. Así se logra que la red se
adapte a los cambios.
Al nodo C le llega por la puerta 1 un paquete con origen en A y destino D. Puede ser
que C no sepa dónde está situado el nodo D pero aprende que A es accesible por la
puerta 1, y escribe esta información en su tabla de Enrutamiento. Así, si le llega luego
un paquete con destino al nodo A, lo mandará por la puerta 1.
1er método: consiste en enviar paquetes a todos los demás nodos (tráfico unicast).
Este método es poco eficiente porque por un mismo nodo pasan varios paquetes
iguales, además de que no elimina el problema de la formación de bucles. Por ejemplo,
en la red de la Figura 7, para encaminar de A a D hay que difundir de A a todos los
demás nodos, incluyendo D; entonces, entramos en un bucle.
2o método: hace una inundación: se manda un paquete de un nodo origen a todos los
demás. Este tampoco es un buen método, porque consume muchos recursos y también
puede hacer que aparezcan bucles.
4o método: se hace un reenvío por ruta hacia atrás (Reverse Path Forwarding). No
requiere calcular el árbol de expansión. Los nodos tienen calculadas las rutas, y cuando
tienen que ayudar a difundir no siempre se hace inundación: se mira la dirección origen
del paquete; si llega por el enlace que utiliza el nodo para ir al origen inunda; si llega por
otra ruta el nodo considera que el paquete esta dando vueltas y lo descarta. Por
ejemplo, en la red de la Figura 7 el nodo C tiene en su tabla de Enrutamiento que los
paquetes con origen en A le llegan por la puerta 1; entonces, si le llega un paquete con
origen en A por esa puerta inunda y en caso contrario lo descarta.
BIBLIOGRAFÍA:
1.https://sites.google.com/site/cursoenlineaccna1/unidad-3-capa-de-red-o
si/3-4-procesos-de-enrutamiento-como-se-aprenden-las-rutas/3-4-3-enrut
amiento-dinamico
2.h
ttps://debian-handbook.info/browse/es-ES/stable/sect.dynamic-routing.
html
3.https://es.wikipedia.org/wiki/Vector_de_distancias
4.https://sites.google.com/site/redeslocalesyglobales/6-arquitecturas-de-re
des/6-arquitectura-tcp-ip/9-protocolos-tcp-ip/protocolos-de-nivel-de-red/e
nrutamiento-estado-enlace-ospf