Vue d’ensemble et architecture

L’appliance NetScaler BLX est un format logiciel de Citrix ADC. Il est conçu pour fonctionner en mode natif sur Bare-Metal-Linux sur des serveurs commerciaux prêts à l’emploi (COTS).

Les avantages de l’utilisation d’une appliance NetScaler BLX sont les suivants :

  • Prêt pour le cloud. NetScaler BLX fournit une assistance quotidienne pour l’exécution dans le cloud.

    Les appliances NetScaler BLX ne nécessitent aucune certification pour fonctionner dans le cloud, car elles s’exécutent en tant qu’application logicielle sur des machines virtuelles Linux provisionnées sur le cloud.

  • Gestion facile. Les outils standard disponibles dans le cadre du système d’exploitation Linux peuvent être utilisés pour surveiller et gérer facilement les appliances NetScaler BLX. Les appliances NetScaler BLX peuvent être facilement connectées à une configuration d’orchestration existante.

  • Intégration transparente d’outils tiers. Les outils open source (par exemple, la surveillance, le débogage et la journalisation) pris en charge pour les environnements Linux peuvent être intégrés de manière fluide aux appliances NetScaler BLX. Il n’est pas nécessaire de développer des plug-ins distincts pour chaque intégration.

  • Coexistence d’autres applications. Comme les appliances NetScaler BLX s’exécutent en tant qu’application logicielle, d’autres applications Linux peuvent également s’exécuter sur le même hôte.

  • Prise en charge de DPDK. L’appliance NetScaler BLX prend en charge l’intégration du Data Plane Development Kit (DPDK) pour de meilleures performances. Une appliance NetScaler BLX utilise la bibliothèque open source DPDK pour améliorer les performances et surmonter le goulot d’étranglement du noyau Linux en matière de traitement des paquets.

Architecture générale

L’appliance NetScaler BLX est un format logiciel de Citrix ADC et fournit les mêmes fonctionnalités qu’une appliance Citrix ADC traditionnelle. Une appliance NetScaler BLX s’exécute en tant qu’application d’espace utilisateur dans un système Linux. L’appliance BLX utilise les pilotes Linux pour Rx/Tx des paquets et la gestion des ports NIC. Les interfaces virtuelles blx0 et blx1, qui sont créées lors de la phase de démarrage de NetScaler BLX, sont utilisées pour la communication entre le noyau et l’appliance BLX.

Architecture BLX

Modes réseau

Le mode réseau d’une appliance NetScaler BLX définit si les ports NIC de l’hôte Linux sont partagés ou non avec d’autres applications Linux exécutées sur l’hôte. Une appliance NetScaler BLX peut être configurée pour fonctionner sur l’un des modes réseau suivants :

  • Mode partagé
  • Mode dédié

Mode partagé

Une appliance NetScaler BLX configurée pour fonctionner en mode partagé partage les ports NIC de l’hôte Linux avec d’autres applications Linux.

Mode partagé BLX

L’adresse réseau 192.0.0.1/24 est attribuée automatiquement à une appliance NetScaler BLX en mode partagé.

Une appliance NetScaler BLX en mode partagé fonctionne avec une seule adresse IP utilisée pour la gestion et le trafic de données. Toutes les adresses IP appartenant à Citrix ADC (par exemple, 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.

Étant donné que les ports de carte réseau Linux sont partagés entre l’appliance BLX et d’autres applications Linux, une table NAT IP est ajoutée dans le noyau pour l’appliance BLX. L’hôte Linux utilise cette table IP NAT pour reconnaître les paquets reçus sur les ports NIC Linux appartenant à l’appliance NetScaler BLX.

L’hôte Linux exécute ensuite la NAT en traduisant l’adresse IP de destination du paquet reçu en adresse IP (192.0.0.1) de l’appliance NetScaler BLX. L’appliance NetScaler BLX reçoit les paquets blx0 et blx1 via des interfaces virtuelles (veth).

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

Mode dédié

Une appliance NetScaler BLX configurée en mode dédié possède des ports NIC hôtes Linux dédiés et ne partage pas ces ports avec d’autres applications Linux.

Les autres applications Linux de l’hôte ne voient pas les ports NIC Linux dédiés à l’appliance NetScaler BLX.

Mode dédié BLX

Le schéma d’adressage IP d’une appliance NetScaler BLX en mode dédié est similaire à celui d’une appliance Citrix ADC traditionnelle. Sur une appliance NetScaler BLX en mode dédié, les adresses IP appartenant à ADC (par exemple, NSIP, SNIP et VIP) peuvent avoir des adresses IP différentes.

Contrairement au mode partagé, aucune opération NAT n’est requise pour l’appliance NetScaler BLX en mode dédié. L’appliance NetScaler BLX reçoit/répond directement aux paquets depuis et vers le périphérique réseau externe via les ports NIC Linux dédiés configurés.

En mode dédié, l’appliance NetScaler BLX utilise toujours des interfaces virtuelles blx0 et blx1 (veths) pour envoyer SYSLOG et d’autres informations relatives à la gestion au noyau Linux.

Appliance NetScaler BLX avec prise en charge du Data Plane Development Kit (DPDK)

Une appliance NetScaler BLX utilise les pilotes Linux traditionnels pour Rx/Tx des paquets et pour gérer les ports NIC. Les paquets transmis entre le noyau Linux et l’appliance BLX dans l’espace utilisateur à l’aide des pilotes Linux ont plusieurs frais généraux. Ces frais généraux affectent les performances de l’appareil BLX.

L’appliance NetScaler BLX dispose d’une pile TCP/IP complète pour traiter n’importe quel paquet. Si l’appliance BLX dispose d’un moyen rapide de recevoir des paquets à partir des ports NIC Linux sous-jacents, les performances du réseau sont améliorées.

Le kit de développement de plan de données (DPDK) peut être utilisé pour surmonter ce goulot d’étranglement. 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 réseau. Pour plus d’informations sur DPDK, consultez le site officiel de DPDK à l’adresse https://www.dpdk.org/

DPDK BLX

DPDK permet de contourner le noyau et fournit directement les paquets dans l’application de l’espace utilisateur pour un traitement ultérieur. Associé au module Linux UIO, le DPDK permet à l’appliance NetScaler BLX de recevoir/transmettre des paquets depuis et vers les ports NIC Linux sans impliquer la surcharge du noyau Linux liée au traitement des paquets. Une fois la mémoire allouée, DPDK gère son propre tampon pour obtenir de meilleures performances.

Une appliance NetScaler BLX avec prise en charge DPDK fonctionne uniquement en mode réseau dédié.

Vue d’ensemble et architecture