1 #!/bin/sh 2 # 3 # This is a set of commands to run and verify they work before doing a new release. 4 # Eventually they should also use the -J flag to generate JSON output, and a program should 5 # be written to check the output. 6 # Be sure to test both client and server on Linux, BSD, and OSX 7 # 8 9 if [ $# -ne 1 ] 10 then 11 echo "Usage: `basename $0` hostname" 12 exit $E_BADARGS 13 fi 14 15 set -x 16 17 host=$1 18 19 # basic testing 20 ./src/iperf3 -c $host -V -t 5 -T "test1" 21 ./src/iperf3 -c $host -u -V -t 5 22 # omit mode 23 ./src/iperf3 -c $host -i .3 -O 2 -t 5 24 # JSON mode 25 ./src/iperf3 -c $host -i 1 -J -t 5 26 # force V4 27 ./src/iperf3 -c $host -4 -t 5 28 ./src/iperf3 -c $host -4 -u -t 5 29 # force V6 30 ./src/iperf3 -c $host -6 -t 5 31 ./src/iperf3 -c $host -6 -u -t 5 32 # parallel streams 33 ./src/iperf3 -c $host -P 3 -t 5 34 ./src/iperf3 -c $host -u -P 3 -t 5 35 # reverse mode 36 ./src/iperf3 -c $host -P 2 -t 5 -R 37 ./src/iperf3 -c $host -u -P 2 -t 5 -R 38 # zero copy 39 ./src/iperf3 -c $host -Z -t 5 40 ./src/iperf3 -c $host -Z -t 5 -R 41 # window size 42 ./src/iperf3 -c $host -t 5 -w 8M 43 # -n flag 44 ./src/iperf3 -c $host -n 5M 45 ./src/iperf3 -c $host -n 5M -u -b1G 46 # conflicting -n -t flags 47 ./src/iperf3 -c $host -n 5M -t 5 48 # -k mode 49 ./src/iperf3 -c $host -k 1K 50 ./src/iperf3 -c $host -k 1K -u -b1G 51 # CPU affinity 52 ./src/iperf3 -c $host -A 2/2 53 ./src/iperf3 -c $host -A 2/2 -u -b1G 54 # Burst mode 55 ./src/iperf3 -c $host -u -b1G/100 56 # change MSS 57 ./src/iperf3 -c $host -M 1000 -V 58 # test congestion control option (linux only) 59 ./src/iperf3 -c $host -C reno -V 60 61 62