Sie sind auf Seite 1von 156

1908 Arquitectura de Redes

Tema 2. Algoritmos y protocolos de encaminamiento

Pedro M. Ruiz <pedrom@um.es>

Francisco J. Ros <fjros@um.es>

3 Grado en Ingeniera Informtica 2011/2012

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

En qu consiste el encaminamiento?

Por donde debo ir a w.x.y.z?

Routers

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Encaminamiento: Definiciones
Objetivo:
Bsqueda de las rutas en una red que, para todo origen y destino, satisfagan una serie de condiciones. Por ejemplo, rutas de mnimo coste econmico, de mnimo retardo, de mxima cadencia eficaz o que satisfagan algn criterio administrativo.

Algoritmo de encaminamiento:
Mtodo mediante el cual se calculan las rutas en una red.

Decisin de Encaminamiento:
Si la red es no orientada a conexin la decisin debe tomarse para cada datagrama. Si es orientada a conexin, nicamente durante el establecimiento del circuito virtual.

Arquitectura de Redes - Universidad de Murcia

Source: Curso de redes DIT-UPM

Ejemplo de Encaminamiento
Objetivo: Encontrar la ruta de A a B que minimiza el coste del camino.
A
Ejemplos de coste: distancia, capacidad, precio, congestin/retardo,

R1
2

R2
2

R4
3

R6
3 2

R3

R5

R7

R8

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Ejemplo de Encaminamiento
En este caso, la solucin es simple por inspeccin
A

R1
2

R2
2

R4
3

R6
3 2

R3

R5

R7

R8

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Qu tal en esta Red...!?


La Internet Pblica en 1999

Fuente: http://www.lumeta.com

Arquitectura de Redes - Universidad de Murcia

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

Propiedades deseables

Correccin Robustez Simplicidad Equidad

Optimalidad Estabilidad

Arquitectura de Redes - Universidad de Murcia

Source: Curso de Redes, DIT-UPM

10

Tipos de Encaminamiento
Segn QUIN DECIDE el camino a seguir:
Fijado en origen Salto a salto

Segn su ADAPTABILIDAD:
Estticos Cuasi-estticos Adaptativos:
Centralizados Aislados Distribuidos

Arquitectura de Redes - Universidad de Murcia

11

Esquemas Generales para Encaminamiento

Inundacin (flooding) Patata caliente (hot potato) Routing por el camino ms corto

Arquitectura de Redes - Universidad de Murcia

12

Inundacin
Los encaminadores envan los paquetes por todas las interfaces excepto la de entrada. R1 Ventajas: Simple. Todo posible destino es alcanzable. Inconvenientes: Algunos encaminadores reciben el paquete mltiples veces. Podra haber ciclos si no se usan seqnos. Ineficiente.
Arquitectura de Redes - Universidad de Murcia 13

Inundacin con Spanning Trees


Objetivo: Encontrar ruta de menor costo desde (R1, , R7) a R8.

R1
2

R2
2

R4
3

R6
3 2

R3

R5

R7

R8

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

14

Solucin: Spanning Tree


R1
2 1

R2
2

R4
3

R6
2 3

R5 R3
4

R7

R8

La solucin es un spanning tree con R8 como raz del rbol. Tree: No hay ciclos. Spanning: Todos los nodos estn includos. Nmero de envos N-1 (por definicin de rbol). Veremos que los spanning tree tambin sern tiles para encaminar por el camino ms corto.
Arquitectura de Redes - Universidad de Murcia
Source: CS244, Steve McKeown, Stanford University

15

Patata Caliente (Hot Potato)


Routers con capacidad de almacenamiento muy limitada. El mensaje se enruta lo antes posible por cualquier enlace que est desocupado
preferentemente el de camino ms corto

Si un nodo tiene d enlaces incidentes no necesita ms de 2d paquetes de buffer Ventaja:


Requiere poco almacenamiento por nodo

Inconvenientes:
Paquetes podran llegar desordenados Las rutas pueden llegar a ser muy largas Podran producirse ciclos

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

16

Encaminamiento por el camino ms corto: Definiciones


puede ser dinmico C = f(t)

Coste o Distancia:

Tablas de Encaminamiento:
Nodo F

A 2 D

B 1

Destino

Siguiente E C C E E F G

Distancia 8 4 2 6 4 0 1

C 2

5 G 1

A B C D E

Mtrica: magnitud a optimizar (retardo,

F G

cadencia, coste econmico, etc)

Arquitectura de Redes - Universidad de Murcia

17

Routing por el Camino ms Corto


A cada enlace i se le asocia una longitud li La longitud de un camino se define como: li, i En general li 0 i , indicando coste tal como delay, carga de trfico, etc.
Si li=1 i , entonces min-hop routing. Si los li varan con el tiempo, la solucin mejora pero pueden aparecer problemas de convergencia.

Estudiaremos algoritmos para calcular el camino ms corto en un grafo (Dijkstra, Bellman-Ford, etc.)
Arquitectura de Redes - Universidad de Murcia 18

Routing por el Camino ms Corto (II)


R1
2 1

R2
2

R4
3

R6
2 3

R5 R3
4

R7

R8

El camino ms corto entre dos nodos, forma parte del spanning tree del destino (ej: R2-R8). Inconvenientes: Throughput limitado (slo 1 camino entre S y D) Adaptacin limitada a cambios para evitar oscilaciones Solucin: Optimal Routing Separa trfico en puntos estratgicos (mltiples caminos) Basado en teora de optimal multi-commodity flows.
Arquitectura de Redes - Universidad de Murcia 19

Principio de Optimalidad
Sea G=(V,E) y sea i,j = [vi,vi+1,..,vj-1,vj] el camino ptimo entre dos vrtices vi,vj V. Entonces, el camino ptimo entre cualquier vk i,j y vj tambin est incluido en ese camino. Demostracin por reduccin al absurdo Consecuencia:
El grupo de caminos ptimos desde los nodos de la red hacia un destino dado, forma un spanning tree cuya raz es el destino
Arquitectura de Redes - Universidad de Murcia 20

Ejemplo de Principio de Optimalidad


R1
2 1

R2
2

R4
3

R6
2 3

R5 R3
4

R7

R8

Cualquier subcamino de un camino ms corto es tambin el camino ms corto entre ese par de nodos La solucin es un spanning tree con R8 como raz del rbol. Tree: No hay ciclos. Spanning: Todos los nodos estn includos
Arquitectura de Redes - Universidad de Murcia
Source: CS244, Steve McKeown, Stanford University

21

Encaminamiento por el camino ms corto: rboles de encaminamiento


A 2 D 6 B 1 2 E 4 2 C 5 A 2 D 2 C G 2 F 1 6 B 1 2 E 4 2 C

Arbol encaminamiento nodo A A 2 D 6 B 1 2 E 4 5

G 2 F 1

Arbol encaminamiento nodo F

G 2 F 1

Arbol encaminamiento nodo B

Arquitectura de Redes - Universidad de Murcia

22

Algoritmos para Clculo de Caminos ms Cortos


CENTRALIZADOS Bellman-Ford
Camino ms corto de un nodo al resto

Dijkstra
Camino ms corto de un nodo al resto

Nos centraremos en estos

Floyd-Warshall
Camino ms corto de todos a todos

DISTRIBUIDOS Vector de distancias Estado de enlace


Arquitectura de Redes - Universidad de Murcia 23

Algoritmo de Bellman-Ford
Dado G=(V,E,w). Calcular el camino ms corto entre el nodo s y el resto.
function BellmanFord(list vertices, list edges, vertex source) for each vertex v in vertices: if v is source then v.distance := 0 else v.distance := infinity v.predecessor := null for i=1 to size(vertices): // |V|-1 iteraciones for each edge uv in edges: // uv es el enlace de u a v if v.distance > u.distance + uv.weight: v.distance := u.distance + uv.weight v.predecessor := u for each edge uv in edges: if v.distance > u.distance + uv.weight: error "Graph contains a negative-weight cycle" Arquitectura de Redes - Universidad de Murcia 24

Ejemplo Aplicacin Bellman-Ford


Iter. d[A] 0 0 0 0 0 0 0 d[B] 3 3 3 3 3 3 d[C] 1 1 1 1 1 1 d[D] 3 2 2 2 2 2 d[E] 5 4 4 4 4 d[F] 5 4 4 4 4 d[G] 7 6 6 6 6

B
3

4 3

E
2 5 4 2 4 3

0 1

A
1

3 1

D F

2 3 4 5 6

Si no hay costes negativos, se puede parar aqu al no haber ms cambios


Arquitectura de Redes - Universidad de Murcia 25

Algoritmo de Dijkstra
Dado G=(V,E,w) | wij 0 wij . Calcular el camino ms corto entre dos nodos s y t.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 function Dijkstra(G, w, s) // Inicializacin for each vertex v in V[G] d[v] := infinity // Distancia inicial no conocida previous[v] := undef // Distancia de la fuente d[s] := 0 S := empty set // Conjunto de vrtices visitados Q := V[G] // Cconjunto de vrtices no visitados while Q is not an empty set u := Extract_Min(Q) // Extraer vrtice con mejor d[u] S := S union {u} // Marcarlo como visitado for each edge (u,v) outgoing from u if d[u] + w(u,v) < d[v] // Relajar (u,v) d[v] := d[u] + w(u,v) previous[v] := u

Arquitectura de Redes - Universidad de Murcia

27

Ejemplo Aplicacin Dijkstra


Iter. d[A] 0 0 d[B] 3 3 3 d[C] 1 d[D] 3 2 d[E] 4 4 d[F] 5 4 4 4 d[G] 6 6 6 6

B
3

4 3

E
2 5 4 2 4 3

0 1

A
1

3 1

D F

2 3 4 5 6

Arquitectura de Redes - Universidad de Murcia

28

Comparativa de Algoritmos
Coste comput. Costes Informacin negativos necesaria Implicaciones
Una versin distribuda, necesitara que un nodo enviase informacin de costes y topologa al resto de nodos de la red

Dijkstra

O(V2)

NO

Topologa completa

BellmanFord

O(VxE)

SI

Distancia de los vecinos

Una versin distribuda slo requerira intercambiar informacin con los vecinos

Arquitectura de Redes - Universidad de Murcia

29

Por qu Algoritmos Distribudos?


Escalabilidad
Al aumentar el nmero de nodos, la capacidad de computo y almacenamiento necesaria crece exponencialmente

Tolerancia a fallos
Si cae el nodo central, todo el sistema se queda inoperativo

Sobrecarga de control
Enviar el estado de la red a un nodo central es muy ineficiente
Fuente: http://www.lumeta.com

Arquitectura de Redes - Universidad de Murcia

30

Encaminamiento Distribuido
Cada nodo intercambia informacin con otros nodos y a partir de ella cada nodo calcula sus tablas de encaminamiento. Dos tipos:
Vector de distancia. Cada nodo calcula las rutas a todos los destinos a partir de la informacin suministrada por los vecinos topolgicos (visin parcial del estado de la red). Estado de enlaces. Cada nodo informa al resto de nodos del estado de sus enlaces. Con la informacin recibida construye un mapa completo de la red y sobre l ejecuta un algoritmo de clculo de rutas (visin global del estado de la red).

Arquitectura de Redes - Universidad de Murcia

31

Vector de Distancias
Algoritmo de Bellman-Ford Distribuido 1. Sea Xn = (C1,C2,,Ck) donde Cj = costo de Ri a Rj. 2. Inicializar X0 = (, , , , , , ). 3. Cada T segundos, el router Ri enva Xn a sus vecinos. ste es el vector de distancias. 4. Si Ri recibe un camino con costo menor a Rj, actualiza Cj. Por tanto Xn+1 = f(Xn) donde f(.) determina la mejora del siguiente paso. 5. Si Xn+1Xn ir al paso (3). El algoritmo funciona de forma asncrona y distribuida

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

32

Clculo del Vector de Distancias


Distancia 3

j Router 4 k

Distancia 2

Distancia 2

Distancia 7

Destino: Recibido de j (+3) Recibido de k (+2) Recibido de m (+2) Recibido de n (+7) Vector calculado: Tabla de rutas:

1 12 5 0 6 2 m

2 3 8 5 2 6 j

3 15 3 3 0 5 m

4 3 2 2 7 0 0

5 12 10 19 8 12 k

6 5 7 9 5 8 j

7 6 4 5 8 6 k

8 18 20 22 12 19 n

9 0 5 2 11 3 j

10 7 0 4 3 2 k

11 15 15 7 2 9 n
33

Arquitectura de Redes - Universidad de Murcia

Vector de Distancias
Ejemplo
R1

R2
2

R4
3 2

R6
3 2

R3
R1 R2 R3 R4 R5 R6 R7

R5

R7

R8

Inf Inf 4, R8 Inf 2, R8 2, R8 3, R8

R1

R2
2

R4 2

2 R6
2 3

4 R3

R5

R7

R8
34

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Ejemplo Vector de Distancias


6
R1 R2 R3 R4 R5 R6 R7

6, R3 4, R5 4, R8 6, R7 2, R8 2, R8 3, R8

R1
2

4 R2
2

6 R4
3

2 R6
2 3

2 R5
2

3 R7

4 R3
5

R8

Solucin
R1 R2 R3 R4 R5 R6 R7

5, R2 4, R5 4, R8 5, R2 2, R8 2, R8 3, R8

R1

R2
2 4

1
2

R4
3

R6 R7 3 2 R8
35

R3

R5

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Bellman-Ford Distribuido
Cuestiones:
1. Cunto tarda en ejecutarse? 2. Cmo sabemos si el algoritmo converge? 3. Qu sucede cuando fallan los routers o cambian los costos de los caminos?

Arquitectura de Redes - Universidad de Murcia

36

Problema de la Cuenta a Infinito


Las malas noticias viajan lentas R1 1 R2 1 R3 1 R4

Consideremos el clculo de distancas a R4: Time 0 1 2 3 R1 3,R2 3,R2 3,R2 5,R2 R2 2,R3 2,R3 4,R3 4,R3 R3 1, R4 3,R2 3,R2 5,R2 R3 R4 falla

Cuenta a infinito
37

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

Cuenta a Infinito
Soluciones

1. Configurar infinito = algn entero pequeo (ej. 16). Parar cuando cuenta = 16. 2. Split Horizon: Como R2 recibi el camino de menor costo de R3, ste no anuncia coste alguno a R3 3. Split-horizon with poison reverse: R2 anuncia coste infinito a R3 4. Estos esquemas no son infalibles

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

38

Ejemplo: Fallo de un Enlace con SplitHorizon


A
3 4

R1
4

R2
2

R3
3

R4
4 2

R5 B

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

39

Ejemplo con Split Horizon


A
3

Visin que cada nodo tiene de A


4
A R1 R2

0, A 3, A 4, A 4, A 6, R2 7, R3 9, R5

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A inf 6, R2 7, R3 9, R5

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A inf 6, R2 inf 9, R5

R1
4

R2
2

R3
3

R3 R4 R5 B

R4
4 2

R5 B

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A inf 6, R2 inf inf

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A inf 6, R2 inf 10,R4

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A inf 6, R2 12, B 10,R4

A R1 R2 R3 R4 R5 B

0, A 3, A 4, A
15, R5

6, R2 12, B 10, R5

Arquitectura de Redes - Universidad de Murcia

Source: CS244, Steve McKeown, Stanford University

40

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C B 2,C C 1,D D 0

D
La red est estable.

Arquitectura de Redes - Universidad de Murcia

41

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C B 2,C 2,C C 1,D inf,D D 0 -

D
C detecta la cada de D y lo anuncia a A y B.

Arquitectura de Redes - Universidad de Murcia

42

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C 3,B B 2,C 2,C 3,A C 1,D inf,D inf D 0 -

D
A recalcula su vector y establece a B como next hop. Igual en B, que establece a A como next hop.

Arquitectura de Redes - Universidad de Murcia

43

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C 3,B inf,B B 2,C 2,C 3,A inf,A C 1,D inf,D inf 4,A D 0 -

D
C recibe los vectores de A y B hacia D y recalcula su ruta a D. En este ejemplo establece a A como next hop. A y B no se envan vectores de D porque usan split horizon. La informacin expira y se anula la ruta.
Arquitectura de Redes - Universidad de Murcia 44

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C 3,B inf,B inf B 2,C 2,C 3,A inf,A 5,C C 1,D inf,D inf 4,A Inf,A D 0 -

C anuncia a B su vector hacia D, pero no lo anuncia a A porque usa split horizon. B recalcula su vector. C expira su ruta a D al no recibir nuevos vectores.
Arquitectura de Redes - Universidad de Murcia

45

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C 3,B inf,B inf 6,B B 2,C 2,C 3,A inf,A 5,C inf,C C 1,D inf,D inf 4,A Inf,A inf D 0 -

B anuncia a A su vector hacia D, pero no lo anuncia a C porque usa split horizon. A recalcula su vector. B expira su ruta a D al no recibir nuevos vectores.
Arquitectura de Redes - Universidad de Murcia 46

Otro ejemplo de Split Horizon


A B
Visin que cada nodo tiene de D A 2,C 2,C 3,B inf,B inf 6,B B 2,C 2,C 3,A inf,A 5,C inf,C C 1,D inf,D inf 4,A Inf,A inf D 0

D
El problema de la cuenta a infinito se reproduce.

Arquitectura de Redes - Universidad de Murcia

47

Algoritmo del estado del enlace


Cada router contacta con sus vecinos y mide su distancia a ellos. Construye un paquete LSP (Link State Packet) que dice:
Quin es l La lista de sus vecinos y sus distancias a ellos

Enva su LSP por inundacin a todos los routers de la red Recaba los LSPs de todos los dems nodos Convergencia mejor, no hay clculo antes de retransmitir. Calcula las rutas ptimas por el algoritmo de Dijkstra:
Se pone l mismo como raz del rbol, y coloca a sus vecinos Mira los LSP de sus vecinos y despliega el rbol; cuando aparece ms de un camino hacia un nodo se coge el ms corto y se descartan los dems. Las ramas son en principio provisionales. Una rama se confirma cuando es ms corta que todas los dems provisionales.

Arquitectura de Redes - Universidad de Murcia

48

Optimizaciones del algoritmo de estado del enlace


La inundacin se hace reenviando cada LSP por todas las interfaces excepto por la que se recibi. Los LSP se numeran para detectar y descartar duplicados. Adems tienen un tiempo de vida limitado. Para evitar bucles slo se envan los LSP que son nuevos (nuevo = no estaba en la base de datos) y no estn expirados. Con routing por el estado del enlace cada nodo tiene el mapa detallado de toda la red
no ocurra con vector de distancia

Arquitectura de Redes - Universidad de Murcia

49

Ejemplo Estado de Enlaces


6 A 2 D 2 E
Origen
A B D E F G C 21 21 21 20 21 21 21

B 1

B A/6 C/2 E/1

C B/2 F/2 G/5 Flags env. ACK

D A/2 E/2

E B/1 D/2 F/4

F C/2 E/4 G/1

G C/5 F/1

C 2

5 G 1

B/6 D/2

4 F
Secuen

Flags env.LSP

Edad
60 60 60 58 59 62 61

B
0 0 0 0 1 1 1

F
1 1 1 1 0 0 1

G B F G Datos
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 B/6, D/2 A/6, C/2, E/1 A/2, E/2 B/1, D/2, F/4 C/2, E/4, G/1 C/5, F/1 B/2, F/2, G/5 50

Arquitectura de Redes - Universidad de Murcia

Routing por Estado de Enlace


Generalmente se considera que los algoritmos del estado del enlace son mas fiables y eficientes que los del vector distancia. Cada LSP lleva:
Nmero de secuencia para determinar cambios Edad (Age) que se decrementa por nodos intermedios y routers para evitar paquetes errneos. Cuando Age = 0 se eliminan

Para mejorar efectividad, se mantienen los LSP hasta que lneas estn desocupadas. Si llega uno nuevo sustituye al anterior. Se utiliza en diversos protocolos de encaminamiento:
Internet: OSPF, IS-IS ATM: PNNI
Arquitectura de Redes - Universidad de Murcia 51

Vector de Distancias vs. Estado del Enlace


Mensajes
Tamao: pequeo con EE; potencialmente grande con VD Intercambios: EE inundacin!; VD slo a los vecinos

Necesidades de memoria
EE mantiene la topologa completa VD mantiene slo estado para cada vecino

Fiabilidad:
EE puede inundar LSPs incorrectos o corruptos
Se puede hacer robusto al conocer la fuente caminos alternativos

VD puede anunciar caminos incorrectos a todos los destinos


El clculo incorrecto se puede propagar a toda la red

Ejemplos de protocolos (sgte. leccin):


EE: OSPF DV: RIP, RIP2, BGP
Arquitectura de Redes - Universidad de Murcia 52

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

53

El papel de las Tablas de Rutas


Datagrama a enviar Actualizacin de rutas
Algoritmo de Encaminamiento

Tabla de Encaminamiento
IP Subred

Trama con datagrama encapsulado

Actualizacin de rutas

Arquitectura de Redes - Universidad de Murcia

54

Encaminamiento en IP
Dos situaciones bsicas:
eA
HostA

eB
HostB

eA
HostA

eR R ipR

HostB

ipA

ipB

ipA

ipB

Transmisin directa entre hosts conectados a la misma subred

Transmisin indirecta a travs de un router

Arquitectura de Redes - Universidad de Murcia

55

Funcionamiento bsico en IP
La transmisin de datagramas IP entre mquinas conectadas a la misma subred se hace directamente:
Se encapsula el datagrama IP en una trama de subred, se obtiene la direcin fsica y se enva.

Si la mquina destino no est en la misma subred, se enva el datagrama a un router, ste lo reenva al siguiente, y as sucesivamente, hasta alcanzar un router conectado a la misma subred que la mquina destino. Resolucin de Direcciones: se denomina as al proceso de obtencin de una direccin de subred a partir de una direccin IP.

Arquitectura de Redes - Universidad de Murcia

56

Sistemas participantes
La funcin de encaminamiento se realiza principalmente en los routers, aunque en algunas situaciones los hosts deben participar en la toma de decisiones: R1
Ethernet

R2

Host

Arquitectura de Redes - Universidad de Murcia

57

Tablas de Encaminamiento en IP
Cada sistema mantiene una tabla de encaminamiento incluyendo una serie de duplas (red o sistema destino, prximo router).
10.1.1.1 192.3.4.1

Subred 10.0.0.0
10.1.1.2

R1

Subred 192.3.4.0

Tablas Encaminamiento R2
Destino 10.0.0.0 138.4.0.0 192.3.4.0 130.6.0.0 Siguiente 10.1.1.2 (Envo Directo) 138.4.1.2 (Envo Directo) 10.1.1.1 138.4.1.1

R2
138.4.1.2

192.3.4.2 130.6.1.1

R3

Subred 138.4.0.0

Subred 138.4.1.1 130.6.0.0

Arquitectura de Redes - Universidad de Murcia

58

Consulta de las Tablas de Encaminamiento


Rutas estticas (host-based routes) Indican una ruta para un host concreto (/32) Ruta por defecto Siguiente salto si no existe ninguna entrada para el destino Longest Prefix Match De todas las entradas que incluyen la IP destino, se elige aqulla con el prefijo de red ms largo Ejemplo: IP destino = 155.54.210.72 Red destino 155.54.210.0/23 155.54.0.0/16 155.54.128.0/17 Siguiente Salto 130.206.1.11 131.192.1.19 195.112.9.15

Arquitectura de Redes - Universidad de Murcia

59

Ejemplo Longest Prefix Match (2)


Red destino 155.54.210.0/23 155.54.0.0/16 155.54.128.0/17 Siguiente Salto 130.206.1.11 131.192.1.19 195.112.9.15

155.54.210.72 = 10011011 00110110 11010010 01001000 AND /23 = AND /16 = AND /17 = 10011011 00110110 11010010 00000000 10011011 00110110 00000000 00000000 10011011 00110110 10000000 00000000

Arquitectura de Redes - Universidad de Murcia

60

Algoritmo de Reenvo de Datagramas


Extraer direccin IP (Ih) y red (In) destino del datagrama.
Ejemplo: un datagrama enviado a 155.54.211.10

Ih = 155.54.211.10

In = 155.54.210.0

Si In est directamente conectada, mandar el datagrama (encapsular, resolver direccin fsica y transmitir trama). Si no, si existe una ruta especfica para Ih, mandar el datagrama al sitio especificado en la ruta. Si no, si existe una ruta especfica para In, mandar el datagrama al sitio especificado en la ruta (longest prefix match). Si no, si existe una ruta por defecto, mandar el datagrama al sitio especificado en la ruta. Si no, Error, destino inalcanzable!. Se genera un mensaje ICMP.
Arquitectura de Redes - Universidad de Murcia 61

Ejercicio.
Calcular las tablas de rutas de R1, R2, R3, R4 y R5
192.1.2.1
192.1.2.2 192.1.2.3 192.1.2.4

Internet

R2 R1
192.1.1.1 192.1.1.3

S 192.1.2.0 R5 192.1.5.0

192.1.1.0
192.1.1.4

192.1.1.2

R3 192.1.3.0 S
192.1.3.3 192.1.3.4

R4
192.1.4.1

192.1.1.5

192.1.3.1 192.1.3.2

192.1.5.1

192.1.4.0
192.1.4.3

S
192.1.4.4 192.1.4.5 192.1.4.2

R6
192.1.6.1 192.1.5.3 192.1.5.4

S
192.1.5.2

192.1.6.0

192.1.6.2 192.1.6.3

Arquitectura de Redes - Universidad de Murcia

Source: Curso de redes DIT-UPM

62

Clases de Direcciones
En un principio:
1 subred A, B o C) 1 direccin de red IP (clase

Ventaja:
encaminamos en funcin de subredes y no de hosts (encaminamiento jerrquico de 1 nivel)

Problemas:
Explosin del tamao de las tablas de encaminamiento Prdida de direcciones

Arquitectura de Redes - Universidad de Murcia

64

Classless Interdomain Routing (CIDR)


Problema: Gran tamao tablas de encaminamiento Causas:
No utilizacin de encaminamiento jerrquico multinivel No asignacin jerrquica de direcciones

155.54.0.0

130.206.0.0

NSFnet

Tablas de Encam. Dir. Destino 155.54.0.0 130.206.0.0 ....... 1 1

Espaa

Arquitectura de Redes - Universidad de Murcia

65

Solucin
Compartir clases de direcciones entre varias subredes fsicas: subnetting.
Clase B

Asignar varias clases a una subred fsica: supernetting.


Clase C Clase C

Arquitectura de Redes - Universidad de Murcia

66

Subnetting
Parte integral del direccionamiento IP (todo sistema IP debe soportarlo). Consiste en subdividir el campo original de host en:
identificador de subred identificador de host

Arquitectura de Redes - Universidad de Murcia

67

Mscaras de Subred
La divisin entre identificadores subred y sistema se define mediante mscara de subred:
id .de red id. subred id. sistema 0000

direccin mscara

11111111111111111111

Notacin decimal punto:


11111111 11111111 11111111 11000000

255.
Subred: Difusin:

255.

255.

192

Direcciones especiales
id. sistema = 000...0 id. sistema = 111...1

Arquitectura de Redes - Universidad de Murcia

68

Ejemplo Subnetting
Internet

R2 R1
138.4.1.0

138.4.2.0

R5
138.4.5.0

R4
138.4.4.0

R3
138.4.3.0

Una clase B (138.4.0.0) para una Red Local Mscara de subred = 255.255.255.0
Arquitectura de Redes - Universidad de Murcia
Source: Clase de Redes DIT-UPM

69

Ejemplo Subnetting
Dir: 138.4.0.0, Mscara: 255.255.255.0
TOTAL: 256 subredes con 254 hosts cada una
Num
1 2 3 4 .... 256

Dir. Subred
138.4.0.0 138.4.1.0 138.4.2.0 138.4.3.0 138.4.0.1 138.4.1.1 138.4.2.1 138.4.3.1

Primera
138.4.0.254 138.4.1.254 138.4.2.254 138.4.3.254

ltima
138.4.0.255 138.4.1.255 138.4.2.255 138.4.3.255

Broadcast

138.4.255.0138.4.255.1 138.4.255.254 138.4.255.255

Arquitectura de Redes - Universidad de Murcia

70

Ejemplo Subnetting (II)


Dir: 138.4.0.0, Mscara: 255.255.255.192
TOTAL: 1024 subredes con 62 hosts cada una
Num
1 2 3 4 5 6 .... 1024

Dir. Subred
138.4.0.0 138.4.0.1

Primera
138.4.0.62 138.4.0.126 138.4.0.190 138.4.0.254 138.4.1.62 138.4.1.126

ltima
138.4.0.63

Broadcast

138.4.0.64 138.4.0.65 138.4.0.128138.4.0.129 138.4.0.192138.4.0.193 138.4.1.0 138.4.1.1 138.4.1.64 138.4.1.65 138.4.255.192

138.4.0.127 138.4.0.191 138.4.0.255 138.4.1.63 138.4.1.127

138.4.255.193 138.4.255.254 138.4.255.255

Arquitectura de Redes - Universidad de Murcia

71

Subnetting con VLSM


Hasta ahora todas las subredes tenan mismo tamao poco flexible, se siguen desperdiciando direcciones Solucin: Variable Length Subnet Mask Creamos ms niveles en la jerarqua
cada subred se puede particionar a su vez en ms subredes ejemplo con una direccin de clase C
{nnnnnnnn}.{nnnnnnnn}.{nnnnnnnn}.{sshhhhhh} inicialmente 4 subredes: ss=00, 01, 10 y 11 (/26) particionamos la segunda subred ss=01 en 2 subredes adicionales (/27) {nnnnnnnn}.{nnnnnnnn}.{nnnnnnnn}.{01hhhhhh} {nnnnnnnn}.{nnnnnnnn}.{nnnnnnnn}.{010hhhhh} {nnnnnnnn}.{nnnnnnnn}.{nnnnnnnn}.{011hhhhh}
Arquitectura de Redes - Universidad de Murcia 72

Ejemplo VLSM
192.168.1.64/28 192.168.1.80/28

1 subred de 40 hosts

LAN 2 necesitamos 6 bits para la 10 hosts parte host quedan 2 bits para subredes LAN 1
192.168.1.0/26

LAN 3 10 hosts
192.168.1.96/28

5 subredes de 10 hosts 192.168.1.0/26


4 bits para hosts 4 bits para subredes
192.168.1.64/28 192.168.1.80/28 192.168.1.96/28 192.168.1.112/28 192.168.1.128/28 Arquitectura de Redes - Universidad de Murcia

40 hosts LAN 6 10 hosts

LAN 4 10 hosts LAN 5 10 hosts


192.168.1.112/28

192.168.1.128/28

73

Supernetting (I)
Classless Inter-Domain Routing (CIDR)
Objetivo general:
Eliminar las clases de direcciones para solucionar temporalmente los problemas de direccionamiento y encaminamiento

Propuesta inicial:
Asignacin de varias direcciones clase C contiguas a una misma organizacin

Necesidad menos de 256 menos de 512 .... menos de 16384

Dirs. Clase C 1 2 64

Direcciones clase B slo para organizaciones que realmente las necesiten (ms de 32 subredes o 4096 hosts)

Arquitectura de Redes - Universidad de Murcia

74

Supernetting (II)
Esquema opuesto a subnetting:
Subnetting: una clase para mltiples subredes Supernetting: varias clases para una organizacin

Ejemplo: una empresa solicita 2048 direcciones

Asignacin: 194.170.168.0 / 21
direccin
mscara (255.255.248.0)

194

170

168

11111111 11111111 11111000 00000000 asignado


Arquitectura de Redes - Universidad de Murcia

libre

Agregacin de Rutas
194.170.168.0 / 21 (2048 dirs) 194.170.168.0 / 17 (32.768 dirs)

Internet

Red1

PSI 1

Red2
194.170.176.0 / 22 (1024 dirs)

Red3

194.170.180.0 / 24 (256 dirs)

Arquitectura de Redes - Universidad de Murcia

Source: Curso Redes DIT-UPM

76

Agregacin de Rutas (II)


Rangos Asignados:

PSI1 Red1 Red2

11000010

10101010

(194.170.168.0 / 17) 11000010 10101010 10101

(194.170.168.0 / 21) 11000010 10101010 101100

(194.170.176.0 / 22) 11000010 10101010 10110100

Red3

(194.170.180.0 / 24)

Arquitectura de Redes - Universidad de Murcia

77

CIDR: Asignacin Geogrfica


Direcciones desde hasta Multiregional 192.0.0.0 - 193.255.255.255 Europa 194.0.0.0 - 195.255.255.255 Otros 196.0.0.0 - 197.255.255.255 USA y Canada 198.0.0.0 - 199.255.255.255 Centro y Sudamrica 200.0.0.0 - 201.255.255.255 Asia 202.0.0.0 - 203.255.255.255 Otros 204.0.0.0 - 205.255.255.255 Otros 206.0.0.0 - 207.255.255.255 Regin

Arquitectura de Redes - Universidad de Murcia

78

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

79

Introduccin
Hemos estudiado algoritmos distribuidos para calcular rutas En las siguientes lecciones, estudiaremos protocolos de encaminamiento
Intra-dominio (RIP, OSPF) Inter-dominios (BGP)

AS400
IGP

AS200

EGP EGP

IGP
IGP

EGP
IGP

AS300
EGP

AS100

Arquitectura de Redes - Universidad de Murcia

Source: Curso Redes DIT-UPM

80

Encaminamiento en Interredes
Dominio de Encaminamiento o Sistema Autnomo
Conjunto de redes gestionadas por una administracin comn y que comparten una estrategia de encaminamiento comn.

Dos tipos de encaminamiento Encaminamiento intra-dominio o intra-SA Encaminamiento inter-dominio o inter-SA

Arquitectura de Redes - Universidad de Murcia

81

Encaminamiento IP
External Gateway Protocol (EGP): protocolo de encaminamiento entre Sistemas Autnomos. Ejemplos: EGP, BGP, IDPR. Internal Gateway Protocol (IGP): protocolo de encaminamiento dentro de un Sistema Autnomo. Ejemplos:
Gateway-to-Gateway Protocol (GGP) Routing Information Protocol (RIP) HELLO (usado en NSFnet) IGRP (propietario de CISCO Systems) Open Short Path First Protocol (OSPF)
82

Arquitectura de Redes - Universidad de Murcia

Ventajas que Aporta esta Divisin


Escalabilidad
No hace falta intercambiar informacin/mensajes entre todos los nodos de la red

Compatibilidad
Diferentes SAs pueden utilizar el protocolo de encaminamiento interno que mejor se adapte a sus necesidades

Extensibilidad
Aadir una nueva variante de un protocolo de encaminamiento no obliga a que todos los nodos de Internet lo implementen
Arquitectura de Redes - Universidad de Murcia 83

Protocolos de Encaminamiento IntraDominio


Existen mltiples protocolos:
RIP OSPF HELLO IGRP IS-IS

Arquitectura de Redes - Universidad de Murcia

84

RIP
Routing Information Protocol (RFC 1058) Caractersticas:
Vector de distancia Mtrica = nmero de saltos (de 1 a 15, 16 es )
No ptima, aunque administrador puede ajustar valores de hop count (ej. ms altos en enlace lentos)

Funciona sobre UDP en el puerto 520 Dos tipos de participantes: activos e inactivos
Cada 30 seg. los activos difunden a todos sus vecinos su vector de distancias: conjunto de duplas (dir. IP, distancia). Los pasivos slo escuchan los mensajes RIP y actualizan sus tablas. Si un host participa ha de ser forzosamente pasivo
Arquitectura de Redes - Universidad de Murcia 85

RIP
Caractersticas adicionales:
Emplea histresis en la actualizacin de rutas
Slo se actualizan si mtrica estrictamente mejor

Una ruta es inalcanzable si no se vuelve a anunciar en 180 segundos Dos tipos de paquetes:
Request: enviados por los routers o hosts que acaban de conectarse o cuya informacin ha caducado. Response: enviados peridicamente, en respuesta a un Request o cuando cambia algn coste.

Arquitectura de Redes - Universidad de Murcia

86

Convergencia en RIP

A
Vector de A A B C 0 1 2 A B B

B
Vector de B A B C 1 0 1 A B C

C
Vector de C A B C 2 1 0 B B C

Arquitectura de Redes - Universidad de Murcia

87

Convergencia en RIP
C deja de funcionar; B borra la ruta a C de su VdD
1 1

A
Vector de A A B C 0 1 2 A B B

B
Vector de B A B C 1 0 1 A B C

C
Vector de C A B C 2 1 0 B B C

Arquitectura de Redes - Universidad de Murcia

88

Convergencia en RIP
B vuelve a conocer la ruta hacia C cuando A le enva su VdD

A
Vector de A A B C 0 1 2 A B B

B
Vector de B A B C 1 0 3 A B A

C
Vector de C A B C 2 1 0 B B C

Arquitectura de Redes - Universidad de Murcia

89

Convergencia en RIP
Cuando A recibe el VdD de B incrementa la distancia hacia C en una unidad

A
VdD de A A B C 0 1 4 A B B

B
VdD de B A B C 1 0 3 A B A

C
VdD de C A B C 2 1 0 B B C

A y B intercambiarn una ruta inexistente hasta que la mtrica llegue a infinito (16 en RIP)!

Arquitectura de Redes - Universidad de Murcia

90

Mejoras a la Convergencia empleadas por RIP


Split Horizon
Un VdD no se enva al vecino que usamos como siguiente salto hacia esa direccin IP

Poison Reverse
Anuncia nodos inalcanzables con coste Puede combinarse con triggered updates
Dicha informacin se propaga inmediatamente (no espera a siguiente actualizacin)

Hold down time


Durante 60 segundos un nodo ignora todo VdD referente a una direcin inalcanzable Todos los nodos han de usar mismo valor

Estas soluciones no son infalibles para cualquier escenario

Arquitectura de Redes - Universidad de Murcia

91

Formato Mensajes RIPv1


COMANDO (1-5) VERSION (1) A CERO FAMILIA DE RED1 (2) A CERO DIRECCION IP RED 1 A CERO A CERO DISTANCIA A RED 1 FAMILIA DE RED 2 (2) A CERO DIRECCION IP RED 2 A CERO A CERO DISTANCIA A RED 2 .........
Arquitectura de Redes - Universidad de Murcia 92

Convenciones en cuanto a Direcciones


Soporta mltiles tipos de direcciones
Hasta 14 octetos de longitud mxima En el caso de IP se usan 4 octetos y el resto han de ir a cero

Familia de direcciones usa tipos segn se definen en 4BSD Unix


A IP le corresponde 0x02

La ruta por defecto se representa como 0.0.0.0 Interpretacin y agregacin de rutas


RIPv1 slo funciona con direcciones classful Slo se pueden enviar rutas agregadas si el receptor puede interpretarlas sin ambigedad
En la prctica slo la misma subred (misma mscara) CIDR no VLSM ni

RIPv2 resuelve este problema


Arquitectura de Redes - Universidad de Murcia 93

Mejoras Aportadas por RIPv2


RFC 2453 Soporte de CIDR
El anuncio de rutas incluir la mscara de red

Mejoras a la tolerancia a errores mediante la inclusin explcita del siguiente salto


Permite evitar ciclos ms fcilmente Mejora la convergencia

Etiquetas de rutas
Permite propagar informacin adicional sobre el origen de la ruta (ej. el nmero de SA)

Arquitectura de Redes - Universidad de Murcia

94

Formato Mensajes RIPv2


COMANDO (1-5) VERSION (1) A CERO FAMILIA DE RED1 (2) ETIQUETA RED 1 DIRECCION IP RED 1 MASCARA DE RED 1 SIGUIENTE SALTO A RED 1 DISTANCIA A RED 1 FAMILIA DE RED 2 (2) ETIQUETA RED 2 DIRECCION IP RED 2 MASCARA DE RED 2 SIGUIENTE SALTO A RED 2 DISTANCIA A RED 2 .........
Arquitectura de Redes - Universidad de Murcia 95

Ventajas e Inconvenientes de RIP


Ventajas:
Muy sencillo Muy utilizado Distribuido con UNIX BSD (routed) Diferencias entre implementaciones Convergencia lenta (inconsistencias transitorias) Puede crear bucles Carga las redes 15 saltos mximo La mtrica no tiene en cuenta la velocidad de los enlaces, las cargas, etc. v1 no soporta subnetting completamente, v2 s
96

Desventajas:

Arquitectura de Redes - Universidad de Murcia

OSPF
Open Shortest Path First (RFC 2328, versin 2) Caractersticas generales:
Desarrollado por IETF para redes IP IP subnetting, CIDR (direcciones + mscaras) Encaminamiento multimtrica Mltiples rutas (balanceo de carga) Encaminamiento jerrquico (AS divididos en reas) Inyeccin de rutas externas Adaptacin a redes locales Soporte para autenticacin

Arquitectura de Redes - Universidad de Murcia

97

OSPF
Estado de Enlace
Objetivo:
reaccionar rpidamente ante cambios topolgicos

Vector de distancias

convergencia lenta

Solucin: estado de enlace


cada router mantiene una base de datos con la topologa del AS cada router ejecuta Dijkstra en paralelo para calcular el rbol de caminos ms cortos a cada destino los destinos que se aprenden de otros AS aparecen en las hojas del rbol

Arquitectura de Redes - Universidad de Murcia

98

OSPF
Jerarqua de reas
Objetivo:
minimizar el trfico OSPF (trfico de control)

Solucin: organizar el AS de forma jerrquica en distintas reas


intercambiar LSAs entre todos los routers de la red no escala a redes grandes y complejas se divide el AS en reas (conjunto de redes dentro del AS) para confinar el intercambio de LSAs OSPF define un rea especial llamada rea 0 o backbone, otras reas se pueden conectar al backbone
backbone es obligatorio en toda red OSPF todas las reas deben estar conectadas por el backbone

LSA = Link State Advertisement


Arquitectura de Redes - Universidad de Murcia 99

reas OSPF
Router Backbone

rea 0 (Backbone) A B

BR Ruta intra-rea: D-G-H

Ruta inter-rea: F-C,C-A-D,D-G-H Ruta inter-AS: A-D,D-G-H, H-...

ABR Router Frontera de rea

C D rea 1 F
Router Interno

E rea 2
A otros AS

RI

ASBR
Router Frontera De Sistema Autnomo 100

Topologa de un rea es invisible fuera de ella


Arquitectura de Redes - Universidad de Murcia

OSPF
Tipos de Routers
Routers internos
slo conectados con redes del mismo rea slo mantienen la base de datos LS del rea

Routers frontera-rea (Area Border Router, ABR)


conectan con redes de varias reas mantienen una base de datos LS por cada rea generan summary LSAs (LSAs resumen)
cada summary LSA indica las redes/costes del rea ABR propaga al backbone para que distribuyan la informacin al resto de reas

Arquitectura de Redes - Universidad de Murcia

101

OSPF
Tipos de Routers
Routers backbone
conectados con alguna red del rea 0

Routers frontera-AS (Autonomous System Boundary Router, ASBR)


conectados con redes de otros AS inyectan rutas externas que se propagan por el AS

Arquitectura de Redes - Universidad de Murcia

102

OSPF
Funcionamiento (I)
Protocolo Hello para mantener informacin de los vecinos
mensajes Hello peridicos listan los vecinos conocidos se comprueba bidireccionalidad formacin de adyacencias: relacin entre dos routers OSPF que permite el intercambio de LSAs
no todos los vecinos forman una adyacencia, para reducir sobrecarga de control cuando no es necesaria vecinos adyacentes mantienen sincronizadas sus bases de datos LS, cualquier cambio lo comunican a la adyacencia

Arquitectura de Redes - Universidad de Murcia

103

OSPF
Funcionamiento (II)
Intercambio de Base de Datos para sincronizar LS entre vecinos adyacentes Inundacin de LSAs para distribuir la informacin de estado de enlace dentro del rea
se propaga a travs de las adyacencias todos los nodos del rea tienen la misma visin de la base de datos LS se calculan las rutas intra-rea

Arquitectura de Redes - Universidad de Murcia

104

OSPF
Funcionamiento (III)
Rutas inter-rea
ABR resume la topologa de cada rea a la que est conectado en un LSA tipo 3 (summary network) cada LSA se inunda a travs del backbone, por lo que llega al resto de ABRs estos ABRs tienen informacin topolgica completa del backbone y el resumen del resto de reas, por lo que calculan los caminos a todos los destinos inter-rea el resultado se anuncia dentro de cada rea del ABR, de forma que todos los routers aprenden rutas a todos los destinos del AS
Arquitectura de Redes - Universidad de Murcia 105

OSPF
Funcionamiento (IV)
Rutas externas al AS
ABR genera LSA tipo 4 (summary ASBR) para que los routers de un rea sepan cmo alcanzar los ASBR de otras reas ASBR inunda las rutas hacia destinos fuera del AS por medio de LSA tipo 5 (external), que se propaga en todo el AS
excepcin: stub areas

Arquitectura de Redes - Universidad de Murcia

106

OSPF
Formato de Paquete
Cabecera de Paquete OSPF

Enviado directamente sobre IP con prot. 89 5 tipos paquete


- Hello (0x01) - Database Description (0x02) - Link State Request (0x03) - Link State Update (0x04) - Link State Ack. (0x05)

16

32

version

type

packet length

Router ID Area ID Checksum Autype

Vecinos deben tener el mismo:


- Area ID - Autype (tipo de Auth. )

Authentication Authentication

Arquitectura de Redes - Universidad de Murcia

Organizacin del tema


OSPF Protocolo Hello Intercambio de Bases de Datos Inundacin de LSAs Soporte de mltiples mtricas Resumen

Arquitectura de Redes - Universidad de Murcia

108

Protocolo Hello
Mensaje Hello
prioridad intervalo entre Hellos lista de vecinos DR y BDR

Hello

Hello

Hello

Destino: direccin multicast AllSPFRouters (224.0.0.5) Responsable de establecer y mantener las relaciones de vecindad En redes de acceso mltiple (p.ej. Ethernet) con al menos dos routers se encarga de seleccionar:
router designado (DR, designated router) router designado de respaldo (BDR, backup DR)
Arquitectura de Redes - Universidad de Murcia 109

DR
Si cada par de routers en la LAN fueran adyacentes: N * (N - 1) / 2

Solucin: Los routers slo son adyacentes con el DR y el BDR

BDR

DR

Arquitectura de Redes - Universidad de Murcia

110

DR
Funciones
Mantiene adyacencias con el resto de routers de la red de acceso mltiple
se sincronizan las bases de datos LS DR recibe LSAs con destino multicast AllDRouters (224.0.0.6)

Genera LSA tipo 2 (network) para resumir la topologa de la red de acceso mltiple
lista todos los routers conectados inunda el LSA por el rea al que pertenece la red

Arquitectura de Redes - Universidad de Murcia

111

DR
Eleccin
Eleccin por medio del Protocolo Hello
si ya existe un DR se mantiene si no, se selecciona el router de mayor Prioridad (configurada por interfaz) en caso de empate, se selecciona el de mayor Router ID

131.108.3.2 DR R1 Router ID = 144.254.3.5

131.108.3.3

Arquitectura de Redes - Universidad de Murcia

112

BDR
Mantiene adyacencias con el resto de routers de la red de acceso mltiple
se sincronizan las bases de datos LS BDR recibe LSAs con destino multicast AllDRouters (224.0.0.6)

Eleccin por medio del Protocolo Hello En caso de fallo del DR, el BDR asume su funcin
convergencia rpida ante fallos

Arquitectura de Redes - Universidad de Murcia

113

Organizacin del tema


OSPF Protocolo Hello Intercambio de Bases de Datos Inundacin de LSAs Soporte de mltiples mtricas Resumen

Arquitectura de Redes - Universidad de Murcia

114

Descriptores de Base de Datos


Ventaja
R2 R1

- R1 pierde su vecino y borra todas las rutas a la nube - R1 mantiene los LSAs de routers de la nube en la base de datos (hasta maxage = 60 minutos) - Si antes vuelve el link, se intercambian mensajes Database Description, compara los identificadores de LSA que tena y slo solicita los nuevos (LS Request/LS Updata) uso reducido del ancho de banda
Arquitectura de Redes - Universidad de Murcia 115

Organizacin del tema


OSPF Protocolo Hello Intercambio de Bases de Datos Inundacin de LSAs Soporte de mltiples mtricas Resumen

Arquitectura de Redes - Universidad de Murcia

116

LSAs Propagados en Adyacencias


R2 R1

Full

DR

BDR

LSAs slo enviados a routers adyacentes (LS Update). En red multiacceso a direccin AllDRouters. LSAs son asentidos (LS Ack) por los router adyacentes en unicast.

Arquitectura de Redes - Universidad de Murcia

117

Tipos de LSAs
5 tipos de LSA
1) Router LSA: LSP clsico emitido por todo router, con nmero secuencia, age, etc. Describe los enlaces del router. Inundado dentro del rea. 2) Network LSA: emitido por DRs. Contiene la lista de routers conectados a la red multiacceso. Inundado dentro del rea. 3) Network Summary LSA: emitido por ABRs. Describe los destinos alcanzables en el resto de reas. Inundado dentro del rea. 4) ASBR Summary LSA: emitido por ABRs. Describe los ASBRs alcanzables en el resto de reas. Inundado dentro del rea. 5) AS External LSA: emitido por ASBRs. Describe los destinos alcanzables en otro AS. Inundado en todo el AS.

Arquitectura de Redes - Universidad de Murcia

118

Ejemplo LSAs
T1 rea 2 T2 IR T1 T3 T5 rea 0 T3,4,5 T1

ABR

ASBR
A otros AS rea 1

Arquitectura de Redes - Universidad de Murcia

119

Ejemplo Informacin Propagada


Backbone Area #0

1.A 1.B 1.C 1.D

3.A 3.B 3.C 3.D

1.B
Token Ring

1.A
Token Ring

2.A 2.B 2.C 2.B


Token Ring Token Ring

3.B

3.A
Token Ring

Token Ring

1.C

1.D 2.C

2.A

3.C 3.D

Cambios de LS no se propagan fuera, pero s el resumen de la topologa (y sus cambios).


Arquitectura de Redes - Universidad de Murcia 120

Ejemplo Informacin Propagada


2.A 2.B 2.C 2.D 3.A 3.B 3.C 3.D 1.A Backbone 1.B Area #0 1.C 1.D 3.A 3.B 3.C 3.D
Token Ring

1.A 1.B 1.C 1.D 2.A 2.B 2.C 2.D 3.B 3.A
Token Ring Token Ring

1.B
Token Ring

1.A

2.B
Token Ring

Token Ring

1.C

1.D 2.C

2.A

3.C 3.D

Arquitectura de Redes - Universidad de Murcia

121

Ejemplo con Informacin de enrutamiento externa


ASBR Backbone Area 0 External links

4a 4b 5a 5b
External links

4a 4b

5a 5b

4a 4b 5a 5b

4a 4b

5a 5b
3.B ASBR
Token Ring Token Ring

1.B
Token Ring

1.A
Token Ring

3.A

2.B
Token Ring

Token Ring

1.C 1.D 2.A 2.C

3.C 3.D

Resmenes de rutas externas se inundan en las reas Los cambios en los enlaces son vistos en todos sitios
Arquitectura de Redes - Universidad de Murcia 122

Coste de Rutas Externas


Cost = 10 R1 redistribucin de la red N en OSPF con External Cost = 1 ASBR 2

Cost = 8 ASBR 3 Network Type 1 Next Hop N1 cost 11 R1 N1 cost 10 R3 redistributin de la red N en OSPF con External Cost = 2

Ruta seleccionada para tipo 1

Tipo 1: mismas unidades de coste que asume OSPF Tipo 2: un orden de magnitud mayor, para seleccionar el ASBR que anuncia menor coste a un destino fuera del AS
Arquitectura de Redes - Universidad de Murcia 123

Organizacin del tema


OSPF Protocolo Hello Intercambio de Bases de Datos Inundacin de LSAs Soporte de mltiples mtricas Resumen

Arquitectura de Redes - Universidad de Murcia

124

Enrutamiento Multimtrica
OSPF permite hasta cinco mtricas diferentes simultneas:
Normal (TOS=0x00) nmero de saltos Coste monetario (TOS = 0x02) administrador Fiabilidad (TOS = 0x04) histrico de loss rate Rendimiento (TOS=0x08) velocidad de transmisin Retardo (TOS=0x10) tiempo transmisin + cola

Los routers eligen una mtrica u otra en funcin del campo TOS (Type of Service) de los datagramas IP:
Precedence Dspanning T R trees C 0(uno Los routers en realidad calculan 5 para cada coste)

Arquitectura de Redes - Universidad de Murcia

125

Organizacin del tema


OSPF Protocolo Hello Intercambio de Bases de Datos Inundacin de LSAs Soporte de mltiples mtricas Resumen

Arquitectura de Redes - Universidad de Murcia

126

Gestin de un rea Normal


Generar resumen de LSAs de otras reas e inyectarlos dentro del rea Generar resumen de LSAs internos y enviarlos a otras reas Los LSA externos son enviados por inundacin a todo el AS Se necesitan saber todas las conexiones exteriores o todas las redes de otras reas? Solucin: Agregacin y Stub-Areas
Arquitectura de Redes - Universidad de Murcia 127

Organizacin del tema


Introduccin al encaminamiento en redes Algoritmos de encaminamiento Protocolos de encaminamiento en Internet
Introduccin y conceptos fundamentales Encaminamiento intradominio (RIP,OSPF) Encaminamiento entre dominios (BGP)

Arquitectura de Redes - Universidad de Murcia

128

Internet como Conjunto de ASs


Campus SA1 Red Regional IX SA3 Backbone Comercial Campus SA8 Red Regional Campus
IX

SA2 Backbone

SA4 Red Regional Campus IX Red Regional Campus Red RegionalSA7

Campus

Backbone

Backbone Comercial

SA6 Campus Campus

Arquitectura de Redes - Universidad de Murcia

Source: Curso Redes DIT-UPM

129

Sistemas Autnomos (ASs)


Un sistema autnomo es un dominio de routing autnomo al que se le ha asignado un Autonomous System Number (ASN).

la administracin de un AS aparece a otros ASs como un plan de encaminamiento nico y coherente, presentando una imagen consistente de qu redes son alcanzables a travs de l. RFC 1930: Guidelines for creation, selection, and registration of an Autonomous System

Arquitectura de Redes - Universidad de Murcia

130

Nmeros de ASs (ASNs)


Son valores de 16 bits Del 64512 al 65535 estn reservados para uso privado Actualmente hay ms de 11,000 en uso Genuity (actualmente BBN): 1 MIT: 3 Harvard: 11 RedIRIS: 766 AT&T: 7018, 6341, 5074, UUNET: 701, 702, 284, 12199, Sprint: 1239, 1240, 6211, 6242,
ASNs representan unidades de poltica de encaminamiento
Arquitectura de Redes - Universidad de Murcia 131

AS Graph != Topologa de Internet


BGP se dise para reducir la informacin

El AS graph podra ser algo parecido a esto


Arquitectura de Redes - Universidad de Murcia

La realidad se parece ms a esto


Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

132

El Concepto de Peering
transit AS transit AS transit AS

stub AS
peer proveedor peer cliente

stub AS

stub AS

Los peers ofrecen trnsito entre sus respectivos clientes Los peers no ofrecen trnsito entre otros peers El acuerdo de peering puede incluir o no compensacin econmica
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

trfico permitido

trfico NO permitido

Arquitectura de Redes - Universidad de Murcia

133

No Siempre Necesitamos BGP RedIRIS


Marca rutas a 155.54.0.0/16 apuntando a UMU

Marca ruta por defecto 0.0.0.0/0 apuntando a RedIRIS

Univ. De Murcia
155.54.0.0/16 El routing esttico es el caso ms comn de conexin a Internet en stub ASs. Esto explica por qu BGP es un misterio para muchos
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

134

Border Gateway Protocol (BGP-4)


BGP usa conceptos de vector de distancias pero no es un protocolo de vector de distancias
En su lugar, BGP usa vector de caminos

BGP anuncia caminos completos (lista de ASs)


Conocido como AS_PATH (vector de caminos) Ejemplo de anuncio: La red 171.64/16 se puede alcanzar va {AS1, AS5, AS13}.

Los caminos con ciclos se pueden detectar y eliminar de forma local De las diferentes opciones, la poltica local elige el mejor camino (AS path) Cuando un enlace/router falla, el camino se invalida (withdrawn)
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

135

Versiones de BGP
1989 : BGP-1 [RFC 1105]
Reemplazo de EGP (1984, RFC 904)

1990 : BGP-2 [RFC 1163] 1991 : BGP-3 [RFC 1267] 1995 : BGP-4 [RFC 1771]
Soporte de Classless Interdomain Routing (CIDR)

1998: BGP4+ [RFC 2283]


Extensiones multi-protocolo para BGP Permite entre otras cosas IPv6, interdomain multicast, etc.
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

136

Funcionamiento Simplificado
Establece sesin con TCP puerto 179

AS1

Sesin BGP
Intercambia todas las rutas activas

AS2
Mientas que la conexin est activa, intercambia mensajes de actualicacin de rutas
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

Intercambia actualiz. incrementales


Arquitectura de Redes - Universidad de Murcia

137

Tipos de Mensajes BGP


Open : Establece la sesin de Peering Keep Alive : Intercambio a intervalos regulares Notification : Cierra una sesin de peering Update : Anuncia nuevas rutas o anula algunas previamente anunciadas

Anuncio BGP = prefijos + valores de atributos


Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

138

Atributos BGP

Value ----1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... 255

Code --------------------------------ORIGIN AS_PATH NEXT_HOP MULTI_EXIT_DISC LOCAL_PREF ATOMIC_AGGREGATE AGGREGATOR COMMUNITY ORIGINATOR_ID CLUSTER_LIST DPA ADVERTISER RCID_PATH / CLUSTER_ID MP_REACH_NLRI MP_UNREACH_NLRI EXTENDED COMMUNITIES reserved for development

Reference --------[RFC1771] [RFC1771] [RFC1771] [RFC1771] [RFC1771] [RFC1771] [RFC1771] [RFC1997] [RFC2796] [RFC2796] [Chen] [RFC1863] [RFC1863] [RFC2283] [RFC2283] [Rosen]

Atributos ms importnates
No todos han de estar presentes en cada anuncio

Fuente IANA: http://www.iana.org/assignments/bgp-parameters

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

139

Los Atributos se usan para Elegir la Mejor Ruta


192.0.2.0/24

192.0.2.0/24

192.0.2.0/24

192.0.2.0/24

Dadas mltiples rutas a un mismo prefijo, un BGP peer ha de elegir como mucho una mejor ruta. (Nota: podra rechazarlas todas!)

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

140

Resumen de Seleccin de Ruta

Highest Local Preference

Controlar decisiones locales del admin.

Shortest ASPATH Lowest MED i-BGP < e-BGP Lowest IGP cost to BGP egress Lowest router ID
Romper empates Ingeniera de trfico

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

141

Atributo Next Hop


12.125.133.90

AS 7018
AT&T

12.127.0.121

AS 6431
AT&T Research

AS 12654
RIPE NCC

135.207.0.0/16 Next Hop = 12.125.133.90

135.207.0.0/16 Next Hop = 12.127.0.121

Cada vez que un anuncio de ruta cruza una frontera de un AS, el atributo Next Hop se cambia a la direccin IP del router frontera que aunci la ruta.
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

142

Integracin de IGP y EGP en Next Hop


135.207.0.0/16 Next Hop = 192.0.2.1

135.207.0.0/16 10.10.10.10 Forwarding Table destination next hop 192.0.2.0/30 10.10.10.10

AS 1
192.0.2.0/30

192.0.2.1

AS 2

+
EGP
destination 135.207.0.0/16 next hop 192.0.2.1

Forwarding Table destination next hop 135.207.0.0/16 192.0.2.0/30 10.10.10.10 10.10.10.10


143

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

iBGP e Importacin de Rutas


External BGP (eBGP) cuando el peer est en otro AS Internal BGP (iBGP) para pasar rutas a los otros routers frontera del mismo AS. iBGP se enruta (usando IGP!)

AS1

eBGP

iBGP AS2
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

144

iBGP No Escala en Grandes ISPs


eBGP Update iBGP Update N routers frontera implica N(N-1)/2 sesiones de peering Cada router requiere configurar N-1 sesiones iBGP Aadir un nuevo router frontera implica modificar la configuracin del resto de routers iBGP La tabla de rutas iBGP podra almacenar muchas rutas alternativas que no son buenas Soluciones: Usar varios ASs Route reflectors
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

145

Route Reflectors
Los RR pasan los mensajes iBGP Update a los peers iBGP Cada RR pasa SLO las mejores rutas Se usan los atributos ORIGINATOR_ID y CLUSTER_LIST para evitar ciclos

RR RR RR

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

146

Atributo ASPATH
135.207.0.0/16 AS Path = 1755 1239 7018 6341

AS 1129
Global Access

135.207.0.0/16 AS Path = 1239 7018 6341

AS 1755
Ebone

135.207.0.0/16 AS Path = 1129 1755 1239 7018 6341

AS 1239
Sprint

135.207.0.0/16 AS Path = 7018 6341

AS 12654 RIPE NCC


135.207.0.0/16 AS Path = 3549 7018 6341

AS7018
135.207.0.0/16 AS Path = 6341 AT&T

AS 6341
AT&T Research

135.207.0.0/16 AS Path = 7018 6341

AS 3549
Global Crossing

135.207.0.0/16
Prefijo Originado Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

147

BGP Puede No Elegir Camino Ms Corto Globalmente


Para BGP el camino 4 1 es mejor que 3 2 1 No es fcil conseguir algo mejor con escalabilidad. Si se exporta el estado interno, tambin aumenta Mucho la inestabilidad y el estado a almacenar.
AS 3

AS 4

AS 2

AS 1 Arquitectura de Redes - Universidad de Murcia


Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

148

ASPATH Permite Evitar Ciclos

AS 7018 BGP en el AS X nunca acepta una ruta cuyo ASPATH contiene X.


No aceptar!

12.22.0.0/16 ASPATH = 1 333 7018 877

AS 1
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

149

El Trfico Normalmente sigue la Ruta ASPATH

135.207.0.0/16 ASPATH = 3 2 1

AS 1
135.207.0.0/16

AS 2

AS 3

AS 4

IP Packet Dest = 135.207.44.66

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

150

Cmo Elegir Camino de Salida?


peer provider peer customer

AS 4

RedIRIS

AS 3

AS 2 AS 1

Qu ruta debera elegir RedIRIS para ir a 13.13.0.0/16?


Arquitectura de Redes - Universidad de Murcia

13.13.0.0/16
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

153

Atributo Local Preference


Este atributo slo se usa con iBGP

AS 4

local pref = 80 local pref = 90

AS 3

local pref = 100

Mayor valor de Local Preference ms preferencia

AS 2

AS 1 13.13.0.0/16
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

Arquitectura de Redes - Universidad de Murcia

154

Ejemplo: Enlaces de Backup

AS 1
enlace primario enlace de backup

Set Local Pref = 100 for all routes from AS 1

AS 65000

Set Local Pref = 50 for all routes from AS 1

Fuerza al trfico de salida a usar el enlace primario salvo cuando cae.

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

155

Ejemplo similar con Multihoming

AS 1
proveedor

AS 3
proveedor

primary link

backup link

Set Local Pref = 100 for all routes from AS 1

multi-homed AS

Set Local Pref = 50 for all routes from AS 3

AS 2
Fuerza al trfico de salida a usar el enlace primario salvo cuando cae.
Arquitectura de Redes - Universidad de Murcia
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

156

Padding para Control del Trfico Entrante


AS 1
proveedor

192.0.2.0/24 ASPATH = 2

192.0.2.0/24 ASPATH = 2 2 2

primario

backup 192.0.2.0/24

cliente
AS 2

Padding forzar (normalmente) a que el trfico entre del AS1 usando el enlace primario.

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

157

Padding no til
AS 1
proveedor
192.0.2.0/24 ASPATH = 2

AS 3
proveedor

192.0.2.0/24 ASPATH = 2 2 2 2 2 2 2 2 2 2 2 2 2 2

primario

backup 192.0.2.0/24

cliente
AS 2

AS 3 enva el trfico por el enlace de backup porque las rutas hacia clientes tienen preferencia sobre la longitud del ASPATH. En estos casos el padding sirve para balanceo carga.

Arquitectura de Redes - Universidad de Murcia

Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

158

Solucin Basada en Communities


AS 1
proveedor
192.0.2.0/24 ASPATH = 2

AS 3
proveedor

AS 3: normalmente local pref para clientes es 100, y 90 para peers

192.0.2.0/24 ASPATH = 2 COMMUNITY = 3:70

primario

backup 192.0.2.0/24
Polit. de import. en AS 3: If 3:90 in COMMUNITY then set local preference to 90 If 3:80 in COMMUNITY then set local preference to 80 If 3:70 in COMMUNITY then set local preference to 70
Source: Tutorial BGP, Timothy G. Griffin, ICNP 2002

cliente
AS 2

Arquitectura de Redes - Universidad de Murcia

159

Bibliografa
Bsica
Comer, cap. 4, 8, 10, 14, 15 y 16 Tanenbaum, sec. 5.2 y sec. 5.4

Complementaria
Stevens, cap. 3 y 4 Bertsekas, Sec. 5.1 y 5.2 RFC 2453 (RIPv2) RFC 2328 (OSPFv2) RFC 1771, 1772 (BGP-4) T. Griffin, G. Wilfong, An analysis of BGP convergence properties, ACM SIGCOMM 1999
160

Arquitectura de Redes - Universidad de Murcia

Das könnte Ihnen auch gefallen