Académique Documents
Professionnel Documents
Culture Documents
Fausto Vasco
1
Objetivos
• Entender los principales procedimientos de enrutamiento
utilizados en la capa de red.
• Conocer un postulado general para enrutamiento como es el
principio de optimización.
• Diferenciar entre enrutamiento estático y dinámico.
• Protocolos de Enrutamiento
• Sistema Autónomo y clasificación de los protocolos de
enrutamiento.
• Algoritmos y protocolos de pasarela interior
– Vector Distancia
– Ruta más corta primero
• Algoritmos y protocolos de pasarela exterior
– BGP
2
Introducción
• La capa de Red, es la que se encarga de llevar los paquetes de datos
desde el origen (transmisión) hasta el destino (recepción).
• Llegar a destino, en tiempo y forma, puede requerir que el algoritmo de
enrutamiento, que es el encargado de escoger las rutas y las estructuras de
datos, cumpla con ciertas propiedades que aseguren la eficiencia de su
trabajo:
– corrección,
– estabilidad,
– robustez,
– equitatividad,
– sencillez,
– optimalidad.
• La equitatividad y la optimalidad resultan con frecuencia contradictorias,
ya que muchas veces se requiere una concesión entre la eficacia global
(optimización) y la equitatividad; es decir, antes de intentar encontrar un
justo medio entre estas dos, se debe decidir qué es lo que se busca
optimizar.
3
Introducción
• Minimizar el retardo de los paquetes (disminuyendo escalas y
ancho de banda) y maximizar el rendimiento total de la red
sería la combinación más apropiada para un algoritmo de
ruteo.
• Pero otra vez estas dos están en conflicto, ya que operar al
límite (rendimiento) implica congestión, colas y por lo tanto
retardos.
4
Algoritmos de Enrutamiento
• La capa de Red proporciona el direccionamiento lógico que permite que
dos sistemas diferentes que se encuentran en redes lógicas diferentes
determinen una posible ruta para comunicarse.
– Además proporciona los algoritmos que implementan los protocolos
de enrutamiento.
• En la mayoría de las subredes, los paquetes requerirán varias escalas
para completar el viaje.
– La excepción serían las redes de difusión, pero aún aquí es
importante el enrutamiento, ya que el origen y el destino pueden no
estar en la misma red.
• Si la subred usa datagramas entonces la decisión de enrutamiento
debe hacerse cada vez que llega un paquete de datos de entrada.
• Si la subred utiliza circuitos virtuales internamente, las decisiones de
enrutamiento se tomarán sólo al establecerse el circuito.
5
Algoritmos de Enrutamiento: Clasificación
• Los algoritmos de enrutamiento se dividen en dos clases principales:
Adaptables y No Adaptables.
Algoritmos no adaptables.-
• No basan sus decisiones de enrutamiento en mediciones o estimaciones
del tráfico ni en la topología.
• La decisión de qué ruta tomar de I a J se calcula por adelantado, fuera de
línea y se cargan en los routers al iniciar la red.
– Éste procedimiento se llama enrutamiento estáticos.
• Desventaja: no es posible responder a situaciones cambiantes
como saturación, exceso de tráfico o fallo en una línea.
• En un conjunto de redes complejas, se necesita cierto grado de
cooperación “dinámica” entre los dispositivos de enrutamiento.
• Para poder tomar estas decisiones de enrutamiento dinámicas, los
dispositivos involucrados en el enrutamiento deben intercambiar
información.
6
Algoritmos de Enrutamiento: Clasificación
Algoritmos adaptables.-
• En contraste, éstos cambian sus decisiones de enrutamiento para reflejar
los cambios de topología y de tráfico.
• Difieren de los algoritmos estáticos en el lugar de obtención de su
información (ej. localmente, en los routers adyacentes o de todos), el
momento del cambio de sus rutas y la métrica usada para la optimalidad
(ej. distancia, nº de escalas, tiempo estimado del tránsito).
• Este tipo de algoritmos no pueden ser demasiado complejos:
– Son implementados en los routers
– Deben ejecutarse en tiempo real
– Con recursos de CPU y memoria del router
7
Principio de Optimización
• Este postulado establece que, si el enrutador C está en la trayectoria óptima
del enrutador I al enrutador K, entonces la trayectoria óptima de C a K
también está en la misma ruta.
• Haciendo referencia a la figura 1, llamemos r1 a la parte de la ruta de I a
• C, y r2 al resto de la ruta. Si existiera una ruta mejor que r2 entre C y K,
podría concatenarse con r1 para mejorar la ruta entre I y K, contradiciendo
nuestra aseveración de que r1r2 es óptima.
8
Principio de Optimización
• Como consecuencia directa del principio de optimización, el grupo de
trayectorias óptimas de orígenes a un destino dado forma un árbol con
raíz en el destino.
– Ese árbol que se forma, se llama árbol de descenso, donde la métrica
de distancia es el número de escalas.
– El árbol de descenso puede no ser único, pueden existir otros árboles
con las mismas longitudes de trayectoria.
• La meta de todos los algoritmos de enrutamiento es descubrir y usar los
árboles de descenso para todos los enrutadores.
9
Algoritmos Estáticos
10
Enrutamiento por trayectoria más corta
11
Enrutamiento por trayectoria más corta
• Se conocen varios algoritmos de cálculo de la trayectoria
más corta entre dos nodos de un grafo.
– Cada nodo se etiqueta (entre paréntesis) con su distancia al nodo
de origen a través de la mejor trayectoria conocida.
– Inicialmente no se conocen trayectorias, por lo que todos los nodos
tienen la etiqueta infinito.
• A medida que avanza el algoritmo y se encuentran trayectorias, pueden
cambiar las etiquetas, reflejando mejores trayectorias.
• Una etiqueta puede ser tentativa o permanente.
• Inicialmente todas las etiquetas son tentativas.
– Al descubrirse que una etiqueta representa la trayectoria más corta
posible del origen a ese nodo, se vuelve permanente y no cambia
más.
B 7 C
2 2 3 3
A E 2 F D
6 1 2 2
G 4 H 12
Inundación
• Cada paquete de entrada se envía por cada una de las líneas
de salida, excepto aquella por la que llegó.
– Evidentemente genera grandes cantidades de paquetes duplicados, de
hecho, una cantidad infinita a menos que se tomen algunas medidas para
limitar ese proceso.
• Un contador de escalas contenido en la cabecera de cada paquete, el cual
disminuye en cada escala, descartándose al llegar el contador a cero.
• Idealmente el contador debe inicializarse a la longitud de la trayectoria, es decir,
el diámetro de la subred.
• Una variación de la inundación, un poco más práctica es la
inundación selectiva.
– En este algoritmo, los enrutadores no envían cada paquete de entrada por
todas las líneas, sino sólo por aquellas que van aproximadamente en la
dirección correcta.
• La inundación no es práctica en la mayoría de las aplicaciones,
pero tiene algunos usos. Por ejemplo, en aplicaciones militares y
en las aplicaciones de bases de datos distribuidas
13
Enrutamiento basado en flujo
• Los algoritmos vistos hasta ahora sólo toman en cuenta la
topología; no consideran la carga.
– Si por ejemplo, siempre hay una gran cantidad de tráfico entre un nodo A y
un nodo B, ambos adyacentes, podría ser mejor enrutar el tráfico de ambos
por caminos alternativos un poco más largos tal vez.
• El enrutamiento basado en flujo usa tanto la topología como la
carga para el enrutamiento.
– Para una línea dada, si se conocen la capacidad y el flujo promedio, es
posible calcular el retardo promedio de los paquetes en esa línea a partir de
la teoría de colas.
– De los retardos promedio de todas las líneas, es directo el cálculo de un
promedio ponderado por el flujo para obtener el retardo de paquete medio de
la subred completa.
– El problema de enrutamiento se reduce entonces a encontrar el algoritmo de
enrutamiento que produzca el retardo promedio mínimo para la subred.
14
Enrutamiento basado en flujo
• Para usar esta técnica, debe conocerse por adelantado
cierta información:
– La topología de la subred
– Debe estar dada la matriz de tráfico
– Debe estar disponible la matriz de capacidad, donde se especifica
la capacidad de cada línea en bps.
• Por último, debe escogerse algún algoritmo tentativo de
enrutamiento.
15
Algoritmos Dinámicos
16
Enrutamiento vector de distancia
• Operan haciendo que cada enrutador mantenga una tabla (por
ejemplo, un vector) que da la mejor distancia conocida a cada
destino y la línea (interface) a usar para llegar ahí.
– Estas tablas se actualizan intercambiando información con vecinos.
– Este algoritmo recibe otros nombres como: algoritmo de enrutamiento
Bellman-Ford distribuido y el algoritmo Ford-Fullkerson.
• Cada enrutador mantiene una tabla de enrutamiento indizada por,
y conteniendo un registro de, cada enrutador de la subred.
– Esta entrada comprende dos partes:
• La línea preferida de salida hacia ese destino
• Una estimación del tiempo o distancia a ese destino.
– La métrica usada podría ser la cantidad de saltos, el retardo de tiempo en
milisegundos, el número total de paquetes encolados por la trayectoria, o algo
parecido o una combinación de las mismas.
17
Enrutamiento vector de distancia
• Se supone que cada enrutador conoce la “distancia” a
cada uno de sus vecinos.
– Si la métrica es de escalas, la distancia simplemente es una escala.
– Si la métrica es la longitud de la cola, el enrutador simplemente
examina cada cola.
– Si la métrica es el retardo, el enrutador puede medirlo directamente
con paquetes especiales de ECO que el receptor simplemente marca
con la hora y envía de regreso tan rápido como puede.
18
El problema del conteo a infinito
• Este algoritmo funciona bien en teoría, pero tiene un
problema serio en la práctica: aunque converge en la
respuesta correcta, puede hacerlo lentamente.
– En particular reacciona con rapidez a las buenas noticias, pero con
lentitud ante las malas.
• Consideremos un enrutador cuya mejor ruta al destino X es
larga. Si en el siguiente intercambio el vecino A informa
repentinamente un retardo corto a X, el enrutador simplemente
se conmuta a modo de usar la línea a A para enviar tráfico
hasta X.
– En el intercambio de vectores, se procesan las nuevas noticias.
19
El problema del conteo a infinito
– Para ver la rapidez de propagación de las buenas noticias, considere
la subred de la figura.
• • • • inicialmente
1 • • • Tras 1 intercambio
1 2 • • Tras 2 intercambio
1 2 3 • Tras 3 intercambio
1 2 3 4 Tras 4 intercambio
20
El problema del conteo a infinito
• Considerando ahora la situación en que todas las líneas y enrutadores
están activos inicialmente. Los enrutadores B, C, D y E tienen
distancias a A de 1, 2, 3 y 4, respectivamente.
• De pronto A se desactiva, o bien se corta la línea entre A y B, que de
hecho es la misma cosa desde el punto de vista de B.
• En el primer intercambio de paquetes B no escucha nada de A. C sabe
que tiene una trayectoria hacia A de longitud 2 y avisa a B, sin saber
este último que la trayectoria de C pasa a través de B mismo.
21
Recorte por horizonte dividido (solución)
22
Recorte por horizonte dividido (solución)
23
Enrutamiento por estado de enlace
• El concepto de este algoritmo es sencillo y puede describirse en
cinco partes. Cada enrutador debe:
1. Descubrir a sus vecinos y conocer sus direcciones de red.
– Al ponerse en operación un enrutador, su primera tarea es averiguar quiénes
son sus vecinos;
• Paquete HELLO por cada línea punto a punto.
• Se espera que el enrutador del otro extremo envíe de regreso su dirección única.
24
Enrutamiento por estado de enlace
2. Medición del costo de la línea.
– El algoritmo requiere que cada enrutador sepa el estado de cada uno
de sus vecinos.
– La manera más directa de determinar este retardo es enviar un paquete
especial ECO (ECHO) a través de la línea, el cual debe enviar de
regreso inmediatamente el otro lado.
– Si mide el tiempo de ida y vuelta y lo divide entre dos, el enrutador
transmisor puede tener una idea razonable del retardo.
• Para obtener mejores resultados la prueba puede llevarse a cabo varias
veces y usarse el promedio.
25
Enrutamiento por estado de enlace
3. Construcción de los paquetes de estado de enlace.
– Una vez que se ha recabado la información necesaria para el intercambio, el
siguiente paso es que cada enrutador construya un paquete con todos los
datos.
– Este paquete comienza con la identidad del transmisor, seguida de un número
de secuencia, una edad y una lista de vecinos.
– Para cada vecino, se coloca el retardo a ese vecino.
26
Enrutamiento por estado de enlace
4. Distribución de los paquetes de estado de enlace.
– La parte más complicada del algoritmo es la distribución confiable de
los paquetes de estado de enlace.
– A medida que se distribuyen e instalan los paquetes los enrutadores
que reciban los primeros cambiarán sus rutas.
– En consecuencia, los distintos enrutadores podrían estar usando
versiones diferentes de la topología, lo que puede conducir a:
• Inconsistencias,
• Ciclos o lazos
• Máquinas inalcanzables, etc.
• El algoritmo que se utiliza para la distribución de los
paquetes de estado de enlace seria inundación.
27
Enrutamiento por estado de enlace
5. Cálculo de nuevas rutas.
– Una vez que un enrutador ha acumulado un grupo completo de
paquetes, puede construir el grafo de la subred completa.
– De hecho, cada enlace se representa dos veces, para cada dirección.
• Los dos valores pueden promediarse o usarse por separado.
– Ahora puede ejecutarse localmente el algoritmo de la trayectoria más
corta posible a todos los destinos.
• Los resultados pueden instalarse en las tablas de enrutamiento, y
reiniciarse la operación normal.
– Para una subred con n enrutadores, cada uno de los cuales tiene k
vecinos, la memoria requerida para almacenar los datos de entrada es
proporcional a nk. (micha memoria en redes grandes)
• Tiempo de cómputo alto.
28
Enrutamiento Jerárquico
• A medida que crece el tamaño de las redes, crecen
proporcionalmente las tablas de enrutamiento del
enrutador. Consumen:
– memoria del enrutador
– tiempo CPU para examinarlas
– ancho de banda para enviar informes
• En cierto momento, la red puede crecer hasta el punto en
que ya no es factible que cada enrutador tenga una
entrada para cada uno de los demás enrutadores
– Æ Enrutamiento jerárquico, como ocurre en la red telefónica.
• Los enrutadores se dividen en regiones o áreas,
• Cada enrutador conoce todos los detalles de la manera de enrutar
paquetes a destinos dentro de su propia región
• Pero no sabe nada de la estructura interna de las otras regiones.
– Cada región es independiente, a fin de liberar a los enrutadores de
una red de la necesidad de conocer la estructura topológica de las
demás. 29
Enrutamiento por Difusión
• En algunas aplicaciones, los host necesitan enviar mensajes a
varios otros host o a todos los demás.
– El envío simultáneo de un paquete a todos los destinos se llama difusión.
– Hay varios métodos para llevarlo a cabo.
• Un método de difusión que no requiere características
especiales de la red es que el origen simplemente envíe copias
del paquete a todos los destinos.
– Desperdicia ancho de banda
– El origen debe tener una lista completa de todos los destinos.
– En la práctica, este es el método menos deseable.
• La inundación es otro candidato pero como técnica de difusión
tiene el mismo problema que como algoritmo de enrutamiento
punto a punto:
– Genera demasiados paquetes y consume demasiado ancho de banda.
30
Enrutamiento por Difusión
• Un tercer algoritmo es el enrutamiento multidestino.
– Con este método cada paquete contiene una lista de destinos
deseados.
– El enrutador genera una copia nueva del paquete para cada línea
de salida, e incluye en cada paquete sólo los destinos que usan la
línea.
– Enrutamiento idéntico al de los paquetes con direccionamiento
individual, excepto que, cuando varios paquetes deben seguir la
misma ruta, uno de ellos paga la tarifa completa y los demás viajan
gratis.
31
Enrutamiento por Difusión
• El último algoritmo de difusión es el árbol de extensión,
este es un subgrupo de la subred que incluye todos los
enrutadores, pero no contiene ciclos.
• Si cada enrutador sabe cuales de sus líneas pertenecen
al árbol de extensión, copia una paquete en cada una de
estas líneas, excepto por la que llegó.
– Excelente uso del ancho de banda
– Cantidad mínima de paquetes
• El único problema es que el enrutador debe tener
conocimiento del árbol de extensión.
• Esta información podría no estar disponible.
32
Sistemas Autónomos
• Un sistema autónomo o AS será la subred que es
administrada por una autoridad común, que tiene:
– Un protocolo de ruteo homogéneo
– Una política común para el intercambio de tráfico con otras redes o
ASs
• En Internet se dan, al menos, dos niveles jerárquicos de
ruteo:
– Dentro de un sistema autónomo (gateway o pasarela interior)
– Entre sistemas autónomos (gateway o pasarela exterior)
• Dado que los requerimientos en unos y en otros son muy
diferentes, se utilizan protocolos de ruteo muy distintos.
33
Protocolos de Enrutamiento IP
34
Enrutamiento
• El enrutamiento es fundamental para cualquier red de datos,
ya que transfiere información a través de una internetwork de
origen a destino.
• El enrutamiento puede ser:
– Estático, utilizando rutas estáticas introducidas por el administrador
– Dinámico, utilizando Protocolos de Enrutamiento
• En cualquier caso son los enrutadores los encargados de llevar
los datos de origen a destino con dicha información, dado que
sus funciones principales son:
– Elección de la mejor ruta
– Conmutación de los paquetes
• Los enrutadores utilizan para esto la Tabla de enrutamiento, la
misma que es alimentada con las líneas o interfaces
directamente conectadas y con la información estática y
dinámicamente aprendida.
35
Rutas Estáticas
• Los enrutadores de ninguna manera pueden garantizar que el paquete
será entregado en el destino.
• El enrutamiento, al realizarse en capa 3, es de mejor esfuerzo y se lleva a
cabo salto a salto o paso a paso.
• Es decir, el enrutador garantiza la entrega del paquete en el siguiente
salto.
Rutas Estáticas
• Las rutas estáticas se utilizan generalmente cuando:
– Se enruta desde una red a una red de conexión única.
– Por seguridad.
– Por ahorro de ancho de banda.
36
Rutas Estáticas
37
Principios de la tabla de enrutamiento
38
Protocolos de Enrutamiento
39
Perspectiva e información básica
40
Propósito de los protocolos de enrutamiento
dinámico
• Un protocolo de enrutamiento es un conjunto de procesos,
algoritmos y mensajes que se usan para intercambiar
información de enrutamiento y completar la tabla de
enrutamiento con la selección de las mejores rutas del protocolo
de enrutamiento.
• El propósito de un protocolo de enrutamiento incluye:
– descubrimiento de redes remotas,
– mantenimiento de información de enrutamiento actualizada,
– selección de la mejor ruta hacia las redes de destino y
– capacidad de encontrar una mejor nueva ruta si la ruta actual deja de estar
disponible.
¿Cuáles son los componentes de un protocolo de enrutamiento?
• Estructuras de datos
• Algoritmo
• Mensajes del protocolo de enrutamiento
41
Enrutamiento: Estático vs. Dinámico
42
Protocolos de Enrutamiento: Clasificación
43
IGP vs. EGP
• Interior Gateway Protocols (IGP): se usan para el enrutamiento de
sistemas intrautónomos
• Exterior Gateway Protocols (EGP): se usan para el enrutamiento de
sistemas interautónomos
44
IGP: Protocolos de enrutamiento según la Clase
• Los protocolos de enrutamiento se clasifican en:
– Protocolos con clase (classful)
– Protocolos sin clase (classless)
Los protocolos de enrutamiento con clase
• Los protocolos de enrutamiento con clase no envían
información de la máscara de subred en las actualizaciones
de enrutamiento.
– No soportan máscaras de longitud variable (VLSM)
– No soportan superneting y el esquema CIDR en general
– No soportan subneting discontinuo
– Como asignan las máscaras?
• Si la red informada es de una clase diferente se aplica la máscara de la
clase.
• Si la red informada es una subred de la misma clase (red), se aplica la
máscara de la interface que lo recibe.
45
IGP: Protocolos de enrutamiento según la Clase
Los protocolos de enrutamiento sin clase
• Los protocolos de enrutamiento sin clase incluyen la
máscara de subred con la dirección de red en las
actualizaciones de enrutamiento.
– Si soportan máscaras de longitud variable (VLSM)
– Si soportan superneting y el esquema CIDR en general
– Si soportan subneting discontinuo
46
Conceptos Básicos
• Convergencia: Se dice que los enrutadores de un AS
han llegado a la convergencia cuando todos manejan
información consistente.
– El tiempo que transcurre hasta alcanzar la convergencia se llama
tiempo de convergencia y es deseable que sea lo menor posible.
• Métrica: Son los parámetros de medida que utilizan los
diferentes protocolos de enrutamiento para decidir que
ruta es mejor que otra.
– Número de saltos o escalas,
– Carga,
– Ancho de banda,
– Demoras acumuladas,
– Confiabilidad del enlace,
– Costo, etc..
47
Conceptos Básicos
• Balanceo de Carga: Cuando las métricas de dos o más
rutas hacia un destino son iguales, el protocolo decide
repartir la carga por igual entre dichas rutas.
– El balanceo de carga puede realizarse ya sea por paquete o por
destino.
• Distancia Administrativa: El enrutador debe decidir en
que protocolo de enrutamiento confía más, esta
decisión la toma en base a la DA.
– Las rutas directamente conectadas: 0
– Las rutas estáticas: 1 por defecto, configurables
– Las rutas dinámicas: valores por defecto para cada protocolo de
enrutamiento, configurables.
48
RIP
50
RIPv2
Características de RIPv2
• La mayoría de las características son similares ya que es el mismo protocolo.
• Mensajes de actualización enviados a una dirección Multicast.
• Máscara de red y siguiente salto incluidos en la información de enrutamiento
• Soporte de VLSM al ser un protocolo classless.
• Soporte de subredes discontinuas
• Soporte de autenticación
51
OSPF
Características de OSFP
• Protocolo de Estado de Enlace (Algoritmo de Djikstra)
• Protocolo de diseño jerárquico.
• Soporte de VLSM y subneting discontinuo
• Su métrica es el costo y es calculada en base al ancho de banda.
• Utiliza el puerto 89 de TCP
• Localiza, mantiene y redescubre vecinos mediante mensajes de “Hello”
• Transmisión confiable de sus mensajes
• Mensajes de actualización enviados a una dirección Multicast.
• Garantiza una topología libre de lazos.
52
OSPF
53
Tipos de Mensajes de OSPF
54
Estados OSPF (OSPF FSM)
• Es necesario entender las relaciones o estados que se
desarrollan entre enrutadores OSPF.
• Las interfaces OSPF pueden estar en uno de los siguientes
siete estados:
1. Down State (sin conexión)
2. Init State (Primer intercambio de paquetes Hello)
3. Two-Way State (Intercambio mutuo de paquetes Hello)
4. ExStart State (Se establece relación Master Slave o se declara DR y BDR,
según la naturaleza de la red)
5. Exchange State (Intercambio de paquetes DBD para compartir información
sumaria)
6. Loading State (Información específica o adicional es requerida y entregada
mediante LSRs y LSUs)
7. Full Adjacency (Convergencia)
• Las relaciones de vecindad de OSPF progresan mediante
estos estados, uno al tiempo en el orden presentado.
55
Parámetros para la Vecindad
• Los enrutadores deben circular por los 7 estados antes
mencionados para alcanzar la relación de FULL-ADJACENCY o
vecindad completa.
• Para esto deben cumplir con varios parámetros de coincidencia:
– Identificación de DR y BDR
– Tipo de Red
– Intervalo de Hello
– Intervalo de Muerte
– Identificador del área (diseño jerárquico de la red)
– Autenticación
– Banderas de Tipo de área
• Intervalo de Hello: Es de 10 segundos en rede multiacceso y redes
punto a punto y de 30 segundos en redes NBMA.
• Intervalo de Muerte: Es 4 veces el período de Hello. Representa el
tiempo que se espera para declarar muerto un vecino si nos e
tiene mensajes de hello por parte del mismo.
56
Tipos de Redes OSPF
• En OSPF, los enrutadores
basados en a que tipo de
redes están conectados,
tratan de logra la adyacencia
con:
– Al menos un enrutador
– Con todos los enrutadores
vecinos
• Los tipos de redes que
existene en IP son:
1. broadcast multiaccess,
2. nonbroadcast multiaccess
(NBMA),
3. point-to-point
4. point-to-multipoint
57
OSPF: Estructura de Datos
58
OSPF network types – DR/BDR
• OSPF tiene un sistema para evitar la sobrecarga que significa lograr full
adjacency con todos los otros enrutadores en una red ultiacceso.
• Este sistema restringe quien logra adyacencia con quien empleando:
• Designated router (DR)
1. Logrará la adyacencia con todos los otros enrutadores de la red
2. Interlocutor de la red Æ envía LSAs para todos los otros enrutadores
– Punto de recolección de información
• Back Designated router (BDR)
– Entrega tolerancia a la falla.
No es responsable de actualizar
a todos los otros enrutadores de la red
– BDR mantiene un monitoréo del DR
y su actividad
– BDR tomará el rol de DR si
no detecta actividad de este
• El DR y el BDR se elegirán de acuerdo
al Identificador de Enrutador más alto.
59
DR o adyacencia múltiple
60
Steps in the operation of OSPF
61
61
Steps in the operation of OSPF
62 I need to
update my
routing table
62
Problemas con rede OSPF grades
• Tablas de Topología muy grandes
– Cada enrutador mantiene todas las rutas posibles a todos los destinos
dentro del Area
– LSDB requiere uso de memoria
• Cálculos SPF Frecuentes
– Un cambio de topología causa que cada enrutador re-run SPF para
reconstruir el árbol SPF (grafo) y la tabla de enrutamiento.
– Un enlace flapping afectará el área entera.
– Los recálculos de SPF son realizados para cambios de topología que
ocurran dentro del área.
• Tablas de Enrutamiento grandes
– Mientras más grande es el área, más grande es la tabla de enrutamiento
– Lo cual requiere de mayor cantidad de memoria y mayor tiempo para las
búsquedas.
64 64
OSPF: Tipos de enrutadores
• Internal:
Internal Enrutador con todas sus interfaces dentro de la misma área
• Backbone:
Backbone Enrutador con al menos una interface en el área 0
• ASBR:
ASBR (AS Boundary Router): Enrutador con al menos una interface
conectada a una red externa al AS (another AS)
• ABR:
ABR (Area Border Router): Enrutador con interfaces conectadas a
múltiples áreas.
– ABRs son el punto de salida del área. ABRs sumarizan la información de
enrutamiento. Un área puede tener uno o más ABRs.
65
OSPF Area types
• Standard area – Acepta actualizaciones de enrutamiento externas
al AS y rutas sumarizadas.
• Backbone area (área de tránsito) – Es la entidad centralizada a
la cual todas las otras áreas están conectadas, siempre es el área
0.
– Es un área estándar de manera obligatoria.
• Stub area – No acepta información sobre rutas externas al AS.
– Si los enrutadores necesitan alcanzar rutas fuera del AS, deberán utilizar
rutas de defecto. Una ruta de defecto es denotada como 0.0.0.0/0.
• Totally stubby area – No acepta rutas externas al AS ni rutas
sumarizadas de otras áreas internas al AS.
– Si los enrutadores necesitan alcanzar rutas fuera del área, deberán utilizar
rutas de defecto.(Característica propietaria).
• Not-so-stubby area (NSSA) – Similar a las stub areas pero
permiten importar rutas externas al AS.
66
BGP
• Típicamente, los EGPs son utilizados para intercambiar información de
enrutamiento entre Ass, por lo tanto sus principales usuarios son ISPs,
Proveedores de servicios en general y grandes usuarios finales.
• Border Gateway Protocol, version 4 (BGP4), es en la actualidad el único
protocolo de gateway exterior en funcionamiento.
• Dada su naturaleza, BGP trabaja con los identificacores de los sistemas
autónomos.
– Al igual que con las direcciones IP, es la IANA la encargada de administrar
dichos identificadores.
– El campo actual es de 16 bits, con lo cual hay 65536 posibles ASs, sin
embargo se ha procedido ya a su
ampliación a 32 bits.
67
Tipos de Sistemas Autónomos
Single Homed
• Es un AS con una sola salida.
• Comúnmente referidos como “stub networks”
• Basta con una ruta de defecto para la salida y una ruta estática para
el regreso de los datos.
• Existen 3 métodos para anunciar las redes de un cliente desde el
punto de vista de un proveedor:
– Configuración estática
– IGP (Publica la topología al ISP)
– EGP (Cliente utiliza una extensión
de las políticas del ISP)
68
Multihomed nontransit ASs
• Un AS es Multihoded siempre que tenga más de una salida a
las redes externas.
– Un AS puedes ser multihomed hacia:
• Un solo proveedor
• Múltiples proveedores
• Un nontransit AS no permite tráfico de tránsito pasando a
través suyo.
– Transit traffic es cualquier tráfico cuyo origen y destino está fuera del
AS.
– Anuncia únicamente sus propias rutas a ambos proveedores
– Los ISPs pueden forzar tráfico a cruzar el AS por rutas estáticas.
• Se debe filtrar el tráfico de entrada.
– Multihomed nontransit en realidad no
necesita BGP, sin embargo recomenda-
do y a veces requerido por los ISPs por
las ventajas de control de propagación
y filtrado del protocolo.
69
Multihomed transit ASs
• Un AS multihomed transit tiene más de una conexión al exterior y
puede utilizarse para tráfico de tránsito por otros ASs.
• Un AS transit puede enrutar tráfico de tránsito corriendo BGP
internamente así los múltiples routers de borde en el mismo AS
pueden compartir la información BGP.
• Cuando BGP corre dentro del AS, se le llama Internal BGP (IBGP).
– Si el rol del enrutador es enrutar tráfico IBGP, se llama transit router.
• Cuando BGP corre entre ASs, se le llama External BGP (EBGP).
– Enrutadores situados en la frontera de un AS y que usan EBGP se les llama
enrutadores border o edge.
70
Operación Básica de BGP: routing updates
• BGP es un estándar definido en el RFC 1772 y otros, intercambia
información de enrutamiento entre ASs y garantiza una ruta libre
de lazos.
– BGP soporta CIDR and agregaciónd e rutas.
– No utiliza métricas.
– Basa sus desicíones de enrutamiento en políticas de red o reglas.
– Manda sus actualizaciones utilizando TCP con el puerto 179.
• Por lo tanto, es inherentemente confiable.
• Para garantizar una selección de rutas loop free, construye un
gráfico de ASs basado en la información intercambiada entre los
enrutadores.
• Construye entonces su árbol de ASs.
– La conexión entre 2 sistemas
construe un path.
– La colección de paths se expresa
como una secuencia de números de
AS llamada AS Path formando una
ruta para alcanzar un destino
específico. 71
BGP message types
• Diferentes mensajes juegan un rol escencial en la operación de
BGP. Cada mensaje incluye un encabezado BGP.
Tipos de Mensajes
• Open Message – Establece la conexión con un peer e incluye
coampos para la versión BGP, el número del AS, hold time, y Router
ID.
• Keepalive Message – (mensaje BGP de 19-byte (header sin datos)
es es enviado periodicamente entre peers para mantener la
conexión y verificar rutas.
• Notification Message – Utilizado por los enrutadores para notificar
errores. Incluye un campo de códigos de error. (troubleshoot).
• Update Message – Contiene toda la información que BGP usa para
construir un gráfico de la inter-red libre de lazos.
– Hay tres componentes básicos en un mensaje de actualización.
• Network-layer reachability information (NLRI)
• Path attributes
• Withdrawn routes.
72
BGP Neighbor Negotiation
• El proceso de negociación de los vecinos BGP neighbor se realiza
mediante varios estados, o stages, los mismos que pueden ser
descritos en términos de una máquina de estados finitos (FSM).
• Son seis los estados de la BGP FSM:
73
Network-layer reachability information (NLRI)
74
Path attributes
• Mucho del trabajo al configurar BGP se enfoca en los atributos
de ruta “path attributes”.
• Cada ruta tiene su propio conjunto de atributos que pueden
incluir:
– path information, route preference, next hop, y aggregation information.
• Administradores utilizan estos valores para:
– Reforzar las políticas de enrutamiento, filtrar información de
enrutamiento, preferir ciertas rutas, y hasta personalizar el
comportamiento
• Cada mensaje de actualización tiene una secuencia de
longitud variable de atributos de ruta en el formato
– <attribute type, attribute length, attribute value>.
• No todos los fabricantes implementan BGP para reconocer los
mismos atributos.
75
Path attributes
• Los atributos de ruta se dividen en 4 categorías:
– Well-Known Mandatory
• Deben ser incluidos en todas las implementaciones de BGP; si no está
en el mensaje UPDATE, un mensaje de NOTIFICATION de error se
envía.
– Well Known Discretionary
• Este atributo es reconocido por todas las implementaciones de BGP
pero puede no ser enviado en un mensaje de UPDATE
– Optional Transitive
• Atributo que podría no ser reconocido por todas las implementaciones
de BGP pero si llega debe ser retransmitido a los BGP peers.
– Optional Non-transitive
• Atributo que podría no ser reconocido por todas las implementaciones
de BGP. Si no es reconocido solo se ignora.
76
Path attributes
• Los atributos se utilizan en un orden específico de prioridades y
pesos, en dependencia de la implementación de cada
fabricante.
77
Mayor información
IMAGINAR
Centro de Investigación para la Sociedad de
la Información
P.O.Box: 17-04-10681
Quito-Ecuador
Teléfono: 2400-937
Email: info@imaginar.org
Site: www.imaginar.org
78