Originally posted by Michael
View Post
TRex is very different that iperf and netperf. TRex uses DPDK to send and receive traffic.
DPDK is an userspace datapath library which it unbinds a device from the kernel driver, and handles everything in userspace. It's blazing fast, it can easily handle 200 gbit links.
From an user point of view, using TRex it's easy. I always used stable releases, which can be found here: http://trex-tgn.cisco.com/trex/release/, once unpacked they are ready to use, just reserve some hugepages and enable IOMMU from the kernel command line.
A script named dpdk_setup_ports.py must be run once, just to select the interfaces to use, and then trex can be run with one of the shipped presets.
There is a nice preset in cap2/imix_64_fast.yaml which sends ~1 million of 64 bytes packets per second using 50 flows, but I got much better results raising the client number to 5000, because with only 50 flows, the hardware queues of the NIC can work unequally.
TRex output is somewhat messy, so I made a script which captures the output and finally just prints the packet rate, here it is:
and this is my traffic preset:
TRex results are very precise, and it's widely adopted in the networking world for its great performances and accuracy.
Comment