43
1341: Redes de Computadoras Facultad de Ingeniería de Sistemas Sesión: 4 Ing. José C. Benítez P. Capa de Red Routing (Encaminamiento / Ruteo)

Ul rc_cap4_capa de red - encaminamiento ruteo

  • Upload
    c09271

  • View
    1.687

  • Download
    0

Embed Size (px)

Citation preview

1341: Redes de Computadoras

Facultad de Ingeniería de Sistemas

Sesión: 4

Ing. José C. Benítez P.

Capa de Red Routing (Encaminamiento / Ruteo)

Redes de Computadoras - Prof. Ing. Jose C. Benitez P. 2

Sesión 4. Temas

Capa de Red: Encaminamiento / Ruteo

� Algoritmos de enrutamiento

� Introducción � Clasificación de los AE � Algoritmo Vector Distancia � Algoritmo Estado Enlace

� Protocolos de enrutamiento

� Concepto de Sistema Autónomo (AS) � Protocolos de routing dentro de un AS � Protocolos de routing entre Ases � Puntos neutros de interconexión

� Algoritmos de Enrutamiento

� Vector Distancia

� RIP � IGRP y EIGRP � BGP

� Estado Enlace

� IS-IS � OSPF

Redes de Computadoras - Prof. Ing. Jose C. Benitez P. 3

Sesión 4. Temas

Capa de Red: Encaminamiento / Ruteo

� Algoritmos de enrutamiento

� Introducción � Clasificación de los AE � Algoritmo Vector Distancia � Algoritmo Estado Enlace

� Protocolos de enrutamiento

� Concepto de Sistema Autónomo (AS) � Protocolos de routing dentro de un AS � Protocolos de routing entre Ases � Puntos neutros de interconexión

� Algoritmos de Enrutamiento

� Vector Distancia

� RIP � IGRP y EIGRP � BGP

� Estado Enlace

� IS-IS � OSPF

4

Introducción

� Las REDES están compuestas de una serie de canales de comunicación y unos elementos activos de conmutación (nodos o IMPS).

� La L2 se encarga de mover frames de un extremo al otro. � La L3 se encarga de llevar los paquetes desde el origen

hasta el destino. Llegar al destino puede requerir muchos saltos por enrutadores intermedios.

5

Introducción

Subred de comunicaciones: � Objetivo principal: Facilitar el diálogo entre las estaciones

conectadas a ella. � Función: Debe encargarse de recoger los paquetes que

dichas estaciones (host) transmitan y conducirlos a través de la red, hasta el destino deseado.

� Generalmente, existen varias rutas alternativas posibles y, por ello, se requiere el uso de un procedimiento (algoritmo) de enrutamiento.

6

Introducción

� Por lo tanto la L3 es la capa mas baja que maneja la Tx extremo a extremo.

� Para lograr su objetivo L3 debe conocer:

� la topología de la subred de comunicación y

� escoger las trayectorias adecuadas a través de ella;

� también debe evitar la sobrecarga de algunas de las LC y de los enrutadores mientras deja a otros sin trabajo.

� Topologías de redes: (estrella, full mesh, arbol, etc.) No se suele emplear la interconexión total (por su elevado coste), aunque suele introducirse cierta redundancia para evitar que un fallo en un enlace aísle partes de la red.

� La misión de los elementos de conmutación, denominados nodos o IMPs (Interface Message Processor), es conducir la información en cada bifurcación de la red hacia su destino final. A esta tarea se le denomina enrutamiento, encaminamiento o routing.

7

Introducción

ROUTING � Puesto que existen más de dos estaciones conectadas a la red, y

hay algunos IMPs conectados a mas de uno de otros IMPs; es preciso que exista un esquema de selección o direccionamiento para que se pueda especificar origen y destino de la información.

� Cada estación debe tener una dirección que la identifique de manera única.

� Objetivo: Envío del tráfico desde el origen al destino, de la forma más rápida posible y con la mínima utilización de recursos.

8

Introducción

CRITERIOS DE ROUTING � La selección de una ruta se basa, generalmente, en algún

criterio de rendimiento. � El criterio más simple es la elección de la ruta más corta,

es decir, la que atraviesa el menor número de IMPs. � Una generalización de este criterio es la ruta de coste

mínimo, en cuyo caso se asocia un coste a cada enlace y se determina la ruta de menor coste.

9

Introducción

COSTE � La asignación del coste está ligada a objetivos de

diseño. � Por ejemplo:

� El costo podría estar asociado a la capacidad del enlace, en el sentido de asignar costes más bajos a los enlaces de más alta capacidad.

� El coste podría también asignarse en relación con el tiempo de retardo de la cola para utilizar el enlace.

� En el primer caso, una ruta de coste mínimo proporcionaría el máximo caudal de datos y

� En el segundo caso, una ruta de coste mínimo minimizaría el retardo.

10

Introducción

TABLAS DE ENRUTAMIENTO

● La información de enrutamiento se almacena en estructuras conocidas como tablas de enrutamiento.

● Cada IMP de la red tiene una de estas tablas.

¿Qué contiene las RT?

● Como mínimo, contiene una entrada por cada destino posible y asociado a este, el enlace de salida que debe utilizarse para alcanzar el nodo siguiente de la red (destino).

Las RT pueden contener además información de

coste asociada a la ruta elegida, rutas

alternativas, etc.

11

Introducción

• Clasificación de estrategias de enrutamiento atendiendo a diversos criterios

• Existe una gran diversidad de AE, con distintos niveles de sofisticación y eficiencia.

• Esta variedad se debe en parte a razones históricas y en parte a las distintas necesidades en redes diferentes.

ALGORITMOS DE ENRUTAMIENTO 1. Enrutamiento estático o fijo 2. Enrutamiento de camino

múltiple 3. Enrutamiento centralizado 4. Enrutamiento distribuido 5. Enrutamiento óptimo 6. Enrutamiento por Inundación 7. Enrutamiento Patata caliente 8. Enrutamiento por Aprendizaje

retrospectivo 9. Enrutamiento jerárquico 10. Enrutamiento para difusión 11. Enrutamiento Aleatorio 12. Enrutamiento Adaptable 13. etc.

12

Introducción

CLASIFICACION DE LOS ALGORITMOS DE ENRUTAMIENTO

● Los algoritmos adaptables o dinámico (AED). � Basan sus decisiones de enrutamiento en mediciones o

estimaciones del trafico y topología actuales (ON LINE). � Cambian sus decisiones de enrutamiento para reflejar los

cambios de topología y generalmente también el tráfico. ● Los algoritmos no adaptables o estático (AEE).

� Donde la decisión de la ruta que se usará para llegar del origen al destino se calcula por adelantado, fuera de línea (OUT OF LINE), y se carga en los enrutadores al iniciar la red.

Los algoritmos de enrutamiento pueden dividirse en dos clases principales:

� Los routers (enrutadores) modernos usan AED. � El enrutamiento por vector – distancia y el

enrutamiento por estado – enlace son los mas comunes de AED.

13

AED – Vector Distancia

● El algoritmo de enrutamiento por vector de distancia (AED-VD) es conocido también como algoritmo de enrutamiento Bellman-Ford distribuido o algoritmo de enrutamiento Ford-Fullkerson por los investigadores que los desarrollaron.

● Este fue el algoritmo original de ARPANET hasta 1979.

● Este algoritmo también se usó en internet con el nombre de RIP.

● Los enrutadores AppleTalk y Cisco usan protocolos por vector distancia mejorados.

14

AED – Vector Distancia

● Los AED-VD operan haciendo que cada enrutador mantenga una tabla (un vector) que contiene:

� la mejor “distancia” conocida a cada destino y

� la línea a usar para llegar allí.

● Estas tablas se actualizan intercambiando información con los enrutadores vecinos.

● En el AED-VD cada enrutador mantiene una tabla de enrutamiento indexada por, y conteniendo un registro de cada enrutador de la subred.

Funcionamiento:

15

AED – Vector Distancia

Funcionamiento:

(a) A subnet.

(b) Input from A, I, H, K, and the new routing table for J.

16

AED – Vector Distancia

● Cada entrada comprende dos partes: � La línea preferida de salida hacia ese destino. � Estimación del tiempo o distancia hacia ese

destino. ● La métrica usada podría ser:

� La cantidad de escalas (la distancia es una escala).

� El retardo de tiempo en milisegundos (se mide con paquetes especiales de eco).

� El numero total de paquetes encolados por la trayectoria (se examina cada cola).

� Etc.

17

Algoritmo del vector distancia (o de Bellman-Ford)

� Cada router conoce: � Su identificador � Sus interfaces � La distancia hasta el siguiente router de

cada interfaz � Cada router construye su base de datos de

destinos, que indica por que interfaz enviar los paquetes para cada destino.

� Para esto los routers intercambian vectores de distancia, que indican la distancia a cada destino

j

k

m

n

Distancia 3

Distancia 2 Distancia 7

Distancia 2

0 5 3 2 19 9 5 22 2 4 7

6 2 0 7 8 5 8 12 11 3 2

5 8 3 2 10 7 4 20 5 0 15

1 2 3 4 5 6 7 8 9 10 11

Recibido de j (+3):

Recibido de k (+2):

Recibido de m (+2):

Recibido de n (+7):

Distancia mínima:

Interfaz de salida:

12 3 15 3 12 5 6 18 0 7 15

Destino:

4

9

10

1

3

Ejemplo del algoritmo de vector distancia

2 6 5 0 12 8 6 19 3 2 9

m j m 0 k j k n j k n

Dist. 1 A se enciende

Dist. 1

El problema de la cuenta a infinito

C

0 1 ∞∞∞∞

0 1 2

- 3 4

- 5 4

- 5 6

- 7 6

- 7 8

- 9 8

. . .

. . .

. . .

A

0 ∞∞∞∞ ∞∞∞∞

- ∞∞∞∞ ∞∞∞∞ Distancias hacia A

- 3 2

A se apaga

B

- ∞∞∞∞ ∞∞∞∞

20

Problema de cuenta a infinito

� Las noticias buenas viajan deprisa, las malas despacio.

� Hay diversos ‘trucos’ para evitar el problema de la cuenta a infinito, pero ninguno infalible.

� El vector distancia se utiliza actualmente en diversos protocolos de routing: � Internet: RIP, BGP, IGRP, EIGRP � También en Appletalk y versiones antiguas de

DECNET e IPX

21

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: � Quién es él � La lista de sus vecinos y sus distancias a ellos

� Envía su LSP por inundación a todos los routers de la red � Recaba los LSPs de todos los demás nodos � Calcula las rutas óptimas por el algoritmo de Dijkstra:

� Se pone él mismo como raíz del árbol, y coloca a sus vecinos

� Mira los LSP de sus vecinos y despliega el árbol; cuando aparece más de un camino hacia un nodo se coge el más corto y se descartan los demás.

� Las ramas son en principio provisionales. Una rama se confirma cuando es más corta que todas los demás provisionales.

A

B/6

D/2

B

A/6

C/2

E/1

C

B/2

F/2

G/5

D

A/2

E/2

E

B/1

D/2

F/4

F

C/2

E/4

G/1

G

C/5

F/1

Link State Packets

D

A

E F

G

C B

2

4

5

2 6

1

2 1

2

Algoritmo del estado del enlace (Dijkstra)

C(0)

G(5) B(2) F(2)

Coloca C en el árbol.

Examina el LSP de C

G(5)

C(0)

B(2) F(2)

G(3) E(6) Coloca F en el árbol.

Examina el LSP de F.

Encontrado mejor camino a G

C(0)

B(2) F(2)

G(3) E(6) A(8) E(3)

Coloca B en el árbol.

Examina el LSP de B.

Encontrado mejor camino a E C(0)

B(2) F(2)

G(3)

D(5)

E(3) A(8)

Coloca E en el árbol.

Examina el LSP de E.

C(0)

B(2) F(2)

G(3)

D(5)

E(3) A(8)

Coloca G en el árbol.

Examina el LSP de G.

E(3)

C(0)

B(2) F(2)

G(3)

D(5)

A(8)

A(7)

Coloca D en el árbol.

Examina el LSP de D. E(3)

C(0)

B(2) F(2)

G(3)

D(5) A(7)

Coloca A en el árbol.

Examina el LSP de A.

No quedan nodos. terminar

Algoritmo de

Dijkstra

A

B/6

D/2

B

A/6

C/2

E/1

C

B/2

F/2

G/5

D

A/2

E/2

E

B/1

D/2

F/4

F

C/2

E/4

G/1

G

C/5

F/1

Árbol de rutas óptimas desde C para la red ejemplo

C A

G

D E F

C B 6

2

2

2

1

4 1

2

5

B

E

D

A

F

G

Enlaces no utilizados

25

Optimizaciones del algoritmo de estado del enlace

� Los LSP se numeran para detectar y descartar duplicados. Además tienen un tiempo de vida limitado.

� La inundación se hace reenviando cada LSP por todas las interfaces excepto por la que se recibió.

� Para evitar bucles solo se envían los LSP que son nuevos (nuevo = no estaba en la base de datos) y no están expirados.

� Con routing por el estado del enlace cada nodo tiene el ´mapa´detallado de toda la red (no ocurría con vector distancia).

26

Routing por estado del enlace

� Generalmente se considera que los algoritmos del estado del enlace son mas fiables y eficientes que los del vector distancia.

� Se utiliza en diversos protocolos de routing: � Internet: OSPF, IS-IS � ATM: PNNI � DECNET

Redes de Computadoras - Prof. Ing. Jose C. Benitez P. 27

Sesión 4. Temas

Capa de Red: Encaminamiento / Ruteo

� Algoritmos de enrutamiento

� Introducción � Clasificación de los AE � Algoritmo Vector Distancia � Algoritmo Estado Enlace

� Protocolos de enrutamiento

� Concepto de Sistema Autónomo (AS) � Protocolos de routing dentro de un AS � Protocolos de routing entre Ases � Puntos neutros de interconexión

� Algoritmos de Enrutamiento

� Vector Distancia

� RIP � IGRP y EIGRP � BGP

� Estado Enlace

� IS-IS � OSPF

28

Sistema Autónomo � Un Sistema Autónomo (AS) está formado por

un conjunto de routers que tienen: � Un protocolo de routing común � Una gestión común

� Normalmente cada proveedor u operador tiene su propio sistema autónomo.

� También las grandes organizaciones (las que están conectadas a más de un proveedor).

� El AS se identifica por un número de 16 bits. Los valores del 64512 al 65535 están reservados para uso privado (RFC 1930). Ej.: RedIRIS: 766. Univ. Valencia: 65432

29

Internet Proveedor Y Proveedor Z

Empresa X

AS 147

AS 504

AS 812

Con un AS propio la empresa X puede elegir la ruta óptima en cada momento para cada destino

Organización ‘multihomed’

Redes de Computadoras - Prof. Ing. Jose C. Benitez P. 30

Sesión 4. Temas

Capa de Red: Encaminamiento / Ruteo

� Algoritmos de enrutamiento

� Introducción � Algoritmo Vector Distancia � Algoritmo Estado Enlace

� Protocolos de enrutamiento

� Concepto de Sistema Autónomo (AS) � Protocolos de routing dentro de un AS � Protocolos de routing entre Ases � Puntos neutros de interconexión

� Algoritmos de Enrutamiento

� Vector Distancia

� RIP � IGRP y EIGRP � BGP

� Estado Enlace

� IS-IS � OSPF

31

Protocolos de routing

� Vector distancia � RIP

� IGRP y EIGRP � BGP (entre Sistemas Autónomos)

� Estado del enlace � IS-IS

� OSPF

32

RIP (Routing Information Protocol)

� Sufre los problemas típicos del vector distancia (cuenta a infinito)

� Solo útil en redes pequeñas (5-10 routers) � Métrica basada en número de saltos

únicamente. Máximo 15 saltos � La información se intercambia cada 30

segundos. Los routers tienden a sincronizarse y la red se bloquea cuando ocurre el intercambio.

� No soporta subredes ni máscaras de tamaño variable (si en RIPv2)

� No permite usar múltiples rutas simultáneamente

� Disponible en máquinas UNIX

33

IGRP (Interior Gateway Routing Protocol) y EIGRP (Enhanced IGRP)

� Protocolos propietarios de Cisco � Resuelven muchos de los problemas de RIP

� Métrica sofisticada � Uso de múltiples caminos

� Mejoras EIGRP � Soporta subredes � Solo transmite modificaciones

� Incluyen soporte multiprotocolo � Se utilizan en muchas redes (ej. RedIRIS, UV)

34

OSPF (Open Shortest Path First)

� Desarrollado por el IETF entre 1988-1990 � Estado del enlace, algoritmo de Dijkstra � Dos niveles jerárquicos (áreas):

� Area 0 o backbone (obligatoria) � Areas adicionales (opcionales)

� Resuelve los problemas de RIP: � Rutas de red, subred y host (máscaras de

tamaño variable) � Métricas complejas � Múltiples rutas

� Las rutas elegidas pueden no ser simétricas.

35

� Clases de routers en OSPF: � Routers backbone: los que se

encuentran en el area 0 � Routers internos: pertenecen

únicamente a un área � Routers frontera de área: los que

conectan dos o mas áreas (una de ellas necesariamente el backbone)

� Routers frontera de AS: los que conectan con otros ASes. Pueden estar en el backbone o en cualquier otra área

OSPF (Open Shortest Path First)

36

� Tipos de rutas en OSPF: � Intra-área: las determina directamente el

router � Inter-área: se resuelven en tres fases:

� Ruta hacia el backbone � Ruta hacia el área de destino en el

backbone � Ruta hacia el router en el área de

destino � Inter-AS: se envían al router frontera

más próximo (empleando alguna de las dos anteriores).

OSPF (Open Shortest Path First)

37

A otros ASes

Router Backbone

Router Frontera De Sistema Autónomo

Router Frontera de Area

Router Interno

A

F

G H

E

D

B

C

Area 0 (Backbone)

Area 1 Area 2

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-...

Funcionamiento de OSPF

38

IS-IS (Intermediate System- Intermediate System)

� Intermediate-System significa router en ‘ISOese’ (host es ES, End System)

� Muy similar a OSPF, pero no es estándar Internet

� Ocho niveles jerárquicos posibles � Soporte Multiprotocolo (routing integrado).

OSPF no lo tiene.

39

SI 8 SI SI SI Estado E. IS-IS

SI 2 SI SI SI Estado E. OSPF

NO NO SI SI SI Vector D. EIGRP

NO NO NO SI NO Vector D. IGRP

SI NO NO NO SI Vector D. RIPv2

SI NO NO NO NO Vector D. RIPv1

Estándar Niveles

jerárquicos

Notifica

Actualiz.

Métrica

compleja

Subredes Algoritmo Protocolo

Comparación de los protocolos de routing utilizados en Internet

40

Protocolo de routing externo (entre ASes): BGP (Border Gateway Protocol)

� Necesario incluir factores ‘políticos’ en el cálculo de rutas entre Ases. Otros protocolos.

� Hasta 1990 se usaba EGP (Exterior Gateway Protocol).

� En 1989 se desarrolló BGP. Hoy BGP-4 � Usado por prácticamente todos los proveedores

en la comunicación de rutas entre Ases.

41

BGP (Border Gateway Protocol)

� Algoritmo de vector distancia modificado: además de la interfaz y el costo se incluye la ruta completa en cada caso.

� El router descarta las rutas que pasan por él mismo, así evita el problema de la cuenta a infinito.

� Permite introducir restricciones o reglas ‘políticas’. Una ruta que viola estas reglas recibe una distancia infinito.

42

F

Ruta óptima de B a G. Información recibida por B de sus vecinos:

F E

B

G

D

A C

2

2

∞∞∞∞

3

1

1

2

1

1

Conjunto de routers BGP

AS 1

AS 4 AS 5

AS 2

AS 7

AS 3

AS 6

Interfaz Distancia Ruta

i 3 ADG

j 2 DG

k 6 EBADG

m 5 CBADG

i

j k

m

Se descartan

Ruta óptima: BADG, distancia 4

Redes de Computadoras - Prof. Ing. Jose C. Benitez P. 43

Sesión 4. Routing

Redes de Computadoras