Title: Ampliacin Redes 41
1Tema 4Calidad de Servicio (QoS)
2Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
3Requerimientos de Calidad de Servicio de las
aplicaciones
() La fiabilidad alta en estas aplicaciones se
consigue automáticamente al utilizar el protocolo
de transporte TCP
4Congestión y Calidad de Servicio
- Sería muy fácil dar Calidad de Servicio si las
redes nunca se congestionaran. Para ello habría
que sobredimensionar todos los enlaces, cosa no
siempre posible o deseable. - Para dar QoS con congestión es preciso tener
mecanismos que permitan dar un trato distinto al
tráfico preferente y cumplir el SLA (Service
Level Agreement).
5Efectos de la congestión en el tiempo de servicio
y el rendimiento
Sin Congestión
Congestión Fuerte
Congestión Moderada
Sin Congestión
Congestión Fuerte
Congestión Moderada
Tiempo de Servicio
Rendimiento
Carga
Carga
QoS útil y viable
QoS inútil
QoS inviable
QoS útil y viable
QoS inútil
QoS inviable
6Calidad de Servicio (QoS)
- Decimos que una red o un proveedor ofrece
Calidad de Servicio o QoS (Quality of Service)
cuando se garantiza el valor de uno o varios de
los parámetros que definen la calidad de servicio
que ofrece la red. Si el proveedor no se
compromete en ningún parámetro decimos que lo que
ofrece un servicio best effort. - El contrato que especifica los parámetros de QoS
acordados entre el proveedor y el usuario
(cliente) se denomina SLA (Service Level
Agreement)
7Parámetros típicos de los SLAs
8Fluctuación del retardoJitter
Emisor
Receptor
Red
A
B
C
Emisor Transmite
t
A
B
C
Receptor Recibe
t
50 ms
50 ms
90 ms
Congestión
Red vacía
Retardo 70 ms ? 20 ms (retardo 70 ms, jitter
40 ms)
9Relación entre la probabilidad de llegada de los
datagramas y los parámetros del SLA
Probabilidad
El tiempo mínimo de propagación depende de las
características físicas de la red
Retardomínimo
Tiempo
Jitter
Retardomedio
Datagramas considerados perdidos por haberse
entregado demasiado tarde
10Reducción del Jitter
- La principal causa de jitter es la congestión
- Se puede reducir el jitter añadiendo un retardo
adicional en el lado del receptor. Por ejemplo
con un retardo de 70 ? 20 ms se puede asegurar
jitter 0 si se añade un retardo de 40 ms (90 ? 0
ms). - Para el retardo adicional el receptor ha de tener
un buffer suficientemente grande. - En algunas aplicaciones no es posible añadir
mucho retardo pues esto reduce la interactividad.
Ej. videoconferencia, telefonía por Internet
11 Calidad de Servicio Reserva o Prioridad?
- Existen dos posibles estrategias para dar trato
preferente a un usuario en una red - Carril BUS reservar capacidad para su uso
exclusivo. A veces se denomina QoS hard. Ej.
VCs ATM con categoría de servicio CBR - Ambulancia darle mayor prioridad que a otros
usuarios. A veces se denomina QoS soft.
Ejemplo Token Ring - Cada una tiene ventajas e inconvenientes.
12Reserva o Prioridad?
13Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
14QoS en LANs
- Desarrollos en 802.1p y 802.1Q
- Campo prioridad de tres bits. Hasta ocho niveles
posibles. Similar al campo prioridad de Token
Ring, pero incompatible. - No se ha extendido su uso. Dudosa utilidad dada
la posibilidad de sobredimensionar a bajo costo - Necesidad de acompañarlo de políticas de uso
(sistema de contabilidad/facturación).
15Etiquetado de tramas según 802.1Q
Trama 802.3
Trama 802.1Q
El Ethertype X8100 indica protocolo VLAN
Bits
1
3
12
Pri Prioridad (8 niveles posibles) CFI
Canonical Format Indicator (indica formato de
direcciones MAC) VLAN Ident. Identificador VLAN
(máximo 4096 en una misma red)
16Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
17Calidad de Servicio en Internet
- La congestión y la falta de QoS es el principal
problema de Internet actualmente. - TCP/IP fue diseñado para dar un servicio best
effort. - Existen aplicaciones que no pueden funcionar en
una red congestionada con best effort. Ej.
videoconferencia, VoIP (Voice Over IP), etc. - Se han hecho modificaciones a IP para que pueda
funcionar como una red con QoS
18Calidad de Servicio en Internet
El Santo Grial de las redes de computadores es
diseñar una red que tenga la flexibilidad y el
bajo costo de la Internet, pero que ofrezca las
garantías de calidad de servicio extremo a
extremo de la red telefónica. S. Keshav 'An
Engineering Approach to Computer Networking,
1997
19Calidad de servicio en Internet
- Se han desarrollado y estandarizado los dos
mecanismos de QoS, reserva y prioridad - IntServ (Integrated Services) y protocolo RSVP.
El usuario solicita de antemano los recursos que
necesita cada router del trayecto ha de tomar
nota y efectuar la reserva solicitada. - DiffServ (Differentiated Services). El usuario
marca los paquetes con un determinado nivel de
prioridad los routers van agregando las demandas
de los usuarios y propagándolas por el trayecto.
Esto le da al usuario una confianza razonable de
conseguir la QoS solicitada. - Ambos son compatibles y pueden coexistir
20Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
21Clasificación de las aplicaciones en IntServ
(Integrated Services)
22Tipos de servicio en IntServ
23Reparto de recursos en IntServ
Best Effort
Caudal ?
Carga controlada
Garantizado
Tiempo ?
24IntServ y RSVP
- Para ofrecer QoS IntServ se basa en la reserva
previa de recursos en todo el trayecto - Para esa reserva se emplea el protocolo RSVP
(Resource ReserVation Protocol) muy relacionado
con el modelo IntServ - Se supone que la reserva permitirá asegurar la
QoS solicitada (siempre y cuando la red tenga aún
recursos suficientes) - Normalmente la reserva se realiza para una
secuencia de datagramas relacionados entre sí,
que es lo que llamamos un flujo.
25Concepto de flujo
- Un flujo es una secuencia de datagramas que se
produce como resultado de una acción del usuario
y requiere la misma QoS - Un flujo es simplex (unidireccional)
- Un flujo es la entidad más pequeña a la que los
routers pueden aplicar una determinada QoS - Ejemplo una videoconferencia estaría formada por
cuatro flujos, dos en cada sentido, uno para el
audio y otro para el vídeo. - Los flujos pueden agruparse en clases todos los
flujos dentro de una misma clase reciben la misma
QoS.
26Flujos en una videoconferencia
A 147.156.135.22
B 158.42.35.13
Flujo vídeo A-gtB 147.156.135.222056 -gt
158.42.35.134065 Flujo audio A-gtB
147.156.135.223567 -gt 158.42.35.132843 Flujo
vídeo B-gtA 158.42.35.131734 -gt
147.156.135.226846 Flujo vídeo B-gtA
158.42.35.132492 -gt 147.156.135.225387
27Agrupación de flujos
Flujo rojo (128 Kb/s) 147.156.21.202038?158.
26.112.762127
Reserva total flujos de vídeo en sentido X ?Y
384 Kb/s
Vídeo 128 Kb/s IP 147.156.21.20 Puerto UDP 2038
IP 158.26.112.76 Puerto UDP 2127
X
Y
Flujo verde (256 Kb/s) 147.156.47.123124?158.2
6.36.975753
IP 158.26.36.97 Puerto UDP 5753
Vídeo 256 Kb/s IP 147.156. 47.12 Puerto UDP 3124
28Identificación de flujos
- En IPv4 se hace por
- Dirección IP de origen
- Puerto de origen
- Dirección IP de destino
- Puerto de destino
- Protocolo de transporte utilizado (TCP o UDP)
- En IPv6 la identificación puede hacerse como en
IPv4 o alternativamente usando el campo etiqueta
de flujo en vez de los números de puertos. Aún
no hay ninguna implementación de RSVP que utilice
la etiqueta de flujo.
29Que es RSVP?
- Reserva la capacidad solicitada por un flujo en
todos los routers del camino. - Es un protocolo de señalización (como el
utilizado para establecer SVCs en ATM). - Requiere guardar información de estado en todos
los routers del trayecto. Es un servicio
orientado a conexión. - Está pensado principalmente para tráfico
multicast - No es un protocolo de routing (de eso se ocupará
OSPF, IS-IS, PIM-SM, etc.
30Componentes de RSVP
- Para implementar RSVP los routers han de
incorporar cuatro elementos - Admission Control comprueba si la red tiene los
recursos suficientes para satisfacer la petición.
Equivalente al CAC (Connection Admission Control)
de ATM. - Policy Control determina si el usuario tiene los
permisos adecuados para la petición realizada
(por ejemplo si tiene crédito disponible). La
comprobación se puede realizar consultando una
base de datos mediante el protocolo COPS (Common
Open Policy Service) - Packet Classifier clasifica los paquetes en
categorías de acuerdo con la QoS a la que
pertenecen. Cada categoría tendrá una cola y un
espacio propio para buffers en el router. - Packet Scheduler organiza el envío de los
paquetes dentro de cada categoría (cada cola).
31RSVP (Cont.)
- RSVP reserva la capacidad solicitada en todos los
routers del camino. - Cada router ha de mantener el detalle de todas
las conexiones activas que pasan por él, y los
recursos que cada una ha reservado. El router
mantiene información de estado sobre cada flujo
que pasa por él. - Si no se pueden asegurar las condiciones pedidas
se rechaza la llamada (control de admisión)
32Problemas de IntServ/RSVP
- RSVP produjo una euforia inicial (1996-1997) que
luego dió paso a la decepción. - La razón principal fueron problemas de
escalabilidad debidos a la necesidad de mantener
información de estado en cada router. Esto hace
inviable usar RSVP en grandes redes, por ejemplo
en el core de Internet.
33Problema de escalabilidad de RSVP
Estos routers han de mantener información sobre
muchos flujos y por tanto mucha información de
estado
Core de Internet
34Problemas de IntServ/RSVP
- Los fabricantes de routers no han desarrollado
implementaciones eficientes de RSVP, debido al
elevado costo que tiene implementar en hardware
las funciones de mantenimiento de la información
de estado. - A pesar de todo RSVP/IntServ puede desempeñar un
papel en la red de acceso, donde los enlaces son
de baja capacidad y los routers soportan pocos
flujos. - Recientemente ha resurgido el interés por RSVP
por su aplicación en MPLS y funciones de
ingeniería de tráfico. En estos casos el número
de flujos no suele ser muy grande
35Funcionamiento de RSVP en Multicast
Emisor (flujo de 1,5 Mb/s)
1,5 Mb/s
- Las reservas se agregan a medida que ascienden en
el árbol multicast. - Así se optimiza el uso de la red (solo se reserva
una vez en cada tramo).
1,5 Mb/s
1,5 Mb/s
1,5 Mb/s
1,5 Mb/s
Receptor
Receptor
Receptor
36Problemas de RSVP en Multicast
- La combinación de Multicast y RSVP plantea
algunos problemas no resueltos, por ejemplo - Por cuenta de que receptor se efectúa el Policy
Control en la parte común del árbol? Si se
concede la reserva al primer solicitante, que
pasa cuando ese se borra del grupo y quedan otros
suscritos? Si no se le concede al primero, que
pasa si luego se le concede a otro solicitante? - Suponiendo que se cobre por el servicio A quién
se le factura el uso de la parte común? se
prorratea entre todos los usuarios activos en ese
momento? Eso significa que el precio cambiará con
el uso.
37RFCs sobre IntServ/RSVP
- RFC 1633 (6/1994) Integrated Services in the
Internet Architecture an Overview - RFC 2205 (9/1997) RSVP Version 1 Functional
Specification - RFC 2206 (9/1997) RSVP MIB using SMIv2
- RFC 2207 (9/1997) RSVP Extensions for IPSEC Data
Flows - RFC 2208 (9/1997) RSVP Version 1 Applicability
Statement Some Guidelines on Deployment - RFC 2209 (9/1997) RSVP Version 1 Message
Processing Rules - RFC 2210 (9/1997) The Use of RSVP with IETF
Integrated Services - RFC 2211 (9/1997) Servicio de carga controlada
- RFC 2212 (9/1997) Servicio Garantizado
- RFC 2213 (9/1997) Integrated Services Management
Information Base Using SMIv2 - RFC 2214 (9/1997) Integrated Services MIB
Guaranteed Service Extensions using SMIv2 - RFC 2215 (9/1997) General Characterization
Parameters for Integrated Services - RFC 2379 (8/1998) RSVP over ATM Implementation
Guidelines - RFC 2380 (8/1998) RSVP over ATM Implementation
Requirements - RFC 2382 (8/1998) A Framework for Integrated
Services and RSVP over ATM - RFC 2490 (1/1999) A Simulation Model for IP
Multicast with RSVP - RFC 2688 (9/1997) Integrated Services Mappings
for Low Speed Networks - RFC 2689 (9/1999) Providing Integrated Services
over Low-bitrate Links - RFC 2745 (1/2000) RSVP Diagnostic Messages
38Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
39Modelo DiffServ (Differentiated Services)
- Intenta evitar los problemas de escalabilidad que
plantea IntServ/RSVP. - Se basa en el marcado de paquetes únicamente. No
hay reserva de recursos por flujo, no hay
protocolo de señalización, no hay información de
estado en los routers. - Las garantías de calidad de servicio no son tan
severas como en IntServ pero en muchos casos se
consideran suficientes.
40DiffServ
- En vez de distinguir flujos individuales
clasifica los paquetes en categorías (según el
tipo de servicio solicitado). - A cada categoría le corresponde un SLA (Service
Level Agreement). Los usuarios pueden contratar o
solicitar un determinado caudal en la categoría
que deseen. - Los routers tratan cada paquete según su
categoría (que viene marcada en la cabecera del
paquete). El Policy Control/Admission Control
sólo se ha de efectuar en los routers de entrada
a la red del proveedor y en los que atraviesan
fronteras entre proveedores diferentes
(normalmente en las fronteras entre sistemas
autónomos).
41DiffServ
- La información se puede sumarizar fácilmente ya
que todos los flujos quedan clasificados en
alguna de las categorías existentes. - El número de categorías posibles es limitado e
independiente del número de flujos o usuarios
por tanto la complejidad es constante, no
proporcional al número de usuarios (decimos que
la arquitectura es escalable, o que escala
bien). - La información de QoS no está en los routers sino
que cabalga montada en los datagramas.
42Cabecera IPv4 antes de DiffServ
Cabecera IPv4 con DiffServ (RFC2474, 12/1998)
43Campo TOS (obsoleto)
Campo TOS
X
Precedencia
D
T
R
C
- Precedencia prioridad (ocho niveles)
- D,T,R,C flags para indicar la ruta que se quiere
utilizar - D Delay (mínimo retardo)
- T Throughput (máximo rendimiento)
- R Reliability (máxima fiabilidad)
- C Cost (mínimo costo)
- X bit reservado
44Campo DS (RFC 2474)
DSCP
CU
Campo DS
- DSCP Differentiated Services CodePoint. Seis
bits que indican el tratamiento que debe recibir
este paquete en los routers - CU Currently Unused (reservado). Este campo se
utiliza actualmente para control de congestión
45Campo DS en IPv6
- El campo DS, con igual longitud y formato que en
IPv4, se coloca en IPv6 sustituyendo al campo
prioridad (de 4 bits) y a los cuatro primeros
bits del campo etiqueta de flujo que se reduce
de 24 a 20 bits. - Los cambios no produjeron problemas ya que
ninguno de los dos campos (prioridad ni etiqueta
de flujo) se había utilizado.
46Cabecera IPv6 antes de DiffServ (RFC 1883)
Cabecera IPv6 con DiffServ (RFC2474, 12/1998)
47Aparición del campo DS en IPv4 e IPv6
IPv4 Antes
IPv4 e IPv6 Ahora
IPv6 Antes
Los tres primeros bits se interpretan como
prioridad en todos los casos
48Campo DSCP
- 6 bits 64 codepoints (categorías de tráfico)
diferentes. - De momento se han dividido en 3 grupos
En el grupo estándar los tres primeros bits (xxx)
indican la clase
49Tipos de Servicio en DiffServ
50Reparto de recursos en DiffServ
Best Effort sin prioridad
Best Effort con prioridad
Caudal ?
Assured Forwarding
Expedited Forwarding o Premium
Tiempo ?
51Servicio EF (Expedited Forwarding, RFC2598)
- Es el que da más seguridad (virtual leased
line). - Ofrece un SLA (Service Level Agreement) que
garantiza - Un caudal mínimo
- Una tasa máxima de pérdida de paquetes
- Un retardo máximo
- Un jitter máximo
- El valor DSCP es 101110
52Servicio AF (Assured Forwarding, RFC2597)
- Asegura un trato preferente, pero no garantiza
caudales, retardos, etc. - Se definen cuatro clases, pudiéndose asignar una
cantidad de recursos (ancho de banda y espacio en
buffers) diferente a cada una. - En cada clase se definen tres categorías de
descarte de paquetes (alta, media y baja). - DSCP cccdd0 (ccc clase, dd descarte)
53Codepoints del Servicio AF (RFC2597)
Mayor probabilidad de descarte
Menor probabilidad de descarte
Mayor prioridad
Menor prioridad
54Traffic Policing en Servicio AF
- En el servicio AF el usuario puede contratar con
el ISP un caudal para una clase determinada. - El ISP puede aplicar traffic policing sobre el
tráfico del usuario y si se excede jugar con los
bits de precedencia de descarte, usándolos de
forma parecida al bit DE de Frame Relay o al CLP
de ATM. En DiffServ se pueden fijar tres
categorías, en función de lo gorda que sea la
infracción.
55Otros codepoints
- Las clases 111 y 110 están reservadas para
paquetes de control de la red y protocolos de
routing - El DSCP 000000 es por defecto el servicio Best
Effort sin prioridad. - Otros DSCP de la clase 000 pueden usarse para
servicios Best Effort con prioridad.
56Valores de codepoint, campo DSCP
57Implementación de DiffServ en los routers
Identificar y separar tráfico en las diferentes
clases
Descartar tráfico que se comporta mal para
garantizar la integridad de la red
Marcar tráfico, si es necesario. Asigna al DSCP
el valor que corresponde
Priorizar, proteger y aislar tráfico
Controlar ráfagas y conformar tráfico
58Encolamiento de paquetes en los routers
Cola Expedited
Cola Assured 4
PQ
Cola Assured 3
WFQ
Línea de salida
Cola Assured 2
FWFQ
Cola Assured 1
Cola Best Effort
59DiffServ
- La información necesaria para aplicar el Policy
Control y Administrative Control es mantenida
para toda la red por un elemento denominado el
Bandwidth Broker (BB). - El BB es el encargado de realizar todos los
controles administrativos y gestionar los
recursos de red disponibles. El BB puede
intercambiar información con otros BB de otras
redes. - Los ISPs pueden acordar políticas de intercambio
mutuo.
60Arquitectura DiffServ
Bandwidth Brokers (control de admisión,
gestionar recursos de red, configurar routers
periféricos y fronterizos)
Origen
Destino
BB
BB
AS ISP 1
AS ISP 2
Routers core
Routers core
Router fronterizo entrante (classificar,
controlar, marcar aggregados)
Router fronterizo saliente(dosificar agregados)
Router periférico (controlar, marcar flujos)
Controlar traffic policing Dosificar traffic
shaping
61RFCs Modelo Diffserv
- RFC 2430 (10/1998) A Provider Architecture for
DiffServ and Traffic Eng. - RFC 2474 (12/1998) Definition of the DS field in
the IPv4 and IPv6 Headers - RFC 2475 (12/1998) An Architecture for
Differentiated Service - RFC 2597 (6/1999) Servicio Expedited Forwarding
- RFC 2598 (6/1999) Servicio Assured Forwarding
- RFC 2638 (7/1999) A Two-bit DiffServ
Architecture for the Internet - RFC 2963 (10/2000) A Rate Adaptive Shaper for
Differentiated Services - RFC 2983 (10/2000) Differentiated Services and
Tunnels - RFC 3086 (4/2001) Def. of DiffServ Per Domain
Behaviors Rules for Spec. - RFC 3270 (5/2002) MPLS Support of DiffServ
- RFC 3287 (7/2002) Remote Monitoring MIB
Extensions for DiffServ - RFC 3289 (5/2002) Management Information Base
for the DiffServ Architect.
62IntServ vs DiffServ
- IntServ fue desarrollado con anterioridad a
DiffServ. Sin embargo DiffServ se ha extendido
más que IntServ - DiffServ permite agregar flujos, el modelo es
escalable. - Debido a estas diferencias muchos fabricantes de
routers implementan versiones eficientes de
DiffServ, pero no de IntServ. - Actualmente muchos ISP implementan DiffServ.
- Qbone (red expermiental de QoS en Internet 2)
utiliza el modelo DiffServ.
63RSVP/IntServ vs DiffServ
RSVP/IntServ
- Información por flujo en cada router
- Problemas de escalabilidad
- Énfasis en multicast
DiffServ
BB
BB
- Cada red tiene un BB que gestiona sus recursos
- Recursos controlados en punto de acceso
- Paquetes clasificados por categorías
- Enfocado a tráfico agregado, no a flujos
64 Combinación de RSVP y DiffServ
RSVP
RSVP
DiffServ
RSVP
RSVP
En la periferia de la red el uso de RSVP no
plantea problemas y puede ser necesaria la
reserva estricta de recursos. En este caso el
router que conecta con el core traducirá la
petición al servicio DiffServ más parecido.
65Referencias QoS
- Quality of Service-Fact or Fiction? Geoff
Huston, Internet Protocol Journal Vol. 3 Nº 1.
http//www.cisco.com/warp/public/759/ipj_3-1/ipj_3
-1_qos.html - Intserv http//www.ietf.org/html.charters/intserv
-charter.html - RSVP http//www.ietf.org/html.charters/rsvp-chart
er.html . Ver también http//www.isi.edu/rsvp/pub
.html - Diffserv http//www.ietf.org/html.charters/diffse
rv-charter.html - Grupo de Trabajo QoS Internet2
http//www.internet2.edu/qos/wg - Qbone http//qbone.internet2.edu
- B. Teitelbaum Internet 2 Qbone A Test Bed for
Differentiated Services, http//www.isoc.org/inet
99/proceedings/4f/4f_1.htm - Proyecto Quantum http//www.dante.net/quantum
-
66Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
67Control de congestión en Internet
- El mecanismo tradicional de control de congestión
en IP es el control que ejerce TCP por medio del
slow-start. Este mecanismo solo actúa cuando ya
se ha perdido algún paquete - Cuando los routers empiezan a descartar por
llenado de buffers suelen descartar todos los
paquetes que les llegan. Esto hace que todas las
sesiones TCP ejecuten el slow-start y se cae en
un comportamiento oscilante. El rendimiento es
malo. - Se ha visto que el rendimiento global mejora si
se descartan algunos paquetes (al azar) bastante
antes de llenar los buffers. Esto obliga a
algunas sesiones a realizar el slow-start, pero
no todas a la vez. Esto se conoce como RED
(Random Early Detect o Random Early Discard)
68Mecanismos de Control de Congestión en Internet
69ECN en Internet
- El RFC 2481(1/1999) definió el uso de los dos
bits libres del campo DS para el subcampo ECN
(Explicit Congestion Notification). También se
añadieron dos flags en la cabecera TCP. Se
especificó como un protocolo Experimental - El RFC 3168 (7/2001) deja obsoleto al RFC 2481,
eleva el ECN al status de Standards Track y
aclara algunos puntos - Ya hay algunas implementaciones de ECN (Linux)
70Campo ECN en IP (RFC 3168)
DSCP
ECN
71Formato de los bytes 13 y 14 en la cabecera TCP
Antes de ECN
4 bits
6 bits
6 bits
Flags
Después de ECN
4 bits
4 bits
8 bits
Flags
CWR Congestion Window Reduced ECE ECN Echo
72Funcionamiento de IP y TCP con ECN
1 A envía un paquete a B IP ECN 10 TCP CWR
0, ECE 0
2 Router Y recibe el paquete, detecta congestión
y cambia ECN IP ECN 11
3 B recibe el paquete y detecta que ha habido
congestión en el camino (ECN 11)
1
2
3
A
B
X
Y
Z
4
5
4 TCP de B envía paquete de aviso a A IP ECN
10 TCP CWR 0, ECE 1
6
5 A recibe aviso de B (ECE 1)
7
6 TCP de A reduce su ventana y envía
confirmación a B indicando que ha recibido el
aviso IP ECN 10 TCP CWR 1, ECE 0
7 B recibe confirmación (CWR 1) y se queda
tranquilo (sabe que no ha de insistir con ECE 1)
73ECN en una red que engaña al host
1 A envía paquete a B IP ECN 10 TCP CWR
0, ECE 0
3 Router Z recibe paquete, pone ECN 10 y lo
envía a B
2 Router X pone ECN 00 y lo envía
Red del ISP
1
3
A
2
B
X
Y
Z
Router frontera de ISP
Router frontera de ISP
Host B nunca detecta congestión, por tanto nunca
pone a 1 flag ECE
Cuando router Y sufra congestión descartará
paquetes (nunca cambiará ECN pues la red no lo
soporta)
74ECN alternativo
- El caso alternativo funciona igual, salvo que el
host pone el segundo bit y el router el primero - Con dos posibles maneras de marcar el soporte de
congestión en el host resulta mucho más difícil
para el ISP engañar al usuario - Por ejemplo en el caso anterior el router Z no
sabe si ha de restaurar el ECN 10 o el 01.
Para saberlo tendría que preguntar al router de
entrada (X) y mantener ambos información de
estado para cada conexión TCP activa
75Funcionamiento de ECN
- El bit de congestión de ECN equivale en IP a
- El bit EFCI de ATM (bit intermedio del campo PTI,
EFCIExplicit Forward Congestion Indication) - El bit FECN (Forward Explicit Congestion
Notification) de Frame Relay
76Sumario
- Concepto de Calidad de Servicio
- Calidad de servicio en LANs
- Calidad de Servicio en Internet
- Modelo IntServ y protocolo RSVP
- Modelo DiffServ
- Control de congestión en Internet
- MPLS
77Policy routing El problema del pez
El ISP no puede controlar en X que solo vaya por
la ruta de alta capacidad el tráfico dirigido a
C desde A y no el de B
Enlaces de alta capacidad
Problema
Usuario A Tarifa premium
Y
A
Backbone del ISP
Usuario C
C
Z
X
V
Usuario B Tarifa normal
W
B
Enlaces de baja capacidad
Al crear diferentes PVCs el ISP puede separar
fácilmente el tráfico de A del de B
Solución ATM
PVC A-C
Usuario A Tarifa premium
Y
A
Backbone del ISP
X
Usuario C
C
Z
V
W
Usuario B Tarifa normal
B
Este es un ejemplo de lo que se denomina
Ingeniería de Tráfico
PVC B-C
78Problema de los routers IP
- Es difícil encaminar eficientemente los
datagramas cuando hay que respetar reglas
externas, ajenas a la dirección de destino, es
decir hay que hacer policy routing o
enrutamiento por políticas de uso - Resulta difícil hacer Gigarouters eficientes que
respeten el policy routing - Esto es especialmente crítico en los enlaces
troncales de las grandes redes. - ATM puede resolver el problema gracias a la
posibilidad de fijar la ruta de los datagramas
mediante el establecimiento del VC
79ATM vs IP
- Ventajas de ATM
- Rápida conmutación (consulta en tabla de VPI o
VPI/VCI) - Posibilidad de fijar la ruta según el origen
(ingeniería de tráfico)
- Inconvenientes de ATM
- SAR (segmentación y reensamblado). Solo se da en
el origen y destino. - Overhead (?13) debido al Cell tax (cabecera)
encapsulado AAL5, etc.
80MPLS
- MPLS (Multiprotocol Label Switching) intenta
conseguir las ventajas de ATM, pero sin sus
inconvenientes - Asigna a los datagramas de cada flujo una
etiqueta única que permite una conmutación rápida
en los routers intermedios (solo se mira la
etiqueta, no la dirección de destino) - Las principales aplicaciones de MPLS son
- Funciones de ingeniería de tráfico (a los flujos
de cada usuario se les asocia una etiqueta
diferente) - Policy Routing
- Servicios de VPN
- Servicios que requieren QoS
81Solución MPLS al problema del pez
Las etiquetas solo tienen significado local y
pueden cambiar a lo largo del trayecto (como los
VPI/VCI de ATM)
?
?
4
Usuario A Tarifa premium
5
?
Y
?
?
A
?
C
Usuario C
Z
X
3
7
?
?
?
2
Usuario B Tarifa normal
B
?
?
W
V
?
?
C ha de distinguir de algun modo los paquetes que
envía hacia A o B (puede usar subinterfaces
diferentes)
Los routers X y Z se encargan de etiquetar los
flujos según origen-destino
82Terminología MPLS
- FEC (Forwarding Equivalence Class) conjunto de
paquetes que entran en la red MPLS por la misma
interfaz, que reciben la misma etiqueta y por
tanto circulan por un mismo trayecto. Normalmente
se trata de datagramas que pertenecen a un mismo
flujo. Una FEC puede agrupar varios flujos, pero
un mismo flujo no puede pertenecer a más de una
FEC al mismo tiempo. - LSP (Label Switched Path) camino que siguen por
la red MPLS los paquetes que pertenecen a la
misma FEC. Es equivalente a un circuito virtual
en ATM o Frame Relay. - LSR (Label Switching Router) router que puede
encaminar paquetes en función del valor de la
etiqueta MPLS - LIB (Label Information Base) La tabla de
etiquetas que manejan los LSR. Relaciona la
pareja (interfaz de entrada - etiqueta de
entrada) con (interfaz de salida - etiqueta de
salida) - Los LSR pueden ser a su vez de varios tipos
- LSR Interior el que encamina paquetes dentro de
la red MPLS. Su misión es únicamente cambiar las
etiquetas para cada FEC según le indica su LIB - LSR Frontera de ingreso los que se encuentran en
la entrada del flujo a la red MPLS (al principio
del LSP). Se encargan de clasificar los paquetes
en FECs y poner las etiquetas correspondientes. - LSR Frontera de egreso Los que se encuentran a
la salida del flujo de la red MPLS (al final del
LSP). Se encargan de eliminar del paquete la
etiqueta MPLS, dejándolo tal como estaba al
principio
83Terminología MPLS
LSPs
LIB
FECs
Router IP ordinario (no MPLS enabled)
?
?
5
4
?
?
Y
?
?
A
Routers IP ordinarios (no MPLS enabled)
C
Z
?
X
7
3
?
?
?
?
2
?
B
?
W
V
LIB
LIB
LSR Frontera de ingreso
LSR Frontera de egreso
LSRs Interiores (V, W, Y)
84Creación de los LSP (Label Switched Path)
- Se puede hacer
- Por configuración, de forma estática (equivalente
a los PVCs en ATM) - Por un protocolo de señalización
- LDP Label Distribution Protocol
- RSVP mejorado
- El enrutamiento del LSP se hace en base a la
información que suministra el protocolo de
routing, normalmente IS-IS o (más raramente)
OSPF. - Siempre se usan algoritmos del estado del enlace,
que permiten conocer la ruta completa y por tanto
fijar reglas de ingeniería de tráfico. - Si una vez fijado el LSP falla algún enlace hay
que crear un nuevo LSP por otra ruta para poder
pasar tráfico
85Clasificación del tráfico en FECs
- Se puede efectuar en base a diferentes criterios,
como por ejemplo - Dirección IP de origen o destino (dirección de
host o de red) - Número de puerto de origen o destino (a nivel de
transporte) - Campo protocolo de IP (TCP UDP ICMP, etc.)
- Valor del campo DSCP de DiffServ
- Etiqueta de flujo en IPv6
86MPLS
- MPLS funciona sobre multitud de tecnologías de
nivel de enlace líneas dedicadas (PPP), LANs,
ATM o Frame Relay. - En ATM y Frame Relay la etiqueta MPLS ocupa el
lugar del campo VPI/VCI o en el DLCI - La etiqueta MPLS se coloca delante del paquete de
red y detrás de la cabecera de nivel de enlace. - Las etiquetas pueden anidarse, formando una pila.
Esto permite ir agregando (o segregando) flujos.
El mecanismo es escalable.
87Formato de la etiqueta MPLS
Bits ?
20
3
1
8
Etiqueta Exp S TTL
La etiqueta propiamente dicha que identifica una
FEC (con significado local) Bits para uso
experimental una propuesta es transmitir en
ellos información de DiffServ Vale 1 para la
primera entrada en la pila (la más antigua), cero
para el resto Contador del número de saltos.
Este campo reemplaza al TTL de la cabecera IP
durante el viaje del datagrama por la red MPLS.
88Situación de la etiqueta MPLS
PPP (Líneas dedicadas)
LANs (802.2)
Campo VPI/VCI
ATM
Cabecera ATM
Campo DLCI
Frame Relay
Cabecera Frame Relay
89Tratamiento del campo TTL
- Al entrar un paquete en la red MPLS el router de
ingreso inicializa el TTL de la etiqueta al mismo
valor que tiene en ese momento la cabecera IP - Durante el viaje del paquete por la red MPLS el
campo TTL de la etiqueta disminuye en uno por
cada salto. El de la cabecera IP no se modifica. - A la salida el router de egreso coloca en la
cabecera IP el valor del TLL que tenía la
etiqueta, menos uno - Si en algún momento el TTL vale 0 el paquete es
descartado - Si hay etiquetas apiladas solo cambia el TTL de
la etiqueta situada más arriba. Cuando se añade
una etiqueta hereda el valor de la anterior en la
pila, cuando se quita pasa su valor (menos uno) a
la que tenía debajo.
90Apilamiento de etiquetas en MPLS
IP (17)
Paquete IP (TTL)
IP (17)
Red MPLS ISP A
LSR de Ingreso 2º nivel
U
Etiqueta (TTL) de 1er nivel
2 (15)
LSR de Egreso 2º nivel
Etiqueta (TTL) de 2º nivel
4 (16)
7 (14)
V
Red MPLS ISP B
2 (15)
W
LSR de Ingreso 1er nivel
LSR Interior 1er nivel
LSR Interior 1er nivel
LSR de Egreso 1er nivel
7 (14)
X
2 (15)
Los routers U y Z han constituido un LSP con dos
LSR interiores, V e Y
2 (13)
Y
Red MPLS ISP C
Para el ISP B parece como si V e Y fueran routers
IP ordinarios (no MPLS enabled)
8 (12)
Los routers V e Y están enlazados por un LSP que
ha creado el ISP B. V e Y no ven las etiquetas
rojas que manejan W y X
Z
En cierto modo es como si entre V e Y se hubiera
hecho un túnel que atravesara W y X
IP (11)
91Aplicaciones de MPLS
- Redes de alto rendimiento las decisiones de
encaminamiento que han de tomar los routers MPLS
en base a la LIB son mucho más sencillas y
rápidas que las que toma un router IP ordinario
(la LIB es mucho más pequeña que una tabla de
rutas normal). La anidación de etiquetas permite
agregar flujos con mucha facilidad, por lo que el
mecanismo es escalable. - Ingeniería de Tráfico se conoce con este nombre
la planificación de rutas en una red en base a
previsiones y estimaciones a largo plazo con el
fin de optimizar los recursos y reducir
congestión. - QoS es posible asignar a un cliente o a un tipo
de tráfico una FEC a la que se asocie un LSP que
discurra por enlaces con bajo nivel de carga. - VPN la posibilidad de crear y anidar LSPs da
gran versatilidad a MPLS y hace muy sencilla la
creación de VPNs. - Soporte multiprotocolo los LSPs son válidos para
múltiples protocolos, ya que el encaminamiento de
los paquetes se realiza en base a la etiqueta
MPLS estándar, no a la cabecera de nivel de red.
92RFCs MPLS
- RFC 2702 (9/1999) Requirements for Traffic
Engineering Over MPLS - RFC 2917 (9/2000) A Core MPLS IP VPN
Architecture - RFC 3031 (1/2001) MPLS Architecture
- RFC 3032 (1/2001) MPLS Label Stack Encoding
- RFC 3035 (1/2001) MPLS using LDP and ATM VC
Switching - RFC 3036 (1/2001) LDP (Label Distribution
Protocol) Specification - RFC 3063 (2/2001) MPLS Loop Prevention Mechanism
- RFC 3270 (5/2002) MPLS Support of DiffServ
- RFC 3346 (8/2002) Applicability Statement for
Traffic Engineering with MPLS - RFC 3353 (8/2002) Overview of IP Multicast in a
MPLS Environment
93Referencias MPLS
- MPLS Forum http//www.mplsforum.org/
- MPLS Resource Center http//www.mplsrc.com/
- MPLS Working Group http//www.ietf.org/html.chart
ers/mpls-charter.html - Proyecto MPLS for Linux http//sourceforge.net/pr
ojects/mpls-linux/ - MPLS. William Stallings, Internet Protocol
Journal Vo. 4 Nº 3 http//www.cisco.com/warp/publi
c/759/ipj_4-3/ipj_4-3_mpls.html - MPLS Una arquitectura de backbone para la
Internet del siglo XXI. José Barberá, Boletín
RedIRIS Nº 53, septiembre 2000.
http//www.rediris.es/rediris/boletin/53/enfoque1.
html - Red MPLS de ONO (Telia) en España
http//www.microsoft.com/spain/download/technet/6
onoTechnnet_2001.ppt