Reference no: EM132310737
Assignment - TCP Performance Study
1. Synopsis - In this assignment, you will use iperf3 and Wireshark to explore TCP performance when the number of parallel connections, TCP Window size, and Round Trip Time (RTT) from Client to Server vary.
2. Assignment Outline -
- Parallel Connections: TCP throughput vs. Number of Parallel Connections. Using iperf3.
- Window Size: TCP throughput vs. Client's Window size using wireshark and iperf3.
- RTT: TCP throughput vs. Round Trip Time from client to server. Using iperf3.
3. TCP Throughput v.s. Parallel Connections
What you need to provide! You should provide us with the following:
- Script: Bash/shell script you use to run the parallel connections. It should at least contain the specific iperf commands you run.
- A plot and at most 400 words (half a page) report addressing the following (Put it into a pdf):
1. Please provide the IP address of your server and describe the parameters you use, e.g., length of time to transmit (with -t), number of parallel connections (with -P), and other parameters if you specify any. Note, only the number of parallel connections should vary, and all other parameters should be fixed.
2. What's the number of parallel connections that give the highest aggregate bandwidth? What's the trend of aggregate bandwidth as the number of parallel connections increases?
3. Briefly explain the possible reasons behind what you observe. For instance, if aggregate bandwidth increases with more parallel connections at the beginning, then what's the mathematical formula that may explain this? And if aggregate bandwidth stops increasing or even decreases a bit later on, what might be the possible causes?
4. TCP Throughput v.s. TCP Window Size
You will study how TCP throughput varies with TCP window size/socket buffer.
You will use your NECTAR server for this experiment. You will plot the total aggregate bandwidth vs. various window sizes. You can write a shell script to automate the process of trying different window sizes.
Configure the client computer to run varied TCP window sizes. Use Wireshark to see what is the receiving window size advertised by the server.
Use the following command on the client machine: ./iperf3 -c <SERVER_IP> -p <SERVER_PORT> -t <TIME IN SECONDS> -w <Window size>
Observe the throughput of the network.
4.1 What you need to provide!
- Script: Bash/shell script you use to connect and ping the servers. It should at least contain the specific iperf you run.
- A plot, Wireshark screenshot showing the server's window size, and at most 400 words (half a page) report addressing the following (Put it into the same pdf as the previous experiment):
1. Please provide the IP address of your server and describe the parameters you use, e.g., length of time to transmit (with -t) and window size (with -w), and other parameters if you specify any. Note, only the window size should vary, and all other parameters should be fixed.
2. Explain how client's window size affects throughput? When client's window size would not affect throughput? Why?
3. What is the relationship between the client and server window size on the throughput? Why?
5. TCP Throughput v.s. Round Trip Time (RTT)
You will study how TCP throughput varies with RTT.
In this experiment, you can use several public iperf3 servers.
Pick several iperf3 servers (at least 3, ideally located in separate geolocations), and plot bandwidth vs. the RTT to the servers. You can use ping to get the RTT.
5.1 What you need to provide! You should provide us with the following:
- Script: Bash/shell script you use to connect and ping the servers. It should at least contain the specific iperf and ping commands you run.
- A plot and at most 400 words (half a page) report addressing the following (Put it into the same pdf as the previous experiment):
1. Please provide the IP addresses of servers and describe the parameters you use, e.g., length of time to transmit (with -t), which servers you use (and where they are located), and other parameters if you specify any. Note, only the server names should vary, and all other parameters should be fixed.
2. What mathematical relationship should you expect to see between throughput and RTT? Why?
3. If what you observe from your plot is not strictly the same as what's shown in the math equation (which is usually the case), then briefly explain what are other possible factors which may affect throughput?
Note - Complete the task 4.1 around 300 words.
Attachment:- Assignment File.rar