Publicado el 14 de Enero del 2017
502 visualizaciones desde el 14 de Enero del 2017
473,5 KB
29 paginas
Creado hace 19a (04/10/2005)
Clases 14 y 15
RIP
Tema 4.- Enrutamiento con IP
Dr. Daniel Morató
Redes de Ordenadores
Ingeniero Técnico de Telecomunicación Especialidad en
Sonido e Imagen, 3º curso
Temario
1.- Introducción
2.- Nivel de enlace en LANs
3.- Interconexión de redes IP
4.- Enrutamiento con IP
5.- Nivel de transporte en Internet
6.- Nivel de aplicación en Internet
7.- Ampliación de temas
RIP
1/28
Temario
1.- Introducción
2.- Nivel de enlace en LANs
3.- Interconexión de redes IP
4.- Enrutamiento con IP
Carácterísticas del enrutamiento dinámico en Internet
Tipos de algoritmos. Enrutamiento Distance-Vector
RIP
Problemas de RIP
5.- Nivel de transporte en Internet
6.- Nivel de aplicación en Internet
7.- Ampliación de temas
RIP
2/28
Objetivos
Descripción detallada de un protocolo DV
Ver los principales problemas de estos
protocolos con ejemplos claros
Analizar las posibles soluciones
RIP
3/28
Contenido
RIP
Carácterísticas
Formato
Funcionamiento
Cuenta a infinito
Situaciones y soluciones
RIPv2
RIP
4/28
Contenido
RIP
Carácterísticas
Formato
Funcionamiento
Cuenta a infinito
Situaciones y soluciones
RIPv2
RIP
5/28
Distance Vector
Cada nodo tiene unas distancias estimadas a cada
destino (vector de distancias)
Se las envía a todos sus vecinos periódicamente
Algoritmo de Bellman-Ford distribuido
No necesitan conocer la topología completa de la red
Usado en la ARPANET hasta 1979
Ejemplos: RIP, Xerox XNS RIP, IPX RIP, Cisco IGRP,
DEC’s DNA Phase IV, Apple’s RTMP
RIP
6/28
RIP
Características
Routing Information Protocol
Distance Vector
IGP
RFCs 1058 (v1), 2453 (v2)
routed en Unix BSD
Emplea UDP
Métrica:
Número de saltos
16 = ∞
cada 30 segs
Se envía el vector de distancias
Cambios en la topología:
Ruta a red N por router G
Si no recibimos vector de G en
180 marcar como inválida (∞)
No escala para redes grandes
Para
con enlaces
redes
homogéneos
Simple
Malos
convergencia
tiempos
de
RIP
RIP
RIP
AS 2
RIP
RIP
RIP
7/28
RIP
Formato
Tipos de PDUs:
Request
Comando=1
Se puede pedir el coste a unos
destinos o a todos
Response
Comando=2
El nexto-hop es la IP que envía
Periódico o en respuesta a un
la PDU
request
7 8
0
Comando
15 16
Versión
Address family
IP=2, todo=0
IP Address
0
0
Métrica (1-16)
0
0
31
Permitiría otros
protocolos de red
RIP
RIP
RIP
RIP
AS 2
RIP
RIP
8/28
20 bytes
se repite
hasta 25
veces
cada interfaz
RIP
Funcionamiento
Inicialización
Manda un request especial por
IP destino broadcast
Recibe un request
inicialización manda
Si es de
Si no responde con los valores
Periódicamente
Timer 30seg (de 25 a 35)
Manda un response con todo el
vector por cada interfaz
IP destino broadcast
todo el vector
solicitados
Recibe response
Actualiza su vector y tabla de
rutas
Si la tiene reinicializa timer
Caduca timer de una ruta
Timer de 180s para cada una
Pasa a coste ∞
Inicia timer para borrarla
Timer de borrado
Timer de 120s para una ruta
invalidada
RIP
9/28
RIP
Actualización
1. Añadir 1 a la métrica de cada destino
2. Para cada entrada en el paquete
anunciado en el paquete de RIP recibido
1. Añadirlo
1. Si el destino no está en la tabla de rutas
2. Si no (sí está en la tabla)
mandado el paquete de IP
1. Sustituir el coste por el nuevo
1. Si el siguiente salto en la tabla es el mismo que quien ha
2. Si no (diferente next-hop)
1. Si la coste es menor que el de la tabla
1. Sustituir el coste y el next-hop
RIP
10/28
RIP
Bad news travel slowly
Supongamos que R1 falla (…)
Aprox. 3min después R2
marca la ruta como inválida
(…)
Si antes de que envíe el
vector a R3 se lo enviá él (…)
¡ Ahora piensa que se va por
R3 !
Pero cuando informa a R3 del
nuevo camino éste verá un
aumento en el coste (…)
A
Y así ad infinitum (…)
Proceso de cuenta a infinito
Infinito = 16 !
Dst: Red A, cost: 2
Dst: Red A, cost: ∞
Dst: Red A, cost: 4
Dst: Red A, cost: 4
Dst: Red A, cost: 6
RIP
R1
R2
R3
B
C
D
Dst: Red A, cost: 3
Dst: Red A, cost: 3
Dst: Red A, cost: 3
Dst: Red A, cost: 5
Dst: Red A, cost: 5
11/28
Contenido
RIP
Carácterísticas
Formato
Funcionamiento
Cuenta a infinito
Situaciones y soluciones
RIPv2
RIP
12/28
RIP
Evitar cuentas a infinito
Split horizon
Al enviar vector por un interfaz no
incluir los destinos a los que se
llega por él
(B,1)
(C,2)
(D,3)
Mensajes más pequeños
R1
(A,1)
(C,1)
(D,2)
(D,1)
(A,2)
(B,1)
(A,3)
(B,2)
(C,3)
R3
R2
B
C
D
A
Ejemplo (… …):
Caduca timer (180s) en R2 (…)
Caduca timer (180s) en R3 (…)
Dst: Red A, cost: 2
Dst: Red A, cost: 3
Dst: Red A, cost: ∞
Dst: Red A, cost: 3
Dst: Red A, cost: ∞
Dst: Red A, cost: ∞
RIP
13/28
RIP
Evitar cuentas a infinito
Split horizon with poisoned reverse
Al enviar vector por un interfaz
anunciar los destinos a los que se
llega por él con métrica ∞
No hay que esperar al timeout de
la ruta
Mensajes vuelven a ser grandes
(A,∞)
(B,1)
(C,2)
(D,3)
A
R1
(A,1)
(B,∞)
(C,∞)
(D,∞)
(A,∞)
(B,∞)
(C,1)
(D,2)
(A,2)
(B,1)
(C,∞)
(D,∞)
(A,∞)
(B,∞)
(C,∞)
(D,1)
R2
R3
B
C
(A,3)
(B,2)
(C,1)
(D,∞)
D
Dst: Red A, cost: 2
Dst: Red A, cost: 3
Ejemplo (… …):
Caduca timer (180s) en R2 (…)
Caduca timer (30s) en R3, envía
vector (…)
Dst: Red A, cost: ∞
Dst: Red A, cost: 3
Dst: Red A, cost: ∞
Dst: Red A, cost: ∞
RIP
14/28
RIP
Bad news travel slowly
Convergencia lenta
Ejemplos:
Actualización de información
• Caso peor N x 30seg para llegar al otro extremo
Pérdida de ruta
R3
…
RN
RIP
15/28
• Caso peor N x 180seg hasta el otro extremo
¿ Mejorar estos tiempos ?
Triggered updates: Enviar el vector en cuanto se produzca un
cambio en el mismo
R1
R2
Supongamos la topología de la
R4 introduce una entrada hacia
Usan split horizon with poisoned
Las flechas son las rutas hacia la
con coste 5 (…)
figura
reverse
Red A (…)
RIP
Cuenta a infinito
Supongamos que falla el interfaz
de R1 en la Red A (…)
R1 anuncia coste ∞ a R2 y R4
Puede que antes de que avisen
a R3 él envíe su actualización
periódica (…)
(…)
la Red A por R3 (…)
R4 anunciará esa ruta a R1 (…)
R1 creerá que se llega por R4
R1 lo anunciará a R2 (…)
R2 ceerá que se llega por R1 (…)
Y luego R2 hasta llegar a R3 (…)
(A,∞)
…
R1
(A,∞)
…
R2
∞
R4
∞
B
E
C
D
(A,∞)
…
R3
(A,3)
…
16/28
A
RIP
Supongamos la topología de la
R4 introduce una entrada hacia
Usan split horizon with poisoned
Las flechas son las rutas hacia la
con coste 5 (…)
figura
reverse
Red A (…)
RIP
Cuenta a infinito
Supongamos que falla el interfaz
de R1 en la Red A (…)
R1 anuncia coste ∞ a R2 y R4
Puede que antes de que avisen
a R3 él envíe su actualización
periódica (…)
(…)
la Red A por R3 (…)
R4 anunciará esa ruta a R1 (…)
R1 creerá que se llega por R4
R1 lo anunciará a R2 (…)
R2 ceerá que se llega por R1 (…)
Y luego R2 hasta llegar a R3 (…)
R2
∞
R1
B
E
R4
(A,∞)
…
R3
(A,3)
…
17/28
C
D
4
A
RIP
Supongamos la topología de la
R4 introduce una entrada hacia
Usan split horizon with poisoned
Las flechas son las rutas hacia la
con coste 5 (…)
figura
reverse
Red A (…)
RIP
Cuenta a infinito
Supongamos que falla el interfaz
de R1 en la Red A (…)
R1 anuncia coste ∞ a R2 y R4
Puede que antes de que avisen
a R3 él envíe su actualización
periódica (…)
(…)
la Red A por R3 (…)
R4 anunciará esa ruta a R1 (…)
R1 creerá que se llega por R4
R1 lo anunciará a R2 (…)
R2 ceerá que se llega por R1 (…)
Y luego R2 hasta llegar a R3 (…)
R2
∞
R1
B
5
R4
4
E
(A,4)
…
C
D
(A,∞)
…
R3
18/28
A
RIP
Supongamos la topología de la
R4 introduce una entrada hacia
Usan split horizon with poisoned
Las flechas son las rutas hacia la
con coste 5 (…)
figura
reverse
Red A (…)
RIP
Cuenta a infinito
Supongamos que falla el interfaz
de R1 en la Red A (…)
R1 anuncia coste ∞ a R2 y R4
Puede que antes de que avisen
a R3 él envíe su actualización
periódica (…)
(…)
la Red A por R3 (…)
R4 anunciará esa ruta a R1 (…)
R1 creerá que se llega por R4
R1 lo anunciará a R2 (…)
R2 ceerá que se llega por R1 (…)
Y luego R2 hasta llegar a R3 (…)
R2
∞
6
R4
(A,5)
…
R1
5
(A,∞)
…
B
E
C
D
4
R3
19/28
A
RIP
RIP
Cuenta a infinito
Supongamos la topología de la
R4 introduce una entrada hacia
Usan split horizon with poisoned
Las flechas son las rutas hacia la
con coste 5 (…)
figura
reverse
Red A (…)
Supongamos que falla el interfaz
de R1 en la Red A (…)
R1 anuncia coste ∞ a R2 y R4
Puede que antes de que avisen
a R3 él envíe su actualización
periódica (…)
(…)
¡ Cuenta a infinito !
A
RIP
la Red A por R3 (…)
R4 anunciará esa ruta a R1 (…)
R1 creerá que se llega por R4
R1 lo anunciará a R2 (…)
R2 ceerá que se llega por R1 (…)
Y luego R2 hasta llegar a R3 (…)
(A,∞)
…
R2
(A,6)
…
R1
B
6
5
E
R4
4
R3
7
C
D
20/28
RIP
Cuenta a infinito
Solución
Hold down period
Al marcar una ruta como
inválida
Esperar un tiempo antes de
aceptar nuevas rutas a ese
destino
Ejemplo:
R4 entra en hold down
Ignora ruta anunciada por R3
Split horizon + posioned reverse +
Triggered updates + hold down interval
¡ Ya no es tan simple !
A
RIP
¿Cuánto esperar?
Depende del tamaño de la red
Se sobredimensiona (120s)
Si hay una ruta alternativa
tardará en descubrirla (…)
(A,3)
∞
R2
R1
B
E
R4
∞
C
D
(A,∞)
…
R3
(A,3)
…
21/28
RIP
Otros problemas
Anuncia una ruta con la dirección de la
red
¡ Solo sirve para redes classful !
Para soportar CIDR necesita anunciar la
máscara también
Para redes pequeñas
Comentarios de: Clases 14 y 15 RIP (0)
No hay comentarios