Lately with my pfSense firewall project I’ve been pretty busy with the configuration but now that I’m slowing down a little and finishing up the last bits, I can concentrate on a very important part of any firewall or server for that matter. I needed a way to test the amount of data (throughput) that the link outside of my firewall could handle and also test the processor and disk usages when at load (performance). I accomplished this by using TTCP, a utility that allows you to send and receive multiple threads of TCP data. At the end of the test, which usually takes about a minute and a half, you get a display of how long the test took, what your buffer size was (that can be modified), and what your total throughput was. The binaries for Windows and other OS’ can be downloaded from here. You will need to have this running two or more computers to get any kind of results. The “receiver” is ran accordingly:
The transmitter, another computer on a remote segment of the network can be run with:
pcattcp.exe -t 10.0.0.20
The software will then work it’s magic and give you the report at the end of the test. To test from multiple locations, you can launch multiple sessions one right after another on the receiver side and have multiple computers be transmitters to that single receiver.
The diagram below illustrates what I am speaking to accomplish with this.