TRex Stateless GUI v3.1

Blog Post created by vogai on Feb 1, 2017

TRex Stateless GUI application provides a graphical user interface for http://trex-tgn.cisco.com.

GUI application provides capabilities to manage TRex, create different traffic profiles, run them it in TRex, create VM instructions. Also it has built-in packet crafting tool which allows to create any type of packet(it has the same limitation as Scapy python library).

TRex Port Management

GUI provides capabilities to acquire ports, run a traffic on a port, display port status and different statistic.

Screen Shot 2017-01-31 at 1.48.38 PM.png

Dashboard with global statistics provides detailed information for each port. Such as CPU Utilization, Input/Output traffic and so on.

Screen Shot 2017-01-31 at 3.44.58 PM.png

Profile management

GUI provides:

  • Import existing YAML profiles / export them to JSON or YAML formats.
  • Create a profile from scratch.
  • Create one or more streams for a given profile.
  • Specify profiles stream order.
  • Edit existing stream properties or create new ones.
  • Build a stream from existing PCAP file or from scratch (using advanced Stream builder).
  • Export a stream to PCAP format.

Screen Shot 2017-01-31 at 2.21.03 PM.png


Advanced mode with Packet Crafting Tool

Packet Crafting Tool has two main capabilities. Packet Editor and Field Engine. Packet editor allows user create and/or modify any type of packet which is supported by Scapy

Screen Shot 2017-01-31 at 2.30.54 PM.png

Packet editor's key features:

  • Specify only necessary fields
  • Generate random field values
  • "Lengths" and "checksums" could be automatically generated or explicitly specified.
  • Ability to create TRex VM instruction from predefined template.

Field Engine

Field Engine tab provide to user an easy way to create TRex VM instructions in current stream.

Screen Shot 2017-01-31 at 2.49.25 PM.png

Field Engine's key features:

  • Ability to create predefined instructions from Packet Builder
  • Smart variable name and packet offsets suggester.
  • Integrated help for each instruction

More features and theirs description you can find on project Wiki page

Videos instructions for basic Stateless GUI features

You can find some videos about basic features in this TRex Stateless GUI - YouTube playlist.


For next release we plan to support following features:

  • Per stream statistic
  • Neighboring Protocol
  • Traffic capturing
  • Debug Hardware counters



First of all you need configured TRex core and the easiest way to get it is install TRex VM image into VirtualBox locally. Here is the manual how to install TRex VM.


  • Configure VM:
    • Open VM Settings -> Network -> Advanced -> Port forwarding
    • Add VM port forwarding for ports: 4501(async), 4507(scapy-server)
  • Update trex:


To run TRex use following cli commands: "cd /opt/trex/v2.* ; sudo ./t-rex-64 -i"

You can download Stateless GUI v3.1 released build from here.


TRex Dev team