UNIVERSIDAD
NACIONAL DE INGENIERIA
ENRUTAMIENTO DINAMICO: Bellman-Ford, Dijkstra
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA
Ingeniera de Telecomunicaciones
Copyright @ 2009
Lima-Per
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION
DE TELECOMUNICACIONES, INICTEL-UNI
ddiaz@inictel-uni.edu.pe
ENRUTAMIENTO DINMICO:
ALGORITMOS BELLMAN-FORD Y DIJKSTRA
SISTEMA
AUTONOMO
http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_9-1/ipj_9-1.pdf
ddiaz@inictel-uni.edu.pe
ddiaz@inictel-uni.edu.pe
ddiaz@inictel-uni.edu.pe
PROTOCOLOS DE ENRUTAMIENTO
IGP: RIP, IGRP, OSPF, EIGRP
SISTEMA AUTNOMO
SISTEMA AUTNOMO
ddiaz@inictel-uni.edu.pe
EGP: BGP
Informacin de CISCO
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI
ddiaz@inictel-uni.edu.pe
Caractersticas
RIP
OSPF
IGRP
EIGRP
Tipo
Distance-Vector
Link-State
Tiempo de convergencia
Lento
Rpido
Lento
Rpido
Soporta VLSM
No
Si
No
Si
Alto
Bajo
Alto
Bajo
Consumo de recursos
Bajo
Alto
Bajo
Bajo
Mejor escalamiento
No
Si
Si
Si
Libre uso
Libre uso
Propietario
Propietario
Distance-Vector Distance-Vector
ddiaz@inictel-uni.edu.pe
ALGORITMO
BELLMAN-FORD
Vector Distancia
http://neo.lcc.uma.es/evirtual/cdd/tutorial/red/bellman.html
ddiaz@inictel-uni.edu.pe
2
2
=5
3
5
d(2,3)=3
s = nodo fuente
2
4
5
d(1,5)=
(0)
Dn
(h)
Ds
INICIO
= , para todo n s
= 0, para todo h
ddiaz@inictel-uni.edu.pe
D3
(h)
Dn = Min [ Dj + djn ]
(1)
D2 = 2
D3 = 5
h=1
1
D4 = 1
(1)
D2 = 2
2
(1)
(1)
3
D3 = 5
3
(2)
D3 = 5
D2 = 2
D2 = 3 2
2
1
(2)
D3 = 4
1
(2)
4 D4 = 4
D3 = 5
(2)
(1)
(1)
(1)
D4 = 1
D4 = 1
(2)
5 D5 = 2
ddiaz@inictel-uni.edu.pe
(1)
(1)
D2 = 2
D3 = 5
h=1
1
D4 = 1
(1)
(2)
(1)
D2 = 2
D3 = 5
D6 = 10
(2)
D2 = 2
D3 = 4
4
(1)
D4 = 1
D5 = 6
(2)
3
1
(2)
D6 = 10
1
1
(2)
4
(2)
D4 = 1
h=2
(2)
D5 = 2
ddiaz@inictel-uni.edu.pe
(1)
(1)
D2 = 2
D3 = 5
h=1
1
D4 = 1
(3)
(2)
(2)
D2 = 2
D3 = 4
(3)
(2)
D6 = 10
3
1
D3 = 3
4
(2)
D4 = 1
(3)
D6 = 4
2
(3)
D2 = 2
D3 = 3
3)
D6 = 4
6
1
1
1
(2)
(3)
D5 = 2
D4 = 1
(3)
D5 = 2
h=3
ddiaz@inictel-uni.edu.pe
(1)
Enlace 1
Costo del enlace=1
Adiciona el
costo del enlace
D
Desde D hacia Enlace Costo
D
Local
Enva su vector
A=0
Enlace 3
Costo del
Enlace=1
Enva su vector
A=0
Local
Enlace 6
Costo del enlace=1
Local
C
Enlace 2
Costo del enlace=1
Costo del=
enlace 1
Local
Enlace 4
Local
ddiaz@inictel-uni.edu.pe
Adiciona el
costo del enlace
B
A
Local
1
Enlace 3
Costo del
Enlace=1
D
Desde D hacia Enlace Costo
D
A
Local
3
0
1
Enlace 1
Costo del enlace=1
0
1
C
B
A
Local
2
2
0
1
2
Enlace 2
Costo del enlace=1
Costo del
Enlace=1
Local
1
1
3
3
Enlace 4
A
B
A
D
A
Local
4
4
6
6
0
1
2
1
2
ddiaz@inictel-uni.edu.pe
Enlace 1
Costo del enlace=1
Enlace 3
Costo del
Enlace=1
D
Desde D hacia Enlace Costo
D
A
A
B
D
Local
3
3
3
3
0
1
1
2
2
B
A
A
Enva sus vecto-B
res A=0,B=1,D=1D
Enlace 6
Costo del enlace=1
Local
1
1
1
B 1
0
1
1
2
2
Local
2
2
0
1
2
Enlace 2
Costo del enlace=1
Local
4
4
6
0
1
2
1
ddiaz@inictel-uni.edu.pe
Local
1
3
Enlace 4
A
B
D
Costo del
Enlace=1
B
A
D
C
B
Enlace 1A
A
Enlace 3
Costo del
Enlace=1
D
Desde D hacia Enlace Costo
D
A
B
Local
3
3
0
1
2
Enlace 6
Costo del enlace=1
Local
0
1
1
1
2
2
1
Enva
2 sus vectoB 2 res C=0,B=1,A=2
2
3 2
Enlace
Local
2
2
0
1
2
Local
4
4
6
5
5
5
0
1
2
1
1
2
3
ddiaz@inictel-uni.edu.pe
Local
1
3
Enlace 4
A
B
D
Costo del
Enlace=1
Enlace 3
Costo del
Enlace=1
B
A
D
C
E
Enlace 1B
A
Costo del enlace=1
D
C
D
Desde D hacia Enlace Costo
D
A
B
E
B
A
D
C
Local
3
3
6
6
6
6
6
0
1
2
1
2
3
2
2
Enlace 6
sus
Costo delEnva
enlace=1
vectores
Local
0
1
1
1
2
2
1
1
B 4
4
2 2
Enlace
4
Costo
del3 enlace=1
4
2
4
2
C
B
A
E
B
A
D
C
Local
2
2
5
5
5
5
5
0
1
2
1
2
3
2
2
Local
4
4
6
5
0
1
2
1
1
ddiaz@inictel-uni.edu.pe
0
1
1
Costo del
Enlace=1
Local
1
3
Enva sus
vectores
A
B
D
Enlace 4
B
A
D
C
E
A
Enlace 3
Costo del
Enlace=1
Enlace 1
Costo del enlace=1
D
Desde D hacia Enlace Costo
D
A
B
E
C
Local
3
3
6
6
0
1
2
1
2
Enlace 6
Costo del enlace=1
Local
1
1
2
B 4
0
1
2
1
1
C
B
A
E
D
Local
2
2
5
5
0
1
2
1
2
Enlace 2
Costo del enlace=1
Local
4
4
6
5
0
1
2
1
1
ddiaz@inictel-uni.edu.pe
Local
1
3
Enlace 4
A
B
D
Costo del
Enlace=1
Enlace 1
Costo del enlace=1
0
1
2
1
2
Enva sus
vectores
Enlace 6
Costo del enlace=1
Local
1
1
2
B 4
0
1
2
1
1
Vectores
B=0, A=1
D=2, C=1
y E=1
Enlace 2
Costo del enlace=1
Enva sus
vectores
C
B
A
E
D
B
A
D
C
E
Local
2
2
5
5
2
2
2
2
2
0
1
2
1
2
1
2
3
2
2
Local
4
4
6
5
0
1
2
1
1
B
A
D
C
E
4
4
4
4
4
1
2
3
2
2
ddiaz@inictel-uni.edu.pe
D
D
A
B
E
C
B
A
D
C
E
Enlace=1
0
1
1
1
2
3
2
2
Enlace 4
Local
1
3
1
1
1
1
1
Enlace 3
Costo del
Enlace=1
A
B
D
B
A
D
C
E
Enva sus
del
Costo
vectores
B
A
D
C
E
A
Enlace 3
Costo del
Enlace=1
Enlace 1
Costo del enlace=1
D
Desde D hacia Enlace Costo
D
A
B
E
C
Local
3
3
6
6
0
1
2
1
2
Enlace 6
Costo del enlace=1
Local
1
1
2
B 4
0
1
2
1
1
C
B
A
E
D
Local
2
2
5
5
0
1
2
1
2
Enlace 2
Costo del enlace=1
Local
4
4
6
5
0
1
2
1
1
Por fin
converge el
algoritmo
ddiaz@inictel-uni.edu.pe
Local
1
3
1
1
Enlace 4
A
B
D
C
E
Costo del
Enlace=1
B
A
D
C
E
A
Enlace 3
Costo del
Enlace=1
Enlace 1
Costo del enlace=1
D
Desde D hacia Enlace Costo
D
A
B
E
C
Local
3
3
6
6
0
1
2
1
2
Enlace 6
Costo del enlace=1
Local
1
1
2
B 4
0
1
2
1
1
C
B
A
E
D
Local
2
2
5
5
0
1
2
1
2
Enlace 2
Costo del enlace=1
Local
4
4
6
5
0
1
2
1
1
ddiaz@inictel-uni.edu.pe
Local
1
3
1
1
Enlace 4
A
B
D
C
E
Costo del
Enlace=1
B
A
D
C
E
A
Enlace 3
Costo del
Enlace=1
Enlace 6
Costo del enlace=1
1
1
B=0, A= ,D= ,
Enlace
C=1
y E=12
C
B
A
E
D
B
A
D
C
E
Local
2
2
5
5
2
2
2
2
2
0
1
2
1
2
1
2
2
0
1
2
1
2
1
Enlace 4
Enlace 1
D
D
A
B
E
C
A
B
D
Local
1
1
2
B 4
E
B
A
D
C
C
E
Local
4
4
6
5
3
3
0
1
2
1
1
B
A
D
C
E
4
4
4
4
4
2
2
ddiaz@inictel-uni.edu.pe
A=0, B= ,D=1,
C= y E=
Local
1
3
1
1
B=0, A= ,D= ,
C=1 y E=1
A
B
D
C
E
Costo del
Enlace=1
A
1
2
2
3
0
1
1
2
Local
1
1
2
B 4
Enlace 1
D=0, A= 1,B= ,
E=Enlace
1 y C= 26
D
D
A
B
E
C
B
A
D
C
E
1
1
C
B
A
E
D
Local
2
2
5
5
0
1
1
2
Enlace 2
Costo del enlace=1
Local
4
4
6
5
0
1
1
1
D
A
B
E
C
6
6
6
6
6
1
2
2
3
ddiaz@inictel-uni.edu.pe
Costo del
Enlace=1
Local
1
3
1
1
3
3
3
3
3
Enlace 4
A
B
D
C
E
D
A
B
E
C
Enlace 3
del,
A= 1,B=
D=0,Costo
1 y C= 2
E=Enlace=1
1
3
2
B
A
D
C
E
Enlace 1C
Costo del enlaceB=
A
E
D
D
Desde D hacia Enlace Costo
D
A
B
E
C
Local
3
3
6
6
0
1
1
2
Enlace 6
Costo del enlace=1
Local
0
1
2
1 C=0, B= 1,A= ,
E= 1 y D=C
2
1
B 4
2
1 2
Enlace
2
Costo
del2 enlace=1
2
2
2
2
3
C
B
A
E
D
Local
2
2
5
5
0
1
1
2
Local
4
6
6
5
0
1
2
1
1
C
B
A
E
D
5
5
5
5
5
1
2
2
3
ddiaz@inictel-uni.edu.pe
Costo del
Enlace=1
Local
1
3
3
3
Enlace 3
Costo del
Enlace=1
A
B
D
C
E
Enlace 4
0 4
4
1 4
3 4
2 4
1
2
3
2
2
B
A
D
C
E
Local
1
2
2
B 4
D= 1 y C= 1
Local
3
3
6
6
6
6
6
3
1
1
Enlace 2
Costo del enlace=1
C
B
A
E
D
E
B
A
D
C
Local
2
2
5
5
5
5
5
5
5
0
1
1
2
1
2
3
2
2
0
1
E
B
A
D
C
1
2
1
2
3
Costo del
Enlace=1
Enlace 3
Costo del
Enlace=1
Enlace 6
B= 1,A= 2,
Costo delE=0,
enlace=1
E=0, B= 1,A= 2,
D= 1 y C= 1
Enlace 4
Enlace 1
D
C
Local
4
6
6
5
6
6
0
1
2
1
1
2
2
ddiaz@inictel-uni.edu.pe
A
B
D
C
E
1
3
2
1
2
3
2
3
0
1
2
1
2
Local
4
4
2
B 4
Enlace 1
D
D
A
B
E
C
B
A
D
C
E
0
3
2
1
1
C
B
A
E
D
Local
2
5
5
5
0
1
3
1
2
Enlace 2
Costo del enlace=1
D=0, A= 1,B= 2,
E=Enlace
1 y C= 26
Local
4
6
6
5
0
1
2
1
1
D
A
B
E
C
6
6
6
6
6
1
2
3
2
3
ddiaz@inictel-uni.edu.pe
Costo del
Enlace=1
Local
1
3
3
3
3
3
3
3
3
Enlace 4
A
B
D
C
E
D
A
B
E
C
Enlace 3
del2,
A= 1,B=
D=0,Costo
1 y C= 2
E=Enlace=1
Local
3
3
3
3
0
3
1
3
2
B
A
D
C
E
Local
4
4
2
B 4
D
Desde D hacia Enlace Costo
D
A
B
E
C
Local
3
6
6
6
0
1
2
1
2
Enlace 6
Costo del enlace=1
Local
2
5
5
5
0
1
3
1
2
Enlace 2
Costo del enlace=1
C
B
A
E
D
Costo del
Enlace=1
Enlace 3
Costo del
Enlace=1
Enlace 4
Enlace 1
0
3
2
1
1
Local
4
6
6
5
0
1
2
1
1
Por fin
converge el
algoritmo
http://www.it.uc3m.es/~prometeo/rsc/apuntes/encamina/encamina.html
http://catarina.udlap.mx/u_dl_a/tales/documentos/lem/bautista_h_e/capitulo2.pdf
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI
ddiaz@inictel-uni.edu.pe
ALGORITMO
DIJKSTRA
Estado de Enlace
ddiaz@inictel-uni.edu.pe
ALGORITMO DE Dijkstra
D(v)
2
c(2,4)
n-2
c(i,j)
1
3
c(3,5)
n
n-1
ddiaz@inictel-uni.edu.pe
p(v)
p(v) = Nodo previo, vecino a v, a lo largo del actual camino ms corto desde el
origen a v. Del ejemplo anterior, el nodo previo al nodo 4 es el nodo 3 = p(4)
N
ALGORITMO DE Dijkstra
Inicializacin:
N = {A}
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 mnimo
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 ms corto a w ms el costo de w a v. */
Repetir hasta terminar con todos los nodos en N
ddiaz@inictel-uni.edu.pe
2
2
2
D
A B C D
E
A
B
C
D
E
0
2
5
1
2
0
3
2
5
3
0
3
1
5
1
2
3
0
1
1
1
0
2
2
0
ddiaz@inictel-uni.edu.pe
B (2,A)
C (5,A)
A
D (1,A)
Paso
D(B), p(B)
D(C), p(C)
D(D), p(D)
2, A
5, A
1, A
D(E), p(E)
D(F), p(F)
ddiaz@inictel-uni.edu.pe
Inicializacin
(2,A)
(5,A)
C (4,D)
(3,D) B
E (2,D)
(1,A)
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI
ddiaz@inictel-uni.edu.pe
Paso 1
(2,A)
(5,A)
C (4,D)
(3,D) B
2
E (2,D)
(1,A)
Paso
D(B), p(B)
D(C), p(C)
D(D), p(D)
D(E), p(E)
0
1
A
AD
2, A
2, A
5, A
4, D
1, A
2,D
D(F), p(F)
ddiaz@inictel-uni.edu.pe
(2,A)
(5,A)
C (4,D)
(3,D) B
2
E (2,D)
(1,A)
(4,D)
(3,E) C
(4,E)
D
(1,A)
(2,D)
ddiaz@inictel-uni.edu.pe
(4,D)
(3,E) C
(4,E)
(1,A)
0
1
2
N
A
AD
ADE
(2,D)
D(B), p(B)
D(C), p(C)
D(D), p(D)
D(E), p(E)
2, A
2, A
2, A
5, A
4, D
3, E
1, A
2,D
D(F), p(F)
4,E
ddiaz@inictel-uni.edu.pe
Paso
(4,D)
(3,E) C
(4,E)
(1,A)
(2,D)
(3,E)
C (5,B)
A
D
(1,A)
E
(2,D)
ddiaz@inictel-uni.edu.pe
(2,A)
(2,A)
(3,E)
C (5,B)
D
(1,A)
Paso
0
1
2
3
D(B), p(B)
A
AD
ADE
ADEB
2, A
2, A
2, A
(2,D)
D(C), p(C)
D(D), p(D)
D(E), p(E)
5, A
4, D
3, E
3, E
1, A
2,D
D(F), p(F)
4,E
4,E
ddiaz@inictel-uni.edu.pe
(2,A)
(3,E)
C (5,B)
D
(1,A)
(2,A)
(3,E)
(2,D)
F (4,E)
(8,C)
D
(1,A)
E
(2,D)
ddiaz@inictel-uni.edu.pe
(2,A)
(3,E)
F (4,E)
A
E
D
(1,A)
Paso
0
1
2
3
4
D(B), p(B)
A
2, A
AD
2, A
ADE
2, A
ADEB
ADEBC
(2,D)
D(C), p(C)
D(D), p(D)
D(E), p(E)
5, A
4, D
3, E
3, E
1, A
2,D
D(F), p(F)
4,E
4,E
4,E
ddiaz@inictel-uni.edu.pe
(8,C)
(2,A)
(3,E)
C
F
A
E
D
(1,A)
Paso
0
1
2
3
4
5
D(B), p(B)
A
2, A
AD
2, A
ADE
2, A
ADEB
ADEBC
ADEBCF
(2,D)
D(C), p(C)
D(D), p(D)
D(E), p(E)
5, A
4, D
3, E
3, E
1, A
2,D
D(F), p(F)
4,E
4,E
4,E
4,E
ddiaz@inictel-uni.edu.pe
(4,E)
D(B), p(B)
A
2, A
AD
2, A
ADE
2, A
ADEB
ADEBC
ADEBCF
D(C), p(C)
D(D), p(D)
D(E), p(E)
5, A
4, D
3, E
3, E
1, A
2,D
D(F), p(F)
4,E
4,E
4,E
4,E
A
2
D
1
1
C
E 2
F
ddiaz@inictel-uni.edu.pe
Paso
HELLO
Router B
Router C
Router D
Router A
Router C
Router D
.........
Router C
Router E
ddiaz@inictel-uni.edu.pe
HELLO
Estado A Estado C
2
Estado A
5
2
F
2
ddiaz@inictel-uni.edu.pe
Cada router contiene una base de datos con los estados de los
dems routers. Esta base de datos es idntica en toda la red.
INSTITUTO NACIONAL DE INVESTIGACION Y CAPACITACION DE TELECOMUNICACIONES, INICTEL-UNI
2
B
D
1
1
E 2
C
Estados
de todos
los routers
Estados
de todos
los routers
Estados
de todos
los routers
5
2
1
Estados
de todos
los routers
Estados
de todos
los routers
2
D
Estados
de todos
los routers
ddiaz@inictel-uni.edu.pe
MUCHAS GRACIAS
ddiaz@inictel-uni.edu.pe