Descripción del control de flujo de CoS (Ethernet, PAUSA y PFC)
El control de flujo admite la transmisión sin pérdidas al regular los flujos de tráfico para evitar la caída de tramas durante períodos de congestión. El control de flujo detiene y reanuda la transmisión del tráfico de red entre dos nodos pares conectados en un vínculo físico de Ethernet de dúplex completo. Controlar el flujo mediante una pausa y reinicio evita que los búferes de los nodos se desborden y pierdan fotogramas. El control de flujo se configura por interfaz.
Junos admite dos métodos de control de flujo punto a punto:
-
PAUSA DE ETHERNET IEEE 802.3X
-
Control de flujo basado en prioridades (PFC) IEEE 802.1Qbb
Información general sobre la pausa y PFC de Ethernet y cuándo usarlas
Ethernet, PAUSE y PFC son mecanismos de control de flujo a nivel de vínculo.
Para obtener un control de congestión de extremo a extremo para el tráfico de máximo esfuerzo, consulte Descripción de la notificación de congestión explícita de CoS.
Pausa la pausa de Ethernet la transmisión de todo el tráfico en un vínculo Ethernet físico.
PFC desacopla la función de pausa del vínculo Ethernet físico y le permite dividir el tráfico de un vínculo en hasta ocho prioridades. Puede pensar en las ocho prioridades como ocho "carriles" de tráfico que se asignan a las clases de reenvío y las colas de salida. Cada prioridad se asigna a un valor de punto de punto de código CoS IEEE 802.1p de 3 bits en el encabezado de VLAN. Puede habilitar PFC en una o más prioridades (puntos de código IEEE 802.1p) en un vínculo. Cuando el tráfico habilitado para PFC está en pausa en un vínculo, el tráfico que no está habilitado para PFC continúa fluyendo (o se interrumpe si la congestión es lo suficientemente grave).
Utilice la pausa de Ethernet cuando desee evitar la pérdida de paquetes en todo el tráfico de un vínculo. Use PFC para evitar la pérdida de paquetes solo en tipos específicos de tráfico que requieren tratamiento sin pérdida, por ejemplo, tráfico de FCoE.
Según la cantidad de tráfico en un vínculo o asignado a una prioridad, pausar el tráfico puede provocar congestión en el puerto de entrada y propagar la congestión por la red.
Ethernet, PAUSE y PFC son configuraciones mutuamente excluyentes en una interfaz. Si intenta configurar la pausa de Ethernet y PFC en un vínculo, se produce un error de confirmación.
De forma predeterminada, todas las formas de control de flujo están deshabilitadas. Debe habilitar explícitamente el control de flujo en las interfaces para pausar el tráfico.
PAUSA DE Ethernet
La pausa de Ethernet es una función de alivio de la congestión que funciona proporcionando control de flujo a nivel de vínculo para todo el tráfico en un vínculo Ethernet de dúplex completo. La pausa de Ethernet funciona en ambas direcciones en el vínculo. En una dirección, una interfaz genera y envía mensajes de pausa de Ethernet para evitar que el par conectado envíe más tráfico. En la otra dirección, la interfaz responde a los mensajes de pausa de Ethernet que recibe del par conectado para detener el envío de tráfico.
La pausa de Ethernet también funciona en interfaces Ethernet agregadas. Por ejemplo, si las interfaces del par conectadas se denominan nodo A y nodo B:
-
Cuando los búferes de recepción en el nodo de interfaz A alcanzan un cierto nivel de plenitud, la interfaz genera y envía un mensaje de pausa de Ethernet al par conectado (nodo de interfaz B) para indicarle que deje de enviar tramas. Los búferes del nodo B almacenan tramas hasta que transcurre el período de tiempo especificado en la trama de pausa Ethernet; a continuación, el nodo B reanuda el envío de tramas al nodo A.
-
Cuando el nodo de interfaz A recibe un mensaje de pausa de Ethernet del nodo de interfaz B, el nodo de interfaz A deja de transmitir tramas hasta que transcurre el período de tiempo especificado en la trama de pausa de Ethernet; luego el nodo A reanuda la transmisión. (Los búferes de transmisión del nodo A almacenan tramas hasta que el nodo A reanuda el envío de tramas al nodo B).
En este caso, si el nodo B envía una trama de pausa Ethernet con un valor de tiempo de 0 al nodo A, el valor de tiempo 0 indica al nodo A que puede reanudar la transmisión. Esto sucede cuando el búfer del nodo B se vacía por debajo de un cierto umbral y el búfer puede volver a aceptar tráfico.
Control de flujo simétrico significa que una interfaz tiene la misma configuración de pausa de Ethernet en ambas direcciones. Las funciones de generación de pausa Ethernet y respuesta de pausa Ethernet están configuradas como habilitadas o ambas están deshabilitadas. El control de flujo simétrico se configura incluyendo la flow-control instrucción en el nivel de [edit interfaces interface-name ether-options] jerarquía.
El control de flujo asimétrico le permite configurar la funcionalidad de pausa de Ethernet en cada dirección independientemente en una interfaz. La configuración para generar mensajes de pausa Ethernet y para responder a los mensajes de pausa Ethernet no tiene que ser la misma. La pausa de Ethernet se puede habilitar en ambas direcciones, deshabilitar en ambas direcciones o habilitar en una dirección y deshabilitar en la otra dirección. El control de flujo asimétrico se configura incluyendo la configured-flow-control instrucción en el nivel de [edit interfaces interface-name ether-options] jerarquía.
En cualquier interfaz en particular, el control de flujo simétrico y asimétrico son mutuamente excluyentes. El control de flujo asimétrico anula y deshabilita el control de flujo simétrico. Se admite el control de flujo simétrico y asimétrico.
Si PFC está configurado en una interfaz, no puede confirmar una configuración de pausa de Ethernet en la interfaz. Si se intenta confirmar una configuración de pausa de Ethernet en una interfaz con PFC habilitado en una o varias colas, se produce un error de confirmación. Para confirmar la configuración de pausa, primero debe eliminar la configuración de PFC.
Control de flujo simétrico
El control de flujo simétrico configura los búferes de recepción y transmisión en el mismo estado. La interfaz puede enviar mensajes de pausa Ethernet y responder a ellos (el control de flujo está habilitado), o bien la interfaz no puede enviar mensajes de pausa Ethernet o responder a ellos (el control de flujo está deshabilitado).
Cuando se habilita el control de flujo simétrico en una interfaz, el comportamiento de pausa de Ethernet depende de la configuración del par conectado. Con el control de flujo simétrico habilitado, la interfaz puede realizar cualquier función de pausa Ethernet que pueda realizar el par conectado. Cuando el control de flujo simétrico está deshabilitado, la interfaz no envía ni responde a los mensajes de pausa de Ethernet.
Control de flujo asimétrico
El control de flujo asimétrico le permite especificar de forma independiente si el búfer de recepción de interfaz genera y envía mensajes de pausa de Ethernet para impedir que el par conectado transmita tráfico y si el búfer de transmisión de interfaz responde o no a los mensajes de pausa de Ethernet que recibe del par conectado y deja de transmitir tráfico. La configuración del búfer de recepción determina si la interfaz transmite mensajes de pausa de Ethernet y la configuración del búfer de transmisión determina si la interfaz recibe y responde a los mensajes de pausa de Ethernet:
-
Recibir búferes activados: habilita la transmisión de pausa Ethernet (genera y envía tramas de pausa Ethernet)
-
Transmitir búferes activados: habilita la recepción de pausa Ethernet (responde a las tramas de pausa Ethernet recibidas)
Debe establecer explícitamente el control de flujo tanto para el búfer de recepción como para el búfer de transmisión (on o off) a fin de configurar la pausa Ethernet asimétrica. En la tabla 1 se describe el estado de control de flujo configurado cuando se establecen los búferes de recepción (Rx) y transmisión (Tx) en una interfaz:
| Búfer de recepción (Rx) |
Buffer de transmisión (Tx) |
Estado de control de flujo configurado |
|---|---|---|
|
|
|
La interfaz genera y envía mensajes de pausa de Ethernet. La interfaz no responde a los mensajes de pausa de Ethernet (la interfaz continúa transmitiendo incluso si el par solicita que la interfaz deje de enviar tráfico). |
|
|
|
La interfaz responde a los mensajes de pausa de Ethernet recibidos del par conectado, pero no genera ni envía mensajes de pausa de Ethernet. (La interfaz no solicita que el par conectado deje de enviar tráfico). |
|
|
|
La misma funcionalidad que la PAUSA simétrica de Ethernet. La interfaz genera y envía mensajes de pausa de Ethernet y responde a los mensajes de pausa de Ethernet recibidos. |
|
|
|
El control de flujo de pausa de Ethernet está deshabilitado. |
El control de flujo configurado es el estado de pausa de Ethernet configurado en la interfaz.
En interfaces de 1 Gigabit Ethernet, se admite la negociación automática de la pausa de Ethernet con el par conectado. (No se admite la negociación automática en interfaces de 10 Gigabit Ethernet). La negociación automática permite que la interfaz intercambie anuncios de estado con el par conectado para que los dos dispositivos puedan acordar la configuración de pausa de Ethernet. Cada interfaz anuncia su estado de control de flujo al par conectado mediante una combinación de la pausa de Ethernet y los bits de ASM_DIR, como se describe en la tabla 2:
| Estado del búfer de recepción |
Estado del búfer de transmisión |
BIT DE PAUSA |
ASM_DIR Bit |
Descripción |
|---|---|---|---|---|
|
|
|
|
|
La interfaz anuncia que no hay capacidad de pausa de Ethernet. Esto equivale a deshabilitar el control de flujo en una interfaz. |
|
|
|
|
|
La interfaz anuncia control de flujo simétrico (tanto la transmisión de mensajes de pausa de Ethernet como la capacidad de recibir y responder a mensajes de pausa de Ethernet). |
|
|
|
|
|
La interfaz anuncia un control de flujo asimétrico (la transmisión de mensajes de pausa de Ethernet, pero no la capacidad de recibir y responder a los mensajes de pausa de Ethernet). |
|
|
|
|
|
La interfaz anuncia control de flujo simétrico y asimétrico. Aunque la interfaz no genera ni envía solicitudes de pausa de Ethernet al par, la interfaz admite la configuración de pausa de Ethernet simétrica y asimétrica en el par, ya que el par no se ve afectado si el par no recibe solicitudes de pausa de Ethernet. (Si la interfaz responde a las solicitudes de pausa de Ethernet del par, eso es suficiente para admitir el control de flujo simétrico o asimétrico en el par). |
La configuración de control de flujo en cada interfaz de conmutador interactúa con la configuración de control de flujo del par conectado. Cada par anuncia su estado al otro par. La interacción de la configuración de control de flujo de los pares determina el comportamiento de control de flujo (resolución) entre ellos, como se muestra en la Tabla 3. Las primeras cuatro columnas muestran la configuración de pausa de Ethernet en el dispositivo local y en el par conectado (también conocido como socio de vínculo). Las dos últimas columnas muestran la resolución de pausa de Ethernet que resulta de las configuraciones local y par en cada interfaz. Esto ilustra cómo la configuración de pausa Ethernet de cada interfaz afecta el comportamiento de pausa Ethernet en la otra interfaz.
En las columnas Resolución de la tabla, deshabilitar la transmisión de pausa de Ethernet significa que los búferes de recepción de interfaz no generan ni envían mensajes de pausa de Ethernet al par. Deshabilitar la recepción de pausa de Ethernet significa que los búferes de transmisión de la interfaz no responden a los mensajes de pausa de Ethernet recibidos del par.
| Interfaz local |
Interfaz par |
Resolución local |
Resolución por pares |
||
|---|---|---|---|---|---|
| BIT DE PAUSA |
ASM_DIR Bit |
BIT DE PAUSA |
ASM_DIR Bit |
||
| 0 |
0 |
No me importa |
No me importa |
Deshabilitar Ethernet PAUSE transmitir y recibir |
Deshabilitar Ethernet PAUSE transmitir y recibir |
| 0 |
1 |
0 |
No me importa |
Deshabilitar Ethernet PAUSE transmitir y recibir |
Deshabilitar Ethernet PAUSE transmitir y recibir |
| 0 |
1 |
1 |
0 |
Deshabilitar Ethernet PAUSE transmitir y recibir |
Deshabilitar Ethernet PAUSE transmitir y recibir |
| 0 |
1 |
1 |
1 |
Habilitar la pausa de Ethernet, transmitir y deshabilitar la recepción de pausa de Ethernet |
Deshabilitar la transmisión de pausa de Ethernet y habilitar la recepción de pausa de Ethernet |
| 1 |
0 |
0 |
No me importa |
Deshabilitar Ethernet PAUSE transmitir y recibir |
Deshabilitar Ethernet PAUSE transmitir y recibir |
| 1 |
0 |
1 |
No me importa |
Habilitar la pausa, la transmisión y la recepción de Ethernet |
Habilitar la pausa, la transmisión y la recepción de Ethernet |
| 1 |
1 |
0 |
0 |
Deshabilitar Ethernet PAUSE transmitir y recibir |
Deshabilitar Ethernet PAUSE transmitir y recibir |
| 1 |
1 |
0 |
1 |
Habilitar la recepción de PAUSA de Ethernet y deshabilitar la transmisión de PAUSA de Ethernet |
Habilitar la pausa de Ethernet, transmitir y deshabilitar la recepción de pausa de Ethernet |
| 1 |
1 |
No me importa |
No me importa |
Habilitar la pausa, la transmisión y la recepción de Ethernet |
Habilitar la pausa, la transmisión y la recepción de Ethernet |
Para su comodidad, la Tabla 3 replica la Tabla 28B-3 de la Sección 2 de la especificación IEEE 802.X.
PFC
PFC es una función de transporte y alivio de congestión sin pérdidas que funciona proporcionando un control de flujo granular a nivel de vínculo para cada punto de código IEEE 802.1p (prioridad) en un vínculo Ethernet dúplex completo. Cuando el búfer de recepción en una interfaz de conmutador se llena hasta un umbral, el conmutador transmite una trama de pausa al remitente (el par conectado) para detener temporalmente al remitente de transmitir más tramas. El umbral de búfer debe ser lo suficientemente bajo como para que el remitente tenga tiempo de dejar de transmitir tramas y el receptor pueda aceptar las tramas que ya están en el cable antes de que el búfer se desborde. El conmutador establece automáticamente umbrales de búfer de cola para evitar la pérdida de tramas.
Cuando la congestión obliga a pausar una prioridad de un vínculo, todas las demás prioridades del vínculo siguen enviando tramas. No se transmiten únicamente las tramas de la prioridad en pausa. Cuando el búfer de recepción se vacía por debajo de otro umbral, el conmutador envía un mensaje que inicia el flujo de nuevo.
PFC se configura mediante un perfil de notificación de congestión (CNP). Un CNP tiene dos partes:
-
Entrada: especifique el punto de código (o puntos de código) en el que se habilitará PFC y, opcionalmente, especifique la unidad máxima de recepción (MRU) y la longitud del cable entre la interfaz y la interfaz par conectada.
-
Salida: especifique la cola o colas de salida que responden a los mensajes de pausa del par conectado.
Una configuración PFC se aplica configurando un CNP en una o más interfaces. Cada interfaz que utiliza un CNP determinado está habilitada para pausar el tráfico identificado por las prioridades (puntos de código) especificadas en ese CNP. Puede configurar un CNP en una interfaz y puede configurar diferentes CNP en interfaces diferentes. Cuando se configura un CNP en una interfaz, el tráfico de entrada que se asigna a una prioridad que el CNP habilita para PFC se pausa cada vez que el búfer de cola se llena hasta el umbral de pausa. (El umbral de pausa no es configurable por el usuario.)
Configure PFC para una prioridad de extremo a extremo a lo largo de toda la ruta de datos para crear un carril de tráfico sin pérdidas en la red. Puede pausar selectivamente el tráfico en cualquier cola sin pausar el tráfico para otras colas en el mismo vínculo. Puede crear carriles sin pérdida para el tráfico, como FCoE, copia de seguridad de LAN o administración, mientras utiliza la administración de congestión estándar de caída de tramas para el tráfico IP en el mismo vínculo.
Las posibles consecuencias del control de flujo son:
-
Congestión del puerto de entrada (configurar demasiados flujos sin pérdida puede provocar congestión del puerto de entrada)
-
Una prioridad en pausa que hace que los dispositivos ascendentes detengan la misma prioridad, propagando así la congestión por la red
Por definición, PFC solo admite pausa simétrica (a diferencia de Ethernet PAUSE, que admite pausa simétrica y asimétrica). Con la pausa simétrica, un dispositivo puede:
-
Transmita tramas de pausa para pausar el tráfico entrante. (Esto se configura utilizando la estrofa de entrada de un perfil de notificación de congestión.)
-
Recibir, pausar tramas y dejar de enviar tráfico a un dispositivo cuyo búfer esté demasiado lleno para aceptar más tramas. (Esto se configura utilizando la estrofa de salida de un perfil de notificación de congestión.)
Al recibir una trama PFC de un par conectado, se detiene el tráfico en las colas de salida en función de las prioridades IEEE 802.1p que identifica la trama de pausa PFC. Las prioridades son del 0 al 7. De forma predeterminada, las prioridades se asignan a los números de cola del 0 al 7, respectivamente, y a clases de reenvío específicas, como se muestra en la tabla 4:
| Prioridad IEEE 802.1p (punto de código) |
Cola |
Clase de envío |
|---|---|---|
| 0 (000) |
0 |
Mejor esfuerzo |
| 1 (001) |
1 |
Mejor esfuerzo |
| 2 (010) |
2 |
Mejor esfuerzo |
| 3 (011) |
3 |
FCoE |
| 4 (100) |
4 |
Sin pérdidas |
| 5 (101) |
5 |
Mejor esfuerzo |
| 6 (110) |
6 |
control de red |
| 7 (111) |
7 |
control de red |
Por ejemplo, una trama de pausa PFC recibida que pausa la prioridad 3 pausa la cola de salida 3. Si no desea utilizar la configuración predeterminada, puede configurar la asignación personalizada de prioridades a las colas y las clases de reenvío.
Por convención, las implementaciones con acceso de servidor convergente suelen usar la prioridad 3 de IEEE 802.1p para el tráfico de FCoE. La configuración predeterminada establece la clase de reenvío como una clase de reenvío sin pérdida que se asigna a la fcoe cola 3. El clasificador predeterminado asigna el tráfico entrante de prioridad 3 a la fcoe clase de reenvío. Sin embargo, debe aplicar PFC a toda la ruta de datos de FCoE para configurar el comportamiento de extremo a extremo sin pérdida que requiere el tráfico de FCoE.
Si su red usa prioridad 3 para el tráfico de FCoE, le recomendamos que utilice la configuración predeterminada. Si su red utiliza una prioridad distinta de 3 para el tráfico de FCoE, puede configurar el transporte de FCoE sin pérdida en cualquier prioridad de IEEE 80.21p, tal y como se describe en Descripción de CoS Prioridades de IEEE 802.1p para flujos de tráfico sin pérdida y Descripción de la reasignación de prioridad de CoS IEEE 802.1p en una puerta de enlace FCoE-FC.
Para habilitar PFC con prioridad:
Especifique el punto de código IEEE 802.1p para detenerse en la estrofa de entrada de un CNP.
Si no utiliza las clases de reenvío sin pérdida predeterminadas, especifique el punto de código IEEE 802.1p que se va a pausar y la cola de salida correspondiente en la estrofa de salida del CNP.
Aplique el CNP a las interfaces de entrada en las que desea pausar el tráfico.
Si no utiliza las clases de reenvío sin pérdida predeterminadas, aplique el CNP a las interfaces de entrada en las que desea pausar el tráfico.
Cualquier cambio en la configuración de PFC en un puerto bloquea temporalmente todo el puerto (no solo las prioridades afectadas por el cambio de PFC) para que el puerto pueda implementar el cambio y, a continuación, desbloquee el puerto. El bloqueo del puerto detiene el tráfico de entrada y salida y provoca la pérdida de paquetes en todas las colas del puerto hasta que se desbloquea el puerto.
Un cambio en la configuración de PFC significa cualquier cambio en un CNP, incluido el cambio de la parte de entrada del CNP (habilitar o deshabilitar PFC con prioridad, o cambiar los valores de MRU o longitud de cable) o cambiar la parte de salida del CNP que habilita o deshabilita el control de flujo de salida en una cola. Un cambio de configuración de PFC solo afecta a los puertos que usan el CNP modificado.
Las siguientes acciones cambian la configuración de PFC:
-
Eliminar o deshabilitar una configuración de PFC (entrada o salida) en un CNP que esté en uso en una o más interfaces. Por ejemplo:
Un CNP existente con una estrofa de entrada que habilita PFC en las prioridades 3, 5 y 6 está configurado en las interfaces xe-0/0/20 y xe-0/0/21.
Deshabilitamos la configuración de PFC para la prioridad 6 en el CNP de entrada y, luego, confirmamos la configuración.
El cambio de configuración de PFC hace que todo el tráfico de las interfaces xe-0/0/20 y xe-0/0/21 se detenga hasta que se implemente el cambio de PFC. Cuando se implementa el cambio de PFC, el tráfico se reanuda.
-
Configurar un CNP en una interfaz. (Esto cambia el estado de PFC habilitando PFC en una o más prioridades).
-
Eliminar un CNP de una interfaz. (Esto cambia el estado de PFC deshabilitando PFC en una o más prioridades).
Cuando asocia el CNP con una interfaz, la interfaz utiliza PFC para enviar solicitudes de pausa cuando el búfer de cola de salida para el tráfico sin pérdida se llena hasta el umbral de pausa.
En conmutadores que utilizan clasificadores distintos para el tráfico de unidifusión y multidestino, puede asignar una cola de unidifusión (colas del 0 al 7) y una cola de multidestino (colas 8, 9, 10 u 11) al mismo punto de código IEEE 802.1p (prioridad) para que tanto el tráfico de unidifusión como el de multidifusión usen esa prioridad. Sin embargo, no asigne tráfico multidestino a colas de salida sin pérdida. Puede asignar una prioridad a varias colas de salida.
Puede asociar un máximo de un CNP a una interfaz, pero puede crear un número ilimitado de CNP que configuren explícitamente solo la estrofa de entrada y usen la estrofa de salida predeterminada.
La estrofa de salida del CNP se asigna a un perfil que las interfaces utilizan para responder a los mensajes de pausa recibidos del par conectado. En conmutadores independientes, puede crear dos CNP con una estrofa de salida configurada explícitamente.
Resumen de soporte de transporte sin pérdidas
Para el transporte sin pérdida, debe habilitar PFC en las prioridades (puntos de código) de IEEE 802.1p asignadas a clases de reenvío sin pérdida.
Cualquier cambio en la configuración de PFC en un puerto bloquea temporalmente todo el puerto (no solo las prioridades afectadas por el cambio de PFC) para que el puerto pueda implementar el cambio y, a continuación, desbloquee el puerto. El bloqueo del puerto detiene el tráfico de entrada y salida y provoca la pérdida de paquetes en todas las colas del puerto hasta que se desbloquea el puerto.
La configuración predeterminada de CoS proporciona dos clases de reenvío sin pérdidas, fcoe y sin pérdidas. Si configura explícitamente clases de reenvío sin pérdida, debe incluir el atributo packet drop para habilitar el no-loss comportamiento sin pérdida, o el tráfico no estará sin pérdida. Para la configuración predeterminada y explícita de clase de reenvío sin pérdida, debe configurar las estrofas de entrada CNP para habilitar PFC en la prioridad del tráfico sin pérdida y aplicar los CNP a las interfaces de entrada.
Descripción de las prioridades de CoS IEEE 802.1p para flujos de tráfico sin pérdida proporciona información detallada sobre la configuración explícita de las prioridades sin pérdida y sobre la configuración predeterminada de las prioridades sin pérdida, incluidas las estrofas de entrada y salida del CNP.
Comportamiento de control de flujo a nivel de vínculo específico de la plataforma
Use el Explorador de características para confirmar la compatibilidad de plataforma y versión para características específicas.
Utilice las siguientes tablas para revisar los comportamientos específicos de la plataforma para sus plataformas:
| Plataforma |
Diferencia |
|---|---|
| EX4400 |
|
| serie PTX |
|
| Serie QFX10000 |
|
| Plataforma |
Diferencia |
|---|---|
| Serie PTX10000 |
|
| serie QFX |
|
| Serie QFX10000 |
|