Die freie Firewall-Lösung OPNsense kann auf vielen unterschiedlichen Geräten und Servern eingesetzt werden. Um die passende Hardware für Ihren Einsatzzweck zu finden, werden die Systeme umfassenden Leistungstests unterzogen. Dieser Artikel zeigt tabellarisch diese Ergebnisse auf. Die Tabelle wird laufend um weitere Systeme erweitert, wenn diese getestet wurden.
Wichtiger Hinweis: Diese Tests wurden unter Laborbedingungen durchgeführt, Realwerte in Produktivumgebungen können abweichen. |
Die folgende Tabelle zeigt die bisher verfügbaren Ergebnisse:
Server | LES compact 4L (Anmerkung: Tests mit OPNsense 19.7) |
Edge 4L (Anmerkung: Tests mit OPNsense 22.7.2) |
LES v4 (Anmerkung: Tests mit OPNsense 22.7.10_2, außer WireGuard) |
LES network 6L
(Version 1, Intel Core i5-8250U) (Anmerkung: Tests mit OPNsense 22.7_4-amd64) |
LES network 6L
(Version 2, Intel Core i5-10210U) (Anmerkung: Tests mit OPNsense 23.1) |
RI1102A-F (Version 2.0, Supermicro A2SDi-4C-HLN4F mit Intel Atom C3558) (Anmerkung: Tests mit OPNsense 23.1.1_2-amd64, 25 Gbit/s Broadcom P225P Zusatzkarte) |
RI1102D-F (Version 1, Intel Xeon D-1518) (Anmerkung: Tests mit OPNsense 22.7.9_3, 25 Gbit/s Broadcom P225P Zusatzkarte) | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Hardware Ausstattung im Test | RAM | 2 GB | RAM | 2 GB | RAM | 32 GB (RAM Bedarf war maximal bei 11 GB (IPS Test)) | RAM | 4 GB | RAM | 16 GB | RAM | 16 GB | RAM | 16 GB | |||||||||||||||
Einstellung
(genaue Testeinstellungen weiter unten aufgelistet) |
Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | Leistung | Last (CPU Time in %) | |||||||||||||||
Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | Upload | Download | ||
Routing |
|
nicht getestet | nicht getestet | nicht getestet | nicht getestet | 2,35 Gbit/s | 2,35 Gbit/s | 10 | 11 | 9,33 Gbit/s | 9,46 Gbit/s | 51 | 66 | 11,7 Gbit/s | 12 Gbit/s | 39,5 | 45,4 | ||||||||||||
(Anmerkung: 2,5 Gbit/s NIC ausgereizt) | |||||||||||||||||||||||||||||
Firewall |
|
nicht getestet | 942 Mbit/s | 942 Mbit/s | 31 | 29 | 2,35 Gbit/s | 2,35 Gbit/s | 19 | 20 | 940 Mbit/s | 941 Mbit/s | 15 | 18 | 2,35 Gbit/s | 2,35 Gbit/s | 17 | 18 | 7,11 Gbit/s | 6,31 Gbit/s | 83 | 66 | 5,9 Gbit/s | 6,2 Gbit/s | 50 | 50 | |||
(Anmerkung: 1 Gbit/s NIC ausgereizt) | (Anmerkung: 2,5 Gbit/s NIC ausgereizt) | (Anmerkung: 1 Gbit/s NIC ausgereizt) | (Anmerkung: 2,5 Gbit/s NIC ausgereizt) | (Anmerkungen: Messwerte schwankten deutlich, Last auf der Firewall ebenso) | |||||||||||||||||||||||||
Firewall und IDS |
|
nicht getestet | 941 Mbit/s | 941 Mbit/s | 51 | 58 | 2,35 Gbit/s | 2,35 Gbit/s | 51 | 52 | 942 Mbit/s | 942 Mbit/s | 15 | 18 | 2,35 Gbit/s | 2,35 Gbit/s | 19 | 20 | 6,51 Gbit/s | 6,02 Gbit/s | 92 | 89 | 5,2 Gbit/s | 4,7 Gbit/s | 68 | 61 | |||
(Anmerkung: 1 Gbit/s NIC ausgereizt, aber deutlich erhöhte Last im Vergleich zu reinem Firewalling) | (Anmerkung: 2,5 Gbit/s NIC ausgereizt, aber deutlich erhöhte Last im Vergleich zu reinem Firewalling) | (Anmerkung: 1 Gbit/s NIC ausgereizt) | (Anmerkung: 2,5 Gbit/s NIC ausgereizt, nur minimal erhöhte Last im Vergleich zu reinem Firewalling) | (Anmerkungen: Ergebnisse eher zweifelhaft, denn sie schwankten stark, zwischen 3,2 und 8 Gbit/s. Ebenso schwankte dadurch die Last auf der Firewall von knapp 60% bis 100%) | |||||||||||||||||||||||||
Firewall und IPS |
|
nicht getestet (nicht empfohlen, CPU zu schwach) | 606 Mbit/s | 420 Mbit/s | 62 | 41 | 770 Mbit/s | 630 Mbit/s | 44 | 33,5 | 942 Mbit/s | 942 Mbit/s | 21 | 19 | 2,35 Gbit/s | 2,30 Gbit/s | 23 | 18 | 918 Mbit/s | 631 Mbit/s | 52 | 40 | 5,4 Gbit/s | 3,2 Gbit/s | 65 | 41 | |||
(Anmerkung: CPU und Software nun der limitierende Faktor, nicht mehr die 1 Gbit/s NIC) | (Anmerkung: 1 Gbit/s NIC ausgereizt, Last leicht höher als bei IDS) | (Anmerkung: 2,5 Gbit/s NIC im Upload ausgereizt, Download minimal weniger Durchsatz, leicht erhöhte Last im Vergleich zu IDS) | (Anmerkung: Tests mit 1 Gbit/s onboard NIC durchgeführt) | ||||||||||||||||||||||||||
Firewall und Zenarmor |
|
nicht getestet (nicht empfohlen, CPU zu schwach) | 769 Mbit/s | 825 Mbit/s | 36 | 47 | 893 Mbit/s | 941 Mbit/s | 32 | 33 | 940 Mbit/s | 942 Mbit/s | 17 | 19 | 2,35 Gbit/s | 2,35 Gbit/s | 16 | 21 | 33,6 Mbit/s | 1,76 Gbit/s | 12 | 44 | 11 Mbit/s | 1,2 Gbit/s | 6 | 27 | |||
(Anmerkung: 1 Gbit/s NIC ausgereizt, Last leicht höher als bei IDS) | (Anmerkung: 2,5 Gbit/s NIC ausgereizt, Einstellungen: MongoDB Datenbank, Routed Mode with native netmap) | (Anmerkung: Sehr schwache Leistung im Upload, Einstellungen: MongoDB Datenbank, Routed Mode mit emulated netmap) | (Anmerkung: Sehr schwache Leistung im Upload, Einstellungen: MongoDB Datenbank, Routed Mode mit emulated netmap) | ||||||||||||||||||||||||||
OpenVPN Tunnel |
|
84 Mbit/s | 114 Mbit/s | 33 | 33 | 145 Mbit/s | 175 Mbit/s | 36 | 34 | 435 Mbit/s | 436 Mbit/s | 28 | 27 | 470 Mbit/s | 462 Mbit/s | 17 | 16 | 997 Mbit/s | 788 Mbit/s | 17 | 14 | 268 Mbit/s | 271 Mbit/s | 31 | 34 | 372 Mbit/s | 373 Mbit/s | 17 | 16 |
IPsec VPN Tunnel |
|
403 Mbit/s | 324 Mbit/s | 70 | 53 | 746 Mbit/s | 479 Mbit/s | 75 | 48 | 1,77 Gbit/s | 1,3 Gbit/s | 64 | 43 | 825 Mbit/s | 847 Mbit/s | 17 | 19 | 1,87 Gbit/s | 1,74 Gbit/s | 20 | 21 | 1,23 Gbit/s | 1,13 Gbit/s | 61 | 51 | 1,6 Gbit/s | 814 Mbit/s | 42 | 23 |
WireGuard VPN Tunnel |
|
178 Mbit/s | 171 Mbit/s | 89 | 86 | 296 Mbit/s | 331 Mbit/s | 82 | 80 | 896 Mbit/s | 849 Mbit/s | 70 | 74 | 865 Mbit/s | 889 Mbit/s | 48 | 45 | 1,35 Gbit/s | 1,26 Gbit/s | 49 | 50 | - | - | 749 Mbit/s | 816 Mbit/s | 43 | 44 | ||
(Anmerkung: Die WireGuard Tests wurden mit OPNsense 22.7.11-amd64 durchgeführt) | (Anmerkung: Es wurde mit wireguard-go und OPNsense-23.1.1_2 getestet) | (Anmerkungen: Tests nicht möglich, Tunnel konnte durch Softwareprobleme nicht stabil aufgebaut werden) |
Die nachfolgende Tabelle zeigt die weiteren Komponenten der Firewall Tests, die zu testende Firewall ist immer als Firewall Site 2 gekennzeichnet. Um die maximale Leistung testen zu können, wurde als performante Gegenstelle (Firewall Site 1) ein Server basierend auf einem Supermicro H12SSL-NT Mainboard ausgewählt:
Einsatzzweck | Hardware | BIOS Informationen | Software |
---|---|---|---|
Firewall Site 1 |
|
|
|
Firewall Site 2 |
|
||
Client Site 1 |
|
|
|
Client Site 2 |
|
|
Die Performancetests wurden mit iperf durchgeführt.
iperf -p 5000 -f m -s
iperf -p 5000 -f m -c <IP-de-Servers> -t 180 -P 10
Upload-Test
Um einen Upload-Test zu simulieren wurde am Client Site 2 iperf im Clientmodus gestartert, am Client Site 1 wurde iperf mit dem Parameter -s im Servermodus gestartet.
Download-Test
Für einen Download-Test wurden die Richtungen umgedreht, Client Site 1 wurde per Parameter -c als Client gestartet und Client Site 2 mit -s im Servermodus.
Testdurchläufe
Generell sind die Werte in den Tabellen als Mittelwerte von bis zu 10 Durchläufen anzusehen. Bei manchen Tests (wenn die Netzwerkbuchse ausgelastet war) sind die Ergebnisse nicht in mehreren Durchläufen generiert worden, da die Ergebnisse immer identisch waren.
Die folgenden Einstellungen wurden an den OPNsense Firewalls vorgenommen. Grundsätzlich wurden keine speziellen Optimierungsschritte durchgeführt, OPNsense wurde mit den Standardeinstellungen eingesetzt. Da auch die Einstellungen bei den einzelnen VPN-Technologien anspruchsvoll sind kann man die Messwerte durchaus als absolutes Minimum ansehen.
Autor: Thomas Niedermeier Thomas Niedermeier arbeitet im Product Management Team von Thomas-Krenn. Er absolvierte an der Hochschule Deggendorf sein Studium zum Bachelor Wirtschaftsinformatik. Seit 2013 ist Thomas bei Thomas-Krenn beschäftigt und kümmert sich unter anderem um OPNsense Firewalls, das Thomas-Krenn-Wiki und Firmware Sicherheitsupdates. |