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: 2 Un processus de réception (Rx) et un thread de transmission (Tx) sont créés pour chaque port dédié.
  • nsdrvd: 3 Un 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-processes dans le fichier blx.conf spé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 interface dans le fichier blx.conf spécifie les ports de carte réseau de l’hôte Linux dédiés à BLX.
  • P - Nombre de processus de pilote nsdrvd pour BLX. Le paramètre nsdrvd dans le fichier blx.conf spécifie le nombre de processus de pilote nsdrvd.

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.

  1. 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-->
    
  2. Décommentez le paramètre nsdrvd et définissez la valeur sur 1, 2 ou 3.

    blx-system-config
    {
            ...
            nsdrvd: <number of process>
            ...
    }
    <!--NeedCopy-->
    
  3. Enregistrez le fichier blx.conf.
  4. 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.

  1. Pour désactiver le pilote nsdrvd, commentez le paramètre nsdrvd dans le fichier blx.conf.

    blx-system-config
    {
            ...
            # nsdrvd: 2
            ...
    }
    <!--NeedCopy-->
    
  2. Redémarrez BLX.

    systemctl restart blx
    <!--NeedCopy-->
    

Après le redémarrage de BLX, le pilote nsdrvd est désactivé sur BLX.

Configurer le pilote nsdrvd pour NetScaler BLX en mode dédié sans prise en charge DPDK