What performance to expect using a Raspberry Pi as a firewall?
I’ve tested 3 different Raspberry Pi used as firewalls at measured the performance I was getting. The Raspberry Pis are:
- Model 2B, rev 1.1 (a01041) with a BCM2835 processor, 1 GB of RAM.
- Model 3B, rev 1.2 (a22082) with a BCM2835 processor, 1 GB of RAM.
- Model 4B, rev 1.1 (c03111) with a BCM2711 processor, 4 GB of RAM.
All three nanocomputers were configured exactly the same way. They use Raspberry Pi OS Lite 32 bits. The connection from the Cable Modem uses a USB 3 Gigabit Ethernet adapter. The LAN connection is wired to the main switch.
The Internet connection has a 60 Mbits bandwidth for the download speed, 10 Mbits for the upload speed. Ookla speed test was used. Three tests were made for each Raspberry Pi.
The results are:
Model 2B: 29.21 Mbits / 10.38 Mbits
Model 3B: 48.53 Mbits / 10.60 Mbits
Model 4B: 60.46 Mbits / 10.39 Mbits
One fact was observed during these tests. In model 2B, the process ksoftirqd/0 was using 100% of one CPU core, which indicates that it had difficulty handling the number of interrupts. Model 3B didn’t have this behavior. Nevertheless, a 20% percent performance loss was observed. Model 4B accomplished the task perfectly. The process ksoftirqd/0 was using 17% of one CPU core. Likely, it could handle a faster Internet connection.
Tuning activities weren’t performed to improve these test results.