Architecture générale

NetScaler BLX est un facteur de forme logiciel de NetScaler qui fournit les mêmes fonctionnalités que les autres facteurs de forme. Il s’exécute en tant qu’application d’espace utilisateur sur un hôte Linux.

BLX utilise les pilotes Linux pour la réception/transmission des paquets et la gestion des ports NIC. Les interfaces Ethernet virtuelles (veths) blx0 et blx1, créées lors de la phase de démarrage, sont utilisées pour la communication entre l’hôte Linux et ‘appliance BLX. Par exemple, BLX utilise les interfaces veths pour envoyer des informations de journal au démon Syslog sur un hôte Linux.

Le mode réseau de BLX définit si les ports de carte d’interface réseau de l’hôte Linux sont partagés ou non avec d’autres applications Linux exécutées sur l’hôte. Vous pouvez configurer une appliance BLX pour qu’elle s’exécute sur l’un des modes réseau suivants :

  • Mode dédié : les ports de carte d’interface réseau (NIC) de l’hôte Linux sont dédiés à l’appliance BLX et ne sont pas partagés avec d’autres applications Linux.
  • Mode partagé : les ports NIC de l’hôte Linux sont partagés avec d’autres applications Linux.

Appliance NetScaler BLX en mode dédié

En mode dédié, les ports NIC de l’hôte Linux spécifiés dans le fichier blx.conf (fichier de configuration de démarrage de BLX) sont dédiés à l’appliance BLX. Ces ports NIC ne sont pas partagés avec d’autres applications exécutées sur l’hôte. Seule l’applicance BLX peut voir les ports NIC dédiés.

Le schéma d’adressage IP en mode dédié est similaire à celui d’une appliance NetScaler traditionnelle. Une appliance BLX peut avoir différentes adresses IP : une adresse IP NetScaler IP (NSIP), une adresse IP virtuelle (VIP) et une adresse IP de sous-réseau (SNIP).

L’appliance BLX reçoit les paquets en provenance du réseau externe, les traite et répond directement via les ports de carte d’interface réseau Linux dédiés configurés. Elle possède une pile TCP/IP complète pour traiter les paquets, en contournant la pile TCP/IP du noyau Linux. BLX interagit directement avec le pilote du noyau Linux pour sélectionner les paquets bruts sur les ports de carte d’interface réseau.

Bien que 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 toujours une surcharge. Cette charge affecte les performances globales du traitement des paquets. Nous vous recommandons d’utiliser des cartes d’interface réseau compatibles avec le kit de développement de plan de données (DPDK) pour des performances de traitement de paquets élevées. 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.

Architecture BLX

le DPDK est un ensemble de bibliothèques Linux open source et de contrôleurs d’interface réseau utilisés pour améliorer les performances du réseau. Pour plus d’informations sur DPDK, consultez le site Web officiel de DPDK à l’adresse https://www.dpdk.org/.

Le DPDK permet de contourner la mémoire du noyau et transmet les paquets directement à la mémoire de l’espace utilisateur pour traitement. Le DPDK, associé au module Linux UIO, permet à BLX de recevoir et de transmettre des paquets sans surcharger le noyau Linux lors de la copie des paquets depuis la mémoire du noyau vers la mémoire de l’espace utilisateur. Une fois la mémoire allouée, le DPDK gère sa mémoire tampon pour obtenir de meilleures performances.

Remarque :

L’appliance BLX peut démarrer en mode dédié sans prise en charge DPDK si l’une des conditions suivantes est remplie.

  • L’appliance BLX ne prend pas en charge les ports de carte d’interface réseau compatibles DPDK dédiés.
  • Le DPDK ne prend pas en charge les ports NIC dédiés.

Appliance NetScaler BLX en mode partagé

En mode partagé, les ports de carte d’interface réseau (NIC) de l’hôte Linux sont partagés avec d’autres applications Linux pour recevoir et transmettre les paquets. L’adresse IP 192.0.0.1/24 est attribuée automatiquement à l’appliance BLX. Cette adresse IP est utilisée pour la gestion et le trafic de données. Toutes les adresses IP appartenant à NetScaler (par exemple, les adresses NSIP, SNIP et VIP) ont la même adresse IP 192.0.0.1 mais avec des numéros de port différents. En d’autres termes, cette adresse IP unique (192.0.0.1) utilise différents numéros de port pour fonctionner en tant que NSIP, SNIP et VIP.

Architecture BLX

Étant donné que les ports de carte d’interface réseau de l’hôte Linux sont partagés entre l’appliance BLX et d’autres applications Linux, une règle de table IP est ajoutée au processus NAT. Cette règle de table IP est utilisée pour transférer le trafic reçu sur l’hôte vers l’appliance BLX pour un traitement ultérieur.

L’hôte Linux traduit l’adresse IP de destination du paquet reçu en adresse IP (192.0.0.1) de l’appliance BLX. L’appliance BLX reçoit les paquets via les interfaces virtuelles blx0 et blx1.

L’appliance BLX traite les paquets reçus et les envoie au noyau Linux via les interfaces virtuelles blx1 et blx0. L’hôte Linux effectue l’opération NAT sur ces paquets à l’aide de la table NAT IP BLX, puis les envoie à la destination via les ports de carte d’interface réseau Linux.

Remarque :

Nous ne recommandons pas de configurer l’instance BLX en mode partagé pour les configurations de production.

Architecture générale