La capa de red Enrutamiento

Anuncio
La capa de red
(Parte 2 de 3)
Redes de
Computadoras
Enrutamiento
1
Enrutamiento
z
La función principal de la capa de red es enrutar
paquetes de una fuente a un destino.
z
Enrutar paquetes en una misma red física
(enrutamiento directo) es fácil
–
z
El emisor encapsula el paquete en un marco y lo envía al
destino (uso de ARP).
El enrutamiento indirecto involucra varios
enrutadores cooperando para entregar los paquetes.
Protocolos de enrutamiento
z
z
z
¿Cómo se establecen las tablas?
¿Cómo son mantenidas y actualizadas?
¿Cómo se descubre la mejor opción para el
siguiente salto?
Estos son algunos de los aspectos que
abordan los protocolos de enrutamiento
2
Protocolos de enrutamiento
Aspectos de un esquema simple:
z Estudiar diagramas de la red y encontrar los
mejores caminos. Escoger el siguiente salto
siguiendo estos caminos.
z Armar las tablas manualmente.
z Actualizar las tablas manualmente.
Enrutamiento estático
Razonable solo en redes pequeñas.
Protocolos de enrutamiento
Se necesita automatizar:
z
z
El intercambio de información entre
enrutadores sobre el estado actual de la red.
Recalcular el mejor siguiente salto conforme
ocurren cambios.
Enrutamiento dinámico
3
Protocolos de enrutamiento
Otros aspectos requeridos:
z
z
z
z
Debe responder rápido a cambios en la red.
Debe calcular rutas óptimas.
Debe escalar bien conforme crezca la red.
Debe minimizar el uso de recursos de
cómputo y de transmisión.
Protocolos de enrutamiento
Principios de diseño:
z Optimalidad
–
z
Simplicidad y bajo overhead
–
z
Buen desempeño en situaciones adversas
Rápida convergencia
–
z
Implementar toda la funcionalidad de la manera mas
simple
Robustez y estabilidad
–
z
Escoger la mejor ruta, según las métricas
(Re)calcular rápidamente las rutas óptimas
Flexibilidad
–
Adaptarse adecuadamente a situaciones en la red
4
Protocolos de enrutamiento
Los algoritmos usan diferentes métricas para
decidir cual ruta es mejor:
z Una muy simple es el número de saltos de
extremo a extremo.
z También pueden asignarse pesos a cada salto
–
–
z
Un salto por enlace de fibra puede tener peso de 1
Uno a través de enlace a 56K puede tener peso 10
Métricas mas sofisticadas pueden incluir ancho
de banda, retardos, tamaño de MTU,
confiabilidad, carga actual, costo monetario.
Algoritmos de enrutamiento
z
Los algoritmos de estado de enlace (link state o
SPF) envían información a los nodos en la red; pero
cada nodo envía solo información sobre sus
enlaces.
z
Los de vector-distancia (vector-distance o BellmanFord ) envían toda la tabla, pero solo a sus vecinos.
z
Los algoritmos de estado de enlace escalan mejor
pero son mas caros (CPU, memoria).
5
Estado de enlace
z
Una subred (a) y sus paquetes de estado de
enlace
Vector-distancia
z
Una subred (a) e información de vector
distancia para j sus vecinos
6
Protocolos de enrutamiento
z
Al interior de una organización se utiliza un
protocolo del tipo IGP (Interior Gateway
Protocol).
–
z
Ejemplos: RIP, IGRP, EIGRP, OSPF.
Entre varias organizaciones se usa un
protocolo tipo EGP (Exterior Gateway
Protocol).
–
Ejemplos: BGP, IDRP, IS-IS.
Algoritmos de enrutamiento
z
Cada organización puede usar un IGP
diferente.
z
Un mismo Gx puede usar dos protocolos
diferentes: uno para el interior de la
organización y otro para el exterior.
7
RIP
z
z
RIP (Routing Information Protocol) es uno de
los IGPs mas populares.
Inició su distribución con la implementación
TCP/IP de Berkeley
–
–
–
z
se hizo estándar de facto.
No precisamente el de mayor mérito técnico.
RFC 1058, 1388, 1723, 2453 (RIPv2)
Usa un algoritmo de vector-distancia
–
–
A cada salto se le asigna un costo.
La métrica total es la suma de los costos de los
saltos.
RIP
z
RIP es un protocolo simple con varias
limitaciones:
–
–
–
La métrica máxima para un camino es de 15.
Tras una disrupción en la red, es lento en
encontrar rutas óptimas; los paquetes pueden
andar ciclados temporalmente.
No puede responder a cambios en retardos o
cargas en los enlaces.
8
RIP
z
Un enrutador RIP envía información a sus
vecinos cada 30 segundos.
z
El enviar información sobre rutas se llama
anuncio de rutas (route advertisement).
z
Si los vecinos están en la LAN entonces se
hace broadcast.
RIP
z
Ejemplo de anuncio de ruta:
9
RIP
z
Con RIP la mejor ruta entre los nodos i,j es
aquella donde la distancia es menor.
–
–
–
–
Se inicia la tabla con las rutas conocidas.
Cada que un vecino manda información se
recalculan las rutas.
Una distancia de 16 o mas significa que la red no
puede alcanzarse.
Notar que RIP usa informacion solo de sus
vecinos para calcular rutas a destinos de mas de
un salto.
Algoritmo RIP
1.
2.
3.
4.
Configurar la distancia a cada nodo k adyacente en
variables llamadas d(i,k).
D(m,n) es la distancia total entre los nodos m y n.
Inicialmente se llenan D(i,k) = d(i,k) y las demás
distancias se marcan como inalcanzables.
Cuando el vecino k envía un D(k,j) se calcula la
distancia a j a través de k. Si no hay entrada para j,
se escribe D(i,j) y k se marca como el siguiente
salto hacia j.
Si actualmente se enruta hacia j a través de k y
este envía una actualización entonces se hace
D(i,j) = d(i,k) + D(k,j). Si la nueva D(i,j) es mayor
que 15, entonces j debe marcarse como
inalcanzable.
10
Ineficiencias en RIP
z
z
z
z
z
A normalmente llega a B en 4 saltos.
Descubre que ya no puede llegar a través de X.
Cambia su tráfico hacia Y (éste no sabe del problema)
Después Y se entera que no puede llegar a B.
A cambia su tráfico hacia Z.
Problema de convergencia
Split horizon y poisoned reverse
z
z
z
z
z
A normalmente llega a N mediante D.
El enlace entre D y N se cae.
D busca una ruta alternativa.
Recibe un anuncio de A informando que
sabe como llegar a N.
Se forma un ciclo.
11
Split horizon y poisoned reverse
z
Con split horizon el nodo A no anuncia en M que
conoce una ruta hacia N.
–
z
De todas formas los nodos en M tienen que salir a través
de D.
Puede agregarse la técnica poisoned reverse:
–
A incluye a N en sus anuncios dentro de M, pero marca N
inalcanzable mediante A.
Arquitectura de Internet
z
z
z
La estructura de Internet es jerárquica.
Cada organización (llamada también
Sistema Autónomo, AS) es administrada
independientemente.
Las dorsales conectan las AS.
12
Arquitectura de Internet
z
Las autoridades de un AS pueden escoger
no enrutar por otro AS aunque estén
conectados.
z
La autoridad que otorga números en Internet
asigna números para AS en alto nivel.
z
Los gateways representando los AS pasan
estos números en sus intercambios.
Ruta por varios AS
traceroute to manolette.imag.fr (129.88.34.201), 30 hops max, 40 byte packets
1 pelicano-gw.cicese.mx (158.97.23.254) 1.960 ms 1.635 ms 2.209 ms
2 cerbero (158.97.7.254) 3.441 ms * 1.597 ms
3 cicese-i2.cicese.mx (158.97.2.1) 2.893 ms 2.181 ms 2.277 ms
4 200.23.60.110 (200.23.60.110) 5.815 ms 3.694 ms 4.732 ms
5 200.23.60.249 (200.23.60.249) 10.284 ms 10.227 ms 9.623 ms
6 scrm-losa.abilene.ucaid.edu (198.32.8.17) 28.398 ms 17.592 ms 22.880 ms
7 dnvr-snva.abilene.ucaid.edu (198.32.8.2) 42.463 ms 42.026 ms 41.868 ms
8 kscy-dnvr.abilene.ucaid.edu (198.32.8.14) 53.428 ms 52.936 ms 52.723 ms
9 ipls-kscy.abilene.ucaid.edu (198.32.8.6) 73.628 ms 83.175 ms 61.693 ms
10 clev-ipls.abilene.ucaid.edu (198.32.8.26) 68.699 ms 74.137 ms 75.886 ms
11 nycm-clev.abilene.ucaid.edu (198.32.8.30) 80.964 ms 83.132 ms 94.456 ms
12 abilene-gtren.de2.de.geant.net (62.40.103.253) 161.951 ms 161.676 ms 161.382 ms
13 de2-1.de1.de.geant.net (62.40.96.129) 162.207 ms 161.241 ms 161.321 ms
14 de.fr1.fr.geant.net (62.40.96.50) 170.576 ms 172.120 ms 169.974 ms
15 renater-gw.fr1.fr.geant.net (62.40.103.54) 170.370 ms 170.050 ms 171.586 ms
16 grenoble.cssi.renater.fr (195.220.98.38) 188.830 ms 179.090 ms 179.084 ms
17 tigre-grenoble.cssi.renater.fr (195.220.98.58) 184.493 ms 179.464 ms 178.456 ms
18 r-campus.grenet.fr (193.54.184.45) 180.782 ms 184.563 ms 180.909 ms
19 r-imag.grenet.fr (193.54.185.123) 179.241 ms 180.407 ms 179.979 ms
20 manolette.imag.fr (129.88.34.201) 179.249 ms 178.417 ms 180.514 ms
13
Exterior Gateway Protocol
z
z
Dos gateways son vecinos exteriores si
están en diferentes AS y vecinos interiores si
están en el mismo AS.
Los gateways exteriores usan EGP para
anunciar alcanzabilidad a la dorsal.
Exterior Gateway Protocol
EGP tiene tres características:
1. Un mecanismo de adquisición de vecinos
para acordar intercambiar información con
otros.
2.
Los gateways prueban contínuamente si
sus vecinos están respondiendo.
3.
Los vecinos intercambian periódicamente
mensajes de actualización de rutas.
14
Restricciones de EGP
z
Los gateways anuncian solamente redes
dentro de su AS.
z
EGP no interpreta las métricas de distancia
que aparecen en los anuncios.
–
z
O sea, los gateways pueden decir: “mi AS provee
la ruta para esta red” y no “mi AS provee una ruta
de alto costo a esta red”.
Entonces no es realmente un algoritmo de
enrutamiento sino de alcanzabilidad.
Restricciones de EGP
z
EGP está muy basado en la arquitectura
jerárquica inicial de (ARPA) Internet.
z
Nuevos protocolos cubren sus deficiencias
(e.g. BGP, IDRP).
z
Internet se descentraliza cada vez mas y
necesita otros protocolos que reflejen esto.
15
Enrutamiento exterior
Una breve historia:
(Ver http://www.silkroad.com/papers/html/pba/n1.html)
z
A inicios de los 80s, la ARPANET empezó a crecer
desmesuradamente
–
–
–
Se tuvo que adoptar un modelo de agrupamiento jerárquico
Se publicó un esquema jerárquico de enrutamiento en el
RFC 827, llamado Exterior Gateway Protocol
Se indicó que EGP tenía muchas limitaciones y que era una
solución temporal
Enrutamiento exterior
Advertencias sobre EGP:
“...Exterior Gateway Protocol does not in itself
constitute a network routing algorithm ... is NOT
intended to provide information which could be used
as input to a completely general area or hierarchical
routing algorithm. It is intended for a set of
autonomous systems which are connected in a tree,
with no cycles. It does not enable the passing of
sufficient information to prevent routing loops if
cycles in the topology do exist.” - RFC 827, October
1982
16
Enrutamiento exterior
z
Se creó un nuevo esquema para subsanar
las limitaciones de EGP
–
–
–
El Border Gateway Protocol (BGP) fue propuesto
en el RFC 1105
BGP refleja mejor la naturaleza distribuída, de
malla, que presenta Internet
Se incorporaron políticas (policy-based routing)
“an inter-autonomous system routing protocol ...
routing loops may be pruned and policy decisions
at an AS level may be enforced.” - RFC 1105,
June 1989
Enrutamiento exterior
z
EGP fue reemplazado por BGP
–
–
–
Eventualmente evolucionó hasta BGP-4 (ver los
RFC 1771, 1772)
BGP permite enrutamiento basado en políticas,
pero éstas se definen manualmente en archivos
de configuración por los administradores, no son
manejadas por el protocolo
Se definió entonces la arquitectura Inter-Domain
Policy Routing y se incorporó a BGP-4
17
Descargar