Este documento clarifica cómo un router calcula el tamaño del limite de cola (queue limit) cuando existen características de encolado habitadas por VC en una interfaz ATM que soporta IP a Clase de Servicio (CoS). La CLI de calidad de servicio modular (QoS) de Cisco (conocida como MQC) se utiliza para configurar las políticas de servicio que se aplican a una interfaz lógica, ya sea ésta una interfaz principal, una subinterfaz o un circuito virtual. Estas políticas de servicio implementan alguna acción de QoS, desde la regulación y el modelado hasta la marcación y la colocación en cola.
Para obtener más información sobre las convenciones del documento, consulte Convenciones de Consejos Técnicos de Cisco.
No hay requisitos previos específicos para este documento.
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
La información que se presenta en este documento se originó a partir de dispositivos dentro de un ambiente de laboratorio específico. All of the devices used in this document started with a cleared (default) configuration. Si la red está funcionando, asegúrese de haber comprendido el impacto que puede tener un comando antes de ejecutarlo.
El router de Cisco interactúa con las funciones de colocación en cola por VC habilitadas para almacenar paquetes para un VC ATM en uno de dos conjuntos de colas dependiendo del nivel de congestión del VC:
Cola | Ubicación | Métodos de almacenamiento en cola | Asignación de políticas de servicio | Comando a ajustar |
---|---|---|---|---|
Cola de hardware o anillo de transmisión | Adaptador de puerto o módulo de red | sólo FIFO | No | tx-ring-limit |
Cola de capa 3 | Sistema de procesamiento de capa 3 o búfers de interfaz | Ninguno | Yes | Varía con el método para colocación en cola: - vc-hold-limit - queue-limit |
La congestión se define como el llenado del anillo de transmisión (tx-ring-limit). Consulte Introducción y Ajuste del Valor del límite de anillo tx.
Es importante comprender cuándo el router utiliza las colas de capa 3, ya que las políticas de servicio se aplican solamente a los paquetes almacenados en las colas de capa 3. El adaptador de puerto ATM o el módulo de red y el sistema de procesador de capa 3 colaboran de la siguiente manera:
La interfaz ATM transmite celdas en cada circuito virtual permanente (PVC) ATM según la velocidad de modelado ATM.
La interfaz ATM mantiene una cola de hardware por VC o un anillo de transmisión, donde almacena los paquetes que esperan la transmisión en ese VC.
Cuando se llena la cola de hardware o el anillo de transmisión, la interfaz ATM proporciona una contrapresión explícita al sistema de procesador de capa 3. La contrapresión por VC evita el consumo excesivo innecesario de memorias intermedias por un único PVC ATM. Notifica al procesador de la capa 3 que deje de quitarle la cola a los paquetes destinados fuera del VC particular al anillo de transmisión de la interfaz ATM porque la cola por VC ha alcanzado un cierto nivel de ocupación. El procesador de capa 3 ahora almacena los paquetes excedentes en las colas de capa 3. Durante este tiempo, el procesador de capa 3 continúa reenviando paquetes destinados a otros PVC no congestionados.
Cuando la interfaz ATM envía los paquetes en el anillo de transmisión y vacía el anillo, nuevamente tiene suficientes búfers disponibles para almacenar los paquetes. Libera la contrapresión y el procesador de capa 3 descoloca los paquetes nuevos en la interfaz ATM.
Cuando el número total de paquetes almacenados en la memoria intermedia en la interfaz ATM para todos los PVC alcanza un cierto nivel comparado con el espacio total disponible de almacenamiento en búfer, la interfaz ATM proporciona la contrapresión en el nivel total VC agregado. Esta contrapresión notifica al procesador de capa 3 que deje de enviar paquetes a la interfaz ATM.
Lo que es más importante, con este sistema de comunicación, la interfaz ATM reconoce que su anillo de transmisión está lleno para un VC particular y regula la recepción de nuevos paquetes del sistema de procesador de capa 3. Por lo tanto, cuando el VC está congestionado, la decisión de caída se mueve de una decisión aleatoria de último en entrar/primer descartado en la cola primero en entrar, primero en salir (FIFO) del anillo de transmisión a una decisión diferenciada basada en las políticas de servicio de nivel IP implementadas por el procesador de capa 3.
La cola de capa 3 siempre tiene un límite de cola. Este valor define el número de paquetes dentro de la cola. Cuando se llena esta cola, el router inicia una política de descarte. Esta política puede ser una eliminación de cola o Weighted Random Early Detection (WRED). En otras palabras, el límite de cola define cuántos paquetes se pueden almacenar en la cola de la capa 3 antes de que comiencen a ocurrir las caídas.
El router asigna automáticamente un valor de límite de cola predeterminado. El valor calculado varía con el método de colocación en cola y con la plataforma. Es importante destacar que el límite de cola debe ser lo suficientemente pequeño como para evitar introducir latencia debido a la colocación en cola, pero lo suficientemente grande como para evitar caídas y un impacto resultante en los flujos basados en TCP.
En plataformas distribuidas como la serie 7500 de Cisco y FlexWAN, el valor predeterminado varía según el número de interfaces del sistema. Por lo tanto, las clases en un sistema con sólo dos interfaces pueden recibir más buffers que en un sistema con cientos de subinterfaces y VC. El router le da a cada clase un valor mínimo para asegurar suficientes búferes para alimentar la interfaz a velocidad de línea. Los límites de cola representan un límite de crédito para la interfaz. En otras palabras, el router asigna los búfers entre las interfaces, los PVC y las clases en proporción al ancho de banda de esas interfaces, PVC y clases. De forma predeterminada, los valores queue-limit no sobresuscriben las memorias intermedias disponibles.
En las secciones siguientes se tratan los límites de cola con más detalle.
En los VC ATM en las plataformas no distribuidas, la colocación en cola por VC y las colas de capa 3 se habilitan de forma predeterminada en las versiones de software de Cisco IOS®. FIFO es el método de colocación en cola predeterminado aplicado a las colas de capa 3 cuando no se ha configurado ningún mecanismo de colocación en cola específico. Las colas de capa 3 utilizan FIFO de forma predeterminada, ya que el algoritmo de colocación en cola predeterminado en una interfaz ATM también es FIFO. Originalmente, estas colas admitían un límite de cola de sólo 40. Esto se ilustra en el siguiente resultado:
router#show queueing interface atm 2/0.10 Interface ATM2/0.10 VC 10/32 Queueing strategy: FIFO Output queue 0/40, 244 drops per VC
A partir de la versión 12.1(5)T del software Cisco IOS, puede ajustar el tamaño de la cola FIFO por VC a un valor entre 5 y 1024 con el comando vc-hold-queue.
El comando queue-limit sólo se aplica a las clases configuradas con Class-Based, Weighted Fair Queuing (CBWFQ) mediante el comando bandwidth. El comando queue-limit define el número de paquetes que las colas de capa 3 almacenarán antes de que comiencen a producirse las caídas. En otras palabras, es la profundidad de la cola de capa 3.
El valor queue-limit predeterminado varía según la plataforma.
Cisco 2600, 3600, 7200 Series Router y MC3810: El valor predeterminado es 64. El siguiente ejemplo de salida se capturó en un módulo de red ATM en la serie 2600.
router#show queueing interface atm 2/0.10 Interface ATM2/0.10 VC 10/32 Queueing strategy: weighted fair Total output drops per VC: 1539 Output queue: 0/512/64/1539 (size/max total/threshold/drops) Conversations 0/37/128 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated)
Cisco serie 7500 y FlexWAN: El valor predeterminado se calcula proporcionando a cada clase su parte proporcional de los búfers primarios. La proporción se basa en el ancho de banda asignado a la clase en comparación con el ancho de banda del primario. Específicamente, el límite de cola se determina por la demora máxima de 500 ms con un tamaño promedio de paquete de 250 bytes. Por ejemplo, a una clase con 1 MB de ancho de banda se le da un límite de cola de 100000 / (250 x 8 x 2) = 250. Es importante destacar que también se basa en lo siguiente:
Cantidad de SRAM o memoria de paquete disponibles.
La cantidad de interfaces, ya que la SRAM disponible se debe dividir entre las interfaces.
interface ATM9/1/0.100 point-to-point ip address 1.1.1.1 255.255.255.0 pvc 1/100 ubr 1000 service-policy out pmap flexwan#show policy-map interface atm 9/1/0.100 ATM9/1/0.100: VC 1/100 service-policy output: pmap queue stats for all priority classes: queue size 0, queue limit 75 packets output 0, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 class-map: e1 (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: ip dscp 10 Priority: kbps 300, burst bytes 7500, b/w exceed drops: 0 class-map: e2 (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: ip dscp 20 queue size 0, queue limit 75 packets output 0, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0 bandwidth: kbps 300, weight 42 class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0 bps match: any 0 packets, 0 bytes 5 minute rate 0 bps queue size 0, queue limit 33 packets output 2, packet drops 0 tail/random drops 0, no buffer drops 0, other drops 0
Nota: El Procesador de interfaz versátil (VIP) y FlexWAN eligen el valor de límite de cola predeterminado y lo envían al procesador principal (como el Procesador de switch de ruta [RSP] en la serie 7500) con el primer conjunto de estadísticas de recuento de paquetes. Por lo tanto, hasta que el VC ATM transporta el tráfico, puede aparecer un valor incorrecto en la salida de la interfaz show policy-map.
El almacenamiento en cola de baja latencia (LLQ) implementa una garantía de ancho de banda mínima y máxima, que se configura con el comando priority. LLQ implementa un dispositivo que retiene el tráfico prioritario a su ancho de banda asignado durante la congestión para asegurarse de que el tráfico no prioritario, como los paquetes de ruteo y otros datos, no se muera de hambre. Dado que la regulación se utiliza para descartar paquetes y no se impone el límite de cola, el comando queue-limit no se puede utilizar con el comando priority.
WRED se puede configurar como una política de descarte opcional en los paquetes en las colas de capa 3. Puede configurar WRED y un mecanismo de colocación en cola elaborado como CBWFQ o Cola de baja latencia (LLQ).
En VIP y FlexWAN, los parámetros WRED predeterminados se derivan directamente del límite de cola predeterminado. Específicamente, el valor de umbral máximo se establece en la mitad del límite de cola predeterminado y los valores de umbral mínimo se reducen proporcionalmente.
Además, los valores de umbral WRED predeterminados tienen en cuenta los parámetros de modelado ATM asociados con el VC. Para acomodar ráfagas mayores que puedan aparecer a velocidades más altas, cuanto más alto sea la velocidad de modelado del VC, mayores serán los umbrales mínimos y máximos predeterminados. Por ejemplo, con un ATM de 10 kbps, los parámetros WRED predeterminados aplicados al VC en un router particular se muestran a continuación:
nf-7505-1# show running-config interface ATM1/1/0.47 point-to-point atm pvc 47 0 47 aal5snap 10 10 1 random-detect wredgroup1 nf-7505-1# show queueing red VC 0/47 - random-detect group default: exponential weight 9 precedence min-threshold max-threshold mark-probability --------------------------------------------------------------- 0: 20 40 1/10 1: 22 40 1/10 2: 24 40 1/10 3: 26 40 1/10 4: 28 40 1/10 5: 30 40 1/10 6: 32 40 1/10 7: 34 40 1/10
En comparación, se muestran los parámetros WRED predeterminados aplicados por el mismo router a un VC formado a 9 Mbps de velocidad de célula sostenida (SCR) y 10 Mbps de velocidad de célula pico (PCR):
nf-7505-1#show running-config interface ATM1/1/0.49 point-to-point atm pvc 49 0 49 aal5snap 10000 9000 100 random-detect wredgroup3 nf-7505-1#show queueing red VC 0/49 - random-detect group default: exponential weight 9 precedence min-threshold max-threshold mark-probablity --------------------------------------------------------------- 0: 72 144 1/10 1: 81 144 1/10 2: 90 144 1/10 3: 99 144 1/10 4: 108 144 1/10 5: 117 144 1/10 6: 126 144 1/10 7: 135 144 1/10
El queue-limit define el número máximo de paquetes que las colas de capa 3 pueden almacenar en un momento dado. El umbral máximo define la profundidad media máxima de la cola. Al cambiar el límite de cola, asegúrese de que también ajusta los umbrales WRED y que el límite de cola configurado es mayor que los umbrales máximos WRED.
Incluso en un VC configurado con WRED, todos los paquetes que llegan a un VC cuando el tamaño promedio de la cola está por encima del límite de cola se descartan. Por lo tanto, en la siguiente configuración, el límite de cola de 400 y el umbral mínimo de 460 para el punto de código de servicios diferenciados (DSCP) 32 implementa una caída de cola con un tamaño de cola promedio de 400 paquetes y evita que WRED entre en vigor de forma efectiva.
policy-map ppwe class voip priority 64 class bus bandwidth 168 random-detect dscp-based random-detect exponential-weighting-constant 10 random-detect dscp 8 11 66 1 random-detect dscp 32 460 550 1 queue-limit 400
Nota: Consulte también Consideraciones sobre Ajuste de Ajuste de Fase WRED en la Guía de Diseño de Clase de Servicio de IP a ATM al ajustar los valores de umbral predeterminados.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
15-Nov-2007 |
Versión inicial |