blob: 2ed0f825a2b66c219e00e4bba38830479f1124c1 [file] [log] [blame]
Brian Tierneyd7e699e2013-12-20 14:46:24 -08001#!/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
9if [ $# -ne 1 ]
10then
11 echo "Usage: `basename $0` hostname"
12 exit $E_BADARGS
13fi
14
15set -x
16
17host=$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
Brian Tierneydd050572013-12-20 15:05:21 -080058# test congestion control option (linux only)
59./src/iperf3 -c $host -C reno -V
Brian Tierneyd7e699e2013-12-20 14:46:24 -080060
61