xmalloc: put __hidden behind signature
[netsniff-ng.git] / Documentation / Manpages / trafgen.8
blob23f72f88972c395a6fb5ed28045a552515c58e13
1 =head1 NAME
3 trafgen - a high-performance zero-copy network packet generator
5 =head1 SYNOPSIS
7 trafgen [-d|--dev <netdev>][-c|--conf <file>][-J|--jumbo-support]
8         [-n|--num <uint>][-r|--rand][-t|--gap <usec>]
9         [-S|--ring-size <size>][-k|--kernel-pull <usec>][-b|--bind-cpu <cpu>]
10         [-B|--unbind-cpu <cpu>][-H|--prio-high][-Q|--notouch-irq][-v|--version]
11         [-h|--help]
13 =head1 DESCRIPTION
15 A high-performance network traffic generator that uses the zero-copy TX_RING
16 for network I/O. For instance, on comodity Gigabit hardware up to 1,488,095 pps
17 64 Byte pps have been achieved with trafgen.
19 =head1 OPTIONS
21 =over
23 =item trafgen --dev eth0 --conf trafgen.txf --bind-cpu 0
25 Use packet configuration trafgen.txf, eth0 as transmission device and CPU0
26 for binding the process.
28 =back
30 =head1 OPTIONS
32 =over
34 =item -h|--help
36 Print help text and lists all options.
38 =item -v|--version
40 Print version.
42 =item -d|--dev <netdev>
44 Device for transmission i.e., eth0.
46 =item -c|--conf <conf>
48 Path to packet configuration file.
50 =item -J|--jumbo-support
52 Support for 64KB Super Jumbo Frames
54 =item -n|--num <uint>
56 Number of packets to generate before exiting.
57 0 means forever until SIGINT.
59 =item -r|--rand
61 Randomize packet selection process instead of round-robin.
63 =item -t|--gap <uint>
65 Interpacket gap in microseconds.
67 =item -S|--ring-size <size>
69 Manually set ring size to <size>: mmap space in KB/MB/GB.
71 =item -k|--kernel-pull <uint>
73 Kernel pull from user interval in microseconds.
74 Default value is 10 microseconds.
76 =item -b|--bind-cpu <cpu>
78 Bind to specific CPU (or CPU-range).
80 =item -B|--unbind-cpu <cpu>
82 Forbid to use specific CPU (or CPU-range).
84 =item -H|--prio-high
86 Make this high priority process.
88 =item -Q|--notouch-irq
90 Do not touch IRQ CPU affinity of NIC.
92 =back
94 =head1 EXAMPLES
96 =over
98 =item Generate traffic defined in trafgen.txf on eth0 using CPU 0
100 trafgen --dev eth0 --conf trafgen.txf --bind-cpu 0
102 =item Generate traffic on eth0 using CPU 0, wait 100 us between packets
104 trafgen --dev eth0 --conf trafgen.txf --bind-cpu 0 --gap 100
106 =item Generate 100,000 packet on eth0 using CPU 0
108 trafgen --dev eth0 --conf trafgen.txf --bind-cpu 0 --num 100000
110 =back
112 =head1 AUTHOR
114 Written by Daniel Borkmann <daniel@netsniff-ng.org>
116 =head1 DOCUMENTATION
118 Documentation by Emmanuel Roullit <emmanuel@netsniff-ng.org>
120 =head1 BUGS
122 Please report bugs to <bugs@netsniff-ng.org>
124 =cut