1. Arquitectura de Routers para el soporte de Calidad de Servicio Jhon Jairo Padilla Aguilar, PhD. jhon.padilla@upb.edu.co
2. 11 April 2006 Jaroslaw.Ponder@itu.int 2 NGNs as a global issue Technical aspects Europe Africa ITUNGN America Asia ITU-T SG 13: Rec. Y.2001 A NGN is a packet-based network able to provide telecommunication services and able to make use of multiple broadband, QoS-enabled transport technologies and in which service-relatedfunctions are independent from underlying transport-related technologies. It enables unfettered access for users to networks and to competing service providers and/or services of their choice. It supports generalized mobility which will allow consistent and ubiquitous provision of services to users. Challenges Multimedia Generalized mobility Convergence Integrity Multi-layer orientation Open character FG NGN SG: 11, 13, 19, 2, 12, 16, 17
3. 3 NGN simplifies the network Before NGN“Stovepipe” service model NGN promises“simplified” service model Content and Services Services Services Services Services Servers ... PSTN / ISDN Data / IP IP Core CATV PLMN MGWs Access Access Access Broadcast UMTS PSTN / ISDN GSM/EDGE xDSL WiFi/WiMax Dedicated technologies – duplicated functions
4.
5. Jhon Jairo Padilla A. Calidad del servicio en Internet Tipos de Servicios
8. Jhon Jairo Padilla A. Calidad del servicio en Internet Aplicaciones de Tiempo Real Tienen requerimientos de retardo muy exigentes Si el retardo supera cierto límite, los datos del paquete ya no serán útiles Ejemplo: Aplicación “Audio-streaming”
9. Jhon Jairo Padilla A. Calidad del servicio en Internet Ejemplo: Audio-streaming La voz es enviada en paquetes por la fuente hacia la red Cada paquete experimenta un retardo diferente en la red (tiempo entre paquetes varía) Delay jitter: variación en el retardo de los paquetes (max. Retardo – min. Retardo) La variación del retardo produce distorsión en la voz Solución común: uso de un buffer suavizador (playback point (offset de tiempo), playback applications)
10. Distribución del retardo y variación del retardo Densidad de Probabilidad Retardo promedio Tiempo de transferencia Min. Variac.retardo paquetes perdidos o Entregados tarde Max. retardo
11. Curvas de retardo para diferentes servicios Densidad de Probabilidad Densidad de Probabilidad Tiempo de retardo Tiempo de retardo Servicios de t real Servicios interactivos
12. Jhon Jairo Padilla A. Calidad del servicio en Internet Uso del buffer suavizador Salida en la fuente Llegada en el receptor Salida hacia el dispositivo Offset fijo de t Desde salida original
13. Jhon Jairo Padilla A. Calidad del servicio en Internet Limitantes de la solución con buffer suavizador Los paquetes que demoran menos que el retardo máximo se almacenan y sacan en el momento adecuado (offset) Los paquetes que superan el tiempo de offset ya no pueden ser usados para reconstruir la señal Debe escogerse apropiadamente el tiempo de offset: La red debe dar a conocer el máximo retardo de un paquete a la aplicación (acuerdo de servicio) La aplicación debe estimarlo con base en estadísticas de paquetes anteriores
15. Jhon Jairo Padilla A. Calidad del servicio en Internet Control de Congestión en TCP Una comunicación puede volverse lenta por dos razones: Por sobrecarga en la memoria del receptor Por congestión en la red Un Receptor mantiene dos ventanas: Ventana del receptor Ventana del transmisor El transmisor envía el número de octetos menor entre los indicados por las dos ventanas: Si el Rx indica “Enviar 8K”, pero la ventana de congestión dice que no se puede más de 4K, el tx enviará sólo 4K (Y viceversa).
16. Jhon Jairo Padilla A. Calidad del servicio en Internet Algoritmo de control de congestión Conocido como “Slow Start” (Jacobson 1988) Procedimiento: Al establecer una conexión, el Tx inicia la ventana de congestión al segmento máximo permitido. El Tx envía un segmento máximo Si no hay vencimiento de temporizador de confirmación, la proxima vez se duplica el valor de la ventana de congestión (crecimiento exponencial) Si hay vencimiento del temporizador o se alcanza el tamaño de la ventana del receptor o un valor “threshold”, la ventana se incrementará pero en pasos de 1 segmento (crecimiento lineal). Al ocurrir un vencimiento del temporizador, el valor de threshold se coloca el la mitad de la ventana de congestión y la ventana de congestión se reinicia en 1 segmento. Se vuelve al paso 3.
17. Jhon Jairo Padilla A. Calidad del servicio en Internet Ventana de Congestión Ventana de congestión (KB) threshold threshold Número De txsiones
18. Jhon Jairo Padilla A. Calidad del servicio en Internet MBone MBone fue una red experimental multicast puesta a punto en 1993 Se realizaron experimentos de transmisión de video (reuniones IETF, lanzamientos de naves espaciales, operaciones en pacientes)
19. Jhon Jairo Padilla A. Calidad del servicio en Internet Lecciones de MBone Las aplicaciones de tiempo real no trabajan bien sobre Internet (retardo variable y pérdidas por congestión) Muchas aplicaciones de tiempo real trabajan sobre UDP y no reaccionan ante la congestión como TCP Las pérdidas de paquetes grandes durante la congestión no permiten el uso de estas aplicaciones Ciertas aplicaciones de t real han incorporado lazos de realimentación cerrados y pueden adaptarse a condiciones cambiantes, pero trabajan en rangos limitados de cambios
20. Jhon Jairo Padilla A. Calidad del servicio en Internet Lecciones de MBone El mal uso del multicast puede causar grandes interrupciones a una gran porción de Internet Aplicaciones como video digital son capaces de generar una alta tasa de tráfico. En los 90’s subió hasta saturar algunos backbones. La debilidad en el control explícito de tráfico dentro de la red puede causar que las aplicaciones basadas en UDP se apoderen del ancho de banda de las aplicaciones basadas en TCP cuando compiten por dicho recurso (TCP reduce su envío de paquetes durante congestión y UDP no tiene esta característica.
21. Conclusión: La red debe diferenciar servicios y soportar los requerimientos de cada uno para garantizar un buen servicio a los usuarios.
23. Jhon J. Padilla A.-QoS en Internet Arquitectura de servicios Integrados (IntServ) Hay una sola clase por usuario Se crea un circuito virtual por usuario y por flujo Se usa RSVP como protocolo de señalización para establecer el circuito virtual Uso de control de admisión (CAC) Ventajas: Sencillez en implementación Desventajas: #Estados = # flujos (no es escalable)
24. Jhon J. Padilla A.-QoS en Internet Establecimiento de la Reserva en IntServ
25. Jhon J. Padilla A.-QoS en Internet Arquitectura de un Router de Servicios Integrados
26. Clasificación Estática y dinámica Clasificación: Se refiere al proceso de mapear un paquete a uno de un conjunto finito de flujos o categorías Clasificación Interna del router: Un router puede clasificar los paquetes entrantes en 4 categorías: Paquetes TCP Paquetes UDP Mensajes ICMP Otros Este conjunto de flujos es estático (no cambia): Asignación de flujos estática. Asignación dinámica de flujos: Se usan uno o varios campos de la cabecera IP para hacer la clasificación (Dir IP origen, Dir IP Destino, Puerto Origen, Puerto Destino, identificación protocolo)
27. Jhon J. Padilla A.-QoS en Internet Planificación de paquetes Modelo de fluidos Modelo Paquetizado
28. Jhon J. Padilla A.-QoS en Internet Arquitectura de servicios Diferenciados Se crea un conjunto reducido de clases Hay grupos de usuarios Pocas clases (AF, EF, BF) manejadas por prioridades Ventaja: Escalable Requiere: Control de admisión (CAC) Control de Policía (UPC, uso de parámetros) Manejo de troncales con QoS mediante MPLS
29. Campo DSCP de DiffServ El estándar de Servicios Diferenciados redefine el campo existente IP TOS para indicar los Comportamientos de Re-Transmisión. El nuevo campo, denominado DS (Differentiated Services), vuelve obsoletas las definiciones existentes del octeto TOS y también el octeto Clase de Tráfico de IPv6. Los primeros 6 bits del campo DS son usados como un DSCP (Differentiated Services Code Point), es decir, un valor que se utiliza para codificar el PHB con que debe tratarse un paquete en cada nodo DiffServ. Los restantes dos bits (campo CU) no están siendo utilizados actualmente.
30. Jhon J. Padilla A.-QoS en Internet Arquitectura de Servicios Diferenciados Clasificador, Planificador Clasificador, Medidor, Marcador, Recortador
31. Jhon J. Padilla A.-QoS en Internet Función Elemento Divide el flujo de paquetes entrante en múltiples grupos basándose en reglas predefinidas Clasificador Compara el flujo de tráfico de un cliente con su perfil de tráfico. Los paquetes que cumplen el perfil se dejan ingresar directo a la red. Los paquetes que no cumplen deben pasar por el acondicionamiento (marking, shaping, dropping) Medidor (Meter) Fija el campo DSCP (codepoint) a un valor particular. Así se incluye el paquete en una clase de retransmisión. Los paquetes marcados como no conformes podrían ser desechados por la red ante congestión. Marcador (Marker) Un recortador no permite que el paquete pase hacia la red hasta que cumpla con el perfil de tráfico (retarda los paquetes) Recortador (Shaper) Desecha los paquetes no cumplientes con el perfil de tráfico Desechador (Dropper) Componentes de un Nodo Frontera
32. Jhon J. Padilla A.-QoS en Internet Componentes de un nodo frontera Remarker Shaper Marker Meter Classifier Dropper Classificación Acondicionamiento
35. Flujos en una red Jhon J. Padilla A.-QoS en Internet Flujo: Paquetes que tienen características similares fluirán sobre el mismo camino lógico (internamente en el router y externamente en la red). QoSa QoSb Flujo: (elástico o de tiempo real) Serie de paquetes intercambiados por dos aplicaciones durante una conexión
37. Ventajas de la Clasificación Tiene la capacidad de eludir el procesamiento por capas Introduce la compresión de capas, examinando campos de múltiples capas en un solo paso
38. Jhon Jairo Padilla A. Calidad del servicio en Internet Tipos de Clasificadores Función: Divide el flujo de paquetes entrante en múltiples grupos basándose en reglas predefinidas. Hay dos tipos: BA (BehaviorAggregate) MF (Multifield)
39. Jhon Jairo Padilla A. Calidad del servicio en Internet Clasificador BA Es el más simple Se utiliza en Servicios Diferenciados Selecciona los paquetes basándose únicamente en el codepoint (DSCP). Para que esto funcione se requiere que los paquetes sean marcados (puesto el codepoint en un valor) antes de ingresar al clasificador. Dónde se marcan los paquetes? Son marcados por la fuente O Son marcados por el router de primer salto en la LAN También podría hacerlo el mismo ISP
40. Jhon Jairo Padilla A. Calidad del servicio en Internet Clasificador MF Usa una combinación de uno o más campos de la quíntupla (dir.dest., dir. Orig.,pto orig, pto dest, id.protoc) en la cabecera del paquete para hacer la clasificación. Casos: Marca paquetes con base en los tipos de aplicación (puertos). Ej: Telnet, FTP. Marca paquetes con base en direcciones particulares de origen, destino o prefijos de red. Es más versátil pero es más complejo que el BA ya que es un problema multidimensional, mientras que el BA sólo clasifica por un parámetro (codepoint).
41. Jhon J. Padilla A.-QoS en Internet Clasificación MF Bit map P2 P2=AND(Y3,X4)=011 Dirección fuente Y1 Y2 Y3 Y4 Y5 100 101 111 110 010 A prioridad C P2 P1 B Dirección destino X1 X2 X3 X4 X5 Bit map 100 110 010 011 001
42. Jhon J. Padilla A.-QoS en Internet Clasificación con Hashing Es usada en Servicios Integrados
44. La situación store and forward: Los routers almacenan los paquetes mientras son procesados y luego los re-envían Encolamiento: Políticas, estructuras de datos y algoritmos relacionados con el almacenamiento y selección de los paquetes para el re-envío.
45. Tipos de colas FIFO: First-In-First-Out: Es el caso más simple Debe diseñarse para tener un acceso eficiente Debe notificar al receptor cuando hay paquetes presentes Debe manejar los casos extremos: Cola vacía: No hay paquetes en la cola Cola Llena: No pueden agregarse más paquetes a la cola. El diseñador debe tener en cuenta: Dónde ubicar la cola FIFO? Qué tan larga debe ser la cola?
46. Tipos de colas Colas con Prioridades: Son más complejas que la FIFO Se favorecen unos paquetes sobre otros según diferentes criterios Contenido de los paquetes Identidad del orígen Tamaño del paquete
47. Colas con prioridades Ejemplos más usados: PriorityQueueing (PQ) Weighted Round Robin (WRR) WFQ (WeightedFairQueueing)
48. PriorityQueueing (PQ) Hay varias colas, cada una con una prioridad diferente Mientras haya paquetes en una cola de alta prioridad, las demás colas deben esperar. Hambruna: La cola de menor prioridad podría no ser atendida en mucho tiempo.
49. Weighted Round Robin (WRR) Evita la hambruna RR: Round Robin Se asigna a los clientes (flujos) un tiempo de servicio fijo (ranura de tiempo). Si el servicio no se completa durante este intervalo, el cliente (flujo) regresa a la cola, que es de tipo FCFS. WRR: A un cliente se pueden asignar varias ranuras de tiempo según la prioridad que posea. A mayor prioridad, más ranuras ES1 ES2 ES3 ES1 ES2 ES3 t
50. WRR Ventajas Aisla las colas El tráfico excesivo en una cola no afecta el servicio de las otras Desventajas Cálculos se hacen con base en el tamaño medio del paquete Si el tamaño de los paquetes varía mucho con respecto a la media, algunas colas podrían recibir más tiempo de servicio y otras menos de lo debido.
51. WFQ WeightedFairQueueing: Encolamiento Justo por pesos Es utilizado en Servicios Integrados El objetivo es dividir el ancho de banda de un enlace de salida entre los flujos de paquetes existentes de forma justa Evita la hambruna Asigna recursos de manera más precisa que WRR.
52. WFQ Modelo de fluidos Modelo Paquetizado Está basado en el principio usado por GPS (GeneralizedProcessorSharing). La tasa de salida en bps es proporcional al peso asignado a cada flujo GPS es un modelo de fluidos Pero se requiere un modelo paquetizado
53. Modelo paquetizado de WFQ PGPS: PacketizedGeneralizedProcessorSharing Usa el TokenBucket:
54. WFQ Ventajas Aisla las colas para evitar hambruna Opera sin conocimiento previo de las prioridades del tráfico, ni tampoco el tamaño de los paquetes Puede ser usado para garantizar el retardo límite de los paquetes Desventajas Uso de los recursos: Almacena información de estado Requiere cálculos para cada paquete que llega No es escalable para un gran número de flujos o tasas de tráfico altas para los agregados de tráfico
56. Objetivo El problema: Congestión Durante la congestión las colas de los routers se acercan a su máximo límite. Al llegar las colas a su máximo límite, no se pueden recibir más paquetes y se pierden Un método para reducir la congestión es EVITARLA mediante el descarte de paquetes cuando el sistema está cercano a la congestión.
57. Métodos para evitar la congestión Hay métodos básicos: Tail drop: Se desechan los paquetes que llegan cuando la cola está llena. El problema es que se produce el efecto de sincronización global con las comunicaciones que usan TCP (por el control de congestió en TCP) RED (RandomEarlyDetection): Después de cierto umbral de longitud de las colas, se desechan paquetes aleatoriamente con cierta probabilidad (a mayor longitud de colas, mayor probabilidad de descarte) Esto evita la Sincronización global
58.
59.
60. Acondicionador de tráfico Realiza funciones de policía de tráfico para asegurar el TCA entre clientes e ISP. Consiste de 4 elementos: Medidor (Meter) Marcador (Marker) Recortador (Shaper) Desechador (Dropper) Acciones sólo para paquetes no conformes Jhon Jairo Padilla A. Calidad del servicio en Internet
61. Jhon Jairo Padilla A. Calidad del servicio en Internet SLA En DS los servicios se definen entre el cliente y el proveedor de servicios con un SLA (Service Level Agreement) Partes de un SLA: TCA (Traffic conditioning Agreement) Disponibilidad Seguridad Monitoreo Auditoría Contabilidad Precio Cobro
62. Jhon Jairo Padilla A. Calidad del servicio en Internet TCA Detalla parámetros de servicio para perfiles de tráfico y control de policía. Puede incluir: Perfiles de tráfico, tales como parámetros del token bucket (difieren para c/clase) Métricas de desempeño (throughput, retardo, prioridades) Acciones para paquetes no-conformes Servicios de marcación de paquetes y recorte suministrados por el proveedor.
63. Jhon J. Padilla A.-QoS en Internet Algunos Parámetros de QoS Tasa de bits MBS PCR SCR MCR MBS:Maximum Burst Size; Cuánto tiempo se Puede trabajar Por encima del SCR tiempo
64. Jhon J. Padilla A.-QoS en Internet Significado Siglas Parámetro Tasa máxima a la que se enviarán las celdas PCR Tasa celdas pico Tasa de celdas promedio a largo plazo SCR Tasa celdas sostenida Tasa celdas mínima aceptable MCR Tasa celdas mín. Fluctuación de retardo máxima aceptable en las celdas CVDT Tolerancia de variac. De retardo celdas Fracción de celdas que se pierden o entregan muy tarde CLR Tasa perdida celdas Tiempo que lleva la entrega (medio, máximo) CTD Retardo transf.celda Variación tiempo de entrega de celdas CDV Variac.retardo celda Fracción celdas entregadas sin error CER Tasa errores celdas Parámetros de QoS
65. Jhon Jairo Padilla A. Calidad del servicio en Internet Medidor (Meter) Compara el flujo de tráfico de un cliente con su perfil de tráfico. Los paquetes que cumplen el perfil se dejan ingresar directo a la red. Los paquetes que no cumplen deben pasar por el acondicionamiento (marking, shaping, dropping). La mayoría de medidores son implementados con Token Bucket, ya que los perfiles son descritos en los términos de este algoritmo.
66. Jhon J. Padilla A.-QoS en Internet Medición de tráfico conToken Bucket
67. Jhon Jairo Padilla A. Calidad del servicio en Internet Marcador Fija el campo DSCP (codepoint) a un valor particular. Así se incluye el paquete en una clase de retransmisión. Podrían marcar paquetes no marcados o re-marcar paquetes ya marcados. También marcan paquetes no conformes con un valor especial de codepoint para indicar su no-conformidad. Los paquetes marcados como no conformes podrían ser desechados por la red ante congestión.
68. Jhon Jairo Padilla A. Calidad del servicio en Internet Marcador ¿Cuándo se re-marcan los paquetes? Cuando hay cambio de dominio DS y en el nuevo dominio son paquetes no conformes. Cuando hay cambio de dominio DS y hay diferentes codepoints en el nuevo dominio. Casos de cambio de PHB: Degradación de PHB: El nuevo PHB es peor que el anterior (caso más común) Promoción de PHB: El nuevo PHB es mejor que el anterior
69. Jhon J. Padilla A.-QoS en Internet Marcado de paquetes con Dual token algorithm No cumple Rojo No cumple Amarillo cumple cumple PIR/PCB? CIR/CBS? Verde Token bucket P Token bucket C
70. Jhon Jairo Padilla A. Calidad del servicio en Internet Recortador (Shaper) Función: Retarda los paquetes no-conformes hasta que cumplen con el perfil de tráfico. Un marcador sólo marca los paquetes pero los deja seguir a la red. Un recortador no permite que el paquete pase hacia la red hasta que cumpla con el perfil de tráfico. Puede requerirse un recortador al cambiar de dominio DS. El nodo de egreso debería recortar el tráfico para que cumpla con el perfil de tráfico apropiado para el siguiente dominio DS.
71. Jhon Jairo Padilla A. Calidad del servicio en Internet Desechador (Dropper) Desecha los paquetes no cumplientes con el perfil de tráfico Es más fácil de implementar que un shaper, pues no requiere un buffer mientras que el shaper sí.
72. Conclusiones El soporte de QoS es indispensable para las redes NGN El hecho de tener diferentes tipos de Servicios impone una problemática en redes IP Las soluciones existentes para soporte de QoS en redes IP son IntServ y DiffServ Los routers de IntServ y DiffServ utilizan diferentes mecanismos internos: clasificación, planificación, medición, recorte, marcado, desechado, detección temprana de la congestión