Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Distribución de flujos y orden de paquetes

En este tema se describe la distribución de carga y el orden de los paquetes en los dispositivos SRX5000 Line.

Descripción de la distribución de carga en dispositivos de línea de SRX5000

El algoritmo de distribución de carga, que es compatible con los dispositivos SRX5800, SRX5600 y SRX5400, se ajusta en función de la capacidad de la sesión y la potencia de procesamiento. (La compatibilidad real de la plataforma depende de la versión de Junos OS en su instalación).

La distribución de sesiones basada en hash utiliza una tabla hash. La tabla de peso de sesión de SPU se utiliza para asignar un ID de SPU a cada índice hash de la tabla hash de distribución de sesión. De esta manera, el número de sesiones creadas en cada SPU utilizando una distribución basada en hash es proporcional al peso de la SPU en la tabla de pesos de sesión de SPU. Cada NPU también mantiene una tabla de peso de sesión de SPU y una tabla hash de distribución de sesión idénticas que utiliza para seleccionar una SPU para reenviar paquetes que no coinciden con una sesión de NPU.

En caso de que se produzca un error en la SPU, el motor de enrutamiento restablecerá todas las tarjetas del plano de datos, incluidas las IOC y los NPC, a fin de mantener la coherencia de la tabla hash para la distribución de la sesión.

En la distribución de sesión basada en hash, los pesos se basan en la capacidad de la sesión. Recomendamos el modo de distribución de sesión hash cuando se requiera una alta capacidad de sesión.

Nota:

La distribución de carga en los dispositivos de línea de SRX5000 siempre se basa en hash.

La inserción y extracción de SPC provoca un nuevo cálculo de la tabla de peso de sesión de SPU en el momento de inicialización del punto central, ya que el chasis debe reiniciarse después de la inserción.

A partir de Junos OS versión 15.1X49-D30, la arquitectura del punto central se ha mejorado para manejar sesiones simultáneas más altas y conexiones por segundo (cps) para el dispositivo de línea de SRX5000.

Las mejoras en la arquitectura del punto central impiden que los paquetes de datos pasen por el punto central descargando la administración del tráfico en las SPU. La capacidad de sesión del sistema se amplía, ya que se elimina el límite de sesión en el punto central.

Cálculo del ID de SPU

El ID de SPU para un dispositivo equipado con la tarjeta de procesamiento de servicios (SPC) SRX3K-SPC-1-10-40, SRX5K-SPC-2-10-40 o SRX5K-SPC3 se calcula como sigue:

El SRX3K-SPC-1-10-40, SRX5K-SPC-2-10-40 y SRX5K-SPC3 contienen dos PIC por tarjeta, cuatro PIC por tarjeta (FPC) y dos PIC por tarjeta, respectivamente. Por ejemplo, si un dispositivo contiene 2 tarjetas en la ranura 1 (ID de FPC 0) y en la ranura 2 (ID de FPC 1), los ID de SPU esperados son los siguientes:

  • Para SPC1: (0, 1) y (4, 5), total 4 SPU en 2 tarjetas.

  • Para SPC2: (0, 1, 2, 3) y (4, 5, 6, 7), total 8 SPU en 2 tarjetas.

  • Para SPC3: (0, 1) y (4, 5), total 4 SPU en 2 tarjetas.

Para FPC1 (la segunda tarjeta) y PIC1 (la segunda PIC de la tarjeta), el ID de SPU se calcula como:

Utilice esta convención al referir el ID de SPU para CLI y SNMP.

Reenvío basado en hash en SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) y SRX5K-MPC3-100G10G (IOC3)

En estos firewalls de la serie SRX, un paquete pasa por una serie de eventos que involucran diferentes componentes a medida que avanza desde el procesamiento de entrada hasta el de salida. Con la función de reenvío de paquetes de ruta de datos, puede obtener una entrega rápida de tráfico de E/S a través de la línea de dispositivos SRX 5000.

SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) y SRX5K-MPC3-100G10G (IOC3) son tarjetas de interfaz compatibles con los dispositivos SRX5400, SRX5600 y SRX5800. El concentrador de puerto modular (MPC) proporciona servicios de equilibrio de carga para las unidades de procesamiento de servicios (SPU) mediante el método de reenvío basado en hash.

En el reenvío basado en hash, el MPC puede reenviar el paquete a una SPU (DCP) seleccionada en lugar del punto central. Este enfoque mejora el escalado de la sesión y evita la sobrecarga del punto central.

El cálculo del valor hash implica los siguientes pasos:

  • Para los paquetes IPv4, el módulo de reenvío basado en hash genera el valor hash basado en la información de las capas 3 y 4, según los distintos tipos de protocolo de capa 4.

  • Para los protocolos de Protocolo de transmisión de control de transmisiones (SCTP), TCP, UDP, Encabezado de autenticación (AH), proveedor de servicios de borde (ESP) y Protocolo de mensajes de control de Internet (ICMP), el módulo hash utiliza información de capa 4 para generar el valor hash. Para cualquier otro protocolo, solo se utiliza información de capa 3 en la generación de hash.

  • Para los paquetes de fragmentos IPv4, el valor hash se calcula utilizando únicamente la información de capa 3. Esto también se aplica al primer fragmento del paquete.

  • Para paquetes que no son IP, el módulo de reenvío basado en hash utiliza la información de capa 2 para calcular el valor hash.

Una vez que se calcula un valor hash de acuerdo con la información de capa 2, capa 3 o capa 4 del paquete, se asigna un ID de SPU a cada índice hash de la tabla hash de distribución de sesión.

Nota:

SRX5K-MPC (IOC2), SRX5K-MPC3-40G10G (IOC3) y SRX5K-MPC3-100G10G (IOC3) solo se pueden usar en dispositivos SRX5400, SRX5600 y SRX5800 configurados para la distribución de sesiones basada en hash.

Cuando el modo de distribución de sesión basado en hash está habilitado, el sistema cambia su comportamiento al modo basado en alta capacidad de sesión cuando SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) y SRX5K-MPC3-100G10G (IOC3) están instalados en el dispositivo.

Nota:

En los dispositivos de línea de SRX5000 con una SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) o SRX5K-MPC3-100G10G (IOC3) instalada, durante un reinicio del sistema o SPU, cuando el modo de distribución de sesión basado en hash está habilitado, el tráfico pasará solo cuando todas las SPU estén activas después del reinicio.

Los MPC de la IOC3 proporcionan servicios de equilibrio de carga para las SPU mediante la realización de reenvío de paquetes de ruta de datos basada en hash para interconectarse con todas las IOC y SPC existentes.

La IOC3 procesa los paquetes de entrada y salida. La IOC3 analiza el paquete de entrada y lo envía a la SPU para su posterior procesamiento de seguridad, incluida la búsqueda de sesiones de flujo, la comprobación de zonas y políticas, VPN, ALG, etc.

La IOC3 administra la memoria de datos de paquetes y las colas de estructura para las funciones de búsqueda y encapsulación de paquetes.

Nota:

A partir de Junos OS versión 15.1X49-D10 y Junos OS versión 17.3R1, la distribución de sesión basada en hash es el modo predeterminado para los dispositivos SRX5400, SRX5600 y SRX5800. La selección de las claves hash depende de los protocolos de aplicación.

A partir de Junos OS versión 17.4R1, el IOC procesa el tráfico y lo distribuye a diferentes SPU, según un algoritmo de distribución de sesión basado en hash. Esta mejora proporciona una distribución hash uniforme entre todas las SPU mediante el uso de una tabla hash de longitud fija más grande. En versiones anteriores de Junos OS, la distribución del tráfico era desigual entre todas las SPU debido a una tabla hash de longitud fija.

La IOC3 configura una tabla de flujo de seguridad (IPv4 e IPv6) que incluye clave, tabla de resultados y memoria de paquetes.

La tabla de flujo proporciona las siguientes funciones:

  • Búsqueda de flujo

  • Inserción y eliminación de flujo

  • Caducidad del flujo de seguridad

  • Estadísticas de flujo de seguridad

Descripción de la función de pedido de paquetes en dispositivos de línea SRX5000

La función de pedido de paquetes, que se admite en los dispositivos SRX5400, SRX5600 y SRX5800, así como en el firewall virtual vSRX, mejora el rendimiento del dispositivo al activar la función integrada de pedido de paquetes del motor de pedidos de paquetes en el procesador XLP en el punto central de la aplicación.

Se admiten dos tipos de modos de pedido de paquetes: hardware y software.

Si la función de pedido de paquetes se establece en hardware, el subproceso de equilibrio de carga (LBT) y el subproceso de pedido de paquetes (POT) se descargan en el motor de pedidos de paquetes y se liberan recursos para realizar el procesamiento de paquetes. Si la función de pedido de paquetes se establece en software, el subproceso de equilibrio de carga (LBT) y el subproceso de pedido de paquetes (POT) se ejecutan en la SPU. De forma predeterminada, el modo de pedido de paquetes mediante el motor de pedidos de paquetes (hardware) está habilitado en el dispositivo. Puede deshabilitarlo con un cambio de configuración que requiera un reinicio.

El subproceso de flujo recibe los paquetes, los procesa y los envía o descarta. Para los paquetes que no requieren orden, el subproceso de flujo notifica a la salida del motor de aceleración de red (NAE) que envíe o descarte los paquetes. Para los paquetes que requieren pedido, el subproceso de flujo notifica al motor de pedidos de paquetes que elimine la cola de la lista de pedidos y que envíe o descarte los paquetes en orden.

Cambio del modo de pedido de paquetes en dispositivos de línea de SRX5000

La funcionalidad de pedido de paquetes mediante el motor de pedidos de paquetes es compatible con dispositivos SRX5400, SRX5800 y SRX5600 con SPC de última generación. (La compatibilidad con la plataforma depende de la versión de Junos OS en su instalación). De forma predeterminada, está habilitado el modo de pedido de paquetes mediante el motor de pedidos de paquetes. Para deshabilitar la funcionalidad de pedido de paquetes mediante el motor de pedidos de paquetes, debe actualizar el modo de pedido de paquetes en el dispositivo.

Se admiten los siguientes modos de pedido de paquetes:

  • software: desactiva el modo de pedido de paquetes mediante el motor de pedidos de paquetes.

  • hardware: habilita el modo de pedido de paquetes mediante el motor de pedidos de paquetes. Esta es la opción predeterminada.

Para deshabilitar el modo de pedido de paquetes mediante el motor de pedidos de paquetes:

  1. Escriba el siguiente comando en el indicador de configuración de la CLI para especificar el modo de pedido de paquetes.

  2. Utilice el comando para revisar la show security forwarding-process configuración.

  3. Compruebe los cambios realizados en la configuración antes de confirmar.

  4. Confirme la configuración.

  5. Reinicie el dispositivo en el momento adecuado.

  6. Utilice el show security flow status comando para comprobar el modo de pedido de paquetes.

Descripción de la distribución de sesiones en dispositivos de línea de SRX5000 en modo adaptativo

A partir de Junos OS versión 15.1X49-D30 y Junos OS versión 17.3R1, la distribución de sesiones en modo adaptativo fue reemplazada por mejoras en la arquitectura de punto central.

La distribución de sesiones en modo adaptativo se implementa en los dispositivos de línea SRX5000 que se ejecutan en modo mixto antes de Junos OS versión 15.1X49-D30 y Junos OS versión 17.1R1. La distribución de sesiones en modo adaptativo maximiza el uso de los recursos del sistema teniendo en cuenta la capacidad de una unidad de procesamiento de servicios (SPU) y sus recursos disponibles. Solo se habilita en dispositivos de línea SRX5000 que se ejecutan en modo mixto XLR/XLP, es decir, en implementaciones de chasis en las que se usan diferentes tipos de SPU en diferentes combinaciones. Si un dispositivo SRX5800, SRX5600 o SRX5400 contiene una combinación de tarjetas de procesamiento de servicios (SPC) de próxima generación y SPC existentes, se asume que la distribución de la sesión en modo adaptable es la predeterminada. Para los dispositivos de línea de SRX5000 que no se ejecutan en modo mixto, el equilibrio de carga basado en hash es el valor predeterminado.

Una tarjeta de procesamiento de servicios (SPC) contiene una o más SPU, cada una de las cuales procesa los paquetes de un flujo de acuerdo con las características de seguridad y otros servicios configurados para las sesiones que le distribuye el punto central (CP). La carga de CPU de una SPU cambia de vez en cuando. Para aprovechar al máximo la capacidad disponible cambiante y adaptar la distribución de la sesión en consecuencia, en el modo adaptativo el sistema asigna un peso a todas las SPU de forma dinámica. Es el peso de las SPU lo que determina la distribución de la sesión.

Cada SPU envía su información de uso de CPU al punto central (CP) periódicamente. El punto central verifica estos valores, calcula el peso cada 1 segundo y distribuye las sesiones de tal manera que maximice el rendimiento general del sistema. En otras palabras, en el modo adaptativo, la distribución de la sesión se basa en un sistema de asignación ponderada dinámica que se calcula en tiempo real, lo que permite la utilización de la capacidad completa de las CPU de todas las SPU, independientemente de su tipo.

Es el cálculo dinámico de ponderaciones lo que distingue la distribución de sesiones en modo adaptativo de la distribución de sesiones de round robin ponderada (WRR). Mientras que WRR diferencia las SPU y su capacidad de CPU calculando y asignando pesos a los diferentes tipos de SPU, el cálculo y la asignación son estáticos, es decir, se realizan solo una vez, en la inicialización. El modo adaptativo mejora el proceso de distribución de sesiones de proporción fija de WRR. WRR conduce a la subutilización de los recursos del sistema porque los límites de procesamiento de sesión se establecen solo en función del tipo de SPU y su capacidad de CPU, sin tener en cuenta su potencia de procesamiento disponible.

Para la distribución de sesiones en modo adaptativo, se utiliza la siguiente fórmula para calcular el peso asignado a una SPU:

Wi = Suma(W1-n)*Ci*Si/Suma(C1-n*S1-n)

Dónde:

  • Wi— peso asignado a la SPU.

  • Sum(W1-n)— Peso total del sistema. Estos valores son constantes.

  • n—número total de SPU.

  • Ci—potencia computacional disponible de la CPU de la SPU.

  • Si—capacidad de sesión disponible de SPU.

En el modo adaptativo, cuando el uso de CPU en una SPU es alto, se distribuyen menos sesiones a esa SPU. Los siguientes ejemplos explican el cálculo.

Considere un dispositivo con dos SPU. La capacidad de sesión de cada SPU es de 1 millón.

Durante un tiempo determinado:

  • Cuando SPU1 tiene 500.000 sesiones, el uso de la CPU es del 10 por ciento:

    • Capacidad de CPU disponible de SPU1 (C1) = 1-10 por ciento = 90 (por ciento).

    • Capacidad de sesión disponible de SPU1 (S1) = 1-500.000/1M = 50 (porcentaje).

  • Cuando SPU2 tiene 400.000 sesiones, el uso de la CPU es del 20 por ciento:

    • Capacidad disponible de SPU2 (C2)= 1-20 por ciento= 80 (por ciento).

    • Capacidad de sesión disponible de SPU2 (S2)= 1-400.000/1M= 60 (porcentaje).

Si el peso de todo el sistema es 100, los valores de peso separados para cada SPU son:

  • Peso de SPU1 (W1) = 100*90*50/(50*90+80*60) = 48

  • Peso de SPU2 (W2) = 100*80*60/(50*90+80*60) = 52

Para las sesiones entrantes, el 48 por ciento de las sesiones se asignan a SPU1, mientras que el 52 por ciento de los paquetes se asignan a SPU2.

Los números ponderados pueden surtir efecto en el sistema en un breve período de tiempo antes de que el punto central compruebe la información de uso en tiempo de ejecución y ajuste las ponderaciones a un nuevo valor.

Tabla de historial de cambios

La compatibilidad con las funciones viene determinada por la plataforma y la versión que esté utilizando. Utilice el Explorador de características para determinar si una característica es compatible con su plataforma.

Lanzamiento
Descripción
17.4R1
A partir de Junos OS versión 17.4R1, el IOC procesa el tráfico y lo distribuye a diferentes SPU, según un algoritmo de distribución de sesión basado en hash. Esta mejora proporciona una distribución hash uniforme entre todas las SPU mediante el uso de una tabla hash de longitud fija más grande. En versiones anteriores de Junos OS, la distribución del tráfico era desigual entre todas las SPU debido a una tabla hash de longitud fija.
15,1 X 49-D30
A partir de Junos OS versión 15.1X49-D30, la arquitectura del punto central se ha mejorado para manejar sesiones simultáneas más altas y conexiones por segundo (cps) para el dispositivo de línea de SRX5000.
15,1 X 49-D30
A partir de Junos OS versión 15.1X49-D30 y Junos OS versión 17.3R1, la distribución de sesiones en modo adaptativo fue reemplazada por mejoras en la arquitectura de punto central.
15,1 X 49-D10
A partir de Junos OS versión 15.1X49-D10 y Junos OS versión 17.3R1, la distribución de sesión basada en hash es el modo predeterminado para los dispositivos SRX5400, SRX5600 y SRX5800. La selección de las claves hash depende de los protocolos de aplicación.