Best performance seen for PFSense? Can I do better?

davidg1982

Active Member
May 26, 2017
14
2
43
42
Chicago, Illinois USA
I am running into performance issues and would like to have better throughput with my PFSense. I run my Proxmox in a colo location for a very decent price. It is a dual 2.6GHz E5-2650 with 40GB of RAM on an Intel S2600GZ motherboard

For good security, I have all the traffic go through PFSense, which gives me a far amount of projection. However, I have not been able to get more than 200Mbps throughput. No matter what I do, which is, give it more memory or a few more cores, it doesn't budge. I am trying to follow the easy answers that is out there, but this performance is abysmal and I expected more. I have okay hardware and it should be able to do more, but it isn't.

For example, even if I don't go out to the internet and I am using OVS VLAN, I can iperf it and I get 200 Mbps. The issue is PFSense, but I don't know why. It has four cores, but it's not using all four. What gives....

Code:
iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[  4] local 192.168.20.6 port 5001 connected with 192.168.20.10 port 44024
[ ID] Interval       Transfer     Bandwidth
[  4]  0.0-10.0 sec  16.0 GBytes  13.8 Gbits/sec
[  4] local 192.168.20.6 port 5001 connected with 192.168.0.2 port 53032
[  4]  0.0-10.1 sec   225 MBytes   187 Mbits/sec
 
What have you tried so far re. nic types? e1000 vs virtio? More memory will help with states but fast CPU per thread is what you going to need to reach that throughput since the nic is emulated. Alternatively, PCIPassthrough a Nic or SR-IOV might give better results.