OPNsense Forum

International Forums => German - Deutsch => Topic started by: spaxxilein on July 06, 2021, 08:18:36 AM

Title: Openvpn Performance Proxmox VM
Post by: spaxxilein on July 06, 2021, 08:18:36 AM
Moin!

Ich habe OPNsense als VM in einem Proxmox Host laufen. Die AES-Flags werden durchgereicht. Als CPU kommt ein Xeon E3-1231 v3 zum Einsatz der AES-NI unterstützt. Laut dem Speedtest per Openssl funktioniert AES-NI auch. Das Problem ist, dass ich bei einem Speedtest über den VPN immer 100% CPU-Auslastung auf einem Kern habe und das mit 100mbit/s. Die Leitung des Hosts hat aber 500Mbit Upload - wir erreichen also nur 1/5 des maximalen Speeds.

Soweit ich das verstanden habe sollte laut https://docs.opnsense.org/manual/how-tos/sslvpn_client.html#
"Hardware Crypto" auf None gestellt werden - diese Option wird bei mir beim Anlegen oder Bearbeiten eines VPN-Servers überhaupt nicht angezeigt!?

In System -> Settings -> Miscellaneous ist unter Hardware acceleration AES-NI eingestellt.

Hat jemand eine Idee woran das liegen könnte?

Benchmarks:

/usr/bin/openssl speed -elapsed aes-256-cbc

~ 154000K

/usr/bin/openssl speed -elapsed -evp aes-256-cbc

~ 569000K

BG

spaxxilein
Title: Re: Openvpn Performance Proxmox VM
Post by: JeGr on July 06, 2021, 05:18:22 PM
> "Hardware Crypto" auf None gestellt werden - diese Option wird bei mir beim Anlegen oder Bearbeiten eines VPN-Servers überhaupt nicht angezeigt!?

Ich vermute, dass die Option schlicht in der GUI entfernt wurde, damit sie nicht versehentlich immer auf falsche Werte (cryptodev, Intel RDAND o.ä.) gesetzt wird.

> Als CPU kommt ein Xeon E3-1231 v3 zum Einsatz der AES-NI unterstützt.

Ich könnte mich irren, aber war das nicht noch ne ältere Generation mit DDR3 die so ~2014/15 aktiv war? Eventuell im BIOS/UEFI Powersaving eingestellt? Ansonsten mal in den Misc Settings noch PowerD aktivieren und HIadaptive auswählen, eventuell taktet die CPU nicht sauber auf Max oder PowerBoost hoch.

Kannst du die Gegenseite konfigurieren oder sind die Vorgaben fest? Die meisten OVPN Gegenstellen unterstützen inzwischen eigentlich Gaulois Cipher (GCM) Varianten und die holen aus der CPU nochmal wesentlich mehr raus weil besser mit AES-NI zu beschleunigen.

100Mbps Crypto wäre mir bei der CPU sonst etwas zu wenig.

Edit: ah vergessen, dass die Kiste in Proxmox steckt. Hmm wie ist die CPU virtualisiert? Eventuell hast du die nicht optimal durchgereicht und er kann nicht nativ auf die Kerne zugreifen, sondern wird von Proxmox ausgebremst? Hast du sie via HOST durchgereicht?

Cheers
Title: Re: Openvpn Performance Proxmox VM
Post by: lewald on July 06, 2021, 06:47:35 PM
Wenn die Netzkarten in Proxmox nicht durchgereicht werden sollten diese auf alle Fälle
als Virtio angelegt werden. Da dann die virtuellen Netzwerkkarten Multiqueue größer 1.


Derzeit gehen max. 8
Title: Re: Openvpn Performance Proxmox VM
Post by: JeGr on July 06, 2021, 06:51:03 PM
Stimmt da war nochwas :) Davon bin ich jetzt frech ausgegangen, aber klar. Auch die NICs könnten virtuell sein. Und je nach ausgewählter CPU Virt.  schlägt die auch noch rein.
Title: Re: Openvpn Performance Proxmox VM
Post by: spaxxilein on July 07, 2021, 12:23:54 PM
Quote from: JeGr on July 06, 2021, 05:18:22 PM

>Ich könnte mich irren, aber war das nicht noch ne ältere Generation mit DDR3 die so ~2014/15 aktiv war? Eventuell im BIOS/UEFI Powersaving eingestellt? Ansonsten mal in den Misc Settings noch PowerD aktivieren und HIadaptive auswählen, eventuell taktet die CPU nicht sauber auf Max oder PowerBoost hoch.

Die meisten OVPN Gegenstellen unterstützen inzwischen eigentlich Gaulois Cipher (GCM) Varianten und die holen aus der CPU nochmal wesentlich mehr raus weil besser mit AES-NI zu beschleunigen.

Edit: ah vergessen, dass die Kiste in Proxmox steckt. Hmm wie ist die CPU virtualisiert? Eventuell hast du die nicht optimal durchgereicht und er kann nicht nativ auf die Kerne zugreifen, sondern wird von Proxmox ausgebremst? Hast du sie via HOST durchgereicht?

Cheers

Moin erstmal vielen Dank für die Antwort ;) Ja es ist eine alte Schachtel, das Bios schau ich mir am Wochenende an, wenn die Leute hier nicht arbeiten. Es ist kein Site2Site - die Gegenstelle ist also z.B. mein Heimcomputer (PC ausreichend dimensioniert, Glasfaser 1GBIT download).

GCM werde ich auch einmal probieren ob das Besserung bringt.

Wenn ich die CPU in Proxmox per "host" durchschleife habe ich immer bei Übertragung 100% Auslastung und sehr viele Probleme in OPNSense. Wenn ich die CPU ganz normal als KVM +aes durchschleife hab ich ca. 60-70% Auslastung aber die Geschwindigkeit ist wirklich wie festgenagelt ~ 100mbit/s im Up-und Download.

Ich werde Rückmeldung geben sobald ich das probiert habe.

BG

spaxxilein
Title: Re: Openvpn Performance Proxmox VM
Post by: spaxxilein on July 07, 2021, 12:24:34 PM
Quote from: lewald on July 06, 2021, 06:47:35 PM
Wenn die Netzkarten in Proxmox nicht durchgereicht werden sollten diese auf alle Fälle
als Virtio angelegt werden. Da dann die virtuellen Netzwerkkarten Multiqueue größer 1.


Derzeit gehen max. 8

Die Netzwerkkarten werden als VirtIO durchgereicht.
Title: Re: Openvpn Performance Proxmox VM
Post by: JeGr on July 07, 2021, 04:09:35 PM
Dann muss es eigentlich schon fast was mit der Virtualisierung sein... *grübel* Ein nackter Xeon E3 müsste mehr stemmen können als lausige 100Mbps.
Title: Re: Openvpn Performance Proxmox VM
Post by: spaxxilein on July 07, 2021, 04:15:45 PM
Quote from: JeGr on July 07, 2021, 04:09:35 PM
Dann muss es eigentlich schon fast was mit der Virtualisierung sein... *grübel* Ein nackter Xeon E3 müsste mehr stemmen können als lausige 100Mbps.

   45389   root   23   0   33   23   select   2   1:11   6.98%   /usr/local/bin/python3 /usr/local/opnsense/scripts/netflow/flowd_aggregate.py (python3.7)

Ist das eigentlich normal? Die CPU-Usage der VM ist seit dem 30.6. von ~ 2,5% auf ~8% gestiegen.

Wieso braucht das netflow Ding soviel CPU-Leistung?