2025-02-06
To complete this assignment, a certain amount of network capture knowledge is required.
If you are not very familiar with network capture skills (TCPdump, Wireshark or tshark), you can refer to previous assignment instructions on packet capture.
At the end of this assignment, students should be able to
The present assignment contains two tasks to introduce the active measurements and compare them with the passive measurements. Please read all instructions before starting because it is helpful to identify common work.
In this assignment, capture the traffic data from your computer. In the case of using a virtual machine (VM), generate traffic within that virtual computer instead of the usual host because it acts as a separate computer.
Choose one of the packet-capturing tools available such as dumpcap, Wireshark, tcpdump, etc.
Set up active measurements by running scripts based on the table provided for selecting servers related to the “Basic measurements” assignment 2 but use shorter interval such that you will have multiple measurements within the measurement period that is provided in step 2.
Servers | Tool |
---|---|
3 research servers | ping |
2 iperf servers | ping , iperf3 |
Hint: It means you need to run bash scripts and perform ping and iperf tests to the 5 servers in custom intervals (e.g. every 2 minutes).
Capture traffic for a duration of minimum 15 minutes, which includes regular activities such as web browsing, checking emails, watching videos, listening to music, and completing assignments, as well as the active measurements at background.
Note: Record interface counters and overall statistics at the beginning and end of the packet capture as well as store the result of these active measurements (the command outputs) for the next task.
Once the packet capture is complete, do the first sanity checks on captured data for
Note: You should not run ping or iperf3 for 15 minutes, the iperf test will be the same duration (10 seconds) as in A2. But in those 15 minutes, if your interval of the batch script is every 2 minutes, the iperf3 test will be executed 8 times.
Answer the next questions based on the obtained pcap file using one of the mass analysis tools to use such as shown in the Table 1. Mass analysis tools or another suitable tool.
Plot the traffic volume over time by considering all captured packets within the most appropriate time interval.
Hint: You need to plot a time series with x-axis being time in a unit of your choice (seconds, minutes, etc.) and y-axis being traffic volume in bytes or Mbytes for example.
Plot the traffic volume without the ping
packets and
iperf3
packets over time (select the same interval selected
in the previous plot).
Plot the traffic volume comparing the ping
packets
with the iperf3
packets over time (keeping the same
interval).
Hint: You can use filters to check specific protocols (
ping
traffic using ICMP protocol andiperf3
traffic using TCP protocol and ports defined) and/or IP addresses (target server’s addresses).
Provide the average throughput.
Do you have any observations from the above plot of network traffic?
Hint: One of the tools that can be useful is Wireshark to plot and apply filters easily, or another way is converting the pcap file into a CSV file through
tshark
or another similar tool to process, plot, and filter the data using Python or R.
Hint: In terms of recording counters to see overall statistics (only capturing sent and received packet counts are sufficient) for all network interfaces, you can use the command
ip -s link
on Linux.
In this task, use the captured data from the previous task to
compare the results obtained by the active measurements (what
you get from ping
and iperf3
log files) and by
the passive measurements (what you get from packet capture).
Some helpful guides can be found in the supporting material.
iperf3
and
ping
sessionsiperf3
sessions, calculate
throughput where there are two different options:
iperf3
run
will result in a different flow.tcptrace
to extract
information on TCP connections.ping
results, extract ICMP messages
from traces or flows, correlate requests to responses and
calculate delay and identify possible packet loss for
each server.Hint: You can use filters to check protocol (
ping
traffic using ICMP protocol andiperf3
traffic using TCP protocol) and/or IP addresses (target server’s addresses). Besides, there are different ways to obtain the filtered data set using Wireshark, tshark, CoralReef, pyshark, tcptrace.
iperf
or
ping
traffic?iperf
results from active and passive
measurements. Provide a table and plot a time series.ping
results from active and passive
measurements. Provide a table and plot a time series.ping
for the latency and packet loss)To pass this course, you need to achieve at least 15 points in this assignment. And if you submit the assignment late, you can get a maximum of 15 points.
You can get up to 30 points for this assignment:
Task 1
Task 2
The quality of the report (bonus 2p)
For the assignment, your submission must contain (Please don’t contain original data in your submission):
Regarding the report, your report must have: