Konfigurieren Sie den nsdrvd-Treiber für NetScaler BLX im dedizierten Modus ohne DPDK-Unterstützung
NetScaler BLX umgeht den Netzwerk-Stack des Linux-Kernels, aber die Übertragung von Paketen zwischen Linux-Kernelspeicher und Benutzerbereichsspeicher ist mit einem Mehraufwand verbunden. Dieser Overhead wirkt sich auf die Gesamtleistung der Paketverarbeitung aus.
Wir empfehlen die Verwendung der DPDK-kompatiblen NICs für eine hohe Paketverarbeitungsleistung. Eine Liste der von BLX unterstützten DPDK-kompatiblen NICs finden Sie unter Hardwareanforderungen des Linux-Hosts.
Wenn Sie keine DPDK-kompatiblen NICs haben, können Sie den Treiber nsdrvd
verwenden, um die Leistung der Paketverarbeitung ohne DPDK-Unterstützung zu verbessern.
Der Treiber nsdrvd
besitzt die gesamte Interaktion mit dem Linux-Kernel für den Empfang und die Übertragung von Paketen. Es verteilt auch den Verkehr an PEs. Sie können den Treiber nsdrvd
mit dem Parameter nsdrvd
in der Datei blx.conf
konfigurieren. In der folgenden Tabelle werden die möglichen Werte des Parameters nsdrvd
erläutert.
Möglicher Wert | Beschreibung |
---|---|
nsdrvd: 1 |
Für jeden dedizierten Port wird ein Treiberprozess erstellt. Rx und Tx treten nacheinander auf. |
nsdrvd: 2 |
Für jeden dedizierten Port werden ein Rx-Prozess und ein Tx-Thread erstellt. |
nsdrvd: 3 |
Für jeden dedizierten Port werden ein Rx-Prozess und 2 Tx-Threads erstellt. |
Um den Treiber nsdrvd
verwenden zu können, muss der Linux-Host gemäß der folgenden Berechnung über mindestens n Kerne verfügen.
n >= WP + (INT*P) + 1
Ort:
-
WP − Anzahl der Worker-Prozesse (Packet Engines) für BLX. Der Parameter
worker-processes
in der Dateiblx.conf
gibt die Anzahl der Paket-Engines für BLX an. -
INT − Anzahl der dedizierten Linux-Host-NIC-Ports für BLX. Der Parameter
interface
in der Dateiblx.conf
gibt die für BLX dedizierten Linux-Host-NIC-Ports an. -
P − Anzahl der
nsdrvd
-Treiberprozesse für BLX. Der Parameternsdrvd
in der Dateiblx.conf
gibt die Anzahl dernsdrvd
-Treiberprozesse an.
Beispiel: BLX mit der folgenden Konfiguration muss mindestens 10 Kerne haben:
- WP = 3 Paket-Engines
- INT = 2 dedizierte Schnittstellen
-
P = 3
nsdrvd
-Prozesse
n = WP + (INT*P) + 1 = (3+2*3+1) = 10
Voraussetzungen
- Stellen Sie sicher, dass BLX im dedizierten Modus konfiguriert ist. Informationen zur Konfiguration finden Sie unter BLX im dedizierten Modus konfigurieren.
- Stellen Sie sicher, dass die dedizierten NIC-Ports nicht in den von BLX unterstützten DPDK-kompatiblen NICs aufgeführt sind. Weitere Informationen finden Sie unter Hardwareanforderungen des Linux-Hosts.
nsdrvd
-Treiber aktivieren
Sie müssen die Linux-Host-CLI verwenden, um den nsdrvd
-Treiber zu aktivieren.
-
Öffnen Sie die Datei
blx.conf
, indem Sie den folgenden Befehl ausführen:Hinweis:
Sie können einen beliebigen Texteditor verwenden, um die Datei blx.conf zu bearbeiten.
nano /etc/blx/blx.conf <!--NeedCopy-->
-
Kommentieren Sie den Parameter
nsdrvd
aus und setzen Sie den Wert auf 1, 2 oder 3.blx-system-config { ... nsdrvd: <number of process> ... } <!--NeedCopy-->
- Speichern Sie die Datei
blx.conf
. -
Starten Sie BLX neu.
systemctl restart blx <!--NeedCopy-->
Nach dem Neustart des BLX ist der Treiber nsdrvd
auf dem BLX aktiviert.
nsdrvd
deaktivieren
Treiber Sie müssen die Linux-Host-CLI verwenden, um den Treiber nsdrvd
zu deaktivieren.
-
Um den Treiber
nsdrvd
zu deaktivieren, kommentieren Sie den Parameternsdrvd
in der Dateiblx.conf
aus.blx-system-config { ... # nsdrvd: 2 ... } <!--NeedCopy-->
-
Starten Sie BLX neu.
systemctl restart blx <!--NeedCopy-->
Nach dem Neustart von BLX ist der Treiber nsdrvd
auf dem BLX deaktiviert.