Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Configurar el tamaño del búfer del programador para administrar la congestión de salida

Las ráfagas de tráfico son comunes y pueden sobresuscribir una cola o puerto durante unos milisegundos o menos, lo que lleva a la caída de paquetes críticos. El búfer profundo configurable permite que las colas manejen tráfico de ráfagas y almacenen en búfer paquetes críticos durante cortos períodos de tiempo, mitigando la pérdida de paquetes críticos.

Para controlar la congestión en la etapa de salida, puede configurar el ancho de banda del búfer de retardo. El ancho de banda del búfer de retardo proporciona espacio en búfer de paquetes para absorber el tráfico de ráfaga hasta la duración especificada del retraso. Una vez que el búfer de retraso especificado se llena, los paquetes con una probabilidad de caída del 100 por ciento se eliminan del encabezado del búfer.

La velocidad de transmisión predeterminada del programador para las colas 0 a 7 es del 95, 0, 0, 0, 0, 0, 0 y el 5 por ciento del ancho de banda total disponible.

Los porcentajes predeterminados de tamaño de búfer para las colas 0 a 7 son 95, 0, 0, 0, 0, 0, 0 y 5 por ciento del búfer total disponible. El búfer total disponible por cola varía según el tipo de PIC.

Para configurar el tamaño del búfer, incluya la buffer-size instrucción en el nivel de [edit class-of-service schedulers scheduler-name] jerarquía:

Para cada programador, puede configurar el tamaño del búfer como una de las siguientes opciones:

  • Un porcentaje del búfer total. El búfer total por cola se basa en microsegundos y difiere según el tipo de dispositivo de enrutamiento.

  • El búfer restante disponible. El resto es el porcentaje de búfer que no está asignado a otras colas.

  • Compartido desde el grupo de búferes de la interfaz. En los enrutadores de la serie PTX, establezca el búfer de una cola para que sea de hasta el 100 por ciento del búfer de la interfaz. Esta opción permite que el búfer de la cola crezca hasta el 100 por ciento del búfer de la interfaz si y solo si es la única cola activa para la interfaz.

  • Un valor temporal, en microsegundos. Para la configuración temporal, el algoritmo de cola comienza a descartar paquetes cuando pone en cola más de un número calculado de bytes. Este máximo se calcula multiplicando la velocidad de transmisión de la cola por el valor temporal configurado.

    Nota:

    En general, el valor de búfer temporal predeterminado está inversamente relacionado con la velocidad o velocidad de conformación de la interfaz. A medida que aumenta la velocidad de la interfaz, la interfaz necesita cada vez menos búfer para almacenar datos, ya que es posible que la interfaz envíe más y más datos.

    Dado que los recursos de hardware disponibles para configurar las opciones del búfer temporal son limitados, se recomienda tener una configuración de búfer temporal común tanto como sea posible.

En general, puede configurar el tamaño del búfer del programador tanto para los programadores de puertos como para los programadores jerárquicos. Para los programadores de puertos, Junos calcula el tamaño del búfer compartido en función de lo siguiente:

  • Si se configura un formador de puertos, Junos calcula el tamaño del búfer en función del formador de puertos.

  • Si no se configura ningún formador de puertos, Junos calcula el tamaño del búfer en función de la velocidad del puerto.

Para los programadores jerárquicos, Junos calcula el tamaño del búfer compartido en función de lo siguiente:

  • Si se configura un modelador en la interfaz lógica, Junos calcula el tamaño del búfer en función del modelador de puertos de interfaz lógica.

  • Si se configura un formador de puertos, pero no hay un formador de interfaz lógica, Junos calcula el tamaño del búfer en función del formador de puerto.

  • Si no se configura ningún formador, Junos calcula el tamaño del búfer en función de la velocidad del puerto.

Ejemplo: configurar el valor del búfer de retraso para un programador

Puede asignar a una interfaz física o lógica un mapa de programador que consta de diferentes programadores (o colas). El búfer de retraso de gran tamaño de la interfaz física se puede distribuir a los distintos programadores (o colas) mediante las transmit-rate instrucciones y buffer-size en el nivel de [edit class-of-service schedulers scheduler-name] jerarquía.

En este ejemplo se muestran dos programadores sched-best y sched-exped, con el tamaño del búfer de retraso configurado como porcentaje (20 por ciento) y valor temporal (300.000 microsegundos), respectivamente. El sched-best programador tiene una tasa de transmisión del 10 por ciento. El sched-exped programador tiene una tasa de transmisión del 20 por ciento.

El sched-best búfer de retardo del programador duplica la velocidad de transmisión especificada del 10 por ciento. Suponiendo que el sched-best programador está asignado a una interfaz T1, este programador recibe el 20 por ciento del total de 500.000 microsegundos del búfer de retardo de la interfaz T1. Por lo tanto, el programador recibe 18.750 bytes de búfer de retardo:

Suponiendo que el sched-exped programador está asignado a una interfaz T1, este programador recibe 300.000 microsegundos del búfer de retardo de 500.000 microsegundos de la interfaz T1 con una tasa de tráfico del 20 por ciento. Por lo tanto, el programador recibe 11.250 bytes de búfer de retardo:

Para configurar este ejemplo:

  1. Configure el sched-best programador.
  2. Especifique la velocidad de transmisión del 10 por ciento.
  3. Especifique el tamaño del búfer como 20 por ciento.
  4. Configure el sched-exped programador.
  5. Especifique la velocidad de transmisión del 20 por ciento.
  6. Especifique el valor temporal del tamaño del búfer (300 000 microsegundos).
  7. Compruebe la configuración.
  8. Guarde la configuración.

Ejemplo: configurar la velocidad de conformación de la interfaz física

En general, la velocidad de la interfaz física es la base para calcular el tamaño del búfer de retardo. Sin embargo, cuando se incluye la shaping-rate instrucción, la velocidad de modelación se convierte en la base para calcular el tamaño del búfer de retardo.

En este ejemplo se configura la velocidad de conformación en una interfaz T1 a 200 Kbps, lo que significa que el ancho de banda de la interfaz T1 se establece en 200 Kbps en lugar de 1,5 Mbps. Dado que 200 Kbps es menos que 4xDS0, esta interfaz recibe 4 segundos de búfer de retardo, u 800 Kbps de tráfico, que es de 800 KB por un segundo completo.

  1. Especifique la interfaz en la que desea configurar la velocidad de modelado.
  2. Especifique la velocidad de modelado.
  3. Compruebe la configuración.
  4. Guarde la configuración.

Configuración completa

En este ejemplo se muestra una PIC IQ OC12 canalizada en la ranura FPC 0, la ranura PIC 0 y una interfaz T1 canalizada con encapsulación Frame Relay. También muestra una configuración de mapa de programador en la interfaz física.

Habilitar y deshabilitar la asignación de memoria dinámica por cola

En Junos OS, la dinámica de asignación de memoria (MAD) es un mecanismo que aprovisiona dinámicamente búfer de retraso adicional cuando una cola utiliza más ancho de banda del asignado en la configuración de velocidad de transmisión. Con este búfer adicional, las colas absorben las ráfagas de tráfico más fácilmente, evitando así la caída de paquetes. El mecanismo MAD puede aprovisionar búfer de retraso adicional solo cuando una cola utiliza ancho de banda de transmisión adicional. Esto significa que la cola podría tener pérdidas de paquetes si no hay un exceso de ancho de banda de transmisión disponible.

Solo para las plataformas de enrutamiento universal 5G serie MX y los conmutadores Ethernet serie EX de Juniper Networks, el mecanismo MAD está habilitado, a menos que el búfer de retraso esté configurado con una configuración temporal para una cola determinada. El mecanismo MAD es particularmente útil para reenviar clases que transportan tráfico inmune a la latencia para el cual el requisito principal es la máxima utilización del ancho de banda. Por el contrario, para el tráfico sensible a la latencia, es posible que desee deshabilitar el mecanismo MAD porque los búferes de retraso grandes no son óptimos.

La compatibilidad con MAD depende del FPC y del motor de reenvío de paquetes, no de la PIC. Sin concentradores de puertos modulares (MPC) y las PIC IQ, IQ2, IQ2E o IQE admiten MAD.

Para habilitar el mecanismo MAD en hardware compatible:

Incluya la buffer-size percent instrucción en el nivel jerárquico[edit class-of-service schedulers scheduler-name]:

El búfer mínimo asignado a cualquier cola es de 18.432 bytes. Si una cola está configurada para tener un tamaño de búfer inferior a 18.000, la cola conserva un tamaño de búfer de 18.432 bytes.

Si lo desea, puede configurar un tamaño de búfer mayor que la velocidad de transmisión configurada. El búfer puede aceptar ráfagas de paquetes que superan la velocidad de transmisión configurada, si hay suficiente exceso de ancho de banda disponible. Por ejemplo:

Como se indicó anteriormente, puede utilizar una configuración de búfer de retraso temporal para deshabilitar el mecanismo MAD en una cola, limitando así el tamaño del búfer de retardo. Sin embargo, la latencia efectiva del búfer para una cola temporal está limitada no solo por el valor del tamaño del búfer, sino también por el perfil de colocación asociado. Si un perfil de colocación especifica una probabilidad de caída del 100 por ciento en un nivel de llenado inferior al 100 %, la latencia máxima efectiva del búfer es menor que la configuración del tamaño del búfer. Esto se debe a que el perfil de colocación especifica que los paquetes de colocación de la cola antes del búfer de retraso de la cola estén llenos al 100 %.

Tal configuración podría parecerse al siguiente ejemplo:

Comportamiento de configuración del tamaño de búfer específico de la plataforma

Utilice el Explorador de características para confirmar la compatibilidad de la plataforma y la versión para la configuración del tamaño del búfer.

Use la tabla siguiente para revisar los comportamientos específicos de la plataforma para su plataforma:

Diferencia de plataforma

Enrutadores de la serie ACX7000

Para el buffer-size, utilice la temporal opción para configurar el búfer compartido. Utilice las percent opciones y remainder para configurar el búfer garantizado.

Enrutadores de la serie PTX

Los enrutadores de la serie PTX admiten la opción de buffer-size, que permite establecer el shared búfer de una cola para que sea hasta el 100 por ciento del búfer de la interfaz. Esta opción permite que el búfer de la cola crezca hasta el 100 por ciento del búfer de la interfaz si y solo si es la única cola activa para la interfaz.