@@ -77,24 +77,25 @@ The simplest way to compile this package is:
77
77
all sorts of other programs in order to regenerate files that came
78
78
with the distribution.
79
79
80
- Make Tcpreplay fast
81
- ==========================
82
80
81
+ How to make Tcpreplay go fast
82
+ =============================
83
+
84
+ 1) Quick TX
85
+ --------
83
86
There are two ways to add modules which will make Tcpreplay fast. On
84
87
Linux and BSD you can separately install netmap (see instructions below).
85
88
Note that netmap is disruptive to the network during a Tcpreplay test.
86
89
Specifically the network interface is completely bypassed when netmap
87
- is active. A safer solution is Quick TX (available only for Linux).
90
+ is active. A simpler and safer solution is Quick TX (available only
91
+ for Linux). Quick TX ships with Tcpreplay as of version 4.1.
88
92
89
- As of version 4.1.0, Tcpreplay includes the Quick TX module for Linux.
90
- It allows Tcpreplay to bypass the kernel network stack and write directly
91
- to the network driver. Doing so allows up to wire-rate transmissions
92
- (tested up to 10Gbps). Unlike netmap, it does not bypass the network
93
- stack during Tcpreplay transmission. Also, you do not have to download
94
- kernel source code to build it. By default Quick TX is built and
95
- installed automatically.
96
-
97
- Neither Quick TX or netmap are part of the basic build.
93
+ Quick TX allows Tcpreplay to bypass the kernel network stack and write
94
+ directly to the network driver. Doing so allows up to wire-rate
95
+ transmissions (tested up to 10Gbps). Unlike netmap, it does not bypass
96
+ the network stack during Tcpreplay transmission. Also, you do not have
97
+ to download kernel source code to build it. By default Quick TX is built
98
+ and installed automatically.
98
99
99
100
If you would like to have Quick TX installed, do the following:
100
101
@@ -119,9 +120,9 @@ with 'qtx:', e.g.
119
120
120
121
tcpreplay -i qtx:eth0 -Kt bigFlows.pcap
121
122
122
- Build netmap feature
123
- ====================
124
123
124
+ 2) netmap
125
+ ------
125
126
This feature will detect netmap capable network drivers on Linux and
126
127
BSD systems. If detected, the network driver is bypassed for the
127
128
execution duration of tcpreplay and tcpreplay-edit, and network buffers
@@ -137,9 +138,10 @@ Ensure that you have supported NICs installed. Most Intel and nForce
137
138
(nVidia) adapters will work. Some virtual adapters are supported.
138
139
139
140
FreeBSD 10 and higher already contains netmap capabilities and should
140
- be detected automatically by "configure". But first you must enable netmap on the system
141
- by adding 'device netmap' to your kernel config and rebuilding the kernel. When
142
- complete, /dev/netmap will be available.
141
+ be detected automatically by "configure". But first you must enable
142
+ netmap on the system by adding 'device netmap' to your kernel config
143
+ and rebuilding the kernel. When complete, /dev/netmap will be
144
+ available.
143
145
144
146
For Linux, download latest netmap sources from http://info.iet.unipi.it/~luigi/netmap/
145
147
or run 'git clone https://code.google.com/p/netmap/'. You will also need to have
@@ -166,6 +168,7 @@ directory, for example:
166
168
make
167
169
sudo make install
168
170
171
+
169
172
Compilers and Options
170
173
=====================
171
174
@@ -181,6 +184,7 @@ is an example:
181
184
182
185
*Note Defining Variables::, for more details.
183
186
187
+
184
188
Compiling For Multiple Architectures
185
189
====================================
186
190
@@ -196,6 +200,7 @@ architecture at a time in the source code directory. After you have
196
200
installed the package for one architecture, use `make distclean' before
197
201
reconfiguring for another architecture.
198
202
203
+
199
204
Installation Names
200
205
==================
201
206
@@ -219,6 +224,7 @@ you can set and what kinds of files go in them.
219
224
with an extra prefix or suffix on their names by giving `configure' the
220
225
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
221
226
227
+
222
228
Optional Features
223
229
=================
224
230
@@ -234,6 +240,7 @@ find the X include and library files automatically, but if it doesn't,
234
240
you can use the `configure' options `--x-includes=DIR' and
235
241
`--x-libraries=DIR' to specify their locations.
236
242
243
+
237
244
Specifying the System Type
238
245
==========================
239
246
@@ -264,6 +271,7 @@ platform different from the build platform, you should specify the
264
271
"host" platform (i.e., that on which the generated programs will
265
272
eventually be run) with `--host=TYPE'.
266
273
274
+
267
275
Sharing Defaults
268
276
================
269
277
@@ -275,6 +283,7 @@ values for variables like `CC', `cache_file', and `prefix'.
275
283
`CONFIG_SITE' environment variable to the location of the site script.
276
284
A warning: not all `configure' scripts look for a site script.
277
285
286
+
278
287
Defining Variables
279
288
==================
280
289
@@ -294,6 +303,7 @@ an Autoconf bug. Until the bug is fixed you can use this workaround:
294
303
295
304
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
296
305
306
+
297
307
`configure' Invocation
298
308
======================
299
309
0 commit comments