EN ESTA PÁGINA
Descripción de los perfiles de caída de WRED de CoS
Cuando el número de paquetes en cola es mayor que la capacidad del dispositivo para vaciar una cola de salida, la cola requiere un método para determinar qué paquetes se deben descartar para aliviar la congestión. Los perfiles de caída de detección temprana aleatoria ponderada (WRED) definen la probabilidad de caída de paquetes de diferentes probabilidades de pérdida de paquetes (PLP) a medida que se llena la cola de salida. Durante los períodos de congestión, a medida que se llena la cola de salida, el dispositivo descarta los paquetes entrantes según lo determinado por un perfil de caída, hasta que la cola de salida se congestiona menos.
En función de las probabilidades de pérdida, un perfil de caída puede dejar caer muchos paquetes mucho antes de que el búfer se llene, o puede descartar solo unos pocos paquetes, incluso si el búfer está casi lleno.
Los perfiles de caída se configuran en la sección perfil de caída de la jerarquía de configuración de clase de servicio (CoS). Los perfiles de caída se aplican mediante una asignación de perfil de caída en la configuración del programador de colas. Para cada programador de colas, puede configurar perfiles de caída independientes para cada PLP mediante el loss-priority atributo (bajo, medio-alto y alto). Esto le permite tratar el tráfico de diferentes PLP de diferentes maneras durante los períodos de congestión.
No aplique perfiles de caída al tráfico sin pérdida (tráfico que pertenece a una clase de reenvío que tiene el no-loss atributo drop). El tráfico sin pérdida utiliza el control de flujo basado en prioridades (PFC) para controlar la congestión.
No se pueden aplicar perfiles de caída a colas multidestino en dispositivos que las admitan.
Parámetros de perfil de caída
Los perfiles de colocación especifican dos valores, que funcionan como pares:
Nivel de llenado: el valor de plenitud de la cola, que representa un porcentaje de la memoria utilizada para almacenar paquetes en relación con la cantidad total de memoria asignada a la cola.
Probabilidad de caída: el valor porcentual que corresponde a la probabilidad de que se caiga un paquete individual.
Definición de perfiles de caída en conmutadores excepto QFX10000
Establezca dos niveles de llenado de cola y dos probabilidades de caída en cada perfil de eliminación. El primer nivel de llenado y la primera probabilidad de caída crean un par de valores y el segundo nivel de llenado y la segunda probabilidad de caída crean un segundo par de valores.
El primer valor de nivel de llenado especifica el porcentaje de plenitud de la cola en el que los paquetes comienzan a caer, conocido como punto de inicio de caída. Hasta que la cola no alcance este nivel de llenado, no se descarta ningún paquete. El segundo valor de nivel de llenado especifica el porcentaje de plenitud de la cola en el que se descartan todos los paquetes, conocido como punto final de descarte.
El primer valor de probabilidad de caída es siempre 0 (cero). Esto se empareja con el punto de inicio de caída y especifica que hasta que el nivel de llenado de la cola alcance el primer nivel de llenado, no se descarta ningún paquete. Cuando la capacidad de llenado de la cola supera el punto de inicio de la caída, los paquetes comienzan a caer hasta que la cola supera el segundo nivel de llenado, cuando todos los paquetes se caen. El segundo valor de probabilidad de caída, conocido como tasa de caída máxima, especifica la probabilidad de dejar caer paquetes cuando la plenitud de la cola alcanza el punto final de caída. A medida que la cola se llena desde el punto de inicio de entrega hasta el punto de finalización de entrega, los paquetes se colocan en un patrón lineal suave (denominado gráfico interpolado), como se muestra en la Figura 1. Después del punto de conexión de descarte, todos los paquetes se descartan.
La línea gruesa en la Figura 1 muestra las características de caída de paquetes para un perfil WRED de muestra. En el punto de inicio de entrega, la cola alcanza un nivel de llenado del 30 por ciento. En el punto final de colocación, el nivel de llenado de la cola alcanza el 50 por ciento y la tasa máxima de caída es del 80 por ciento.
No se cae ningún paquete hasta que el nivel de llenado de la cola alcanza el punto de inicio de la caída del 30 %. Cuando la cola alcanza el nivel de llenado del 30 %, los paquetes comienzan a caer. A medida que se llena la cola, el porcentaje de paquetes caídos aumenta de forma lineal. Cuando la cola se llena hasta el punto final de caída del 50 %, la tasa de caída de paquetes ha aumentado hasta la tasa de caída máxima del 80 %. Cuando el nivel de llenado de la cola supera el punto de finalización del 50 %, todos los paquetes se descartan hasta que el nivel de llenado de la cola cae por debajo del 50 %.
Definición de perfiles de caída en conmutadores QFX10000
Cada nivel de llenado de cola se empareja con una probabilidad de caída. A medida que la cola se llena en diferentes niveles, cada vez que alcanza un nivel de llenado configurado en un perfil de entrega, la cola aplica la probabilidad de caída emparejada con ese nivel de llenado al tráfico de la cola que supera el nivel de llenado. Puede configurar hasta 32 pares de niveles de llenado y probabilidades de caída para crear una curva de probabilidad de caída de paquetes personalizada con hasta 32 puntos de diferenciación.
Los paquetes no se descartan hasta que alcanzan el primer nivel de llenado de cola configurado. Cuando la cola alcanza el primer nivel de llenado, los paquetes comienzan a caer a la tasa de probabilidad de caída configurada emparejada con el primer nivel de llenado. Cuando la cola alcanza el segundo nivel de llenado, los paquetes comienzan a caer a la tasa de probabilidad de caída configurada emparejada con el segundo nivel de llenado. Este proceso continúa para el número de pares de nivel de relleno/probabilidad de caída que configure en el perfil de descarte.
Los perfiles de caída se interpolan, no se segmentan. Un perfil de caída interpolado aumenta gradualmente la probabilidad de caída a lo largo de una curva entre cada nivel de relleno configurado. Cuando la cola alcanza el siguiente nivel de relleno, la probabilidad de caída alcanza la probabilidad de caída emparejada con ese nivel de relleno. Un perfil de caída segmentado "salta" de un nivel de llenado y una configuración de probabilidad de caída a otro de forma escalonada. La probabilidad de caída del tráfico no cambia a medida que la cola se llena hasta que se alcanza el siguiente nivel de llenado.
Un ejemplo de interpolación es un perfil de caída con tres pares de nivel de relleno/probabilidad de caída:
Nivel de llenado de cola del 25 por ciento combinado con una probabilidad de caída del 30 por ciento
Nivel de llenado de cola del 50 por ciento combinado con una probabilidad de caída del 60 por ciento
Nivel de llenado de cola del 75 % combinado con una probabilidad de caída del 100 % (se descartan todos los paquetes que superen el nivel de llenado de cola del 75 %)
La cola no descarta ningún paquete hasta que su nivel de llenado alcanza el 25 %. Durante los períodos de congestión, cuando la cola se llena por encima del 25 % de su capacidad, la cola comienza a dejar caer paquetes a una velocidad del 30 % de los paquetes por encima del nivel de llenado.
Sin embargo, a medida que la cola continúa llenándose, no continúa dejando caer paquetes con la probabilidad de caída del 30 %. En cambio, la probabilidad de caída aumenta gradualmente a medida que la cola se llena hasta el nivel de plenitud del 50 por ciento. Cuando la cola alcanza el nivel de llenado del 50 por ciento, la probabilidad de caída ha aumentado al par de probabilidad de caída configurado para el nivel de relleno, que es del 60 por ciento.
A medida que la cola continúa llenándose, la probabilidad de caída no permanece en el 60 por ciento, sino que continúa aumentando a medida que se llena la cola. Cuando la cola alcanza el nivel de llenado final al 75 % de su capacidad, la probabilidad de caída ha aumentado al 100 % y todos los paquetes que superan el nivel de llenado del 75 % se eliminan.
Perfil de caída predeterminado
Si no configura los perfiles de caída y los aplica a los programadores de colas, el dispositivo utilizará el perfil de caída predeterminado para las clases de tráfico con pérdida. En el perfil de caída predeterminado, cuando el nivel de llenado es del 0 por ciento, la probabilidad de caída es del 0 por ciento. Cuando el nivel de llenado es del 100 por ciento, la probabilidad de caída es del 100 por ciento. Durante los períodos de congestión, tan pronto como los paquetes llegan a una cola, el perfil predeterminado puede comenzar a descartar paquetes.
Método de caída de paquetes
Cuando un paquete llega al encabezado de una cola, el dispositivo calcula un número aleatorio entre 0 y 100. El dispositivo traza el número aleatorio con el perfil de caída utilizando el nivel de llenado actual de la cola. Cuando el número aleatorio cae por encima de la línea del gráfico, la cola transmite el paquete fuera de la interfaz de salida. Cuando el número cae debajo del gráfico de la línea, el dispositivo deja caer el paquete.
Ejemplo de caída de paquetes para conmutadores excepto QFX10000
Para crear el patrón de caída lineal desde el punto de inicio de la caída hasta el punto final de la caída, las probabilidades de caída se derivan utilizando una aproximación lineal con ocho secciones, o pasos, desde el nivel mínimo de llenado de cola hasta el nivel máximo de llenado de cola. Los niveles de llenado se dividen en las ocho secciones por igual, comenzando en el nivel de llenado mínimo y terminando en el nivel de llenado máximo. A medida que se llena la cola, aumenta el porcentaje de paquetes perdidos. El porcentaje de paquetes caídos se basa en la tasa máxima de caídas.
Por ejemplo, el perfil de caída predeterminado (que especifica una tasa de caída máxima del 100 %) tiene las siguientes probabilidades de caída en cada sección o paso del patrón de caída lineal de ocho secciones:
Primera sección: la probabilidad de caída mínima es del 6,25 por ciento de la tasa de caída máxima. La probabilidad de caída máxima es del 12,5 por ciento de la tasa de caída máxima.
Segunda sección: la probabilidad de caída mínima es del 18,75 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es el 25 por ciento de la tasa máxima de caída.
Tercera sección: la probabilidad de caída mínima es del 30,25 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es del 37,5 por ciento de la tasa de caída máxima.
Cuarta sección: la probabilidad de caída mínima es del 43,75 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es el 50 por ciento de la tasa máxima de caída.
Quinta sección: la probabilidad de caída mínima es del 56,25 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es el 62 por ciento de la tasa máxima de caída.
Sexta sección: la probabilidad de caída mínima es del 68,75 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es del 75,5 por ciento de la tasa máxima de caída.
Séptima sección: la probabilidad de caída mínima es del 81,25 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es del 87,5 por ciento de la tasa de caída máxima.
Octava sección: la probabilidad de caída mínima es del 92,75 por ciento de la tasa de caída máxima. La probabilidad máxima de caída es el 100 por ciento de la tasa máxima de caída.
Los paquetes se caen incluso cuando no hay congestión, ya que las caídas de paquetes comienzan en el punto de inicio de la caída, independientemente de si existe congestión en el puerto. El ejemplo de perfil de caída predeterminado representa el peor de los casos, ya que el nivel de llenado del punto de inicio de entrega es del 0 por ciento, por lo que la caída de paquetes comienza cuando la cola comienza a recibir paquetes.
Puede especificar cuándo comienzan a caer los paquetes configurando un punto de inicio de caída en un nivel de llenado superior al 0 por ciento. Por ejemplo, si configura un perfil de entrega que tiene un punto de inicio de entrega del 30 %, los paquetes no se descartan hasta que la cola está llena en un 30 %. Le recomendamos que configure perfiles de caída adecuados para las condiciones de tráfico de su red.
Cuanto menor sea la brecha entre la tasa de caída mínima (que siempre es 0) y la tasa de caída máxima, menor será la brecha entre la probabilidad de caída mínima y la probabilidad de caída máxima en cada sección (paso) del patrón de caída lineal. El perfil de caída predeterminado, que tiene el espacio máximo entre la tasa de caída mínima (0 por ciento) y la tasa de caída máxima (100 %), tiene el espacio más alto entre la probabilidad de caída mínima y la probabilidad de caída máxima en cada paso. La configuración de una tasa de caída máxima más baja para un perfil de caída reduce el espacio entre la probabilidad de caída mínima y la probabilidad de caída máxima.
Mapas de perfil de caída
Los mapas de perfil de caída forman parte de la configuración del programador. Un mapa de perfil de caída asigna perfiles de caída a prioridades de pérdida de paquetes. Al especificar la asignación de perfil de entrega en un programador, se asocia el perfil de entrega con las clases de reenvío (colas) que se asignan al programador en una asignación de programador.
La prioridad de pérdida se configura para una cola en la sección clasificador de la jerarquía de configuración de CoS y la prioridad de pérdida se aplica al tráfico asignado a la clase de reenvío en la interfaz de entrada.
Cada programador puede tener varios mapas de perfil de caída.
Prevención de congestión
La configuración de perfiles de caída en colas de salida le permite controlar cómo afecta la congestión a otras colas en un puerto. Si no configura perfiles de caída y los asigna a las colas de salida, el dispositivo utilizará el perfil de caída predeterminado en las colas que reenvían tráfico con pérdida.
Por ejemplo, si un puerto de entrada reenvía tráfico a más de un puerto de salida y al menos uno de los puertos de salida experimenta congestión, eso puede provocar congestión del puerto de entrada. La congestión del puerto de entrada (el búfer de entrada supera su asignación de recursos) puede hacer que las tramas caigan en el puerto de entrada en lugar de en el puerto de salida. La caída de tramas del puerto de entrada afecta a todos los puertos de salida a los que el puerto de entrada congestionado reenvía el tráfico, no solo al puerto de salida congestionado.
No configure perfiles de caída para las fcoe no-loss clases y de reenvío. La FCoE y otras colas de tráfico sin pérdida requieren un comportamiento sin pérdida (colas de tráfico configuradas con el atributo de caída de no-loss paquetes). Utilice el control de flujo basado en prioridades (PFC) para evitar la caída de tramas en prioridades sin pérdida.
Configuración de un perfil de colocación de WRED y aplicación a una cola de salida
Para configurar un perfil de caída de paquetes WRED y aplicarlo a una cola de salida:
Configure un perfil de entrega:
En conmutadores excepto QFX10000, use la instrucción
set class-of-service drop-profiles profile-name interpolate fill-level drop-start-point fill-level drop-end-point drop-probability 0 drop-probability percentage.En conmutadores QFX10000, use la instrucción
set class-of-service drop-profiles profile-name interpolate fill-level level1 level2 ... level32 drop-probability probability1 probability2 ... probability32. Puede especificar tan solo dos pares de probabilidad de nivel de llenado/caída o hasta 32 pares.
Asigne el perfil de eliminación a un programador de cola utilizando la instrucción
set class-of-service schedulers scheduler-name drop-profile-map loss-priority (low | medium-high | high) protocol any drop-profile profile-name. El nombre del perfil desplegable es el nombre del perfil WRED configurado en el paso 1.Asigne el programador, que el paso 2 asocia con el perfil de eliminación, a la cola de salida utilizando la instrucción
set class-of-service scheduler-maps map-name forwarding-class forwarding-class-name scheduler scheduler-name. La clase de reenvío identifica la cola de salida. Las clases de reenvío se asignan a las colas de salida de forma predeterminada y se pueden reasignar a diferentes colas mediante una configuración explícita del usuario. El nombre del programador es el programador configurado en el paso 2.En conmutadores excepto QFX10000, asocie la asignación del programador con un perfil de control de tráfico mediante la instrucción
set class-of-service traffic-control-profiles tcp-name scheduler-map map-name. El nombre de la asignación del programador es el nombre configurado en el paso 3.En conmutadores excepto QFX10000, asocie el perfil de control de tráfico con una interfaz mediante la instrucción
set class-of-service interfaces interface-name forwarding-class-set forwarding-class-set-name output-traffic-control-profile tcp-name. El nombre del perfil de control de tráfico de salida es el nombre del perfil de control de tráfico configurado en el paso 4.La interfaz utiliza la asignación del programador en el perfil de control de tráfico para aplicar el perfil de destino (y otros atributos) a la cola de salida (clase de reenvío) en esa interfaz. Dado que puede utilizar distintos perfiles de control de tráfico para asignar distintos programadores a distintas interfaces, el mismo número de cola en distintas interfaces puede controlar el tráfico de diferentes maneras.
En los conmutadores QFX10000, asocie la asignación del programador con una interfaz mediante la instrucción
set class-of-service interfaces interface-name scheduler-map scheduler-map-name.La interfaz utiliza la asignación del programador para aplicar el perfil de destino (y otros atributos) a la cola de salida asignada a la clase de reenvío en esa interfaz. Dado que puede usar diferentes mapas de programador en diferentes interfaces, el mismo número de cola en diferentes interfaces puede manejar el tráfico de diferentes maneras.
Eliminar perfiles en colas habilitadas para la notificación de congestión explícita
Debe configurar un perfil de caída WRED en las colas que habilite para la notificación de congestión explícita (ECN). En las colas habilitadas para ECN, el perfil de caída establece el umbral para cuando la cola debe marcar un paquete como experimentando congestión (consulte Notificación de congestión explícita de CoS [ECN]). Cuando una cola se llena hasta el nivel en el que el perfil de caída de WRED tiene una probabilidad de caída de paquetes mayor que cero (0), el dispositivo puede marcar un paquete como en proceso de congestión. El hecho de que un dispositivo marque o no un paquete como en proceso de congestión es la misma probabilidad que la probabilidad de caída de la cola en ese nivel de llenado.
En las colas habilitadas para ECN, el dispositivo no usa el perfil de caída para controlar la caída de paquetes que no son paquetes compatibles con ECN (paquetes marcados como no ECT, bits de código ECN 00) durante los períodos de congestión. En su lugar, el dispositivo usa el algoritmo de caída de cola para descartar paquetes que no son compatibles con ECN durante períodos de congestión. Cuando una cola se llena hasta su nivel máximo de plenitud, la caída de cola simplemente deja caer todos los paquetes que llegan posteriormente hasta que haya espacio en la cola para almacenar más paquetes en búfer. Todos los paquetes que no son compatibles con ECN se tratan de la misma manera.
Para aplicar un perfil de caída WRED al tráfico que no es ECT, configure un clasificador de múltiples campos (MF) para asignar tráfico que no sea ECT a una cola de salida diferente que no esté habilitada para ECN y, luego, aplique el perfil de caída WRED a esa cola.