Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porSarita Cerezo Modificado hace 11 años
1
ALGORITMOS DE ENRUTAMIENTO: BELLMAN-FORD, DIJKSTRA
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA ALGORITMOS DE ENRUTAMIENTO: BELLMAN-FORD, DIJKSTRA Profesor Daniel Díaz Ataucuri Catedrático Titular a Tiempo Parcial FIEE-UNI / UNMSM Director de Investigación y Desarrollo Tecnológico del INICTEL-UNI Lima, Agosto-Diciembre de 2012 Palacio Real-España
2
ALGORITMO BELLMAN-FORD ó Vector Distancia
3
RFC 4271: “A Border Gateway Protocol 4 (BGP-4)”
PROTOCOLOS DE ENRUTAMIENTO IGP: RIP, IGRP, OSPF, EIGRP EGP: BGP SISTEMA AUTÓNOMO Dos niveles de jerarquía de enrutamiento: ► Dentro del dominio y entre dominios (interdomain routing) RFC 4271: “A Border Gateway Protocol 4 (BGP-4)”
4
ALGORITMO DE Bellman-Ford:Vector Distancia
5 2 3 1 6 4 d(2,3)=3 d(1,2)=2 d(1,1)=0 D3 (1) = 5 d(1,5)= ∞ Dn = ∞, para todo n ≠ s (0) Ds = 0, para todo h (h) INICIO s = nodo fuente d(i,j) = costo del enlace de i hacia j h = número máximo de enlace Dn = costo del camino de menor costo desde el nodo s al nodo n (h) Dn = Min [ ] (h+1) Dj + djn (h) Para cada sucesivo h≥0
5
ALGORITMO DE Bellman-Ford:Vector Distancia
h = 1 D2 = 2 (1) D3 = 5 D4 = 1 2 3 4 1 5 D2 = 2 (1) D3 = 5 D4 = 1 2 3 4 1 5 D2 = 2 (1) D3 = 5 D4 = 1 2 3 4 1 5 3 2 D3 = 4 (2) D5 = 2 D2 = 3 D4 = 4 (2) D3 = 5 2 3 5 1
6
ALGORITMO DE Bellman-Ford:Vector Distancia
(1) D3 = 5 D4 = 1 2 3 4 1 5 h = 1 D2 = 2 (1) D3 = 5 D4 = 1 2 3 4 1 5 D2 = 2 (2) D3 = 4 D4 = 1 2 3 4 1 6 5 D6 = 10 D5 = 2 h = 2 5 1 6 D6 = 10 (2) D5 = 6
7
ALGORITMO DE Bellman-Ford:Vector Distancia
(1) D3 = 5 D4 = 1 2 3 4 1 5 h = 1 D3 = 3 (3) D6 = 4 D6 = 10 (2) D2 = 2 D3 = 4 D4 = 1 2 3 4 1 6 5 D5 = 2 D6 = 4 (3) D2 = 2 D3 = 3 D4 = 1 2 3 4 1 6 3) 5 D5 = 2 h = 3 1 2
8
ALGORITMO BELLMAN-FORD (1/8)
(Vector Distancia) Adiciona el costo del enlace Desde A hacia Enlace Costo A Local Desde B hacia B Desde C hacia C Desde D hacia D Desde E hacia E Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Costo del= enlace 1 Envía su vector A=0 Nodo A tiene en su tabla un vector de distancia de A=0 Nodo B tiene en su tabla un vector de distancia de B=0 Nodo C tiene en su tabla un vector de distancia de C=0 Nodo D tiene en su tabla un vector de distancia de D=0 Nodo E tiene en su tabla un vector de distancia de E=0
9
ALGORITMO BELLMAN-FORD (2/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 B 1 A 2 B 2 1 A D 3 1 A 2 Envía sus vec- tores B=0,A=1 Envía sus vec- tores B=0,A=1 Envía sus vec- tores D=0,A=1 tores B=0,A=1 Envía sus vec- B 4 1 A 2 D 6 1 A 2 Nodo B tiene en su tabla dos vectores de distancia de B=0 y A=1 Nodo D tiene en su tabla dos vectores de distancia de D=0 y A=1
10
ALGORITMO BELLMAN-FORD (3/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 A 1 B 2 D Envía sus vecto- res A=0,B=1,D=1 A 3 1 B 2 D Nodo A tiene en su tabla tres vectores de distancia de A=0, B=1 y D=1 Nodo C tiene en su tabla tres vectores de distancia de C=0, B=1 y A=2 Nodo E tiene en su tabla tres vectores de distancia de E=0, B=1, A=2 y D=1
11
ALGORITMO BELLMAN-FORD (4/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 C 2 1 B A 3 Envía sus vecto- res C=0,B=1,A=2 C 5 1 B 2 A 3
12
ALGORITMO BELLMAN-FORD (5/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 E 6 1 B 2 A 3 D C 5 4 Envía sus vectores Vectores E=0, B=1 A=2, D=1 y C=1
13
ALGORITMO BELLMAN-FORD (6/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5
14
ALGORITMO BELLMAN-FORD (7/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 Vectores B=0, A=1 D=2, C=1 y E=1 B 1 A 2 D 3 C E 4 E 5 1 E 4 1 D 5 2 Envía sus vectores E 6 1 C 6 2
15
ALGORITMO BELLMAN-FORD (8/8)
Enlace 1 Enlace 2 Enlace 6 Enlace 5 Enlace 3 A B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 Por fin converge el algoritmo
16
VECTOR DISTANCIA: enlace cortado (1/7)
B C D E Enlace 4 Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5
17
VECTOR DISTANCIA: enlace cortado (2/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 B=0, A= ,D= , C=1 y E=1 B 2 1 A D C E A=0, B= ,D=1, C= y E= B 4 1 A D C 2 E A 3 1 B D 2 C E
18
VECTOR DISTANCIA: enlace cortado (3/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 D 3 1 A 2 B E C D=0, A= 1,B= , E= 1 y C= 2 D 6 1 A 2 B E C 3
19
VECTOR DISTANCIA: enlace cortado (4/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 C=0, B= 1,A= , E= 1 y D= 2 C 2 1 B A E D 3 C 5 1 B 2 A E D 3
20
VECTOR DISTANCIA: enlace cortado (5/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 1 3 2 4 6 5 E 4 1 B 2 A 3 D C E 5 1 B 2 A 3 D C E=0, B= 1,A= 2, D= 1 y C= 1 E 6 1 B 2 A 3 D C
21
VECTOR DISTANCIA: enlace cortado (6/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 4 3 1 2 5 6 D 3 1 A 2 B E C D=0, A= 1,B= 2, E= 1 y C= 2 D 6 1 A 2 B 3 E C
22
VECTOR DISTANCIA: enlace cortado (7/7)
B C D E Enlace 4 Costo del enlace= Costo del enlace=1 Costo del Enlace=1 Desde A hacia Enlace Costo Local Desde B hacia Desde C hacia Desde D hacia Desde E hacia 4 3 1 2 5 6 Por fin converge el algoritmo
23
ALGORITMO DIJKSTRA ó Estado de Enlace
24
ALGORITMO DE Dijkstra D(v) p(v) c(i,j)
2 4 3 5 1 n-2 n-1 n i j c(i,j) p(v) c(i,j) = Costo del enlace desde el nodo i al nodo j Si los nodos no están directamente conectados c(i,j) = ∞ Por ejemplo, c(1,4) = ∞ D(v) = Costo del trayecto desde el nodo origen al destino v actual de menor costo. Por ejemplo; D(4) = c(1,3) + c(3,4) asumiendo que: c(1,3) + c(3,4) < c(1,2) + c(2,4) p(v) = Nodo previo, vecino a v, a lo largo del actual camino más corto desde el origen a v. Del ejemplo anterior, el nodo previo al nodo 4 es el nodo 3 = p(4) N = Grupo de nodos que definen el camino más corto desde el origen. Del ejemplo anterior: N = {1, 3, 4}
25
ALGORITMO DE Dijkstra Para el nodo de origen A: Inicialización:
Para todos los nodos v Si v es adyacente a A Entonces D(v) = c (A,v) Caso contrario D(v) = ∞ Lazo: Encontrar w que no pertenece a N tal que D(w) sea un mínimo Adicionar w a N Actualizar D(v) para todo v adyacente a w y no pertenece a N D(v) = min ( D(v) , D(w) + c(w,v) ) /*El nuevo costo a v es ó bien el antiguo costo a v ó el costo del camino más corto a w más el costo de w a v. */ Repetir hasta terminar con todos los nodos en N
26
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 5 2 3 1 A F B C D E A B C D E F Matriz de distancia = M (i,j) = ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 5 ∞
27
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Inicialización B C D (2,A) (5,A) (1,A) A Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞
28
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 1 (5,A) B C (2,A) (1,A) A 3 2 E D 1 (3,D) (4,D) (2,D)
29
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 1 B C (2,A) (5,A) (1,A) A 3 2 E D 1 (3,D) (4,D) (2,D) Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞
30
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 2 B C (2,A) (5,A) (1,A) A 3 2 E D 1 (3,D) (4,D) (2,D) (1,A) A D (4,D) 1 F C 2 (2,D) E (3,E) (4,E)
31
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 2 (1,A) A D (4,D) 1 F C 2 (2,D) E (3,E) (4,E) Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞ ADE , A , E ,E
32
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 3 (1,A) A D (4,D) 1 F C 2 (2,D) E (3,E) (4,E) (1,A) A D (2,A) B (2,D) E C 3 (3,E) (5,B)
33
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 3 (1,A) A D (2,A) B (2,D) E C 3 (3,E) (5,B) Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞ ADE , A , E ,E ADEB , E ,E
34
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 4 (1,A) A D (2,A) B (2,D) E C 3 (3,E) (5,B) (1,A) A D (2,A) B (2,D) E C (3,E) F 5 (4,E) (8,C)
35
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 4 (1,A) A D (2,A) B (2,D) E C (3,E) F 5 (4,E) (8,C) Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞ ADE , A , E ,E ADEB , E ,E ADEBC ,E
36
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Algoritmo Dijkstra para el nodo de origen A. ► Paso 5 (1,A) A D (2,A) B (2,D) E C (3,E) F (4,E) Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞ ADE , A , E ,E ADEB , E ,E ADEBC ,E ADEBCF ,E
37
EJEMPLO DEL ALGORITMO DE Dijkstra
Figura 4.4 del libro “Computer Networking”, J Kurose, pag 302 Creación de una árbol invertido desde nodo A. Paso N D(B), p(B) D(C), p(C) D(D), p(D) D(E), p(E) D(F), p(F) A , A , A , A ∞ ∞ AD , A , D ,D ∞ ADE , A , E ,E ADEB , E ,E ADEBC ,E ADEBCF ,E B D A 2 1 E C F
38
IMPLEMENTACION DEL ALGORITMO
DE DIJKSTRA Los routers deben conocer sus vecinos ► El router A debe conocer la existencia de los routers B, C y D. ► El router A debe enviar protocolo de descubrimiento. HELLO HELLO Cada router forma una base de datos con sus routers vecinos. A Router B Router C Router D B Router A F Router E
39
IMPLEMENTACION DEL ALGORITMO
DE DIJKSTRA Cada routers envía sus estados a sus routers vecinos ►Costo, máscara de enlace WAN, dirección IP, etc. 5 2 3 1 A F B C D E Estado A Estado C Estado A ►Cada router contiene una base de datos con los estados de los demás routers. Esta base de datos es idéntica en toda la red.
40
IMPLEMENTACION DEL ALGORITMO
DE DIJKSTRA B D A 2 1 E C F Estados de todos los routers 5 2 3 1 A F B C D E En cada router se aplica el algoritmo de Dijkstra. ► Es obtiene una topología de árbol invertido por router.
41
MUCHAS GRACIAS
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.