Tema 6 Calidad de Servicio (QoS) Rogelio Montañana Departamento de Informática Universidad de Valencia [email_address] http://www.uv.es/~montanan/
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
Calidad de Servicio (QoS) Decimos que una red o un proveedor ofrece ‘ Calidad de Servicio’ o QoS  (Quality of Service) cuando garantiza un valor límite (máximo o mínimo) de alguno de los parámetros de QoS. 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 valores acordados entre el proveedor y el usuario (cliente)  se denomina  SLA (Service Level Agreement).  Ej.:   Ancho de banda  ≥ 2 Mb/s Retardo ≤ 80 ms Jitter ≤ 20 ms Tasa de pérdidas ≤ 0,01 %
Congestión y Calidad de Servicio Con ancho de banda suficiente se resuelven ‘casi’ todos los problemas 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 conveniente. 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).
Carga Rendimiento Sin Congestión Congestión Fuerte Congestión Moderada Efectos de la congestión en el tiempo de servicio y el rendimiento Sin Congestión Congestión Fuerte Congestión Moderada Tiempo de Servicio Carga QoS útil y viable QoS inútil QoS inviable QoS útil y viable QoS inútil QoS inviable
Parámetros de Calidad de Servicio % ms ms Kb/s Unidades Proporción de paquetes perdidos respecto de los enviados Tasa de pérdidas (loss rate) La fluctuación que se puede producir en el Retardo Jitter El tiempo medio que tardan en llegar los paquetes Retardo (delay) o latencia (latency) Indica el caudal máximo que se puede transmitir Ancho de Banda (bandwidth) Significado Parámetro
Jitter Retardo Los datagramas que llegan después del retardo máximo se  consideran perdidos Retardomínimo El retardo mínimo depende de las características físicas de la red Relación entre la probabilidad de llegada de los datagramas y los parámetros de QoS Probabilidad Tiempo Retardomáximo
Fluctuación del retardo —“Jitter” t t Emisor Transmite Receptor Recibe A B C A B C 50 ms Emisor Rece ptor Red 50 ms 90 ms Congestión Retardo: 70 ms    20 ms (retardo: 70 ms, jitter: 40 ms) Red vacía
Reducción del Jitter El jitter puede reducirse si el receptor retrasa la reproducción (buffer ‘anti-jitter’). Por ejemplo en VoIP lo habitual es enviar un paquete de voz cada 20 ms. Si el receptor reproduce los paquetes tal cual le llegan cualquier fluctuación en la entrega afectará la calidad. Si en vez de eso retrasa 40 ms la reproducción podrá compensar fluctuaciones de hasta 40 ms en el tiempo de entrega. En algunas aplicaciones (vídeo o audio unidireccional) se llegan a introducir retardos de hasta 30 segundos. Pero en estos casos no existe interacción receptor-emisor.
Requerimientos de Calidad de Servicio de las aplicaciones 1 En realidad la aplicación requiere pérdida nula, pero esto lo garantiza el protocolo de transporte TCP Media 1 Medio/alto Bajo Bajo Interactivo (telnet, www) Nula Baja Baja Baja Alta 1 Tasa de Pérdidas Bajo Alto Alto Bajo Alto Ancho de Banda Medio/alto Bajo Frágil (ej.: emulación de circuitos) Bajo Medio/alto Vídeo unidireccional (streaming) Bajo Bajo Vídeo interactivo Bajo Bajo Telefonía Alto Alto Batch (e-mail, ftp) Jitter Retardo Tipo de aplicación
Calidad de Servicio:  ¿Reserva o Prioridad? Existen dos posibles estrategias para dar trato preferente a un usuario o una aplicación 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: LANs 802.1p Cada estrategia tiene ventajas e inconvenientes.
¿Reserva o Prioridad? 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) Los routers no necesitan conservar información de estado. Prioridad Requiere mantener información de estado sobre cada comunicación en todos los routers por lo que pasa Se requiere un protocolo de señalización para informar a los routers y efectuar la reserva en todo el trayecto 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 Reserva Inconvenientes Ventajas
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet   Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
Calidad de Servicio en Internet La congestión y la falta de QoS es el principal problema de Internet actualmente. IP fue diseñado para dar un servicio ‘best effort’. Sin embargo hoy en día se utiliza para aplicaciones sensibles que no toleran redes sin QoS. Ej.: videoconferencia, telefonía  VoIP (Voice Over IP), etc. Estas aplicaciones no pueden funcionar en una red ‘best effort’ congestionada.  Se han hecho modificaciones a IP para que pueda ofrecer QoS a las aplicaciones
“ 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
Historia de la QoS en Internet 1981: Octeto ToS en IPv4 (RFC 791) 1994: Modelo IntServ (RFC 1633) 1995: Campos prioridad y etiqueta de flujo en IPv6 (RFC 1883) 1998: Modelo DiffServ (RFC 2474)
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
Octeto ToS (Type of Service) En la definición original de la cabecera IPv4 se incluyó un octeto que tenía dos partes: Tres bits para indicar una prioridad (llamada precedencia). Los routers debían enviar antes los paquetes con mayor precedencia Varios bits que actuaban de ‘flags’ para indicar que tipo de ruta prefiere el paquete:  mínimo retardo máximo rendimiento máxima fiabilidad mínimo costo
Cabecera IPv4 (RFC 791, 1981) Precedencia: prioridad (ocho niveles). Mayor es mejor 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), RFC 1349 X: bit reservado Precedencia Octeto TOS: D T R C X
Significado del campo precedencia Reservados para tráfico de control Disponibles para usuario Rutina 000 0 Prioridad 001 1 Inmediato 010 2 Flash 011 3 Flash Override 100 4 Crítico / ECP 101 5 Control de interred 110 6 Control de red 111 7 Nombre Precedencia (binario) Precedencia (decimal)
Inconvenientes del campo TOS Ocho niveles de prioridad (en la práctica seis) a veces es insuficiente. Solo es posible indicar prioridad de envío, no otros aspectos como prioridad de descarte. Los fabricantes han implementado de forma no consistente el campo precedencia y los flags DTRC. La interoperabilidad entre fabricantes e ISPs es muy limitada La precedencia se ha usado poco. Los flags DTRC no se han usado nada.
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
Calidad de servicio en Internet Se han desarrollado y estandarizado dos modelos de QoS en Internet: IntServ  (Integrated Services), 1994. El usuario solicita de antemano los recursos que necesita; cada router del trayecto ha de tomar nota y efectuar la reserva solicitada (modelo carril bus). DiffServ  (Differentiated Services), 1998. El usuario marca los paquetes con una determinada etiqueta que marca la prioridad y el trato que deben recibir por parte de los routers; éstos no son conscientes de los flujos activos (modelo ambulancia). Ambos modelos son compatibles y coexisten
Clasificación de las aplicaciones en IntServ (Integrated Services) Emulación de circuitos (simulación de líneas dedicadas) Flujos Multimedia de todo tipo: vídeo ‘streaming’, videoconferencia, telefonía sobre Internet, etc. No tolerantes a retardos (Tiempo Real) Datos sobre TCP: FTP, Web,e-mail, etc. Datos UDP: DNS, SNMP, NTP, etc.  Tolerantes a retardos (Elásticas) Intolerantes a pérdidas Tolerantes a pérdidas
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), parte esencial del modelo IntServ La reserva garantiza la QoS solicitada. Si no quedan recursos suficientes se rechaza la petición, es decir se ejerce  control de admisión o CAC (Connection Admission Control) . Normalmente la reserva se realiza para una secuencia de datagramas relacionados entre sí, que es lo que llamamos un  flujo .
Concepto de flujo Flujo : dícese de una secuencia de datagramas que se produce como resultado de una acción del usuario y que requiere la misma QoS Un flujo es la entidad más pequeña a la que los routers pueden aplicar una determinada QoS Un flujo es simplex (unidireccional) Ejemplo: una videoconferencia estaría formada por cuatro flujos, audio y vídeo de ida, audio y vídeo de vuelta.
Identificación de flujos Un flujo se identifica por los siguientes cinco parámetros: Dirección IP de origen Puerto de origen Dirección IP de destino Puerto de destino Protocolo de transporte utilizado (TCP o UDP) Los flujos pueden agruparse en clases; todos los flujos dentro de una misma clase reciben la misma QoS.
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 audio B->A: 158.42.35.13:2492 -> 147.156.135.22:5387 Flujos en una videoconferencia
¿Que es RSVP? Un protocolo que reserva la capacidad solicitada por un flujo en  todos  los routers del camino.  Realmente es un protocolo de señalización pues crea  información de estado  en los routers (como al establecer SVCs en ATM). Aunque se utilice en IP 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.
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)
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 hace la reserva una vez en cada tramo). Reserva 1,5 Mb/s A B C D E F 1: F pide a C que reserve 1,5 Mb/s del caudal descendente para el flujo que le va a enviar A.  C propaga la petición a B quien a su vez la propaga a A  Reserva 1,5 Mb/s Reserva 1,5 Mb/s Reserva 1,5 Mb/s Reserva 1,5 Mb/s 2: Cuando más tarde E y D realizan sus peticiones no son propagadas hacia arriba por C o B, pues ya no es necesario
Tipos de servicio en IntServ UBR VBR-nrt CBR VBR-rt Equivalencia en ATM Ninguna garantía (como antes sin QoS) ‘ Best Effort’ Calidad similar a la de una red de datagramas poco cargada Se supone que el retardo es bajo, pero no se dan garantías Carga Controlada (‘Controlled Load’)  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 Garantizado Características Servicio
Servicio Garantizado (máxima prioridad) Servicio de Carga controlada (prioridad intermedia) Servicio ‘Best Effort’ (mínima prioridad) Caudal   Reparto de recursos en IntServ Tiempo  
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.
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
Problemas de IntServ/RSVP Los fabricantes de routers no han desarrollado implementaciones eficientes de RSVP, debido al elevado costo que tiene implementar en hardware los algoritmos necesarios para mantener gran cantidad de información de estado. Sin embargo recientemente se han desarrollado mejroas en RSVP que resuelven algunos de estos inconvenientes. Además también ha resurgido el interés por RSVP para aplicarlo en MPLS (Multi Protocol Label Switching). En estos casos el número de flujos no suele ser muy grande
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
QoS en IPv6 Al desarrollar IPv6 estaba claro que los flags del octeto ToS no eran útiles. En cambio la precedencia si que tenía cierta aceptación entre los fabricantes y usuarios Por otro lado la aparición del modelo IntServ por las mismas fechas llevó a diseñar en IPv6 algún mecanismo que simplificara la identificación de los flujos
Cabecera IPv6 (RFC 1883, 1995) Prioridad (4 bits): hasta 16 niveles posibles. Mayor es mejor Etiqueta de flujo (24 bits): el host emisor incluye aquí una etiqueta que identifica de forma única cada flujo que genera. Esto permite a los routers distinguir más fácilmente los paquetes que pertenencen al mismo flujo (no tienen que inspeccionar tantos campos). Aun no se han desarrollado aplicaciones que hagan uso del campo ‘etiqueta de flujo’
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
Modelo DiffServ (Differentiated Services) Intenta evitar los problemas de escalabilidad que plantea IntServ/RSVP. Se basa en marcar los paquetes con una etiqueta y acordar con todos los routers un tratamiento según la etiqueta: No hay reserva de recursos por flujo (los routers no ‘ven’ los flujos) 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 estrictas como en IntServ, pero en muchos casos son suficientes. Puesto que los paquetes se clasifican en ‘clases’ a veces a esto se le denomina CoS (Class of Service).
DiffServ (II) A cada clase le corresponde un SLA (Service Level Agreement). Los usuarios pueden contratar unos determinados valores de los parámetros QoS para cada clase. El número de clases 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. La información se puede sumarizar fácilmente, la arquitectura es escalable. La información de QoS cabalga ‘montada’ en los datagramas en un campo nuevo llamado DS.  Los routers solo han de saber que tratamiento deben dar a cada clase. Esto lo saben por configuración (no es información de estado)
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 (ECN, RFC 3168) DSCP CU Campo DS Clase
Cabecera IPv6 con DiffServ Cabecera IPv4 con DiffServ
IPv4 Antes IPv6 Antes IPv4 e IPv6 Ahora Aparición del campo DS en IPv4 e IPv6 El significado de los tres primeros bits es compatible en los tres casos Clase DSCP CU Precedencia D T R C X Prioridad Etiq. de Flujo (1-4)
Campo DSCP 6 bits = 64 categorías de tráfico posibles. De momento se han dividido en 3 grupos: En el grupo estándar los tres primeros bits (ccc) indican la clase Uso Valores Codepoint 16 16 32 Reservado xxxx01 Local/experimental xxxx11 Estándar cccyy0
Tipos de Servicio en DiffServ UBR VBR-nrt CBR VBR-rt Equivalencia en ATM Ninguna garantía, obtiene solo las migajas ‘ Best Effort’ 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 ‘ Assured Forwarding’ Es el que da más garantías. Equivale a una línea dedicada Lo garantiza todo: Caudal, tasa de pérdidas, retardo y jitter ‘ Expedited Forwarding’ o ‘Premium’ Características Servicio
Significado de las clases del DSCP 0 1 2 3 4 5 6 7 Equivalente precedencia Best effort (default) 000xxx 0-7 Assured Forwarding clase 1 001xxx 8-15 Assured Forwarding clase 2 010xxx 16-23 Assured Forwarding clase 3 011xxx 24-31 Assured Forwarding clase 4 100xxx 32-39 Expedited Forwarding 101xxx 40-47 Control de la red 110xxx 48-55 Control de la red 111xxx 56-63 Significado Valor (binario) Rango (decimal)
Servicio EF (Expedited Forwarding) o ‘Premium’ Es el que da mayor seguridad (‘virtual leased line’). Ofrece un SLA (Service Level Agreement)  que lo garantiza todo: Ancho de banda mínimo Tasa máxima de pérdida de paquetes Retardo máximo Jitter máximo Se garantiza el caudal, pero no se toleran excesos Le corresponde el DSCP ‘101110’ (46 en decimal)
Servicio AF (Assured Forwarding) El nombre es engañoso pues no ‘asegura’ el envío. Asegura un trato preferente (respecto al Best Effort y los AF de clase inferior), pero no garantiza parámetros (no hay SLAs) Se definen cuatro clases: 4, 3, 2, 1 (más es mejor). En los routers se puede asignar recursos (ancho de banda y espacio en buffers) independientemente para cada clase. En cada clase se definen tres categorías de descarte de paquetes: alta, media y baja. Le correspoden 12 diferentes DSCP: ‘cccdd0’ (ccc = clase, dd = descarte)
Codepoints del Servicio AF (‘cccdd0’) Mayor prioridad Menor prioridad Menor probabilidad de descarte Mayor probabilidad de descarte Mientras que en la clase ‘mas es mejor’ en la probabilidad de descarte ‘mas es peor’  Binario Nombre Decimal 001110 AF13 14 010110 AF23 22 011110 AF33 30 100110 AF43 38 Alta  ’11’ Precedencia de descarte  ‘dd’ 001010 AF11 10 001100 AF12 12 1 ‘001’ 010010 AF21 18 010100 AF22 20 2 ‘010’ 011010 AF31 26 011100 AF32 28 3 ‘011’ 100010 AF41 34 100100 AF42 36 4 ‘100’ Baja  ’01’ Media  ’10’ Clase ‘ccc’
Traffic Policing en Servicio AF En el servicio AF el usuario puede contratar con el ISP un caudal para cada clase. 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.  Existen tres niveles de prioridad de descarte, el ISP puede utilizar uno u otro en función de lo ‘gorda’ que sea la infracción. Normalmente se utiliza el algoritmo del pozal agujereado
Traffic Policing en el Servicio AF dd=10 B c B e1 dd=01 CAR EAR1 Paquetes enviados por el host Paquetes que desbordan la capacidad del pozal B c Descartar B e2 dd=11 EAR2 Paquetes que desbordan la capacidad del pozal B e1 Paquetes que desbordan la capacidad del pozal B e2 CAR = Committed Access Rate
Valores del campo DSCP  Significado Binario Dec. 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 Preced. 4 100000 AF41 100010 AF42 100100 AF43 100110 Preced. 5 101000 Config. Usuario 101010 Config. Usuario 101100 EF (Premium) 101110 Preced. 6 (routing y control) 110000 Reserv. 110010 Reserv. 110100 Reserv. 110110 Preced. 7 (routing y control) 111000 Reserv. 111010 Reserv. 111100 Reserv. 111110 Significado Binario Dec. 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 Preced. 0 (Best Effort, default) 000000 Config. Usuario 000010 Config. Usuario 000100 Config. usuario 000110 Preced. 1 001000 AF11 001010 AF12 001100 AF13 001110 Preced. 2 010000 AF21 010010 AF22 010100 AF23 010110 Preced. 3 011000 AF31 011010 AF32 011100 AF33 011110
Servicio ‘Expedited Forwarding’ o ‘Premium’ Servicios ‘Assured Forwarding’ Caudal   Reparto de recursos en DiffServ  Tiempo   Servicio ‘Best Effort’
Implementación de DiffServ El DSCP (la clase) se asigna según alguna característica del paquete: IP origen/destino o puerto origen/destino.  Se puede incluso identificar y clasificar paquetes que pertenecen a protocolos que utilizan puertos dinámicos por el patrón de tráfico que generan (p. ej. peer-to-peer). El Traffic Policing sólo se ejerce en los routers de entrada a la red del ISP y en los que atraviesan fronteras entre ISPs (normalmente en las fronteras entre sistemas autónomos). Esto es lo que se conoce como un ‘Dominio DiffServ’ El router de ingreso al dominio DiffServ se encarga de marcar el campo DSCP (de acuerdo con la política de QoS). Los siguientes solo han de realizar el tratamiento que corresponde según el DSCP
Implantación de Diffserv El acuerdo de ‘peering’ entre dos ISPs puede, o no, incluir QoS.  Si dos ISP acuerdan intercambiar tráfico manteniendo la QoS han de establecer si los DSCP se mantienen inalterados, o si se realiza una conversión de acuerdo con determinada equivalencia, para mantener la semántica En la entrada de cada ‘DS domain’ un router frontera se encargará del marcado o remarcado de los paquetes, de acuerdo con la política de QoS
Empresa X Empresa Y ISP 1 AS 234 ISP 2 AS527 H.323 1: Dos usuarios establecen una vídeoconferencia 2: Los routers de salida asignan EF al audio y AF41 al vídeo (política de QoS). Realizan traffic shaping 3: Los routers de ingreso de ISP realizan traffic policing sobre el tráfico entrante, por separado para cada clase 4: Los routers frontera entre ISPs realizan traffic shaping sobre el tráfico saliente y traffic policing sobre el entrante (para cada clase). Opcionalmente remarcan paquetes 5: Los routers interiores de ISP solo tienen que darle a cada paquete el trato que le corresponde según su DSCP, y pasar el valor inalterado Funcionamiento de DiffServ en Internet Dominio DiffServ I Dominio DiffServ II
Funciones QoS desempeñadas por  los routers Identifica y separa paquetes en las diferentes clases Descarta paquetes que exceden el SLA para garantizar la integridad de la red Asigna a cada paquete el DSCP que le corresponde Coloca cada paquete en la cola que le corresponde. Descarta los que superan el umbral acordado de ocupación del buffer Controla (suaviza) ráfagas y conforma tráfico para enviar por la interfaz
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.
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
QoS en LANs Desarrollada en 802.1p y 802.1Q Campo prioridad de tres bits. Hasta ocho niveles o ‘clases’ posibles (modelo sin información de estado, similar a DiffServ). La prioridad va anotada en la etiqueta de VLAN. Consecuencia: solo puede utilizarse QoS en enlaces ‘trunk’. Interés limitado dada la posibilidad en la LAN de sobredimensionar a bajo costo Normalmente la QoS de LAN va asociada a la QoS a nivel de red, haciendo una equivalencia de prioridades 802.1p a tipos de servicio IntServ o DiffServ( más fácil con DiffServ)
Etiquetado de tramas según 802.1Q Trama 802.3 Trama 802.1Q El Ethertype X’8100’ 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) CRC Relleno (opcional) Datos Ethertype/ Longitud Dir. MAC Origen Dir. MAC Destino X’8100’ Tag CRC Relleno (opcional) Datos Ethertype/ Longitud Dir. MAC Origen Dir. MAC Destino VLAN Ident. CFI Pri
QoS: Implementación Normalmente los conmutadores y routers que soportan QoS tienen varias colas de salida por interfaz (a veces también de entrada) en las que pueden usar diferentes algoritmos. Las colas pueden implementarse por software o por hardware. Cuando son por hardware el número suele estar entre dos y cinco. Los mecanismos hardware son los mismos para nivel 2 (802.1q) que para nivel 3 (DiffServ) No hay reservas estrictas sino asignaciones aproximadas.
Configuración QoS recomendada en conmutadores Catalyst 3560 para VoIP WRR: Weighted Round Robin 0 1 2 4 7 6 3 5 Clase 0 0 (BE) Datos resto (3ª) 4 (WRR) 3 (WRR) 2 (WRR) 1(Priority) Cola salida 54% 26% 10% 10% Tamaño buffer 20% 1 8 Datos plata (2ª) 2 16 Datos oro (1ª) 60% 4 34 (AF41) Vídeo t. real 7 56 Spanning Tree 6 48 Prot. Routing 10 % 3 26 (AF31) Control Voz y vídeo 10% 5 46 (EF) Datos VoIP Caudal salida Prior. 802.1p/Q Etiqueta DSCP Tipo de tráfico
Encolamiento de paquetes en routers y conmutadores (nivel 2 y 3) Cola 1 (10%) Cola 2 (10%) Cola 3 (60%) Cola 4 (20%) PQ WRR Interfaz de salida PQ: Priority Queue. Siempre va la primera, pero no recibe más de lo asignado. WRR: Weighted Round Robin. Cada cola obtendrá al menos su parte, y si hay caudal libre obtendrá más Algoritmos de encolamiento:
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
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
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)
Mecanismos de Control de Congestión en Internet Red (IP) y Transporte (TCP) Cuando los routers detectan congestión notifican a los hosts para que reduzcan el ritmo. ECN (Explicit Congestion Notification) Red (IP) Cuando los routers detectan congestión descartan paquetes al azar. Los hosts reducen el ritmo. RED (Random Early Detect) Transporte (TCP) Cuando un host detecta pérdidas reduce el ritmo y se autocontrola. Slow Start Aplicado a  nivel de: Consiste en: Mecanismo
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)
Campo ECN en IP (RFC 3168) DSCP ECN El Host soporta ECN. La red ha marcado congestión. 11 El Host emisor soporta ECN (caso normal). 10 El Host emisor soporta ECN (caso alternativo). 01 El Host emisor no soporta ECN. 00 Significado ECN
Formato de los bytes 13 y 14  en la cabecera TCP Antes de ECN: 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 ECE URG FIN SYN RST PSH ACK CWR Reservado  Long. Cabecera FIN SYN RST PSH ACK URG Reservado  Long. Cabecera
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
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
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
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
Sumario Concepto de Calidad de Servicio Calidad de Servicio en Internet  Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
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
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
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.
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
Solución MPLS al problema del pez Usuario A Tarifa premium Usuario B Tarifa normal Usuario C              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) 3  -  5  -  4  5  2  3  7  2  -  7  -  4 
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
Terminología MPLS              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’) 3  -  5  -  4  5  2  3  7  2  -  7  -  4 
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
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
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.
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. TTL S Exp Etiqueta
Situación de la etiqueta MPLS Cabecera Frame Relay Campo DLCI Cabecera ATM Campo VPI/VCI PPP (Líneas dedicadas) LANs (802.2) ATM Frame Relay Cola PPP Datos Cabecera IP Pila de etiquetas MPLS CabeceraPPP  CabeceraLLC Cola MAC Datos Cabecera IP Pila de etiquetas MPLS Cabecera MAC Etiqueta MPLS Superior Datos Cabecera IP Resto de etiquetas MPLS Cola  Frame Relay Etiqueta MPLS Superior Datos Cabecera IP Resto de etiquetas MPLS
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.
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 1 er  nivel LSR Interior 1 er  nivel LSR Interior 1 er  nivel LSR de Egreso 1 er  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 1 er  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)
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.
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 _2001. ppt

Amplif 6

  • 1.
    Tema 6 Calidadde Servicio (QoS) Rogelio Montañana Departamento de Informática Universidad de Valencia [email_address] http://www.uv.es/~montanan/
  • 2.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 3.
    Calidad de Servicio(QoS) Decimos que una red o un proveedor ofrece ‘ Calidad de Servicio’ o QoS (Quality of Service) cuando garantiza un valor límite (máximo o mínimo) de alguno de los parámetros de QoS. 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 valores acordados entre el proveedor y el usuario (cliente) se denomina SLA (Service Level Agreement). Ej.: Ancho de banda ≥ 2 Mb/s Retardo ≤ 80 ms Jitter ≤ 20 ms Tasa de pérdidas ≤ 0,01 %
  • 4.
    Congestión y Calidadde Servicio Con ancho de banda suficiente se resuelven ‘casi’ todos los problemas 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 conveniente. 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.
    Carga Rendimiento SinCongestión Congestión Fuerte Congestión Moderada Efectos de la congestión en el tiempo de servicio y el rendimiento Sin Congestión Congestión Fuerte Congestión Moderada Tiempo de Servicio Carga QoS útil y viable QoS inútil QoS inviable QoS útil y viable QoS inútil QoS inviable
  • 6.
    Parámetros de Calidadde Servicio % ms ms Kb/s Unidades Proporción de paquetes perdidos respecto de los enviados Tasa de pérdidas (loss rate) La fluctuación que se puede producir en el Retardo Jitter El tiempo medio que tardan en llegar los paquetes Retardo (delay) o latencia (latency) Indica el caudal máximo que se puede transmitir Ancho de Banda (bandwidth) Significado Parámetro
  • 7.
    Jitter Retardo Losdatagramas que llegan después del retardo máximo se consideran perdidos Retardomínimo El retardo mínimo depende de las características físicas de la red Relación entre la probabilidad de llegada de los datagramas y los parámetros de QoS Probabilidad Tiempo Retardomáximo
  • 8.
    Fluctuación del retardo—“Jitter” t t Emisor Transmite Receptor Recibe A B C A B C 50 ms Emisor Rece ptor Red 50 ms 90 ms Congestión Retardo: 70 ms  20 ms (retardo: 70 ms, jitter: 40 ms) Red vacía
  • 9.
    Reducción del JitterEl jitter puede reducirse si el receptor retrasa la reproducción (buffer ‘anti-jitter’). Por ejemplo en VoIP lo habitual es enviar un paquete de voz cada 20 ms. Si el receptor reproduce los paquetes tal cual le llegan cualquier fluctuación en la entrega afectará la calidad. Si en vez de eso retrasa 40 ms la reproducción podrá compensar fluctuaciones de hasta 40 ms en el tiempo de entrega. En algunas aplicaciones (vídeo o audio unidireccional) se llegan a introducir retardos de hasta 30 segundos. Pero en estos casos no existe interacción receptor-emisor.
  • 10.
    Requerimientos de Calidadde Servicio de las aplicaciones 1 En realidad la aplicación requiere pérdida nula, pero esto lo garantiza el protocolo de transporte TCP Media 1 Medio/alto Bajo Bajo Interactivo (telnet, www) Nula Baja Baja Baja Alta 1 Tasa de Pérdidas Bajo Alto Alto Bajo Alto Ancho de Banda Medio/alto Bajo Frágil (ej.: emulación de circuitos) Bajo Medio/alto Vídeo unidireccional (streaming) Bajo Bajo Vídeo interactivo Bajo Bajo Telefonía Alto Alto Batch (e-mail, ftp) Jitter Retardo Tipo de aplicación
  • 11.
    Calidad de Servicio: ¿Reserva o Prioridad? Existen dos posibles estrategias para dar trato preferente a un usuario o una aplicación 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: LANs 802.1p Cada estrategia tiene ventajas e inconvenientes.
  • 12.
    ¿Reserva o Prioridad?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) Los routers no necesitan conservar información de estado. Prioridad Requiere mantener información de estado sobre cada comunicación en todos los routers por lo que pasa Se requiere un protocolo de señalización para informar a los routers y efectuar la reserva en todo el trayecto 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 Reserva Inconvenientes Ventajas
  • 13.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 14.
    Calidad de Servicioen Internet La congestión y la falta de QoS es el principal problema de Internet actualmente. IP fue diseñado para dar un servicio ‘best effort’. Sin embargo hoy en día se utiliza para aplicaciones sensibles que no toleran redes sin QoS. Ej.: videoconferencia, telefonía VoIP (Voice Over IP), etc. Estas aplicaciones no pueden funcionar en una red ‘best effort’ congestionada. Se han hecho modificaciones a IP para que pueda ofrecer QoS a las aplicaciones
  • 15.
    “ El SantoGrial 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
  • 16.
    Historia de laQoS en Internet 1981: Octeto ToS en IPv4 (RFC 791) 1994: Modelo IntServ (RFC 1633) 1995: Campos prioridad y etiqueta de flujo en IPv6 (RFC 1883) 1998: Modelo DiffServ (RFC 2474)
  • 17.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 18.
    Octeto ToS (Typeof Service) En la definición original de la cabecera IPv4 se incluyó un octeto que tenía dos partes: Tres bits para indicar una prioridad (llamada precedencia). Los routers debían enviar antes los paquetes con mayor precedencia Varios bits que actuaban de ‘flags’ para indicar que tipo de ruta prefiere el paquete: mínimo retardo máximo rendimiento máxima fiabilidad mínimo costo
  • 19.
    Cabecera IPv4 (RFC791, 1981) Precedencia: prioridad (ocho niveles). Mayor es mejor 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), RFC 1349 X: bit reservado Precedencia Octeto TOS: D T R C X
  • 20.
    Significado del campoprecedencia Reservados para tráfico de control Disponibles para usuario Rutina 000 0 Prioridad 001 1 Inmediato 010 2 Flash 011 3 Flash Override 100 4 Crítico / ECP 101 5 Control de interred 110 6 Control de red 111 7 Nombre Precedencia (binario) Precedencia (decimal)
  • 21.
    Inconvenientes del campoTOS Ocho niveles de prioridad (en la práctica seis) a veces es insuficiente. Solo es posible indicar prioridad de envío, no otros aspectos como prioridad de descarte. Los fabricantes han implementado de forma no consistente el campo precedencia y los flags DTRC. La interoperabilidad entre fabricantes e ISPs es muy limitada La precedencia se ha usado poco. Los flags DTRC no se han usado nada.
  • 22.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 23.
    Calidad de servicioen Internet Se han desarrollado y estandarizado dos modelos de QoS en Internet: IntServ (Integrated Services), 1994. El usuario solicita de antemano los recursos que necesita; cada router del trayecto ha de tomar nota y efectuar la reserva solicitada (modelo carril bus). DiffServ (Differentiated Services), 1998. El usuario marca los paquetes con una determinada etiqueta que marca la prioridad y el trato que deben recibir por parte de los routers; éstos no son conscientes de los flujos activos (modelo ambulancia). Ambos modelos son compatibles y coexisten
  • 24.
    Clasificación de lasaplicaciones en IntServ (Integrated Services) Emulación de circuitos (simulación de líneas dedicadas) Flujos Multimedia de todo tipo: vídeo ‘streaming’, videoconferencia, telefonía sobre Internet, etc. No tolerantes a retardos (Tiempo Real) Datos sobre TCP: FTP, Web,e-mail, etc. Datos UDP: DNS, SNMP, NTP, etc. Tolerantes a retardos (Elásticas) Intolerantes a pérdidas Tolerantes a pérdidas
  • 25.
    IntServ y RSVPPara 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), parte esencial del modelo IntServ La reserva garantiza la QoS solicitada. Si no quedan recursos suficientes se rechaza la petición, es decir se ejerce control de admisión o CAC (Connection Admission Control) . Normalmente la reserva se realiza para una secuencia de datagramas relacionados entre sí, que es lo que llamamos un flujo .
  • 26.
    Concepto de flujoFlujo : dícese de una secuencia de datagramas que se produce como resultado de una acción del usuario y que requiere la misma QoS Un flujo es la entidad más pequeña a la que los routers pueden aplicar una determinada QoS Un flujo es simplex (unidireccional) Ejemplo: una videoconferencia estaría formada por cuatro flujos, audio y vídeo de ida, audio y vídeo de vuelta.
  • 27.
    Identificación de flujosUn flujo se identifica por los siguientes cinco parámetros: Dirección IP de origen Puerto de origen Dirección IP de destino Puerto de destino Protocolo de transporte utilizado (TCP o UDP) Los flujos pueden agruparse en clases; todos los flujos dentro de una misma clase reciben la misma QoS.
  • 28.
    A 147.156.135.22 B158.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 audio B->A: 158.42.35.13:2492 -> 147.156.135.22:5387 Flujos en una videoconferencia
  • 29.
    ¿Que es RSVP?Un protocolo que reserva la capacidad solicitada por un flujo en todos los routers del camino. Realmente es un protocolo de señalización pues crea información de estado en los routers (como al establecer SVCs en ATM). Aunque se utilice en IP 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.
    RSVP (Cont.) RSVPreserva 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)
  • 31.
    Emisor (flujo de1,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 hace la reserva una vez en cada tramo). Reserva 1,5 Mb/s A B C D E F 1: F pide a C que reserve 1,5 Mb/s del caudal descendente para el flujo que le va a enviar A. C propaga la petición a B quien a su vez la propaga a A Reserva 1,5 Mb/s Reserva 1,5 Mb/s Reserva 1,5 Mb/s Reserva 1,5 Mb/s 2: Cuando más tarde E y D realizan sus peticiones no son propagadas hacia arriba por C o B, pues ya no es necesario
  • 32.
    Tipos de servicioen IntServ UBR VBR-nrt CBR VBR-rt Equivalencia en ATM Ninguna garantía (como antes sin QoS) ‘ Best Effort’ Calidad similar a la de una red de datagramas poco cargada Se supone que el retardo es bajo, pero no se dan garantías Carga Controlada (‘Controlled Load’) 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 Garantizado Características Servicio
  • 33.
    Servicio Garantizado (máximaprioridad) Servicio de Carga controlada (prioridad intermedia) Servicio ‘Best Effort’ (mínima prioridad) Caudal  Reparto de recursos en IntServ Tiempo 
  • 34.
    Problemas de IntServ/RSVPRSVP 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.
  • 35.
    Problema de escalabilidadde RSVP Estos routers han de mantener información sobre muchos flujos y por tanto mucha información de estado ‘ Core’ de Internet
  • 36.
    Problemas de IntServ/RSVPLos fabricantes de routers no han desarrollado implementaciones eficientes de RSVP, debido al elevado costo que tiene implementar en hardware los algoritmos necesarios para mantener gran cantidad de información de estado. Sin embargo recientemente se han desarrollado mejroas en RSVP que resuelven algunos de estos inconvenientes. Además también ha resurgido el interés por RSVP para aplicarlo en MPLS (Multi Protocol Label Switching). En estos casos el número de flujos no suele ser muy grande
  • 37.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 38.
    QoS en IPv6Al desarrollar IPv6 estaba claro que los flags del octeto ToS no eran útiles. En cambio la precedencia si que tenía cierta aceptación entre los fabricantes y usuarios Por otro lado la aparición del modelo IntServ por las mismas fechas llevó a diseñar en IPv6 algún mecanismo que simplificara la identificación de los flujos
  • 39.
    Cabecera IPv6 (RFC1883, 1995) Prioridad (4 bits): hasta 16 niveles posibles. Mayor es mejor Etiqueta de flujo (24 bits): el host emisor incluye aquí una etiqueta que identifica de forma única cada flujo que genera. Esto permite a los routers distinguir más fácilmente los paquetes que pertenencen al mismo flujo (no tienen que inspeccionar tantos campos). Aun no se han desarrollado aplicaciones que hagan uso del campo ‘etiqueta de flujo’
  • 40.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 41.
    Modelo DiffServ (DifferentiatedServices) Intenta evitar los problemas de escalabilidad que plantea IntServ/RSVP. Se basa en marcar los paquetes con una etiqueta y acordar con todos los routers un tratamiento según la etiqueta: No hay reserva de recursos por flujo (los routers no ‘ven’ los flujos) 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 estrictas como en IntServ, pero en muchos casos son suficientes. Puesto que los paquetes se clasifican en ‘clases’ a veces a esto se le denomina CoS (Class of Service).
  • 42.
    DiffServ (II) Acada clase le corresponde un SLA (Service Level Agreement). Los usuarios pueden contratar unos determinados valores de los parámetros QoS para cada clase. El número de clases 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. La información se puede sumarizar fácilmente, la arquitectura es escalable. La información de QoS cabalga ‘montada’ en los datagramas en un campo nuevo llamado DS. Los routers solo han de saber que tratamiento deben dar a cada clase. Esto lo saben por configuración (no es información de estado)
  • 43.
    Campo DS (RFC2474) 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 (ECN, RFC 3168) DSCP CU Campo DS Clase
  • 44.
    Cabecera IPv6 conDiffServ Cabecera IPv4 con DiffServ
  • 45.
    IPv4 Antes IPv6Antes IPv4 e IPv6 Ahora Aparición del campo DS en IPv4 e IPv6 El significado de los tres primeros bits es compatible en los tres casos Clase DSCP CU Precedencia D T R C X Prioridad Etiq. de Flujo (1-4)
  • 46.
    Campo DSCP 6bits = 64 categorías de tráfico posibles. De momento se han dividido en 3 grupos: En el grupo estándar los tres primeros bits (ccc) indican la clase Uso Valores Codepoint 16 16 32 Reservado xxxx01 Local/experimental xxxx11 Estándar cccyy0
  • 47.
    Tipos de Servicioen DiffServ UBR VBR-nrt CBR VBR-rt Equivalencia en ATM Ninguna garantía, obtiene solo las migajas ‘ Best Effort’ 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 ‘ Assured Forwarding’ Es el que da más garantías. Equivale a una línea dedicada Lo garantiza todo: Caudal, tasa de pérdidas, retardo y jitter ‘ Expedited Forwarding’ o ‘Premium’ Características Servicio
  • 48.
    Significado de lasclases del DSCP 0 1 2 3 4 5 6 7 Equivalente precedencia Best effort (default) 000xxx 0-7 Assured Forwarding clase 1 001xxx 8-15 Assured Forwarding clase 2 010xxx 16-23 Assured Forwarding clase 3 011xxx 24-31 Assured Forwarding clase 4 100xxx 32-39 Expedited Forwarding 101xxx 40-47 Control de la red 110xxx 48-55 Control de la red 111xxx 56-63 Significado Valor (binario) Rango (decimal)
  • 49.
    Servicio EF (ExpeditedForwarding) o ‘Premium’ Es el que da mayor seguridad (‘virtual leased line’). Ofrece un SLA (Service Level Agreement) que lo garantiza todo: Ancho de banda mínimo Tasa máxima de pérdida de paquetes Retardo máximo Jitter máximo Se garantiza el caudal, pero no se toleran excesos Le corresponde el DSCP ‘101110’ (46 en decimal)
  • 50.
    Servicio AF (AssuredForwarding) El nombre es engañoso pues no ‘asegura’ el envío. Asegura un trato preferente (respecto al Best Effort y los AF de clase inferior), pero no garantiza parámetros (no hay SLAs) Se definen cuatro clases: 4, 3, 2, 1 (más es mejor). En los routers se puede asignar recursos (ancho de banda y espacio en buffers) independientemente para cada clase. En cada clase se definen tres categorías de descarte de paquetes: alta, media y baja. Le correspoden 12 diferentes DSCP: ‘cccdd0’ (ccc = clase, dd = descarte)
  • 51.
    Codepoints del ServicioAF (‘cccdd0’) Mayor prioridad Menor prioridad Menor probabilidad de descarte Mayor probabilidad de descarte Mientras que en la clase ‘mas es mejor’ en la probabilidad de descarte ‘mas es peor’ Binario Nombre Decimal 001110 AF13 14 010110 AF23 22 011110 AF33 30 100110 AF43 38 Alta ’11’ Precedencia de descarte ‘dd’ 001010 AF11 10 001100 AF12 12 1 ‘001’ 010010 AF21 18 010100 AF22 20 2 ‘010’ 011010 AF31 26 011100 AF32 28 3 ‘011’ 100010 AF41 34 100100 AF42 36 4 ‘100’ Baja ’01’ Media ’10’ Clase ‘ccc’
  • 52.
    Traffic Policing enServicio AF En el servicio AF el usuario puede contratar con el ISP un caudal para cada clase. 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. Existen tres niveles de prioridad de descarte, el ISP puede utilizar uno u otro en función de lo ‘gorda’ que sea la infracción. Normalmente se utiliza el algoritmo del pozal agujereado
  • 53.
    Traffic Policing enel Servicio AF dd=10 B c B e1 dd=01 CAR EAR1 Paquetes enviados por el host Paquetes que desbordan la capacidad del pozal B c Descartar B e2 dd=11 EAR2 Paquetes que desbordan la capacidad del pozal B e1 Paquetes que desbordan la capacidad del pozal B e2 CAR = Committed Access Rate
  • 54.
    Valores del campoDSCP Significado Binario Dec. 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 Preced. 4 100000 AF41 100010 AF42 100100 AF43 100110 Preced. 5 101000 Config. Usuario 101010 Config. Usuario 101100 EF (Premium) 101110 Preced. 6 (routing y control) 110000 Reserv. 110010 Reserv. 110100 Reserv. 110110 Preced. 7 (routing y control) 111000 Reserv. 111010 Reserv. 111100 Reserv. 111110 Significado Binario Dec. 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 Preced. 0 (Best Effort, default) 000000 Config. Usuario 000010 Config. Usuario 000100 Config. usuario 000110 Preced. 1 001000 AF11 001010 AF12 001100 AF13 001110 Preced. 2 010000 AF21 010010 AF22 010100 AF23 010110 Preced. 3 011000 AF31 011010 AF32 011100 AF33 011110
  • 55.
    Servicio ‘Expedited Forwarding’o ‘Premium’ Servicios ‘Assured Forwarding’ Caudal  Reparto de recursos en DiffServ Tiempo  Servicio ‘Best Effort’
  • 56.
    Implementación de DiffServEl DSCP (la clase) se asigna según alguna característica del paquete: IP origen/destino o puerto origen/destino. Se puede incluso identificar y clasificar paquetes que pertenecen a protocolos que utilizan puertos dinámicos por el patrón de tráfico que generan (p. ej. peer-to-peer). El Traffic Policing sólo se ejerce en los routers de entrada a la red del ISP y en los que atraviesan fronteras entre ISPs (normalmente en las fronteras entre sistemas autónomos). Esto es lo que se conoce como un ‘Dominio DiffServ’ El router de ingreso al dominio DiffServ se encarga de marcar el campo DSCP (de acuerdo con la política de QoS). Los siguientes solo han de realizar el tratamiento que corresponde según el DSCP
  • 57.
    Implantación de DiffservEl acuerdo de ‘peering’ entre dos ISPs puede, o no, incluir QoS. Si dos ISP acuerdan intercambiar tráfico manteniendo la QoS han de establecer si los DSCP se mantienen inalterados, o si se realiza una conversión de acuerdo con determinada equivalencia, para mantener la semántica En la entrada de cada ‘DS domain’ un router frontera se encargará del marcado o remarcado de los paquetes, de acuerdo con la política de QoS
  • 58.
    Empresa X EmpresaY ISP 1 AS 234 ISP 2 AS527 H.323 1: Dos usuarios establecen una vídeoconferencia 2: Los routers de salida asignan EF al audio y AF41 al vídeo (política de QoS). Realizan traffic shaping 3: Los routers de ingreso de ISP realizan traffic policing sobre el tráfico entrante, por separado para cada clase 4: Los routers frontera entre ISPs realizan traffic shaping sobre el tráfico saliente y traffic policing sobre el entrante (para cada clase). Opcionalmente remarcan paquetes 5: Los routers interiores de ISP solo tienen que darle a cada paquete el trato que le corresponde según su DSCP, y pasar el valor inalterado Funcionamiento de DiffServ en Internet Dominio DiffServ I Dominio DiffServ II
  • 59.
    Funciones QoS desempeñadaspor los routers Identifica y separa paquetes en las diferentes clases Descarta paquetes que exceden el SLA para garantizar la integridad de la red Asigna a cada paquete el DSCP que le corresponde Coloca cada paquete en la cola que le corresponde. Descarta los que superan el umbral acordado de ocupación del buffer Controla (suaviza) ráfagas y conforma tráfico para enviar por la interfaz
  • 60.
    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.
  • 61.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 62.
    QoS en LANsDesarrollada en 802.1p y 802.1Q Campo prioridad de tres bits. Hasta ocho niveles o ‘clases’ posibles (modelo sin información de estado, similar a DiffServ). La prioridad va anotada en la etiqueta de VLAN. Consecuencia: solo puede utilizarse QoS en enlaces ‘trunk’. Interés limitado dada la posibilidad en la LAN de sobredimensionar a bajo costo Normalmente la QoS de LAN va asociada a la QoS a nivel de red, haciendo una equivalencia de prioridades 802.1p a tipos de servicio IntServ o DiffServ( más fácil con DiffServ)
  • 63.
    Etiquetado de tramassegún 802.1Q Trama 802.3 Trama 802.1Q El Ethertype X’8100’ 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) CRC Relleno (opcional) Datos Ethertype/ Longitud Dir. MAC Origen Dir. MAC Destino X’8100’ Tag CRC Relleno (opcional) Datos Ethertype/ Longitud Dir. MAC Origen Dir. MAC Destino VLAN Ident. CFI Pri
  • 64.
    QoS: Implementación Normalmentelos conmutadores y routers que soportan QoS tienen varias colas de salida por interfaz (a veces también de entrada) en las que pueden usar diferentes algoritmos. Las colas pueden implementarse por software o por hardware. Cuando son por hardware el número suele estar entre dos y cinco. Los mecanismos hardware son los mismos para nivel 2 (802.1q) que para nivel 3 (DiffServ) No hay reservas estrictas sino asignaciones aproximadas.
  • 65.
    Configuración QoS recomendadaen conmutadores Catalyst 3560 para VoIP WRR: Weighted Round Robin 0 1 2 4 7 6 3 5 Clase 0 0 (BE) Datos resto (3ª) 4 (WRR) 3 (WRR) 2 (WRR) 1(Priority) Cola salida 54% 26% 10% 10% Tamaño buffer 20% 1 8 Datos plata (2ª) 2 16 Datos oro (1ª) 60% 4 34 (AF41) Vídeo t. real 7 56 Spanning Tree 6 48 Prot. Routing 10 % 3 26 (AF31) Control Voz y vídeo 10% 5 46 (EF) Datos VoIP Caudal salida Prior. 802.1p/Q Etiqueta DSCP Tipo de tráfico
  • 66.
    Encolamiento de paquetesen routers y conmutadores (nivel 2 y 3) Cola 1 (10%) Cola 2 (10%) Cola 3 (60%) Cola 4 (20%) PQ WRR Interfaz de salida PQ: Priority Queue. Siempre va la primera, pero no recibe más de lo asignado. WRR: Weighted Round Robin. Cada cola obtendrá al menos su parte, y si hay caudal libre obtendrá más Algoritmos de encolamiento:
  • 67.
    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
  • 68.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 69.
    Control de congestiónen 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)
  • 70.
    Mecanismos de Controlde Congestión en Internet Red (IP) y Transporte (TCP) Cuando los routers detectan congestión notifican a los hosts para que reduzcan el ritmo. ECN (Explicit Congestion Notification) Red (IP) Cuando los routers detectan congestión descartan paquetes al azar. Los hosts reducen el ritmo. RED (Random Early Detect) Transporte (TCP) Cuando un host detecta pérdidas reduce el ritmo y se autocontrola. Slow Start Aplicado a nivel de: Consiste en: Mecanismo
  • 71.
    ECN en InternetEl 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)
  • 72.
    Campo ECN enIP (RFC 3168) DSCP ECN El Host soporta ECN. La red ha marcado congestión. 11 El Host emisor soporta ECN (caso normal). 10 El Host emisor soporta ECN (caso alternativo). 01 El Host emisor no soporta ECN. 00 Significado ECN
  • 73.
    Formato de losbytes 13 y 14 en la cabecera TCP Antes de ECN: 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 ECE URG FIN SYN RST PSH ACK CWR Reservado Long. Cabecera FIN SYN RST PSH ACK URG Reservado Long. Cabecera
  • 74.
    1 1: Aenví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
  • 75.
    1 1: Aenví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
  • 76.
    ECN alternativo Elcaso 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
  • 77.
    Funcionamiento de ECNEl 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
  • 78.
    Sumario Concepto deCalidad de Servicio Calidad de Servicio en Internet Octeto ToS en IPv4 Modelo IntServ y protocolo RSVP Prioridad y etiqueta de flujo en IPv6 Modelo DiffServ Calidad de servicio en LANs Control de congestión en Internet MPLS
  • 79.
    Policy routing: Elproblema 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
  • 80.
    Problema de losrouters 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
  • 81.
    ATM vs IPVentajas 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.
  • 82.
    MPLS MPLS (MultiprotocolLabel 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
  • 83.
    Solución MPLS alproblema del pez Usuario A Tarifa premium Usuario B Tarifa normal Usuario C              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) 3  -  5  -  4  5  2  3  7  2  -  7  -  4 
  • 84.
    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
  • 85.
    Terminología MPLS             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’) 3  -  5  -  4  5  2  3  7  2  -  7  -  4 
  • 86.
    Creación de losLSP (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
  • 87.
    Clasificación del tráficoen 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
  • 88.
    MPLS MPLS funcionasobre 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.
  • 89.
    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. TTL S Exp Etiqueta
  • 90.
    Situación de laetiqueta MPLS Cabecera Frame Relay Campo DLCI Cabecera ATM Campo VPI/VCI PPP (Líneas dedicadas) LANs (802.2) ATM Frame Relay Cola PPP Datos Cabecera IP Pila de etiquetas MPLS CabeceraPPP CabeceraLLC Cola MAC Datos Cabecera IP Pila de etiquetas MPLS Cabecera MAC Etiqueta MPLS Superior Datos Cabecera IP Resto de etiquetas MPLS Cola Frame Relay Etiqueta MPLS Superior Datos Cabecera IP Resto de etiquetas MPLS
  • 91.
    Tratamiento del campoTTL 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.
  • 92.
    Red MPLS ISPA Red MPLS ISP B Red MPLS ISP C 4 (16) 8 (12) 2 (15) 2 (13) 2 (15) 7 (14) LSR de Ingreso 1 er nivel LSR Interior 1 er nivel LSR Interior 1 er nivel LSR de Egreso 1 er 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 1 er 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)
  • 93.
    Aplicaciones de MPLSRedes 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.
  • 94.
    Referencias MPLS MPLSForum: 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 _2001. ppt

Notas del editor

  • #6 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.
  • #13 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.
  • #24 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.
  • #75 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)
  • #80 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)
  • #90 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 y sigue el tratamiento habitual, es decir reducirse en una unidad en cada salto. . 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.
  • #91 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 organizará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.
  • #93 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.