Configurar el driver nsdrvd para NetScaler BLX en modo dedicado sin compatibilidad con DPDK
NetScaler BLX omite la pila de red del kernel de Linux, pero existe una sobrecarga al transferir paquetes entre la memoria del kernel de Linux y la memoria del espacio de usuario. Esta sobrecarga afecta al rendimiento general del procesamiento de paquetes.
Te recomendamos usar las NIC compatibles con DPDK para un alto rendimiento de procesamiento de paquetes. Para ver la lista de NIC compatibles con DPDK compatibles con BLX, consulta Requisitos de hardware del host Linux.
Si no tienes NIC compatibles con DPDK, puedes usar el driver nsdrvd para mejorar el rendimiento del procesamiento de paquetes sin compatibilidad con DPDK.
El driver nsdrvd gestiona toda la interacción con el kernel de Linux para la recepción y transmisión de paquetes. También distribuye el tráfico a los PE. Puedes configurar el driver nsdrvd mediante el parámetro nsdrvd en el archivo blx.conf. La siguiente tabla explica los posibles valores del parámetro nsdrvd.
| Valor posible | Descripción |
|---|---|
nsdrvd: 1 |
Se crea un proceso de driver para cada puerto dedicado. La recepción (Rx) y la transmisión (Tx) se producen secuencialmente. |
-
nsdrvd: 2Se crea un proceso de recepción (Rx) y un hilo de transmisión (Tx) para cada puerto dedicado. -
nsdrvd: 3Se crea un proceso de recepción (Rx) y 2 hilos de transmisión (Tx) para cada puerto dedicado.
Para usar el driver nsdrvd, el host Linux debe tener al menos n número de núcleos según el siguiente cálculo.
n >= WP + (INT*P) + 1
Donde:
-
WP - Número de procesos de trabajo (motores de paquetes) para BLX. El parámetro
worker-processesen el archivoblx.confespecifica el número de motores de paquetes para BLX. -
INT - Número de puertos NIC dedicados del host Linux para BLX. El parámetro
interfaceen el archivoblx.confespecifica los puertos NIC del host Linux dedicados a BLX. -
P - Número de procesos de driver
nsdrvdpara BLX. El parámetronsdrvden el archivoblx.confespecifica el número de procesos de drivernsdrvd.
Ejemplo: BLX con la siguiente configuración debe tener al menos 10 núcleos:
- WP = 3 motores de paquetes
- INT = 2 interfaces dedicadas
-
P = 3 procesos
nsdrvd
n = WP + (INT*P) + 1 = (3+2*3+1) = 10
Requisitos previos
- Asegúrate de que BLX está configurado en modo dedicado. Para el procedimiento de configuración, consulta Configurar BLX en modo dedicado.
- Asegúrate de que los puertos NIC dedicados no están listados en las NIC compatibles con DPDK compatibles con BLX. Para obtener más información, consulta Requisitos de hardware del host Linux.
Habilitar el driver nsdrvd
Debes usar la CLI del host Linux para habilitar el driver nsdrvd.
-
Abre el archivo
blx.confejecutando el siguiente comando:Nota:
Puedes usar cualquier editor de texto para editar el archivo blx.conf.
nano /etc/blx/blx.conf <!--NeedCopy--> -
Descomenta el parámetro
nsdrvdy establece el valor en 1, 2 o 3.blx-system-config { ... nsdrvd: <number of process> ... } <!--NeedCopy--> - Guarda el archivo
blx.conf. -
Reinicia BLX.
systemctl restart blx <!--NeedCopy-->
Después de que BLX se reinicie, el driver nsdrvd está habilitado en BLX.
Deshabilitar el driver nsdrvd
Debes usar la CLI del host Linux para deshabilitar el driver nsdrvd.
-
Para deshabilitar el driver
nsdrvd, comenta el parámetronsdrvden el archivoblx.conf.blx-system-config { ... # nsdrvd: 2 ... } <!--NeedCopy--> -
Reinicia BLX.
systemctl restart blx <!--NeedCopy-->
Después de que BLX se reinicie, el driver nsdrvd está deshabilitado en BLX.