TRex
trex-tgn.cisco.com
What it is
TRex is an open source traffic generator for benchmarking platforms with realistic network traffic. It produces Layer 3–7 traffic in stateless, stateful, and advanced stateful modes. Stateless mode supports multiple streams, packet-field changes, and per-stream or per-group statistics, latency, and jitter. Advanced stateful mode emulates Layer 7 traffic over scalable TCP and UDP flows. Emulation includes ARP, IPv6, ND, MLD, IGMP, ICMP, DOT1X, DHCPv4, DHCPv6, and DNS. TRex offers Python automation APIs and a console interface; stateless functions can also be used through JSON-RPC. The manual describes it as a Linux application using DPDK and Linux kernel modules, intended for COTS x86 servers. The site says one server can scale up to 200 Gb/sec. It can run in a virtual machine or Docker for low-performance, low-footprint use, but virtual switches can limit throughput and virtual-machine latency results are not accurate. TRex is free, with hardware and NIC requirements. The GUI monitoring application TRexViewer is supported only on Windows.
Spec sheet
- Purpose
- TRex is an open source traffic generator for benchmarking and testing network devices with realistic traffic.Read 4 Oct 2026 · trex-tgn.cisco.com
- Deployment
- TRex is a Linux application; the documentation also describes running it in Docker or a VirtualBox virtual machine for experimentation.Read 4 Oct 2026 · trex-tgn.cisco.com
- Security
- The opened official pages do not state security certifications or compliance claims.Read 3 Oct 2026 · trex-tgn.cisco.com
- Support
- The documentation lists a TRex community forum and Cisco DevNet community as support resources.Read 3 Oct 2026 · trex-tgn.cisco.com
- Advanced stateful
- Advanced stateful mode emulates Layer 7 traffic over scalable TCP and UDP flows.Read 4 Oct 2026 · trex-tgn.cisco.com
- Automation
- TRex provides a Python API and a console interface, and its stateless API can be used through JSON-RPC from languages that support it.Read 4 Oct 2026 · trex-tgn.cisco.com
- Automation API
- The documentation provides Python automation APIs for stateless, stateful, advanced stateful, emulation, and NDR functions.Read 3 Oct 2026 · trex-tgn.cisco.com
- Emulation protocols
- Emulation includes ARP, IPv6, ND, MLD, IGMP, ICMP, DOT1X, DHCPv4, DHCPv6, and DNS.Read 3 Oct 2026 · trex-tgn.cisco.com
- GUI support
- The TRexViewer live monitoring application is supported only on Windows OS.Read 4 Oct 2026 · trex-tgn.cisco.com
- Integration
- The documentation describes an integration with BIRD for Linux based stack configuration.Read 4 Oct 2026 · trex-tgn.cisco.com
- Operating system
- The manual describes TRex as a Linux application that uses DPDK and interacts with Linux kernel modules.Read 3 Oct 2026 · trex-tgn.cisco.com
- Performance
- The site says TRex can scale up to 200 Gb/sec with one server.Read 4 Oct 2026 · trex-tgn.cisco.com
- Platform limit
- The manual says TRex should work on COTS x86 servers and can be compiled for ARM, though ARM is not tested in its regression setup.Read 4 Oct 2026 · trex-tgn.cisco.com
- Protocol emulation
- Its emulation functionality includes ARP, IPv6, ND, MLD, IGMP, ICMP, DOT1X, DHCPv4, DHCPv6, and DNS.Read 4 Oct 2026 · trex-tgn.cisco.com
- Stateful features
- Advanced Stateful mode supports L7 traffic with scalable TCP and UDP.Read 3 Oct 2026 · trex-tgn.cisco.com
- Stateless features
- Stateless mode supports multiple streams, packet field changes, and per stream or group statistics, latency, and jitter.Read 4 Oct 2026 · trex-tgn.cisco.com
- Traffic generation
- TRex generates L3–7 traffic and offers stateful and stateless traffic generation modes.Read 3 Oct 2026 · trex-tgn.cisco.com
- Traffic modes
- It supports stateless, stateful, and advanced stateful traffic generation.Read 4 Oct 2026 · trex-tgn.cisco.com
- Use cases
- The FAQ lists high scale benchmarks, switch testing, large client and server scale tests, production tests, and routing protocol tests as common use cases.Read 4 Oct 2026 · trex-tgn.cisco.com
- Virtual environment limits
- The FAQ says virtual switches can limit throughput to around 1 MPPS and latency results in virtual machine setups are not accurate.Read 4 Oct 2026 · trex-tgn.cisco.com
Plans and prices
Strong points and limits
Strong points
- Supports stateless, stateful, and advanced stateful traffic modes.
- Python APIs and a console interface support automation.
- Emulates a range of network protocols.
- Free and open source.
Limits
- TRex is a Linux application with hardware and NIC requirements.
- Virtual switches can limit throughput.
- Virtual-machine latency results are not accurate.
- TRexViewer is supported only on Windows.
Who it suits
TRex suits network teams benchmarking devices, testing switches, or generating stateful and stateless traffic. Its documented Linux application and hardware requirements should fit the intended test environment.
Verdict
TRex offers several traffic-generation modes and automation interfaces for network benchmarking. Account for its hardware requirements and the stated limits of virtual environments.
Where Specifiction places it
- Network Testing Software#15 of 337.9