Está en la página 1de 13

Contenido

1. Enrutamiento de amplia difusión .......................................................................................... 2


2. Grafos .................................................................................................................................... 2
2.1. Caminos y rutas ............................................................................................................. 2
2.2. Ciclos ............................................................................................................................. 3
2.3. Árboles y grafos acíclicos .............................................................................................. 3
2.4. Subgrafos ....................................................................................................................... 3
3. Arboles de expansión ............................................................................................................ 4
3.1. Algoritmo de los árboles de expansión ......................................................................... 4
3.2. Algoritmos distribuidos para detectar árboles de expansión ....................................... 4
3.3. Árbol de expansión de peso mínimo ............................................................................. 5
3.3.1. Algoritmo de Kruskal ............................................................................................ 5
4. REACCION LENTA ANTE ERRORES DE LOS ENLACES ............................................................. 6
4.1. ALGORITMO DE DIJKSTRA ............................................................................................. 8
4.1.1. IMPLEMENTACIÓN DEL ALGORITMO DE DIJKSTRA ............................................. 11
5. PUENTES ROUTERS Y PASARELAS........................................................................................ 13

1
Enrutamiento

1. Enrutamiento de amplia difusión


Se dirige un paquete desde un origen hacia todos los nodos de la red.

Posibles soluciones:

Inundación: cada nodo envía el paquete a todos los links de salida, con este método se
descartan los paquetes recibidos por segunda vez.

Enrutamiento de árbol de expansión: se envía el paquete a lo largo de un árbol que


incluye todos los nodos de la red.

2. Grafos
Un grafo consta de un conjunto finito no vacío de nodos N y un conjunto de pares de nodos A
llamados arcos (enlaces o aristas)

FIGURA 1. GRAFOS

2.1. Caminos y rutas


Un camino es una secuencia de nodos en la que cada par de nodos adyacentes es un arco. Una
ruta es un camino sin nodos repetidos.

FIGURA 3. CAMINOS Y RUTAS

2
2.2. Ciclos
Un ciclo es un camino con n1=nk sin nodos repetidos excepto el origen

Grafo conexo

Un grafo conexo si existe una ruta entre cada par de nodos, mientras tanto un grafo inconexo
se puede separar en dos o más componentes conexos.

FIGURA 4. CICLOS

2.3. Árboles y grafos acíclicos


Un grafo a cíclicos es un gráfico sin ciclos, mientras tanto un árbol es un grafo a cíclico conexo
finalmente cuando se habla con esta clase de grafos el número de arcos de un árbol es siempre
uno menos que el número de nodos.

Empezar un nodo arbitrario y añadir un nodo cada vez que se añade un arco se se añade un arco
sin añadir un nodo el arco deberá ir a un nodo que ya esté en el árbol formando así un ciclo

2.4. Subgrafos
Un subgrafo se obtiene eliminando nodos y arcos de un grafo, todos los arcos adyacentes a un
nodo eliminado también deben ser eliminados

FIGURA 5. SUBGRAFOS

3
3. Arboles de expansión
Un árbol de expansión de g será un árbol si sigue las siguientes instrucciones es decir t es un
subgrafo de g con n igual a n y t será el árbol.

FIGURA 6. ARBOLES DE EXPANSION

Los arboles de expansión son utilices para difundir y recoger información de control en las redes
a veces son útiles también para el enrutamiento.

Para difundir los datos desde el nodo n se tienen los siguientes casos:

 El nodo n realiza una amplia difusión de los datos en todos los arcos del árbol adyacente.
Otros nodos retardan los datos en los arcos de otros árboles adyacentes
 Para recoger datos en el nodo n se tendrán los siguientes casos:
 Todas las ramas del árbol envían datos. Los otros nodos esperan la recepción de datos en
todos sus arcos salvo en uno adyacente y a continuación envían los datos recibidos más
los propios por el arco restante

3.1. Algoritmo de los árboles de expansión


El algoritmo nunca forma un ciclo, puesto que cada nuevo arco va a un nuevo nodo

T es un árbol de cada paso del algoritmo dato que t esta siempre conectado y cada vez que
añadimos un arco añadimos también un nodo.

Teorema si g es un grafo conexo de n nodos entonces tendremos los siguientes puntos

G contiene al menos n-1 arcos

G contiene un árbol de expansión

Si G contiene exactamente n-1 arcos, G es un árbol de expansión

3.2. Algoritmos distribuidos para detectar árboles de expansión


Para construir el árbol de expansión, los puentes primero tienen que escoger un puente que
funja como raíz del árbol. Toman esta decisión haciendo que cada uno difunda su número de
serie, instalado por fabricante y con garantía de ser único en el mundo. El puente con el menor
número de serie se vuelve la raíz. A continuación se construye un árbol con las rutas más cortas

4
de la raíz a cada puente. Este es árbol es de expansión. Si falla un puente se calcula un árbol
nuevo.

3.3. Árbol de expansión de peso mínimo


Dado un grafo conexo, no dirigido y con pesos en las aristas, un árbol de expansión mínima es un árbol
compuesto por todos los vértices y cuya suma de sus aristas es la de menor peso. Al ejemplo anterior
le agregamos pesos a sus aristas y obtenemos los arboles de expansiones siguientes:

FIGURA 7. ARBOL DE EXPANSION DE PESO MINIMO

De la imagen anterior el árbol de expansión mínima sería el primer árbol de expansión cuyo peso
total es 6.

El problema de hallar el Árbol de Expansión Mínima (MST) puede ser resuelto con varios
algoritmos, los más conocidos con Prim y Kruskal ambos usan técnicas voraces (greedy).

3.3.1. Algoritmo de Kruskal

Para poder comprender el algoritmo de kruskal será necesario revisar primer el tutorial de Union-
Find.
Como trabaja:
Primeramente ordenaremos las aristas del grafo por su peso de menor a mayor. Mediante la
técnica greedy Kruskal intentara unir cada arista siempre y cuando no se forme un ciclo, ello se
realizará mediante Union-Find. Como hemos ordenado las aristas por peso comenzaremos con la
arista de menor peso, si los vértices que contienen dicha arista no están en la misma componente
conexa entonces los unimos para formar una sola componente mediante Union(x , y), para
revisar si están o no en la misma componente conexa usamos la función SameComponent(x , y)
al hacer esto estamos evitando que se creen ciclos y que la arista que une dos vértices siempre
sea la mínima posible.

5
FIGURA 8. ALGORITMO DE KRUSKAL

4. REACCION LENTA ANTE ERRORES DE LOS ENLACES


Empezar con D3=1 y D2=100:

• Tras una iteración , el nodo 2 recibe D3 y D2 = min [1+1+100]=2

En la práctica, las longitudes de los enlaces a veces varían:

• Supongamos que falta el enlace entre los nodos 3 y 1 (en decir , d31=infinito)

• El nodo 3 se actualizara D3=d32+D2=3

• En el siguiente paso se actualizara el nodo 2:D2=d23+D3=4

• Tendrá que pasar casi 100 interacciones antes de que el nodo 2 encuentre la ruta
correcta al nodo 1

Posibles soluciones:

• Difundir también información de rutas

• Esperar antes de reenrutar por un camino con el correspondiente aumento de coste

• El nodo próximo al enlace fallido debería D= infinito algún tiempo para evitar bucles

INESTABILIDAD

6
FIGURA 9. INESTABILIDAD

A medida que las rutas cambian debido a las condicione del tráfico, Afecta a las cargas de los
enlaces por los que las rutas pueden oscilar

FIGURA 10. ANALISIS DE DATOS DE INESTABILIDAD

• Tener una tendencia independiente del flujo en las distancias de los arcos ayudara a
evitar este problema

• También es de gran ayuda la actualización asíncrona

ALGORITMO DE DIJKSTRA

• Calcula el camino más corto desde un nodo de origen dado a todos los demás nodos:

7
Requiere que los pesos de los arcos no sean negativos.

• El algoritmo se desarrolla en etapas :

Etapa K: en ellas se calcula cuáles son los K nodos más cercanos al origen

Etapa K+1 : dado los K nodos más próximos al nodo de origen , se averiguan el K+1

• Observación clave; la ruta hacia los K+1 nodos más cercanos incluye solo nodos que se
encuentren entre los K nodos más cercanos.

• Sea M el conjunto de nodos ya incorporados por el algoritmo :

Empezar con Dn = dsn para todos n (Dn = distancia del camino más corto desde el nodo n al nodo
de origen

Repetir hasta que M=N:

Encontrar el nodo W diferente de M que presenta la siguiente distancia de menor


coste al nodo de origen añadir W a M

Actualizar las distancias: Dn = min [Dn,Dw+dwn](para todos los nodos diferente de M)

Obsérvese que la actualización de Dn solo es necesaria para los nodos que a no están en M y
que la actualización requiere cálculo de una nueva distancia atravesando el nodo w
recientemente añadido.

Ejemplo:

4.1. ALGORITMO DE DIJKSTRA


El algoritmo de DIJKSTRA es una serie de paso en los cuales se busca encontrar la ruta más corta
entre dos o más puntos en un grafo.

Se tiene grafo para aplicar el algoritmo de Dijkstra:

FIGURA 11. ALGORITMO DE DIJKSTRA

Se escoge el nodo inicial, en este caso el nodo A. A continuación, se marca en el nodo la distancia
desde el nodo anterior, pero como no lo hay, se deja nulo:

8
De los nodos adyacente de A, se marca el peso acumulado junto con el nodo antecesor , es decir
,A.

De los nodos ya visitados, se escoge el nodo de menos pero acumulado, en este caso, en nodo C:

Se toma los nodos adyacentes A C que no estén marcados de azul y se calculan sus pesos
acumulados, sumando el que ya se tiene con el peso de la siguiente ruta, entonces:

Para B: 5+4=9 como el nodo B ya poseía un peso acumulado de 6, no se modifica.

Para D: 5+6=11. El nodo C ya poseía un peso de 8 por lo tanto tampoco se modifica

El grafo no sufre cambio alguno.

De nodos visitados y no marcados, e busca en de menor peso acumulado, en este caso, el nodo
B.

9
De los nodos adyacentes de B se mar.

El grafo queda el ca el peso acumulado junto al nodo antecesor (nodo B), entonces:

Para E: 6+3=9

Para D: 6+5=11,, pero D ya poseía un peso de 8 Así que no sufrirá cambio alguno .

El grafo queda entonces así :

De los nodos ya visitados y no marcados de azul, se toma el menor peso en este caso el D:

De los nodos adyacentes de D que no están marcados, se calculan los pesos acumulados:

10
Para E:8+2=10 . Como E poesía un peso de 9, no se modifica.

El grafo no tiene cambio alguno.

Como queda solo un nodo por seleccionar, se da por terminado el algoritmo, con el que ya se
puede determinar la ruta más corta del nodo de inicio (nodo A) a otro.

Teniendo en cuenta la solución, se marca de menor distancia tomando como guía el nodo
antecesor, hasta llegar el destino requerido.

4.1.1. IMPLEMENTACIÓN DEL ALGORITMO DE DIJKSTRA


• Versión centralizada : un solo nodo tiene información sobre la topología y calcula las
rutas:

Posterior mente, las rutas se pueden difundir ampliamente por el resto de la red.

• Versión distribuía : cada nodo i difunde {dij todo j } a todos los nodos de la red ; luego
todos los nodos pueden calcular los cambios más cortos al resto de los nodos :

Protocolos OSPF (OPEN SHORTEST PATH FRITST) utilizando en Internet.

ENRUTAMIENTO EN INTERNET

• Sistemas automáticos (AS)

Internet está dividida en sistemas autónomos, cada uno de ellos bajo el control de una
única autoridad.

11
• Los protocolos de enrutamiento se pueden clasificar en dos categorías:

a) Protocolos interiores: operan dentro de un AS

b) Protocolo exteriores: operan entre sistemas autónomos.

a) Protocolo de interiores:

• Generalmente utilizaremos del camino más corto

• Vector distancia : basándose en el Bellman-Ford distribuido

• Protocolos del estado de los enlaces: basados en el Dijkstra “distribuido”

Protocolos del vector distancia

• Basados en el algoritmo de Bellman-Ford distribuido:

• Os nodos intercambian información de la tabla de enrutamiento con sus vecinos.

Ejemplo 1:

• Protocolos de información de enrutamiento (RIP):

La mecánica utilizada es el conteo de saltos (dij =1)

La información del enrutamiento se intercambia cada 3 segundos.

• Protocolo de enrutamiento de pasarela interior (IGRP):

Propiedad de CISCO

La métrica tiene en cuenta la carga

Dij casi 1/(μ-ʎ) (retardo a través del enlace)

Se actualizara cada 90 segun con su capacidad de enrutamiento multiruta

• ENRUTAMIENTO ENTRE DOMINOS

• Utilizado para enturar paquetes a través de diferentes AS

• Opciones:

• Enrutamiento estatico : rutas configuradas manualmente

• Enrutamiento del vector distancia:

• Protocolo de pasarela exterior(EGP)

• Protocolo de pasarela de borde o fortaleza(BGP)

• Problemas:

• Que coste tiene la “METRICA” el uso de enrutamiento por vector distancia ?

Problemas de relaciones: los proveedores de red A puede no querer que los paquetes
de B circulen por su red o ien los dos proveedores pueden llegar a un acuerdo

Problema de coste: los proveedores de red se pueden cobrr entre ellos por la entrega
de paquetes.

12
5. PUENTES ROUTERS Y PASARELAS

• Un puente (bridge)se utiliza para conectar múltiples segmentos de redes LAN:

• Enrutamiento de la capa 2(Ethernet)

• No conoce la dirección IP

• Diferentes niveles de sofisticación:

• Los puentes sencillos son aquellos que reenvían los paquetes

• Los puentes inteligentes empiezan a aparecerse a los routers

• Un routers se utiliza para establecer la conexión entre diferentes redes mediante


la dirección de la capa de la red:

• Dentro de dirección de sistemas autónomos o entre ellos

• Con el mismo protocolo(ej.PI o ARM) Una pasarela ed una conexión entre redes
que utilizan distintos Protocolos:

• Realiza la conversión de protocolos de protocolos

• RESUELVE LA DIRECCION DE PROTOCOLOS

• Estas definiciones a ,menudo son mixtas y parecen evolucionar

13

También podría gustarte