Configurer le pilote nsdrvd pour NetScaler BLX en mode dédié sans prise en charge DPDK
Bien que NetScaler BLX contourne la pile réseau du noyau Linux, le transfert de paquets entre la mémoire du noyau Linux et la mémoire de l’espace utilisateur présente une surcharge. Cette charge affecte les performances globales du traitement des paquets.
Nous vous recommandons d’utiliser les cartes d’interface réseau compatibles DPDK pour des performances de traitement de paquets supérieures. Pour obtenir la liste des cartes d’interface réseau compatibles DPDK et prises en charge par BLX, consultez la section configuration matérielle requise de l’hôte Linux.
Si vous ne disposez pas de carte d’interface réseau compatible DPDK, vous pouvez utiliser le pilote nsdrvd
pour améliorer les performances de traitement des paquets sans prise en charge DPDK.
Le pilote nsdrvd
possède 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
du fichier blx.conf
. Le tableau suivant explique les valeurs possibles du paramètre nsdrvd
.
Valeur possible | Description |
---|---|
nsdrvd: 1 |
Un processus pilote est créé pour chaque port dédié. Rx et Tx se produisent séquentiellement. |
nsdrvd: 2 |
Un processus Rx et un thread Tx sont créés pour chaque port dédié. |
nsdrvd: 3 |
Un processus Rx et deux threads 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-processes
du fichierblx.conf
indique le nombre de moteurs de paquets pour BLX. -
INT : nombre de ports NIC hôtes Linux dédiés pour BLX. Le paramètre
interface
du fichierblx.conf
spécifie les ports de carte d’interface réseau hôte Linux dédiés à BLX. -
P - Nombre de processus de pilote
nsdrvd
pour BLX. Le paramètrensdrvd
du fichierblx.conf
indique le nombre de processus de pilotensdrvd
.
Exemple : l’instance BLX avec la configuration suivante doit avoir 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
Logiciels 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 d’interface réseau dédiés ne figurent pas dans la liste ports NIC compatibles DPDK et pris en charge par BLX. Pour plus d’informations, consultez la section Configuration matérielle requise de l’hôte Linux.
nsdrvd
Activer le pilote Vous devez utiliser l’interface de ligne de commande de l’hôte Linux pour activer le pilote nsdrvd
.
-
Ouvrez le fichier
blx.conf
en 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-->
-
Supprimez la marque de commentaire du paramètre
nsdrvd
et 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 l’instance BLX.
nsdrvd
Désactiver le pilote Vous devez utiliser l’interface de ligne de commande de l’hôte Linux pour désactiver le pilote nsdrvd
.
-
Pour désactiver le pilote
nsdrvd
, commentez le paramètrensdrvd
dans 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 l’instance BLX.