IPSec-Software, die mehrere CPU-Kerne verwenden kann


7

Kann jemand eine gute IPSec-Software empfehlen, die mehrere CPU-Kerne verwenden kann , um eine Leistung von ~ 2 Gbit / s bei einem Linux-Dual-CPU-Quad-Core-E5620-Xeon- Setup (insgesamt 16HT-Kerne) zu erzielen?

Ich habe OpenSwan und StrongSwan ausprobiert. Der OpenSwan KLIPS-Stack läuft nur auf einem einzelnen CPU-Kern. Das KLIPS + OCF-Krypto-Offload scheint ebenfalls sehr schlecht implementiert zu sein, da es alle 16 CPU-Kerne zu 70% verbraucht und nur ~ 600 Mbit / s liefert. Als Nebenprodukt ordnet es auch TCP-Pakete neu.

Bisher konnten wir mit OpenVPN, das ein anderes Protokoll verwendet, problemlos ~ 2 Gbit / s auf derselben Hardware mit Lastenausgleich erreichen. Nur 4 von 16 Kernen wurden zu 100% genutzt. Jetzt ist es Zeit, dasselbe mit Ipsec zu tun. Dies sollte vorzugsweise eine OpenSource IPsec-Lösung sein.

Aktualisieren:

Meine neuesten Erkenntnisse deuten darauf hin, dass der IPSec-NETKEY-Stack möglicherweise problemlos zwei Gigs Datenverkehr verarbeiten kann (jedoch nur auf Multiqueue-NICs). Ich konnte dies nicht sicher überprüfen, da NAPI anscheinend die NIC-Treiber unter hoher Last in den Abfragemodus schaltet und zu diesem Zeitpunkt die gesamte Leistung von 1,7 Gbit / s auf 500 Mbit / s sinkt. Außerdem scheint Ubuntu 10.04 einige Kernel-Threads nicht zeitlich zu berücksichtigen, und aus diesem Grund sehe ich nicht, wie die Arbeitslast auf alle CPU-Kerne verteilt ist.


Welche Linux-Distribution verwenden Sie?
Cristian Ciupitu

Ich verwende Ubuntu 10.04 Server Edition.
user389238

Antworten:


1

hifnbasierte Krypto-Beschleuniger-Hardware wird seit einiger Zeit in BSD verwendet; schnell zeigt Google auch Linux-Treiber. Die Express DX 1845- Karte bietet einen Durchsatz von 25 Gbit / s in ihrer Broschüre, aber YMMV, und natürlich möchte ich zuerst mit einem Produkt- / Vertriebsingenieur sprechen, um zu prüfen, ob sie für Ihre Zwecke geeignet ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.