2. Ampliación Redes 4-2
Sumario
• 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
3. Ampliación Redes 4-3
Requerimientos de Calidad de
Servicio de las aplicaciones
Aplicación Fiabilidad Retardo Jitter Ancho de Banda
Correo electrónico Alta (*) Alto Alto Bajo
Transferencia de ficheros Alta (*) Alto Alto Medio
Acceso Web Alta (*) Medio Alto Medio
Login remoto Alta (*) Medio Medio Bajo
Audio bajo demanda Media Alto Medio Medio
Vídeo bajo demanda Media Alto Medio Alto
Telefonía Media Bajo Bajo Bajo
Vídeoconferencia Media Bajo Bajo Alto
(*) La fiabilidad alta en estas aplicaciones se consigue automáticamente al
utilizar el protocolo de transporte TCP
4. Ampliación Redes 4-4
Congestió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).
5. Ampliación Redes 4-5
Efectos de la congestión en el tiempo
de servicio y el rendimiento
Rendimiento
Sin
Congestión
Congestión
Fuerte
Congestión
Moderada
QoS útil
y viable
QoS inútil QoS inviable
Sin
Congestión
Congestión
Fuerte
Congestión
Moderada
TiempodeServicio
Carga
QoS útil
y viable
QoS inútil QoS inviable
Carga
6. Ampliación Redes 4-6
Calidad 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)
7. Ampliación Redes 4-7
Parámetros típicos de los SLAs
Parámetro Significado Ejemplo
Disponibilida
d
Tiempo mínimo que el operador
asegura que la red estará en funcionamiento
99,9%
Ancho de
Banda
Indica el ancho de banda mínimo que el operador
garantiza al usuario dentro de su red
2 Mb/s
Pérdida de
paquetes
Máximo de paquetes perdidos (siempre y cuando
el usuario no exceda el caudal garantizado)
0,1%
Round Trip
Delay
El retardo de ida y vuelta medio de los paquetes 80 mseg
Jitter La fluctuación que se puede producir en el
retardo de ida y vuelta medio
± 20 mseg
8. Ampliación Redes 4-8
Fluctuación del retardo—“Jitter”
t
t
Emisor Transmite
Receptor Recibe
A B C
A B C
50 ms
Emisor Receptor
Red
50 ms 90 ms
Congestión
Retardo: 70 ms ± 20 ms (retardo: 70 ms, jitter: 40 ms)
Red vacía
9. Ampliación Redes 4-9
Jitter
Retardo
medio Datagramas considerados
perdidos por haberse
entregado demasiado tarde
Retardo
mínimo
El tiempo mínimo de
propagación
depende de las
características
físicas de la red
Relación entre la probabilidad de llegada de
los datagramas y los parámetros del SLA
Probabilidad
Tiempo
10. Ampliación Redes 4-10
Reducció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. Ampliación Redes 4-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.
12. Ampliación Redes 4-12
¿Reserva o Prioridad?
Ventajas Inconvenientes
Reserva •Da una garantía casi total
•Los paquetes no necesitan
llevar ninguna marca que
indique como han de ser
tratados, la información la
tienen los routers
•Requiere mantener información de
estado en todos los routers por lo
que pasa la comunicación
•Se requiere un protocolo de
señalización para efectuar la reserva
en todo el trayecto
Prioridad •Los routers no necesitan
conservar información de
estado.
•Los paquetes han de ir marcados
con la prioridad que les corresponde
•La garantía se basa en factores
estadísticos, es menos segura que
la reserva de recursos (puede haber
overbooking)
13. Ampliación Redes 4-13
Sumario
• 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
14. Ampliación Redes 4-14
QoS 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).
15. Ampliación Redes 4-15
Dir. MAC
Destino
Dir.
MAC Origen
Ethertype/
Longitud Datos
Relleno
(opcional) CRC
Etiquetado de tramas según 802.1Q
Dir. MAC
Destino
Dir.
MAC Origen
X’8100’ Tag Ethertype/
Longitud Datos
Relleno
(opcional) CRC
Trama
802.3
Trama
802.1Q
Pri CFI VLAN
Ident.
El Ethertype X’8100’
indica ‘protocolo’ VLAN
Bits 13 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)
16. Ampliación Redes 4-16
Sumario
• 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
17. Ampliación Redes 4-17
Calidad 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
18. Ampliación Redes 4-18
“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
Calidad de Servicio en Internet
19. Ampliación Redes 4-19
Calidad 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
20. Ampliación Redes 4-20
Sumario
• 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
21. Ampliación Redes 4-21
Clasificación de las aplicaciones en
IntServ (Integrated Services)
Tolerantes a pérdidas Intolerantes a
pérdidas
Elásticas Datos UDP: DNS,
SNMP, NTP, etc.
Datos sobre TCP:
FTP, Web,e-mail, etc.
Tiempo
Real
Flujos Multimedia en
modo ‘streaming’,
videoconferencia,
telefonía sobre Internet,
etc.
Emulación de
circuitos (simulación
de líneas dedicadas)
22. Ampliación Redes 4-22
Tipos de servicio en IntServ
Servicio Características Equivalencia
en ATM
Garantizado •Garantiza un caudal mínimo y un
retardo máximo
•Cada router del trayecto debe dar
garantías
•A veces no puede implementarse por
limitaciones del medio físico (Ej. Ethernet
compartida
CBR
VBR-rt
Carga Controlada
(‘Controlled
Load’)
•Calidad similar a la de una red de
datagramas poco cargada
•Se supone que el retardo es bajo, pero
no se dan garantías
VBR-nrt
‘Best Effort’ •Ninguna garantía (como antes sin QoS) UBR
24. Ampliación Redes 4-24
IntServ 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.
25. Ampliación Redes 4-25
Concepto 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.
26. Ampliación Redes 4-26
A
147.156.135.22
B
158.42.35.13
Flujo vídeo A->B: 147.156.135.22:2056 -> 158.42.35.13:4065
Flujo audio A->B: 147.156.135.22:3567 -> 158.42.35.13:2843
Flujo vídeo B->A: 158.42.35.13:1734 -> 147.156.135.22:6846
Flujo vídeo B->A: 158.42.35.13:2492 -> 147.156.135.22:5387
Flujos en una videoconferencia
27. Ampliación Redes 4-27
Vídeo 128 Kb/s
IP: 147.156.21.20
Puerto UDP: 2038
Vídeo 256 Kb/s
IP: 147.156. 47.12
Puerto UDP: 3124
IP: 158.26.36.97
Puerto UDP: 5753
IP: 158.26.112.76
Puerto UDP: 2127
Flujo ‘rojo’ (128 Kb/s):
147.156.21.20:2038→158.26.112.76:2127
Flujo ‘verde’ (256 Kb/s):
147.156.47.12:3124→158.26.36.97:5753
Reserva total flujos de vídeo:
en sentido X →Y: 384 Kb/s
X Y
Agrupación de flujos
28. Ampliación Redes 4-28
Identificació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.
29. Ampliación Redes 4-29
¿Que 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.
30. Ampliación Redes 4-30
Componentes 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).
31. Ampliación Redes 4-31
RSVP (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)
32. Ampliación Redes 4-32
Problemas 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.
33. Ampliación Redes 4-33
Problema 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
34. Ampliación Redes 4-34
Problemas 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
35. Ampliación Redes 4-35
Emisor
(flujo de 1,5 Mb/s)
Receptor Receptor Receptor
Funcionamiento de RSVP en Multicast
•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
1,5 Mb/s
36. Ampliación Redes 4-36
Problemas 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.
37. Ampliación Redes 4-37
RFCs 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
• RFC 2746 (1/2000): RSVP Operation over IP Tunnels
• RFC 2747 (1/2000): RSVP Cryptographic Authentication
• RFC 2748 (1/2000): The COPS (Common Open Policy Service) Protocol
• RFC 2749 (1/2000): COPS usage for RSVP
• RFC 2750 (1/2000): RSVP Extensions for Policy Control
• RFC 2752 (1/2000): Identity Representation for RSVP
• RFC 2814 (5/2000): Subnet Bandwidth Manager (para RSVP Admis. Ctrl)
• RFC 2815 (5/2000): Integrated Service Mappings on IEEE 802 Networks
• RFC 2816 (5/2000): A Framework for Integrated Services Over Shared and Switched IEEE 802 LAN Technologies
• RFC 2872 (6/2000): Appl. and Sub Appl. Ident. Policy Elem. for RSVP
• RFC 2961 (4/2001): RSVP Refresh Overhead Reduction Extensions
• RFC 2996 (11/2000): Format of the RSVP DCLASS Object
• RFC 2998 (11/2000): A Framework for Integarted Services Operation over Diffserv Networks
• RFC 3006 (11/2000): Integrated Services in the Presence of Compressible Flows
• RFC 3097 (4/2001): RSVP Cryptographic Authentication
• RFC 3175 (9/2001): Aggregation of RSVP for IPv4 and IPv6 Reservations
• RFC 3182 (10/2001): Identity Representation for RSVP
• RFC 3209 (12/2001): RSVP-TE: Extensions to RSVP for LSP Tunnels
• RFC 3210 (12/2001): Applicability Statement for Extensions to RSVP for LSP-Tunnels
38. Ampliación Redes 4-38
Sumario
• 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
39. Ampliación Redes 4-39
Modelo 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.
40. Ampliación Redes 4-40
DiffServ
• 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).
41. Ampliación Redes 4-41
DiffServ
• 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.
42. Ampliación Redes 4-42
Version Lon.Cab. TOS Longitud total
Identificación X D
F
M
F
Desplazamiento
fragmento
Tiempo de vida Protocolo Checksum
Dirección de origen
Dirección de destino
Opciones
Cabecera IPv4 antes de DiffServ
Version Lon.Cab. DS Longitud total
Identificación X D
F
M
F
Desplazamiento
fragmento
Tiempo de vida Protocolo Checksum
Dirección de origen
Dirección de destino
Opciones
Cabecera IPv4 con DiffServ (RFC2474, 12/1998)
43. Ampliación Redes 4-43
Campo TOS (obsoleto)
• 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
PrecedenciaPrecedencia
CampoCampo
TOSTOS
DD TT RR CC XX
44. Ampliación Redes 4-44
Campo DS (RFC 2474)
• 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
DSCPDSCP CUCUCampo DSCampo DS
45. Ampliación Redes 4-45
Campo 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.
46. Ampliación Redes 4-46
Versión Prior. Etiqueta de flujo
Longitud de carga útil Sig. Cabecera Límite saltos
Dirección de origen
(16 bytes)
Dirección de destino
(16 bytes)
Versión DS Etiqueta de flujo
Longitud de carga útil Sig. Cabecera Límite saltos
Dirección de origen
(16 bytes)
Dirección de destino
(16 bytes)
Cabecera IPv6 antes de DiffServ (RFC 1883)
Cabecera IPv6 con DiffServ (RFC2474, 12/1998)
47. Ampliación Redes 4-47
DSCPDSCP CUCU
PrecedenciaPrecedencia DD TT RR CC
XX
PrioridadPrioridad Etiq. de Flujo (1-4)Etiq. de Flujo (1-4)
IPv4
Antes
IPv6
Antes
IPv4 e IPv6
Ahora
Aparición del campo DS en IPv4 e IPv6
Los tres primeros bits se interpretan
como prioridad en todos los casos
48. Ampliación Redes 4-48
Campo DSCP
• 6 bits = 64 ‘codepoints’ (categorías de tráfico) diferentes.
• De momento se han dividido en 3 grupos:
Codepoint Valores Uso
xxxyy0 32 Estándar
xxxx11 16 Local/experimental
xxxx01 16 Reservado
En el grupo estándar los tres primeros bits (xxx) indican
la clase
49. Ampliación Redes 4-49
Tipos de Servicio en DiffServ
Servicio Características Equivalencia
en ATM
‘Expedited
Forwarding’ o
‘Premium’
•Es el que da más garantías. Equivale a
una línea dedicada
•Garantiza Caudal, tasa de pérdidas,
retardo y jitter
•Valor 101110 en DSCP
CBR
VBR-rt
‘Assured
Forwarding’
•Asegura un trato preferente, pero sin fijar
garantías (no hay SLA)
•Se definen cuatro clases y en cada una
tres niveles de descarte de paquetes
VBR-nrt
‘Best Effort’
con prioridad
•Sin garantías, pero obtendrá trato
preferente frente a ‘best effort sin prioridad’
ABR
‘Best Effort’ sin
prioridad
•Ninguna garantía, obtiene solo las migajas UBR
50. Ampliación Redes 4-50
Expedited Forwarding o Premium
Assured Forwarding
Best Effort sin prioridad
Caudal→
Reparto de recursos en DiffServ
Tiempo →
Best Effort con prioridad
51. Ampliación Redes 4-51
Servicio 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”
52. Ampliación Redes 4-52
Servicio 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)
53. Ampliación Redes 4-53
Codepoints del Servicio AF (RFC2597)
Precedencia de descarte
‘dd’
Clase
‘ccc’
Baja
’01’
Media
’10’
Alta
’11’
4
‘100’
10001 10010 10011
3
‘011’
01101 01110 01111
2
‘010’
01001 01010 01011
1
‘001’
00101 00110 00111
Mayor prioridad
Menor prioridad
Mayor probabilidad
de descarte
Menor probabilidad
de descarte
54. Ampliación Redes 4-54
Traffic 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.
55. Ampliación Redes 4-55
Otros ‘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.
56. Ampliación Redes 4-56
111110 Reservado (routing y control)
111100 Reservado (routing y control)
111010 Reservado (routing y control)
111000 Reservado (routing y control)
110110 Reservado (routing y control)
110100 Reservado (routing y control)
110010 Reservado (routing y control)
110000 Reservado (routing y control)
101110 Expedited (Premium)
101100 Configurable por el usuario
101010 Configurable por el usuario
101000 Configurable por el usuario
100110 Assured Clase 4 Preced. Alta
100100 Assured Clase 4 Preced.
Media
100010 Assured Clase 4 Preced. Baja
100000 Configurable por el usuario
011110 Assured Clase 3 Preced. Alta
011100 Assured Clase 3 Preced.
Media
011010 Assured Clase 3 Preced. Baja
011000 Configurable por el usuario
010110 Assured Clase 2 Preced. Alta
010100 Assured Clase 2 Preced.
Media
010010 Assured Clase 2 Preced. Baja
010000 Configurable por el usuario
001110 Assured Clase 1 Preced. Alta
001100 Assured Clase 1 Preced.
Media
001010 Assured Clase 1 Preced. Baja
001000 Configurable por el usuario
000110 Configurable por el usuario
000100 Configurable por el usuario
000010 Configurable por el usuario
000000 Best Effort (default)
Valores de ‘codepoint’, campo DSCP
57. Ampliación Redes 4-57
Implementació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
58. Ampliación Redes 4-58
Encolamiento de paquetes en los routers
Cola ‘Expedited’
Cola ‘Assured 4’
Cola ‘Assured 3’
Cola ‘Assured 2’
Cola ‘Assured 1’
Cola ‘Best Effort’
PQ
WFQ
FWFQ
Línea de salida
59. Ampliación Redes 4-59
DiffServ
• 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.
60. Ampliación Redes 4-60
Arquitectura DiffServ
Router perifé rico
(controlar, marcar flujos)
Router fronterizo
entrante
(classificar, controlar,
marcar aggregados)
Router fronterizo
saliente
(dosificar agregados)
Routers
‘core’
Routers
‘core’
Bandwidth Brokers
(control de admisió n,
gestionar recursos de red, configurar
routers perifé ricos y fronterizos)
BB BB
Origen Destino
Controlar = traffic policing
Dosificar = traffic shaping
AS
ISP 1
AS
ISP 2
61. Ampliación Redes 4-61
RFCs 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.
62. Ampliación Redes 4-62
IntServ 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.
63. Ampliación Redes 4-63
RSVP/IntServ
RSVP/IntServ vs DiffServ
BB BB
•Información por flujo en cada router
•Problemas de escalabilidad
•Énfasis en multicast
DiffServ
•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. Ampliación Redes 4-64
Combinación de RSVP y DiffServ
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.
DiffServ
RSVP RSVP
RSVP RSVP
65. Ampliación Redes 4-65
Referencias 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-charter.html . Ver
también: http://www.isi.edu/rsvp/pub.html
• Diffserv: http://www.ietf.org/html.charters/diffserv-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/inet99/proceedings/4f/4f_1.htm
• Proyecto Quantum: http://www.dante.net/quantum
66. Ampliación Redes 4-66
Sumario
• 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
67. Ampliación Redes 4-67
Control 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)
68. Ampliación Redes 4-68
Mecanismos de Control de
Congestión en Internet
Mecanismo Consiste en: Aplicado a
nivel de:
Slow Start Cuando un host detecta pérdidas
reduce el ritmo y se autocontrola.
Transporte (TCP)
RED (Random
Early Detect)
Cuando los routers detectan
congestión descartan paquetes al
azar. Los hosts reducen el ritmo.
Red (IP)
ECN (Explicit
Congestion
Notification)
Cuando los routers detectan
congestión notifican a los hosts para
que reduzcan el ritmo.
Red (IP) y
Transporte (TCP)
69. Ampliación Redes 4-69
ECN 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)
70. Ampliación Redes 4-70
DSCPDSCP
Campo ECN en IP (RFC 3168)
ECNECN
ECN Significado
00 El Host emisor no soporta ECN.
01 El Host emisor soporta ECN (caso alternativo).
10 El Host emisor soporta ECN (caso normal).
11 El Host soporta ECN. La red ha marcado
congestión.
71. Ampliación Redes 4-71
Long.
Cabecera
Reservado C
W
R
E
C
E
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Formato de los bytes 13 y 14
en la cabecera TCP
Antes de ECN:
Long.
Cabecera
Reservado U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
4 bits 6 bits
4 bits 4 bits
Después de ECN:
CWR: Congestion Window Reduced
ECE: ECN Echo
6 bits
8 bits
Flags
Flags
72. Ampliación Redes 4-72
1
1: A envía un paquete a
B
IP: ECN = ’10’
TCP: CWR = 0, ECE = 0
A 2
2: Router Y recibe el
paquete, detecta
congestión y cambia ECN
IP: ECN = ’11’
B
X Y Z
3
3: B recibe el paquete y
detecta que ha habido
congestión en el camino
(ECN = ’11’)
4
4: TCP de B envía
paquete de aviso a A
IP: ECN = ’10’
TCP: CWR = 0, ECE = 1
5
5: A recibe aviso
de B (ECE = 1)
6
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
7: B recibe confirmación
(CWR = 1) y se queda
tranquilo (sabe que no ha de
insistir con ECE = 1)
Funcionamiento de IP y TCP con ECN
73. Ampliación Redes 4-73
1
1: A envía paquete a B
IP: ECN = ’10’
TCP: CWR = 0, ECE = 0
A 2
2: Router X pone
ECN = ’00’ y lo envía
B
X Y Z
3
3: Router Z recibe
paquete, pone ECN = ’10’
y lo envía a B
Host B nunca detecta
congestión, por tanto
nunca pone a 1 flag
ECE
ECN en una red que ‘engaña’ al host
Router
frontera
de ISP
Router
frontera
de ISP
Cuando router Y sufra
congestión descartará
paquetes (nunca
cambiará ECN pues la
red no lo soporta)
Red del ISP
74. Ampliación Redes 4-74
ECN 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
75. Ampliación Redes 4-75
Funcionamiento de ECN
• El bit de congestión de ECN equivale en IP
a:
– El bit EFCI de ATM (bit intermedio del campo
PTI, EFCI=Explicit Forward Congestion
Indication)
– El bit FECN (Forward Explicit Congestion
Notification) de Frame Relay
76. Ampliación Redes 4-76
Sumario
• 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
77. Ampliación Redes 4-77
Policy routing: El problema del ‘pez’
Backbone
del ISP
Usuario A
Tarifa premium
Usuario B
Tarifa normal
Usuario C
Usuario A
Tarifa premium
Usuario B
Tarifa normal
Usuario C
Problema:
Solución ATM:
Enlaces de alta capacidad
Enlaces de baja capacidad
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
A
B
X
A
B
X
C
C
Backbone
del ISP
Al crear diferentes
PVCs el ISP puede
separar fácilmente el
tráfico de A del de B
Este es un ejemplo de lo
que se denomina
‘Ingeniería de Tráfico’
PVC A-C
PVC B-C
Y
Z
V W
Z
Y
V W
78. Ampliación Redes 4-78
Problema 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
79. Ampliación Redes 4-79
ATM 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.
80. Ampliación Redes 4-80
MPLS
• 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
81. Ampliación Redes 4-81
Solución MPLS al problema del pez
Usuario A
Tarifa premium
Usuario B
Tarifa normal
Usuario C
α β
γδ
α - β 5
δ - γ 3
α β
α 5 β 4
α
β α β
α 3 β 2 α 2 β 7
α β
γ
α 4 β -
γ 7 β -
Los routers X y Z se
encargan de etiquetar los
flujos según origen-destino
5 4
3
2
7
A
B
X
C
Y
Z
V W
C ha de distinguir de
algun modo los paquetes
que envía hacia A o B
(puede usar
subinterfaces diferentes)
Las etiquetas solo
tienen significado
local y pueden
cambiar a lo largo del
trayecto (como los
VPI/VCI de ATM)
82. Ampliación Redes 4-82
Terminologí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
83. Ampliación Redes 4-83
Terminología MPLS
α β
γ
δ
α - β 5
δ - γ 3
α β
α 5 β 4
α
β α
β
α 3 β 2 α 2 β 7
α
β
γ
α 4 β -
γ 7 β -
5 4
3
2
7
A
B
X
C
Y
Z
V W
LSR Frontera de ingreso LSR Frontera de egreso
LSRs Interiores (V, W, Y)
LSPs
LIB
LIB LIB
FECs
Routers IP
ordinarios (no
MPLS ‘enabled’)
Router IP ordinario
(no MPLS ‘enabled’)
84. Ampliación Redes 4-84
Creació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
85. Ampliación Redes 4-85
Clasificació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
86. Ampliación Redes 4-86
MPLS
• 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.
87. Ampliación Redes 4-87
Etiqueta Exp S TTL
Bits → 20 3 1 8
Formato de la etiqueta MPLS
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.
88. Ampliación Redes 4-88
Situación de la etiqueta MPLS
Cabecer
aPPP
Pila de
etiquetas MPLS
Cabecera
IP
Dato
s
Cola PPP
Cabecer
a MAC
Cabecer
aLLC
Pila de
etiquetas MPLS
Cabecera
IP
Dato
s
Cola MAC
Etiqueta
MPLS
Superior
Resto de
etiquetas MPLS
Cabecera
IP
Dato
s
Etiqueta
MPLS
Superior
Resto de
etiquetas MPLS
Cabecera
IP
Datos Cola
Frame
Relay
Cabecera Frame Relay
Campo DLCI
Cabecera ATM
Campo VPI/VCI
PPP
(Líneas dedicadas)
LANs (802.2)
ATM
Frame Relay
89. Ampliación Redes 4-89
Tratamiento 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.
90. Ampliación Redes 4-90
Red MPLS
ISP A
Red MPLS
ISP B
Red MPLS
ISP C
4 (16)
8 (12)
2 (15)
2 (13)
2 (15)
7 (14)
LSR de Ingreso
1er
nivel
LSR Interior
1er
nivel
LSR Interior
1er
nivel LSR de Egreso
1er
nivel
LSR de Egreso
2º nivel
LSR de Ingreso
2º nivel
V
W
X
Y
Z
U
Los routers U y Z han constituido un
LSP con dos LSR interiores, V e Y
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
Para el ISP B parece como si V e Y fueran
routers IP ordinarios (no MPLS ‘enabled’)
2 (15)
7 (14) Etiqueta (TTL) de 2º nivel
Etiqueta (TTL) de 1er
nivel
En cierto modo es como si entre V e Y se hubiera hecho un túnel que atravesara W y X
Apilamiento de etiquetas en MPLS
IP (17)
IP (11)
IP (17) Paquete IP (TTL)
91. Ampliación Redes 4-91
Aplicaciones 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.
92. Ampliación Redes 4-92
RFCs 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
93. Ampliación Redes 4-93
Referencias MPLS
• MPLS Forum: http://www.mplsforum.org/
• MPLS Resource Center: http://www.mplsrc.com/
• MPLS Working Group: http://www.ietf.org/html.charters/mpls-
charter.html
• Proyecto MPLS for Linux: http://sourceforge.net/projects/mpls-linux/
• ‘MPLS’. William Stallings, Internet Protocol Journal Vo. 4 Nº 3
http://www.cisco.com/warp/public/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/6onoTechnnet_200
1.ppt
Notas del editor
Es bien sabido que incluso desde una perspectiva de optimizar el uso global de los recursos no es deseable una excesiva carga en los enlaces. Cuando la carga aumenta el tiempo de servicio crece de forma exponencial y como consecuencia de esto las aplicaciones no pueden funcionar o retransmiten la información que creían perdida. Por tanto a partir de un cierto nivel de carga no solo crece el tiempo de servicio, sino que disminuye el rendimiento obtenido del enlace debido a las retransmisiones.
El objetivo de la Calidad de Servicio es asegurar que en casos de carga relativamente elevada (la zona marcada como de ‘congestión moderada’ en la gráfica) las aplicaciones que lo requieran podrán disfrutar de un tiempo de servicio reducido. Si la red tiene siempre niveles de carga inferiores el funcionamiento se complica y no se obtiene beneficio al aplicar mecanismos de Calidad de Servicio. Si la red tiene normalmente niveles fuertes de congestión los mecanismos de Calidad de Servicio difícilmente serán capaces de asegurar el nivel de calidad pedido a las aplicaciones que así lo requieran.
La reserva de capacidad supone una garantía casi total, ya que la disponibilidad de recursos se comprueba en el momento de solicitar la comunicación y si no es posible la conexión se rechaza. Sin embargo es técnicamente muy compleja de implementar en grandes redes, ya que cada router ha de tomar nota de cada reserva que se realiza a través suyo.
Por el contrario la priorización de tráfico basa su garantía en factores estadísticos. Si todo el tráfico que se inyecta en la red es de la máxima prioridad los problemas de congestión ocurrirán igual que antes (algo parecido al jefe que encarga todas las tareas con la máxima urgencia). Para evitar este problema se suele fijar un caudal máximo de tráfico prioritario que cada usuario puede inyectar en la red, pero aún así la red normalmente no se diseña para el caso en que cada usuario inyecte el máximo de tráfico prioritario permitido, ya que esto sería muy caro. La priorización es más sencilla de implementar que la reserva, ya que al no haber un mecanismo de reserva explícito los routers no necesitan conocer que flujos (por ejemplo que videoconferencias) pasan a través suyo, puesto que lo único que han de hacer es ‘colar’ por delante a los paquetes que les lleguen marcados como prioritarios.
Aunque el protocolo RSVP y el modelo IntServ se especificaron hace ya varios años, su uso se ha limitado a experiencias piloto y no se ha extendido entre los fabricantes de routers y por ende entre los proveedores de servicios Internet.
En cambio DiffServ y el mecanismo de prioridades, a pesar de ser más reciente, ya está funcionado en varios proveedores de servicios Internet.
La razón principal para la acogida de DiffServ y el abandono de IntServ es la escalabilidad de este último y el costo en recursos que representa conservar información de estado sobre cada flujo activo en cada router del trayecto. En los routers del backbone de Internet esto supone mantener tablas con miles de entradas que se han de estar actualizando constantemente. Ningún fabricante de routers ha podido (o ha querido) desarrollar una implementación eficiente de RSVP.
El funcionamiento de ECN en IP y TCP es el siguiente:
Si el host emisor soporta ECN pone siempre a 1 el primer bit ECN (ECN =’10’)
Si un router detecta congestión marca a 1 el segundo bit (ECN = ’11’)
Cuando el host receptor ve que el segundo bit ECN está puesto devuelve al emisor un segmento TCP con el bit ECE puesto
Cuando el emisor recibe un segmento con el bit ECE puesto reduce su ventana como si se hubiera perdido el segmento (slow start). Además le envía al receptor un segmento TCP con el bit CWR puesto (esto actúa como ‘acuse de recibo’ del segmento con el bit ECE)
Un problema típico en ingeniería de tráfico es el conocido como ‘problema del pez’. Supongamos que un ISP trata de ofrecer servicios de diferente calidad a sus usuarios, por ejemplo servicio premium con alta calidad y servicio normal con calidad ‘best effort’. Supongamos además que dos usuarios (A y B) contratan los servicios premium y normal, respectivamente, en un mismo POP (Point Of Presence), y que ambos están interesados en enviar tráfico al usuario C, conectado a otro POP de la red del ISP. El router del ISP al encaminar los paquetes de A y de B hacia C no podrá en principio discriminar cuales pertenecen a A y cuales a B, ya que el encaminamiento se realiza en base a la dirección de destino, no a la dirección de origen. Por tanto tanto el tráfico de A como el de B se encaminarán por la misma ruta, recibiendo probablemente ambos clientes la misma calidad de servicio aun cuando pagan tarifas diferentes.
Una posible solución a este problema es lo que se denomina ‘policy routing’, es decir encaminamiento basado en criterios que no se limitan a la dirección de destino sino que toman en cuenta otros factores, como la dirección de origen. Sin embargo el policy routing tienen un problema serio: los fabricantes diseñan sus equipos para la conmutación rápida, generalmente por hardware, de paquetes IP basándose exclusivamente en la dirección de destino, y siempre que se aplica policiy routing el rendimiento decae de manera alarmante.
Una mejor solución sería que el ISP sustituyera su red por un backbone ATM. En este caso sería fácil constituir dos PVC independientes para encaminar el tráfico de A por la ruta de alta capacidad (la superior) y el de B por la de baja capacidad (inferior)
El campo etiqueta es el que utilizan los routers MPLS para decidir por donde encaminar el paquete. Todos los paquetes que recibe un router por una interfaz dada con el mismo valor del campo Etiqueta pertenecen a la misma FEC (Forward Equivalence Class).
El campo Exp no tiene definida una función en el estándar. Se prevé que pueda utilizarse para transmitir información sobre el paquete que deba ser conocida por los routers MPLS. Un ejemplo podría ser información de Calidad de Servicio que permitiera a los routers saber el nivel de prioridad que tiene cada paquete.
El campo S indica (cuando vale 1) que se trata de la última etiqueta en la pila. En el caso de haber más de una etiqueta MPLS todas tendrán a cero el campo S salvo la última. Evidentemente en el caso de haber solo una etiqueta MPLS esta tendrá siempre a 1 el campo S. El router sabe que detrás de la etiqueta MPLS con S=1 se encuentra el paquete de nivel de red.
El campo TTL cumple una función equivalente al campo TTL de IPv4. Cuando el paquete recibe una etiqueta nueva en el router de ingreso el campo TTL hereda el valor que tuviera el campo TTL del datagrama IP, reducido en una unidad. A la salida, en el router de egreso, el campo TTL de la etiqueta se traslada (reducido en una unidad) al campo TTL del datagrama IP.
En el caso de redes ATM y Frame Relay el hardware no dispone de mecanismo que permitan eficientemente actualizar el campo TTL, por lo que en estos casos no se utiliza.
En líneas dedicadas (protocolo PPP) y redes locales la etiqueta MPLS se coloca inmediatamente detrás de la información de nivel de enlace y delante del paquete de nivel de red. En caso de que haya más de una etiqueta MPLS se orgnaizarán todas juntas en forma de pila, colocándose primero la más alta en la pila.
En ATM y Frame Relay, a fin de aprovechar los mecanismos de conmutación inherentes de estas redes, la etiqueta MPLS más alta en la pila se coloca directamente en el campo que corresponde al VPI/VCI en ATM, o al DLCI en Frame Relay..El resto de etiquetas se colocan, caso de existir, inmediatamente delante del paquete de nivel de red, como si fuera parte de este a efectos del nivel de enlace. De esta forma cuando un paquete MPLS viaja por una red ATM o Frame Relay puede ser conmutado de forma natural, sin que la red tenga que hacer nada especial, salvo en el caso de los routers de ingreso y de egreso que habrán de poner o quitar la etiqueta.
En esta figura se muestra un ejemplo de cómo podría tener lugar la apilación de etiquetas. Supongamos que los ISP A y C (cuyas redes soportan MPLS) deciden unirse utilizando los servicios del ISP B, que internamente también utiliza MPLS. A y C contratan con B un enlace virtual entre los routers V e Y de un determinado caudal. El ISP B configura en su red MPLS un LSP (Label Switch Path) entre los routers W y X, a los que están conectados los ISPs A y C, respectivamente.
A y C han de acordar el número de etiqueta que utilizarán para la FEC correspondiente a esta conexión (en este ejemplo la etiqueta 2, verde) pero dicha etiqueta no es vista por B. Inversamente B ha de utilizar una etiqueta en el LSP que define, en este ejemplo la 7 roja.
Para el LSP formado por A y C el router de ingreso es U y el de egreso es Z. Para el LSP de B el router de ingreso es W y el de egreso es X. Evidentemente si, como es lo normal, los LSP son bidireccionales los routers de ingreso serían de egreso para el sentido opuesto, y viceversa. En la práctica es como si A y C hubieran construido un túnel entre V e Y haciendo uso del LSP de B. Durante su viaje por el túnel el paquete posee dos etiquetas MPLS ordenadas en forma de pila (la verde debajo y la roja arriba).
A efectos del contador TTL en cada salto solo se decrementa el contador de mayor nivel en la pila. Así por ejemplo el salto de W a X no afecta el TTL de la etiqueta verde, que vale lo mismo que cuando salió de V. Ahora bien, cuando el paquete llega al router de egreso del segundo nivel (en este caso X) la etiqueta roja es destruida y el valor de su contador trasvasado al TTL de la etiqueta inferior (la verde en este caso). Un tratamiento análogo se da con el TTL del paquete IP, que no ve alterado su valor en todo el trayecto MPLS (de U a Z), pero cuyo TTL se decrementa en Z en 6 unidades, tantas como saltos han tenido lugar en todas las redes MPLS por las que ha pasado.