21.6. Dirección de flujo de recepción


Receive Flow Steering (RFS) amplía el comportamiento de RPS para aumentar la tasa de aciertos de la caché de la CPU y reducir así la latencia de la red. Mientras que RPS reenvía los paquetes basándose únicamente en la longitud de la cola, RFS utiliza el back-end de RPS para calcular la CPU más adecuada y, a continuación, reenvía los paquetes basándose en la ubicación de la aplicación que los consume. Esto aumenta la eficiencia de la caché de la CPU.

Los datos recibidos de un solo emisor no se envían a más de una CPU. Si la cantidad de datos recibidos de un solo emisor es mayor que la que puede manejar una sola CPU, configure un tamaño de trama mayor para reducir el número de interrupciones y, por tanto, la cantidad de trabajo de procesamiento para la CPU. Como alternativa, considere las opciones de descarga de NIC o CPUs más rápidas.

Considere la posibilidad de utilizar numactl o taskset junto con RFS para asignar aplicaciones a núcleos, sockets o nodos NUMA específicos. Esto puede ayudar a evitar que los paquetes se procesen fuera de orden.

21.6.1. Activación de la dirección del flujo de recepción

Por defecto, la dirección de flujo de recepción (RFS) está desactivada. Este procedimiento describe cómo habilitar el RFS.

Procedimiento

  1. Establezca el valor del núcleo net.core.rps_sock_flow_entries al número máximo esperado de conexiones activas simultáneas:

    # echo \ "net.core.rps_sock_flow_entries=32768" > /etc/sysctl.d/95-enable-rps.conf

    Red Hat recomienda un valor de 32768 para cargas de servidor moderadas. Todos los valores introducidos se redondean a la potencia más cercana de 2 en la práctica.

  2. Establece de forma persistente el valor de la net.core.rps_sock_flow_entries:

    # sysctl -p /etc/sysctl.d/95-enable-rps.conf
  3. Para establecer temporalmente el valor del sys/class/net/device/queues/rx-queue/rps_flow_cnt al valor del archivo (rps_sock_flow_entries/N), donde N es el número de colas de recepción de un dispositivo:

    # echo 2048 > /sys/class/net/device/queues/rx-queue/rps_flow_cnt

    Sustituya device por el nombre del dispositivo de red que desea configurar (por ejemplo, enp1s0), y rx-queue por la cola de recepción que desea configurar (por ejemplo, rx-0). Sustituya N por el número de colas de recepción configuradas. Por ejemplo, si el rps_flow_entries está configurado como 32768 y hay 16 colas de recepción configuradas, el rps_flow_cnt = 32786/16= 2048 (es decir, rps_flow_cnt = rps_flow_enties/N ).

    Para los dispositivos de cola única, el valor de rps_flow_cnt es el mismo que el de rps_sock_flow_entries.

  4. Habilite de forma persistente la RFS en todos los dispositivos de red, cree el archivo /etc/udev/rules.d/99-persistent-net.rules y añada el siguiente contenido:

    SUBSYSTEM=="net", ACTION=="add", RUN{program}+="/bin/bash -c 'for x in /sys/$DEVPATH/queues/rx-*; do echo 2048 > $x/rps_flow_cnt;  done'"
  5. Opcional: Para activar el RPS en un dispositivo de red específico:

    SUBSYSTEM=="net", ACTION=="move", NAME="device name" RUN{program} ="/bin/bash -c 'for x in /sys/$DEVPATH/queues/rx-*; do echo 2048 > $x/rps_flow_cnt; done'"

    Sustituya device name por el nombre real del dispositivo de red.

Pasos de verificación

  • Compruebe si la RFS está activada:

    # cat /proc/sys/net/core/rps_sock_flow_entries
    32768
    
    # cat /sys/class/net/device/queues/rx-queue/rps_flow_cnt
    2048

Recursos adicionales

  • Para más información, consulte la página de manual sysctl.
Red Hat logoGithubredditYoutubeTwitter

Aprender

Pruebe, compre y venda

Comunidades

Acerca de la documentación de Red Hat

Ayudamos a los usuarios de Red Hat a innovar y alcanzar sus objetivos con nuestros productos y servicios con contenido en el que pueden confiar. Explore nuestras recientes actualizaciones.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a reemplazar el lenguaje problemático en nuestro código, documentación y propiedades web. Para más detalles, consulte el Blog de Red Hat.

Acerca de Red Hat

Ofrecemos soluciones reforzadas que facilitan a las empresas trabajar en plataformas y entornos, desde el centro de datos central hasta el perímetro de la red.

Theme

© 2026 Red Hat
Volver arriba