Title: Tema 2 El Nivel de Red: Generalidades
1Tema 2El Nivel de Red Generalidades
2Sumario
- Aspectos generales del nivel de red
- Algoritmos de routing
- Control de congestión
3La Capa de Red
4El nivel de Red
- Es la capa por antonomasia, la más importante, la
única que ve el conjunto de caminos (la red). - Se constituye con dos tipos de nodos
- Nodos terminales (Hosts)
- Nodos de tránsito (Routers o Conmutadores)
- Normalmente los routers tienen varias interfaces
y los hosts una (pero puede haber hosts con más
de una interfaz o multihomed). - Los routers y las líneas que los unen constituyen
la subred, gestionada por el proveedor u
operador. - En una comunicación LAN-LAN el nivel de red es
casi inexistente (no hay nodos de tránsito,
todas las comunicaciones son directas).
5Puente vs router
El puente actúa a nivel de enlace
Los dos son útiles, cada uno en su papel
Trans.
Trans.
El router actúa a nivel de red
Red
Red
Red
LLC
LLC
LLC
LLC
MAC
MAC
MAC
MAC
Física
Física
Física
Física
6Funciones del nivel de Red
- Elegir la ruta óptima de los paquetes
- Servicio CONS sólo en el momento de establecer
el VC(Virtual Circuit o Virtual Channel) - Servicio CLNS para cada datagrama
independientemente - Controlar y evitar la congestión
- Controlar que el usuario no abuse del servicio
- Resolver (mapear) las direcciones de nivel de
red con las de nivel de enlace (p. ej. en LANs la
dir. IP con la dir. MAC).
7CONS vs CLNS
B
1.1
1.2
1.3
VC 1
A
1.1
1.3
1.2
VC 2
2.3
2.2
2.1
2.3
2.2
Red CONS
2.1
C
Cada paquete lleva el número del circuito
virtual al que pertenece
Todos los paquete que van por un mismo VC usan la
misma ruta
El orden se respeta siempre
B
B.1
B.2
B.3
A
B.1
B.3
B.2
Red CLNS
C.2
C.1
C.1
C.3
C.2
C.3
C
La ruta se elige de forma independiente para cada
datagrama
El orden no siempre se respeta
Cada datagrama lleva la dirección de destino
8CONS vs CLNS (II)
9Sumario
- Aspectos generales del nivel de red
- Algoritmos de routing
- Control de congestión
10Principio de optimalidad
- Si Valencia está en la ruta óptima de Murcia a
Barcelona, entonces el camino óptimo de Valencia
a Barcelona está incluido en la ruta óptima de
Murcia a Barcelona - Corolario Todas las rutas óptimas para llegar a
Barcelona desde cualquier sitio forman un árbol
sin bucles (spanning tree) con raíz en Barcelona.
11Principio de optimalidad (II)
La Coruña
Bilbao
Valladolid
Zaragoza
Barcelona
Madrid
Valencia
Badajoz
Murcia
Sevilla
La red de autopistas españolas
12Concepto de ruta óptima en carreteras
- Para elegir la ruta óptima se pueden aplicar
diversos criterios, por ejemplo - La que minimice la distancia
- La que minimice el tiempo
- La que minimice el consumo de gasolina
- La que minimice el costo (p. ej. evitar peajes)
- La que minimice el cansancio (preferible
autopistas, pocas curvas, pocos cambios de
carretera, etc.) - Una determinada combinación de todos los
anteriores con diversos pesos según los gustos
del usuario - La ruta óptima puede variar en función del
criterio elegido (ver por ejemplo
www.michelin.com)
13Concepto de ruta óptima en telemática
- Los criterios que se aplican suelen ser
- Minimizar el número de routers (saltos) por lo
que se pasa - Maximizar el caudal (ancho de banda) de los
enlaces por los que se pasa - Minimizar el nivel de ocupación o saturación de
los enlaces que se atraviesan - Minimizar el retardo de los enlaces
- Maximizar la fiabilidad de los enlaces (minimizar
la tasa de errores) - Una determinada combinación de todos los
anteriores con diversos pesos según los gustos
del usuario
14Algoritmos de routing
- Los algoritmos de routing pueden ser
- Estáticos las decisiones se toman en base a
información recopilada con anterioridad.
Normalmente el proceso de optimización es costoso
y se realiza de forma centralizada. Por eso una
vez fijada la ruta casi nunca se cambia. - Dinámicos deciden la ruta óptima en base a
información obtenida en tiempo real. Requieren un
protocolo de routing para recoger la información.
La ruta óptima puede cambiar a menudo. - Salvo en redes muy simples o en zonas periféricas
se suele utilizar routing dinámico.
15Routing estático basado en el flujo
- Consiste en optimizar las rutas de acuerdo con la
capacidad y el nivel de ocupación de cada enlace,
calculado a partir del tráfico medio previsto
entre nodos. - Es preciso disponer de información que permita
estimar el tráfico medio entre cada par de nodos
(matriz de tráfico). - Interesante para decidir la topología cuando se
diseña una red de enlaces punto a punto o con
circuitos virtuales permanentes o PVCs (Frame
Relay o ATM) - Se plantean varias topologías posibles (en
principio todas) se comparan y se elige la más
adecuada. - No permite responder con rapidez a cambios en el
comportamiento del tráfico (por ejemplo
congestión repentina en un enlace)
16Tiempo de servicio
El Tiempo de servicio es el tiempo medio que
tarda en enviarse un paquete en la interfaz de
salida (tiempo de transmisión tiempo de espera
en la cola) Por teoría de colas T p / (v
- c) donde p tamaño del paquete (en
bits) v velocidad de la línea (en
bits/s) c caudal medio de la línea (en
bits/s) El tiempo de servicio puede ser (y
normalmente es) diferente para cada sentido de la
comunicación en una misma línea
Paquetes encolados en la interfaz de salida
17Tiempo de servicio para paquetes de 500 bytes
Si no hay nada de tráfico el paquete no espera.
En ese caso el tiempo de servicio es igual al
tiempo de transmisión, es decir lo que tarda el
paquete en salir por el hilo
Las líneas de baja velocidad sufren mas problemas
de retrasos cuando se produce congestión
18Ejemplo de routing estático basado en el flujo
Matriz de tráfico (Kb/s)
64 Kb/s
Destino
A
B
512 Kb/s
512 Kb/s
Origen
512 Kb/s
C
D
Matriz de rutas con A-B directo
Matriz de rutas con A-B indirecto
Destino
Destino
Origen
Origen
1964 Kb/s
A
B
Routing estático basado en el flujo
512 Kb/s
512 Kb/s
512 Kb/s
C
D
Matriz de tiempos de servicio
Topología directa
Valor promedio 28,18 ms
Topología indirecta
Matriz de tiempos de servicio
Valor promedio 23,10 ms
20Routing estático basado en el flujo Cálculo del
tiempo de servicio medio ponderado
Matriz de tráfico (Kb/s)
Matriz de tráfico normalizada
Destino
Destino
Origen
Origen
Tráfico total 900 Kb/s
Topología directa 18,74 ms Topología indirecta
18,70 ms
Tiempo de servicio medio ponderado
Conclusión La topología indirecta es mejor que
la directa.
21Encaminamiento por inundación
- Enviar cada paquete por todas las interfaces,
excepto por la que ha llegado. - Utilizado en
- Puentes transparentes (tramas broadcast/multicast)
- Algunos algoritmos de routing (estado del enlace)
- Algunos algoritmos de routing multicast.
- Si hay bucles se envían duplicados, el tráfico se
multiplica y la red se bloquea. Soluciones - Bloquear interfaces (spanning tree)
- Incorporar contador de saltos y descartar cuando
sea cero - Mantener lista de enviados y descartar duplicados
22Encaminamiento por inundación (II)
Primer salto 3 paquetes
Segundo salto 5 paquetes
Tercer salto 8 paquetes
23Encaminamiento dinámico
- Requiere recabar información en tiempo real sobre
el estado de los enlaces - Permite responder a situaciones cambiantes, p.
ej. fallo o saturación de un enlace. Pero solo
si hay ruta alternativa. - Dos algoritmos
- Vector distancia o Bellman-Ford
- Estado del enlace, Dijkstra o Shortest Path First
- En ambos casos el cálculo de rutas óptimas se
realiza de forma distribuida entre todos los
routers de la red.
24Algoritmo 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 le indica por que interfaz enviar
los paquetes para cada destino. - Para ello intercambia con sus vecinos vectores
distancia, que indican la distancia a cada destino
25Ejemplo del algoritmo de vector distancia
1
Distancia 2
Distancia 3
9
m
j
4
Distancia 7
Distancia 2
n
3
k
10
Destino
Recibido de j (3)
Recibido de k (2)
Recibido de m (2)
Recibido de n (7)
Vector calculado
2
6
5
0
12
8
6
19
3
2
9
Tabla de rutas
k
m
j
m
0
k
j
n
j
k
n
26El problema de la cuenta a infinito
Dist. 1
C
A
B
0 ?
?
0 1
?
0 1
2
- 3
2
- 3
4
- 5
4
- 5
6
- 7
6
- 7
8
- 9
8
. .
.
. .
.
. .
.
- ?
?
27El problema de la cuenta a infinito (II)
- 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
28Algoritmo 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
toma el más corto y descarta los demás. - Las ramas son en principio provisionales. Una
rama se confirma cuando es más corta que todas
los demás provisionales.
29Algoritmo del estado del enlace (Dijkstra)
2
6
5
2
1
2
1
2
4
Link State Packets
30Algoritmo de Dijkstra
31Árbol de rutas óptimas desde C para la red ejemplo
32Algoritmo de estado del enlace
- Los LSP se transmiten por inundación.
- Sólo se envían cuando hay cambios
- Los LSP se numeran secuencialmente. Además tienen
un tiempo de vida limitado. - Para evitar bucles solo se reenvían los LSP con
número superior a los ya recibidos y que no están
expirados. - Cada LSP pasa una vez o a lo sumo dos veces (pero
no mas de dos) por el mismo enlace
33Reparto de LSPs de C por inundación
34Distribución de los LSPs en el router C
6
2
A
B
C
5
LSPs
A
B
D
E
G
G
F
2
1
2
1
2
4
F
D
E
Flags envío ACK
Flags envío LSP
Base de datos de LSPs en C
35Routing por estado del enlace
- Con routing por el estado del enlace cada nodo
conoce la topología de toda la red (no era así
con vector distancia). - La información sobre la red no se usa para
optimizar la distribución de LSPs (el algoritmo
fallaría) - 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
- IPX NLSP
36Routing jerárquico
- Problema los algoritmos de routing no son
escalables. La cantidad de información
intercambiada aumenta de forma no lineal con el
tamaño de la red. Lo mismo ocurre con la
complejidad de los cálculos (requerimientos de
CPU y memoria). - Solución crear regiones (niveles jerárquicos).
Solo algunos routers de cada región comunican con
el exterior. Las rutas son menos óptimas, pero se
reduce la información de routing. - Parecido a la forma como se organizan las rutas
en la red de carreteras (internacionales,
nacionales, regionales).
37Routing jerárquico
Tabla de vectores para 1A
Jerárquica
No jerárquica
Región 2
Región 1
Región 3
Región 5
Región 4
38Sumario
- Aspectos generales del nivel de red
- Algoritmos de routing
- Control de congestión
39Control de congestión
- Los tiempos de servicio aumentan de forma
dramática cuando una línea o un router se
aproxima a la saturación. - No es posible ocupar una línea (o un router) al
100 (tiempo de servicio infinito). - Los buffers grandes permiten no descartar
paquetes, pero aumentan el retardo. Esto puede
causar retransmisiones y generar aún más tráfico. - Cuando hay congestión severa el rendimiento
global disminuye.
40Efectos de la congestión en el tiempo de servicio
y el rendimiento
41Medicina (preventiva) anti-congestión
42Control de Admisión
Usuario Quiero enviar tráfico de este tipo y
quiero esta QoS
Red puedo soportar esto de forma fiable sin
perjudicar otros contratos?
Solicitud de QoS garantizada
No, o sí y pactar un contrato de tráfico
Host
Red
Si se supera el Control de Admisión (es decir si
se admite la petición) la red y el usuario pactan
un contrato de tráfico
43Como detectar la congestión
- A nivel de red
- Porcentaje de paquetes descartados
- Longitud media de las colas en las interfaces de
los routers - A nivel de transporte
- Retardo medio de los paquetes
- Desviación media del retardo (jitter)
- Porcentaje de paquetes perdidos (suponiendo que
no se debe a errores)
44Mecanismos para notificar situaciones de
congestión
() RED Random Early Discard
45Mecanismos de control de congestión
Implícitos
Descarte de paquetes, retardo
Explícitos
Binario, Credit Rate
Policing
Backpressure
Paquetes de alerta
46Medidas a adoptar ante una situación de congestión
- Reducir o congelar el envío de paquetes de los
hosts hasta que no haya congestión. - En algún caso los routers intermedios pueden
ayudar reteniendo parte de los paquetes en sus
buffers. - Descartar paquetes. A veces estos llevan alguna
indicación de su importancia para el descarte
(paquetes de 1ª y 2ª clase). - Se puede descartar inteligentemente, por ej. si
se descarta un fragmento de un paquete descartar
también los demás.
47Problemas del control de congestión
- Se pueden dar situaciones oscilantes que impidan
un aprovechamiento eficiente de los recursos
(todos los hosts bajan y suben el ritmo a la
vez). Para evitarlo se utiliza la técnica
denominada RED (Random Early Discard) - El uso de notificación explícita ad hoc puede
agravar aún más las cosas (generar tráfico extra
cuando más problema hay) - Algunos creen que la lucha contra la congestión
por mecanismos sofisticados (explícitos) es una
batalla perdida (los remedios llegarán demasiado
tarde para ser útiles).
48Redes oscilantes
LAN B
LAN A
Enlaces WAN
Una respuesta excesivamente rápida a la
congestión puede causar situaciones oscilantes
49Como evitar la oscilación
- Normalmente los parámetros se monitorizan con
fórmulas del tipo - un a un-1 (1-a) f
- Donde
- f valor instantáneo del parámetro medido
- un valor medio en la n-ésima iteración
- a constante para regular la inercia a los
cambios - El valor de a regula la inercia suelen ser
típicos valores de 3/4 y 7/8
50Aplicación de la fórmula un a un-1 (1-a) f
51Gráfico de la fórmula un a un-1 (1-a) f
52Perfil de tráfico y vigilancia
- Perfil de tráfico o conformado de tráfico
(traffic shaping) condiciones máximas de uso de
la red que el usuario se compromete a cumplir con
el proveedor del servicio. - Vigilancia de tráfico (traffic policing) labor
de monitorización que el proveedor realiza para
asegurarse que el usuario cumple su palabra. - Si el usuario incumple el proveedor puede
- Descartar el tráfico no conforme
- Marcarlo como de segunda clase y pasarlo a la
red, o - Pasarlo a la red sin mas (no es habitual)
53Traffic Shaping y Traffic Policing
Host
Switch
Shaper
Datos reales
Datos Conformados
Conformado de Tráfico Cumplir el contrato
Vigilancia de Tráfico Vigilar y obligar su
cumplimiento
- El tráfico recibido cumple el contrato?
- Si no cumple el policía puede
- Marcar como 2ª clase (bit CLP) las celdas
excedentes, o - Descartar las celdas excedentes
- Algoritmo del pozal agujereado
- Limitar pico y tamaño de ráfagas
54Pozal agujereado (leaky bucket)
- El pozal agujereado se utiliza para
- Suavizar las ráfagas que el usuario produce
(conformado de tráfico o traffic shaping) - Asegurar que el tráfico introducido se
corresponde con lo acordado (vigilancia de
tráfico o traffic policing) - Se define con dos parámetros
- ? caudal constante máximo que se puede inyectar
en la red (el agujero del pozal). Se expresa en
Mb/s - C buffer (la capacidad del pozal) que absorberá
las ráfagas que produzca. Se expresa en Mb - Si el buffer se llena el tráfico excedente se
considera no conforme. Normalmente se descarta o
se pasa como tráfico de segunda clase
(candidato a descartar).
55C (Mb)
? (Mb/s)
56Ejemplo de funcionamiento de un pozal agujereado
- Parámetros ? 20 Mb/s, C 10 Mbits
- Ráfaga de 10 Mbits recibida en 50 ms (equivalente
a 200 Mb/s)
Máximo
57Ejercicios
58Ejercicio 2
- EL pozal agujereado solo permite superar el
caudal medio durante breves momentos, ya que si
el pozal se llena el tráfico excedente se
desborda. Entonces como puede un PVC Frame Relay
transmitir durante horas por encima del CIR?
- Respuesta
- En FR existe un segundo pozal que recoge el
excedente del primero, saliendo con caudal igual
al EIR. Las tramas que salen por este llevan a 1
el bit DE por lo que pueden ser descartadas más
fácilmente.
59Ejercicio 4
128 Kb/s
B
A
Paquetes de 164 bytes (1312 bits) Audioconferencia
1 paquete cada 40 ms, 25 paquetes/s Calcular
caudal máximo para que el retardo no supere 80 ms
60Ejercicio 4
Aproximamos retardo a Tiempo de servicio, T. Por
teoría de colas T 1 / (?c - ?), donde ? 1
/ tamaño-paquete c velocidad del enlace
(bits/s) ?c capacidad del enlace
(paquetes/s) ? Caudal medio (paquetes/s) En
este caso ? 1 /1312 0,000762
paquetes/bit c 128.000 bits/s ?c 97,56
paquetes/s T ? 0,08 seg
61Ejercicio 4
El caudal máximo tolerable será el que dé T
0,08 seg. Cuando hay una audioconferencia en
marcha 0,08 1 / (97,56 x 25) 25 paquetes
producidos por la audioconferencia (32,8 Kb/s) x
paquetes producidos por otras aplicaciones
Despejando x 60,06 pps ? 78,8 Kb/s ? 61,6
ocupac. (49 Kb/s libres)
Para línea de 2048 Kb/s 0,08 1 / (1560,98 x
25) x 1523 pps ? 1998,8 Kb/s ? 97,6 ocupac.
(49 Kb/s libres)
62Ejercicio 4
100
75
61,6
50
Caudal ?
25
11
16
0
0
6
24
18
12
Hora del día ?