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-processesin der Dateiblx.confgibt die Anzahl der Paket-Engines für BLX an. -
INT − Anzahl der dedizierten Linux-Host-NIC-Ports für BLX. Der Parameter
interfacein der Dateiblx.confgibt die für BLX dedizierten Linux-Host-NIC-Ports an. -
P − Anzahl der
nsdrvd-Treiberprozesse für BLX. Der Parameternsdrvdin der Dateiblx.confgibt 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
nsdrvdaus 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.
Treiber nsdrvd deaktivieren
Sie müssen die Linux-Host-CLI verwenden, um den Treiber nsdrvd zu deaktivieren.
-
Um den Treiber
nsdrvdzu deaktivieren, kommentieren Sie den Parameternsdrvdin der Dateiblx.confaus.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.