TCP Throughput v.s. Parallel ConnectionsWe will study how the number of parallel TCP connections affect overall TCP throughput. InstallationWe will use iperf3 for this assignment. Installing iperf3 should be straight forward. Download iperf3 for the correct platform https://iperf.fr/iperf-download.php, and then unzip it to get the iperf3 executable. Get familiar with iperf3Run ./iperf3 -h to see the complete list of options for iperf3. Here, we will just demonstrate a few simple uses. List of public iperf serversYou can get the list of public iperf3 servers here: https://iperf.fr/iperf-servers.php Note, if you get an error saying “iperf3: error - the server is busy running a test. try again later”, then try connecting to the server with a different port (-p [port num]), or try another server. Or, you can also try running your own iperf3 server. Refer to Run iperf server for details. Connect and transmit to a server
./iperf3 -c bouygues.testdebit.info -p 5204 The above command connects to the server on port 5204 (-p option) with a single TCP connection, and tests for 10 second transmit from client (your machine) to server. Default connection port is 5201, however, servers may run iperf on different ports. Try another port if you fail to connect. Specify length of time to transmit
./iperf3 -c bouygues.testdebit.info -p 5204 -t 5 The above command transmits packets from client to server for 5 seconds (default is 10 seconds). Run parallel connections to a server
./iperf3 -c bouygues.testdebit.info -p 5204 -P 5 The above command opens up and transmits with 5 parallel TCP connections to the server (notice the capital -P here). What to turn inWe want to study how the number of parallel connections affects overall TCP performance. We will plot the total aggregate bandwidth vs. the number of parallel TCP connections. (You can write a shell script to automate the process of trying different number of parallel connections.) ScriptBash/shell script you use to run the parallel connections. It should at least contain the specific iperf commands you run. Questions:
|