Follow these instructions to build the tcp generator using DPDK 22.11 and CloudLab nodes
Make sure that
PKG_CONFIG_PATH
is configured properly.
git clone https://github.com/carvalhof/tcp_generator
cd tcp_generator
PKG_CONFIG_PATH=$HOME/lib/x86_64-linux-gnu/pkgconfig make
Make sure that
LD_LIBRARY_PATH
is configured properly.
sudo LD_LIBRARY_PATH=$HOME/lib/x86_64-linux-gnu ./build/tcp-generator -a 3b:00.0 -n 4 -c 0xff -- -d $DISTRIBUTION -r $RATE -f $FLOWS -s $SIZE -t $DURATION -e $SEED -c $ADDR_FILE -o $OUTPUT_FILE -D $SRV_DISTRIBUTION -i $SRV_ITERATIONS1 -j $SRV_ITERATIONS2 -m $SRV_MODE
Example
sudo LD_LIBRARY_PATH=$HOME/lib/x86_64-linux-gnu ./build/tcp-generator -a 3b:00.0 -n 4 -c 0xff -- -d exponential -r 100000 -f 1 -s 128 -t 10 -e 37 -c addr.cfg -o output.dat -D constant -i 0 -j 0 -m 0
$DISTRIBUTION
: interarrival distribution (e.g., uniform, exponential, pareto, or lognormal)$RATE
: packet rate in pps$FLOWS
: number of flows$SIZE
: packet size in bytes$DURATION
: duration of execution in seconds$SEED
: seed number$ADDR_FILE
: name of address file (e.g., 'addr.cfg')$OUTPUT_FILE
: name of output file containg the latency for each packet$SRV_DISTRIBUTION
: fakework distribution in the server side (e.g., constant, exponential, or bimodal)$SRV_ITERATIONS1
: iterations of the fakework in the server side$SRV_ITERATIONS2
: iterations of the fakework in the server side (only for bimodal)$SRV_MODE
: mode for bimodal (only for bimodal)
[ethernet]
src = 0c:42:a1:8c:db:1c
dst = 0c:42:a1:8c:dc:54
[ipv4]
src = 192.168.1.2
dst = 192.168.1.1
[tcp]
dst = 12345