Ruteo dinámico - | UTN - Facultad Regional La...

Preview:

Citation preview

Ruteo dinámico

Ing. Agustín Eijo <agu@frlp.utn.edu.ar>

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