Configurer le pilote nsdrvd pour NetScaler BLX en mode dédié sans prise en charge DPDK
NetScaler BLX contourne la pile réseau du noyau Linux, mais il existe un surcoût lors du transfert de paquets entre la mémoire du noyau Linux et la mémoire de l’espace utilisateur. Ce surcoût affecte les performances globales du traitement des paquets.
Nous recommandons d’utiliser des cartes réseau compatibles DPDK pour des performances élevées de traitement des paquets. Pour la liste des cartes réseau compatibles DPDK prises en charge par BLX, consultez Exigences matérielles de l’hôte Linux.
Si vous ne disposez pas de cartes réseau compatibles DPDK, vous pouvez utiliser le pilote nsdrvd pour améliorer les performances du traitement des paquets sans prise en charge DPDK.
Le pilote nsdrvd gère toutes les interactions avec le noyau Linux pour la réception et la transmission des paquets. Il distribue également le trafic aux PE. Vous pouvez configurer le pilote nsdrvd à l’aide du paramètre nsdrvd dans le fichier blx.conf. Le tableau suivant explique les valeurs possibles du paramètre nsdrvd.
| Valeur possible | Description |
|---|---|
nsdrvd: 1 |
Un processus de pilote est créé pour chaque port dédié. La réception (Rx) et la transmission (Tx) se produisent séquentiellement. |
-
nsdrvd: 2Un processus de réception (Rx) et un thread de transmission (Tx) sont créés pour chaque port dédié. -
nsdrvd: 3Un processus de réception (Rx) et 2 threads de transmission (Tx) sont créés pour chaque port dédié.
Pour utiliser le pilote nsdrvd, l’hôte Linux doit disposer d’au moins n cœurs, selon le calcul suivant.
n >= WP + (INT*P) + 1
Où :
-
WP - Nombre de processus de travail (moteurs de paquets) pour BLX. Le paramètre
worker-processesdans le fichierblx.confspécifie le nombre de moteurs de paquets pour BLX. -
INT - Nombre de ports de carte réseau dédiés de l’hôte Linux pour BLX. Le paramètre
interfacedans le fichierblx.confspécifie les ports de carte réseau de l’hôte Linux dédiés à BLX. -
P - Nombre de processus de pilote
nsdrvdpour BLX. Le paramètrensdrvddans le fichierblx.confspécifie le nombre de processus de pilotensdrvd.
Exemple : BLX avec la configuration suivante doit disposer d’au moins 10 cœurs :
- WP = 3 moteurs de paquets
- INT = 2 interfaces dédiées
-
P = 3 processus
nsdrvd
n = WP + (INT*P) + 1 = (3+2*3+1) = 10
Prérequis
- Assurez-vous que BLX est configuré en mode dédié. Pour la procédure de configuration, consultez Configurer BLX en mode dédié.
- Assurez-vous que les ports de carte réseau dédiés ne sont pas répertoriés dans les cartes réseau compatibles DPDK prises en charge par BLX. Pour plus d’informations, consultez Exigences matérielles de l’hôte Linux.
Activer le pilote nsdrvd
Vous devez utiliser l’interface de ligne de commande (CLI) de l’hôte Linux pour activer le pilote nsdrvd.
-
Ouvrez le fichier
blx.confen exécutant la commande suivante :Remarque :
Vous pouvez utiliser n’importe quel éditeur de texte pour modifier le fichier blx.conf.
nano /etc/blx/blx.conf <!--NeedCopy--> -
Décommentez le paramètre
nsdrvdet définissez la valeur sur 1, 2 ou 3.blx-system-config { ... nsdrvd: <number of process> ... } <!--NeedCopy--> - Enregistrez le fichier
blx.conf. -
Redémarrez BLX.
systemctl restart blx <!--NeedCopy-->
Après le redémarrage de BLX, le pilote nsdrvd est activé sur BLX.
Désactiver le pilote nsdrvd
Vous devez utiliser l’interface de ligne de commande (CLI) de l’hôte Linux pour désactiver le pilote nsdrvd.
-
Pour désactiver le pilote
nsdrvd, commentez le paramètrensdrvddans le fichierblx.conf.blx-system-config { ... # nsdrvd: 2 ... } <!--NeedCopy--> -
Redémarrez BLX.
systemctl restart blx <!--NeedCopy-->
Après le redémarrage de BLX, le pilote nsdrvd est désactivé sur BLX.