Ruteo dinámico - | UTN - Facultad Regional La...
Transcript of Ruteo dinámico - | UTN - Facultad Regional La...
Ruteo dinámico
Ing. Agustín Eijo <[email protected]>
Objetivos
Aprender información de ruteo.
Agregar la mejor ruta para cada destino.
Modificar las tablas de ruteo ante una falla.
Notificar los fallos detectados.
Preevenir loops.
Sistema Autónomo
Son aquellas redes que están bajo una
misma administración técnica compartiendo
una política de ruteo común.
Empresas
Universidades
ISP
Categorías de protocolos de ruteo
Los protocolos de ruteo pueden dividirse
en dos grandes categorías:
IGP (Interior Gateway Protocol) aquellos
que se utilizan dentro de los SA.
EGP (Exterior Gateway Protocol) aquellos
que se utilizan entre los SA.
Ruteo externo (EGP)
Conexión entre Sistemas Autónomos.
Ruteo estático:
No se adapta a cambios en la red
Requiere mantenimiento.
Útil cuando solo hay un router de entrada/salida en el SA.
Ruteo dinámico
Cuando existen distintas alternativas para comunicarse con
otros sistemas autónomos.
Rápida adaptación a cambios.
Obtención de caminos óptimos.
Escalable.
Implementación actual: BGPv4 (Border gateway protocol
versión 4).
Protocolos de ruteo internos (IGP)
Vector distancia: RIP (v1 RFC 1058, v2 RFC 2453)
IGRP (propietario de CISCO)
Estado de enlace: OSPF (Open Shortest Path First RFC 2470)
IS-IS (estándar de ruteo del modelo OSI)
Hibrido: EIGRP (vector distancia con alguna información
de topología, propietario de CISCO)
Estado de Enlace
Todos los routers que componen la red intercambian información de los componentes del SA.
Una vez construida la base de datos de la red la misma puede ser representada mediante un grafo dirigido con peso donde los nodos son los routers y las redes, el peso es el costo para llegar a cada uno de ellos.
En función de este grafo cada router calcula el árbol de caminos mínimos (Algoritmo de Dijktra) desde la raíz (router en cuestión) hacia cada una de las redes para construir la tabla de ruteo óptima.
Vector Distancia
Determina para cada red el próximo salto (Vector) que se considere óptimo (menor distancia)
Distancia (métrica) La distancia puede medirse como en RIP simplemente como
la cantidad de saltos.
Puede utilizar otros parámetros asociados al enlace como lo hace IGRP (un polinomio en función de las siguientes variables: ancho de banda, delay, carga, confiabilidad, MTU)
En ambos casos el valor de métrica es un número entero considerando mejor el valor menor.
Vector distancia
Los routers solo intercambian información con los routers vecinos.
Cada router de la red envía periódicamente la tabla de ruteo a las redes directamente conectadas.
Los routers que reciben la tabla de ruteo, analizan la información y si encuentran rutas nuevas o redes alcanzables con mejor métrica actualizan su tabla de ruteo.
Vector distancia
Los routers envían sus actualizaciones (tablas de ruteo) a la dirección de Multicast 224.0.0.9 por UDP puerto 520 con el siguiente formato:
Ejemplo: Vector Distancia
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
1.0.0.0/24
2.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
Ejemplo: Vector Distancia
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
1.0.0.0/24
2.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 2.0.0.254 1
Ejemplo: Vector Distancia
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
1.0.0.0/24
2.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 2.0.0.254 1
4.0.0.0/24 3.0.0.254 1
Ejemplo: Vector Distancia
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
1.0.0.0/24
2.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 2.0.0.254 1
4.0.0.0/24 3.0.0.254 1
3.0.0.0/24 2.0.0.1 1
4.0.0.0/24 2.0.0.1 2
1.0.0.0/24 3.0.0.1 2
2.0.0.0/24 3.0.0.1 1
Conteo al infinito
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
2.0.0.0/24 Conectada 0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 2.0.0.254 1
4.0.0.0/24 3.0.0.254 1
3.0.0.0/24 2.0.0.1 1
4.0.0.0/24 2.0.0.1 2 1.0.0.0/24 3.0.0.1 2
2.0.0.0/24 3.0.0.1 1
Conteo al infinito
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
2.0.0.0/24 Conectada 0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 3.0.0.254 3
4.0.0.0/24 3.0.0.254 1
3.0.0.0/24 2.0.0.1 1
4.0.0.0/24 2.0.0.1 2 1.0.0.0/24 3.0.0.1 2
2.0.0.0/24 3.0.0.1 1
Conteo al infinito
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
2.0.0.0/24 Conectada 0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 3.0.0.254 3
4.0.0.0/24 3.0.0.254 1
3.0.0.0/24 2.0.0.1 1
4.0.0.0/24 2.0.0.1 2
1.0.0.0/24 3.0.0.1 4
4.0.0.0/24 3.0.0.1 1
1.0.0.0/24 2.0.0.1 4
Conteo al infinito
RED PROXIMO SALTO METRICA
ROUTER A ROUTER B ROUTER C
2.0.0.0/243.0.0.0/24
4.0.0.0/241.0.0.0/24
2.0.0.0/24 Conectada 0
RED PROXIMO SALTO METRICA
2.0.0.0/24
3.0.0.0/24
Conectada
Conectada
0
0
RED PROXIMO SALTO METRICA
3.0.0.0/24
4.0.0.0/24
Conectada
Conectada
0
0
.254 .254 .1 .1 .254 .254
1.0.0.0/24 3.0.0.254
4.0.0.0/24 3.0.0.254 1
3.0.0.0/24 2.0.0.1 1
4.0.0.0/24 2.0.0.1 2
1.0.0.0/24 3.0.0.1
4.0.0.0/24 3.0.0.1 1
1.0.0.0/24 2.0.0.1
Soluciones para el conteo al infinito
Horizonte dividido (Split Horizont)
No incluir en las actualizaciones que se envíen por
la interfaz X aquellas entradas de las tablas de
ruteo que se agregaron al recibir información por la
interfaz X.
Esto método soluciona el problema en
muchos casos, pero en ciertos escenarios
donde existe redundancia no soluciona el
problema completamente.
Conteo al infinito
ROUTER A
ROUTER B
ROUTER D
N1
ROUTER C
N1 => ROUTER A => 1
N1 => ROUTER A => 1
N1 => ROUTER B => 2
Conteo al infinito
ROUTER A
ROUTER B
ROUTER D
N1
ROUTER C
1
1
N1 => ROUTER A => 1
N1 => ROUTER A => 1
N1 => ROUTER B => 2
1
1
2
2
N1 => ROUTER D => 32
Conteo al infinito
ROUTER A
ROUTER B
ROUTER D
N1
ROUTER C
4
3
N1 => ROUTER A => 5
N1 => ROUTER B => 6
5
6
N1 => ROUTER D => 32
N1 => ROUTER C => 4
N1 => ROUTER B =>
Soluciones para el conteo al Infinito
Envenenamiento de rutas (Route Poisoning) Cuando una red falla debe enviarse con métrica
infinito (inalcanzable)
Hold Down Timer Durante el tiempo que indica el Hold Down Timer
las entradas de la tabla de ruteo que estén marcadas como inalcanzables no se modifican si llega una actualización con métrica mayor a la que tenía antes de marcarla como inalcanzable.
Trigger Update No esperar y enviar las actualizaciones
inmediatamente.
Soluciones para el conteo al Infinito
ROUTER A
ROUTER B
ROUTER D
N1
ROUTER C
1
1
N1 => ROUTER B => 2
2
2
N1 => ROUTER A => 1
N1 => ROUTER B => 2
No actualiza hasta pasar el
Hold Down Timer
N1 => ROUTER A => 1
Problemas de Vector Distancia
Convergencia lenta.
En diámetros grandes de red las
actualizaciones tardan mucho
Los router no conocen la topología de la
red (dado que solo intercambian
información con los vecinos)
Implementaciones Vector Distancia
Funciones RIP IGRP
Período de actualización 30 seg 90 seg
Hold Down Timer 180 seg 280 seg
Métrica saltosCombinación de (AB, delay, carga, conf,
MTU)
Diametro máximo de la red 15 100
VLSM, Subredes No RIPv1, SI RIPv2 SI
Métrica Infinita 16 4,294,967,295
Ejemplo: Práctica ejemplo
R1
R2
R4
R3
2.0.0.0/241.0.0.0/245.0.0.0/24
3.0.0.0/24
4.0.0.0/24
H1 1.0.0.10
H2 5.0.0.10
.251
.252
.
.253.1
.1
.2
.2
.254.254