19 de abril de 2008

Elementos básicos de QoS

El avance progresivo de las redes convergentes ha hecho que nuestras redes de datos brinden soporte de conectividad a tráfico con requerimientos de performance muy diferentes: VoIP, videoconferencias, navegación web, transacciones sobre bases de datos, sistemas de soporte de la operación de la empresa, etc. Cada uno de estos tipos de tráfico tiene requerimientos diferentes de ancho de banda, condiciones diferentes de delay, pérdida de paquetes, etc.
Poder dar respuesta a diferentes requerimientos de performance sobre una misma infraestructura de red supone la implementación de Calidad de Servicio (QoS).
La implementación de QoS requiere varias tareas:

  • Clasificación del tráfico.
    Proceso que permite dividir el tráfico de la red en diferentes categorías, cada una de las cuáles requiere un tratramiento diferente.
  • Marcado del tráfico.
    Proceso por el que se identifica cada trama de acuerdo a una clase o categoría de modo que los dispositivos de la red puedan reconocer a qué clase pertenece y operar en consecuencia.
  • Administración de la congestión del tráfico.
    En función de la clasificación del tráfico se da diferente tratamiento a cada flujo d datos para asegurar que el tráfico perteneciente a aquellas clases que requieren menor delay sea reenviado antes que el tráfico que no es sensible al delay.
  • Control de la congestión del tráfico.
    En caso de congestión del tráfico de la red es posible optar por un descarte selectivo de paquetes (de clases de menor precedencia), para preservar el tráfico de las clases de alta prioridad.
  • Implementación de políticas de tráfico.
    Un problema a resolver son las ráfagas de tráfico que desbordan el ancho de banda reservado para una clase, poniendo en riesgo la integridad de la red. La implementación de policing traffic permite indicar a las interfaces que deben descartar el tráfico excedente de un determinado ancho de banda asignado.
  • Implementación de traffic shaping.
    Una opción para manejar las ráfagas de tráfico excedentes es indicar al dispositivo que haga buffer de esas ráfagas antes de descartar el tráfico.
  • Mecanismos de mejora de la eficiencia del enlace.
    Permiten mejorar la performance de los enlaces.

Para la implementación QoS, Cisco IOS brinda 4 posibilidades diferentes:

  • Configuración por CLI.
    Permite configurar manualmente interfaz por interfaz las opciones de QoS.
    Es un método poco escalable.
  • Configuración por MQC.
    Permite una configuración modular de QoS a partir de la definición de clases y políticas.
    Es la opción para la configuración detallada de QoS en dispositivos Cisco IOS en la actualidad.
  • AutoQoS VoIP.
    Permite de modo simple y rápido configurar requerimientos de QoS en redes que implementan VoIP.
  • AutoQoS Enterprise.
    Implementión que en base a la operación de NBAR detecta hasta 10 tipos diferentes de tráfico que atraviesan enlaces WAN. Disponible a partir de Cisco IOS 12.3(7)T.

Entre las herramientas que ofrece Cisco IOS para la implementación de QoS utilizando MQC, se cuenta con:

  • Clasificación de tráfico:
    ACL
    NBAR.
  • Marcado de tráfico:
    DSCP
    IP Precedence.
    CoS (802.1P, ATM, EXP-MPLS, CLP).
  • Administración de congestión:
    FIFO
    PQ
    RR
    WRR
    CQ
    WFQ
    CBWFQ
    LLQ
  • Control de congestión:
    RED
    WRED
  • Policing:
    CAR
    1Rate/1Bucket.
    1Rate/2Bucket.
    2Rate/2Bucket.
  • Shapping:
    Average.
    Peak
    FRTS
  • Eficiencia de enlaces:
    Compresión de payload (Predictor, Stacker).
    Compresión de encabezados (cRTP; TCP).
    Fragmentation.
    Interleaving.

Enlaces de utilidad en el sitio de Cisco:

Tenés alguna información adicional que quieras compartir....?
Bienvenido!!!! agregá un comentario con el detalle.
Muchas gracias.
Oscar Gerometta

9 comentarios:

  1. voy a seguir al tanto de tu blog, es necesario que lleve una certifacion en cisco CCNA,para poder aumentar mis posibilidades laborales

    ResponderEliminar
  2. Una cosa que se suele hacer es configura la cola de máxima prioridad asignandoles un ancho de banda por ejemplo 2Mb y se hace un drop para descartar el exceso para que no se coma todo el ancho de banda. El resto de colas se marca el tráfico pero no se les asigna esa máxima prioridad ¿En caso de que el tráfico multimedia sobrepase el ancho de banda asignado con priority y se necesite mandar tráfico oro o plata? ¿Que se haría con exceso de tráfico multimedia? ¿Se descarta, se encola ..?

    ResponderEliminar
    Respuestas
    1. En primer lugar, solo puede haber una cola de máxima prioridad, ya que de lo contrario no sería máxima, sino compartida. El resto de las colas de tráfico tienen ancho de banda reservado y el excedente se comparte. Por lo tanto, si el tráfico que está asignado a colas de ancho de banda compartido excede la asignación, se enviará en la medida en que las otras colas no estén utilizando la reserva que se les asignó.
      Ahora bien, en Cisco, el comando "priority" se utiliza para definir la cola de máxima prioridad, con si se asigna ancho de banda con priority, eso actúa como reserva y como límite.

      Eliminar
  3. Es decir que si asigno ancho de banda con priority en caso de superar el límite que he puesto. se descartará aunque haya ancho de banda sobrante.Por ejemplo en un enlace de ethernet de 10 Mb si yo pongo 2 Mb de priority se descartará aunque no este usando el enlace en esos momentos para nada más y tenga 8Mb libres.

    ResponderEliminar
    Respuestas
    1. Exactamente.
      El comando "priority" en IOS reserva y limita el ancho de banda. Si hay tráfico excedente se descartará.

      Eliminar
  4. Oscar, me parece que el comando priority lo que hace es reservar en caso de congestion un porcentaje o una catidad de kb. Si el ancho de banda no se esta utilizando va a utilizar mas de lo que nosotros le asignamos. Al menos ese fue el resultado de un lab que tuve que hacer hace poco.

    ResponderEliminar
    Respuestas
    1. Cristian
      Cualquier mecanismo de QoS entra en funcionamiento cuando la interfaz comienza a recibir más tráfico del que puede reenviar. Es la explicación que se me ocurre para el laboratorio que mencionás.
      Por lo demás, una de las funciones del comando priority es precisamente limitar el uso del ancho de banda a un máximo porque de lo contrario podría provocar estrangulamiento en las sesiones que corren en otras colas de memoria.
      La referencia la tienes en este documento que compara los comandos priority y bandwidth: http://www.cisco.com/c/en/us/support/docs/quality-of-service-qos/qos-packet-marking/10100-priorityvsbw.html#summaryofdifferences

      Eliminar
  5. gracias Oscar por la aclaracion..en donde no puedo lograr hacer funcionar el comando priority es en una interfaz tunnnel..hasta donde entiendo en las interfaces tunnel hay que aplicarlo de manera "heredada" osea creando las clases, y luego una politica (child) que haga referencia a dichas clase. Y luego una politica superior que haga un shape del trafico total y que contenga a la politica "child". Pero asi y todo no le da prioridad a la ACL que le puse..es muy interesante todo esto de QoS pero me esta volviendo loco jaja

    ResponderEliminar
    Respuestas
    1. Cristian
      Este instructivo puede servirte para la implementación de QoS en interfaces túnel: http://www.cisco.com/c/en/us/support/docs/quality-of-service-qos/qos-policing/10106-qos-tunnel.html
      No pierdas de perspectiva que el efecto de estas configuraciones también depende de la versión de IOS que estés implementado.

      Eliminar

Gracias por tu comentario.
En este blog los comentarios están moderados, por lo que su publicación está pendiente hasta la revisión del mismo.