This is a containerization of the trex traffic generation tool.
This is a simple docker build. Just run docker build .
. That said, the ./run-trex
script will also build the
container, so all that's required is to run that script.
The script ./run-trex
will build the image, start a container from the image, and drop you into a Trex shell once the
Trex server has started up. By default, the MLX5 configuration for the headnode is used. A different trex configuration
yaml file can be used by adding the --trex-config
flag with the path to the configuration file.
To test sending a single ping out of port 0 to 1.2.3.4.
$ ./run-trex
trex>service
trex(service)>ping -n 1 -p 0 -d 1.2.3.4
The trex container can be tested locally using virtual ethernet devices and a particular trex yaml configuration file.
./run-trex --config-script ./config-scripts/veth.sh --trex-config traffic-configurations/veth.yaml
trex>service
trex(service)>ping -n 1 -p 0 -d 1.1.1.2
Pinging 1.1.1.2 from port 0 with 64 bytes of data:
Reply from 1.1.1.2: bytes=64, time=48.36ms, TTL=64
trex(service)>
A traffic pattern file can be used to run a test.
./run-trex --no-console -- -f /patterns/dns_customer_ip.yaml -c 1 -d 10 --no-ofed-check