Anda di halaman 1dari 26

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Tipos de algoritmos de enrutamiento


Area de Ingeniera Telemtica http://www.tlm.unavarra.es Laboratorio de Programacin de Redes 3 Ingeniera Tcnica en Informtica de Gestin

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Objetivo
Caractersticas de los algoritmos de enrutamiento tipos de

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Contenido
Introduccin Algoritmos Link-State Algoritmos Distance-Vector
Descripcin Bellman-Ford

Algoritmos Path-Vector

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Tipos de Protocolos de Enrutamiento


Enrutamiento jerrquico
Sistemas Autnomos (AS) Dentro de un AS:
IGP = Interior Gateway Protocol

Entre ASs:
EGP = Exterior Gateway Protocol

AS 2 AS 1

AS 3

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Tipos de Algoritmos de Enrutamiento


Deben informar de la topologa y los cambios en la misma Segn cmo diseminan la informacin Distance Vector: Comunican estimacin de distancia a destinos Informan a vecinos Path Vector: Comunican estimacin de caminos preferidos a destinos

Link State: Comunican qu vecinos tienen y el coste Inundan la red Cada nodo conoce la topologa entera

AS 2 AS 1

AS 3

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Tipos de Algoritmos de Enrutamiento


Path Vector Distance Vector Link State
2 1

B C

1 3

A: [B, 2], [C, 1] B: [A, 2], [D, 1] C: [A, 1], [D, 3] D: [B, 1], [C, 3] 1

2 1

B C

1 3

D
0

2 1

B
3

1 3

2 1

B C

1 3

B,D

2 1

B C

1 3

D
D

2 1

B C
C,D

1 3

No me gusta B

2 1

B C

1 3

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Link State
Tres pasos
1. 2. Descubrir a los vecinos Diseminar la informacin sobre los enlaces
Flooding ( ) Todos conocen la topologa () Caminos de menor coste Todos calculan los mismos Algoritmo de Dijkstra
AS 2

3.

Calcular las rutas


C A B E D

OSPF, IS-IS

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Link State
Tres pasos
1. 2. Descubrir a los vecinos Diseminar la informacin sobre los enlaces
Flooding ( ) Todos conocen la topologa () Caminos de menor coste Todos calculan los mismos Algoritmo de Dijkstra
1 1 1 1 1 1 1 1 1 1 1 1

AS 2

3.

Calcular las rutas


C B E
1

1 1

1 1 1 1

OSPF, IS-IS

1 1 1 1

(etc)

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Distance Vector
Cada nodo llega a conocer la distancia desde l a todos los destinos
D(X,di)

Inicialmente cada nodo solo conoce distancia a sus vecinos ()


D(X,d)=c(X,d)

Peridicamente comunica D(X,d) a todos sus vecinos


Informan con un vector con las distancias a los destinos
( D(X,d1), D(X,d2), D(X,d3), D(X,d4))

Asncrono

Al recibir informacin actualiza ( ):


D(X,d)!mnj/c(X,j)<"{c(X,j)+D(j,d)}

Algoritmo de Bellman-Ford distribuido Empleado desde los comienzos de la ARPANET

X!

D(X,di)

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Distance Vector
Cada nodo llega a conocer la distancia desde l a todos los destinos
D(X,di)

Inicialmente cada nodo solo conoce distancia a sus vecinos ()


D(X,d)=c(X,d)

Peridicamente comunica D(X,d) a todos sus vecinos


Informan con un vector con las distancias a los destinos
( D(X,d1), D(X,d2), D(X,d3), D(X,d4))

Asncrono

Al recibir informacin actualiza ( ):


D(X,d)!mnj/c(X,j)<"{c(X,j)+D(j,d)}

Algoritmo de Bellman-Ford distribuido Empleado desde los comienzos de la ARPANET


c(X,j) D(X,j)=c(X,j)

j! j!
c(X,j) D(X,j)=c(X,j)

X!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Distance Vector
Cada nodo llega a conocer la distancia desde l a todos los destinos
D(X,di)

Inicialmente cada nodo solo conoce distancia a sus vecinos ()


D(X,d)=c(X,d)

Peridicamente comunica D(X,d) a todos sus vecinos


Informan con un vector con las distancias a los destinos
( D(X,d1), D(X,d2), D(X,d3), D(X,d4))

Asncrono

d!

Al recibir informacin actualiza ( ):


D(X,d)!mnj/c(X,j)<"{c(X,j)+D(j,d)}

Algoritmo de Bellman-Ford distribuido Empleado desde los comienzos de la ARPANET


psst... D(j,d)

D(j,d)

j!
c(X,j)

D(j,d)

j!
c(X,j)
psst... D(j,d)

X!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Distance Vector
Cada nodo llega a conocer la distancia desde l a todos los destinos
D(X,di)

Inicialmente cada nodo solo conoce distancia a sus vecinos ()


D(X,d)=c(X,d)

Peridicamente comunica D(X,d) a todos sus vecinos


Informan con un vector con las distancias a los destinos
( D(X,d1), D(X,d2), D(X,d3), D(X,d4))

Asncrono

d!

Al recibir informacin actualiza ( ):


D(X,d)!mnj/c(X,j)<"{c(X,j)+D(j,d)}

Algoritmo de Bellman-Ford distribuido Empleado desde los comienzos de la ARPANET

D(j,d)

j!
c(X,j)

D(j,d)

j!
c(X,j) c(X,j)+D(j,d)

c(X,j)+D(j,d)

X!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
Comienzo
Dest Next Cost Dest Next Cost

B C D E

B E

1 " " 1

A C D E

A C D E

1 1 3 4

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B -

" 1 " "

A B C E

B E

" 3 " 1

A B C D

A B D

1 4 " 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
A enva
D(E,d)!mn{c(E,A)+D(A,d)} D(B,d)!mn{c(B,A)+D(A,d)} ()
Dest Next Cost Dest Next Cost

B C D E

B E

1 " " 1

A C D E

A C D E

1 1 3 4

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B -

" 1 " "

A B C E

B E

" 3 " 1

A B C D

A B D

1 4 " 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
A enva
D(E,d)!mn{c(E,A)+D(A,d)} D(B,d)!mn{c(B,A)+D(A,d)}
Dest Next Cost Dest Next Cost

B C D E

B E

1 " " 1

A C D E

A C D A (E)

1 1 3 2 (4)

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B -

" 1 " "

A B C E

B E

" 3 " 1

A B C D

A A (B) D

1 2 (4) " 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
D enva
D(E,d)!mn{c(E,D)+D(D,d)} D(B,d)!mn{c(B,D)+D(D,d)} No hay cambios
Dest Next Cost Dest Next Cost

B C D E

B E

1 " " 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B -

" 1 " "

A B C E

B E

" 3 " 1

A B C D

A A D

1 2 " 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
B enva
D(A,d)!mn{c(A,B)+D(B,d)} D(C,d)!mn{c(C,B)+D(B,d)} D(D,d)!mn{c(D,B)+D(B,d)} D(E,d)!mn{c(E,B)+D(B,d)} ()
Dest Next Cost Dest Next Cost

B C D E

B E

1 " " 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B -

" 1 " "

A B C E

B E

" 3 " 1

A B C D

A A D

1 2 " 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
B enva
D(A,d)!mn{c(A,B)+D(B,d)} D(C,d)!mn{c(C,B)+D(B,d)} D(D,d)!mn{c(D,B)+D(B,d)} D(E,d)!mn{c(E,B)+D(B,d)}
Dest Next Cost Dest Next Cost

B C D E

B B (-) B (-) E

1 2 (") 4 (") 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B (-) B B (-) B (-)

2 (") 1 4 (") 3 (")

A B C E

B (-) B B (-) E

4 (") 3 4 (") 1

A B C D

A A B (-) D

1 2 5 (") 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
C enva
D(B,d)!mn{c(B,C)+D(C,d)} No hay cambios
Dest Next Cost Dest Next Cost

B C D E

B B B E

1 2 4 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

B B B E

4 3 4 1

A B C D

A A B D

1 2 5 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
E enva
D(A,d)!mn{c(A,E)+D(E,d)} D(B,d)!mn{c(B,E)+D(E,d)} D(D,d)!mn{c(D,E)+D(E,d)} ()
Dest Next Cost Dest Next Cost

B C D E

B B B E

1 2 4 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

B B B E

4 3 4 1

A B C D

A A B D

1 2 5 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
E enva
D(A,d)!mn{c(A,E)+D(E,d)} D(B,d)!mn{c(B,E)+D(E,d)} D(D,d)!mn{c(D,E)+D(E,d)}
Dest Next Cost Dest Next Cost

B C D E

B B E (B) E

1 2 2 (4) 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

E (B) B B E

2 (4) 3 4 1

A B C D

A A B D

1 2 5 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
A enva
D(E,d)!mn{c(E,A)+D(A,d)} D(B,d)!mn{c(B,A)+D(A,d)} ()
Dest Next Cost Dest Next Cost

B C D E

B B E E

1 2 2 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

E B B E

2 3 4 1

A B C D

A A B D

1 2 5 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
A enva
D(E,d)!mn{c(E,A)+D(A,d)} D(B,d)!mn{c(B,A)+D(A,d)}
Dest Next Cost Dest Next Cost

B C D E

B B E E

1 2 2 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

E B B E

2 3 4 1

A B C D

A A A (B) D

1 2 3 (5) 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Algoritmo de Bellman-Ford
D enva B enva
No hay cambios No hay cambios No hay cambios No hay cambios No hay cambios
Dest Next Cost Dest Next Cost

C enva E enva A enva

B C D E

B B E E

1 2 2 1

A C D E

A C D A

1 1 3 2

C!
1

Dest

Next

Cost

Dest

Next

Cost

Dest

Next

Cost

A 3 1 B

B B B B

2 1 4 3

A B C E

E B B E

2 3 4 1

A B C D

A A A D

1 2 3 1

A!

1 1

B!
4

D!

D E

E!

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Distance Vector
Clculo distribuido Iterativo e incremental Asncrono Converge a los caminos de menor coste Protocolos: RIP, IPX-RIP, DECnet, IGRP, EIGRP, DSDV

LABORATORIO DE PROGRAMACIN DE REDES rea de Ingeniera Telemtica

Path Vector
Similar a Distance Vector Clculo distribuido Informan a sus vecinos de las rutas calculadas Incluyen todo el camino hasta el destino para cada ruta Protocolos: BGP

B,D 2

B! C!

1 3

No me gusta B

B! C!
C,D

B! C!

A!
1

D!
0

A!
1 3

D!

A!
1 3

D!

Anda mungkin juga menyukai