Sit325-4 1P
Sit325-4 1P
Note: Queries should be forwarded to your respective tutor via email only. Give at least 2
business days for us to reply or give feedback.
The aim of the task is to conduct the performance evaluation of a small scale SDN network.
Firstly, it is important to understand the various network Key Performance Indicators (KPIs).
These are benchmarks by which optimal network performance is determined. Tracking
performance against KPIs helps network managers make proactive decisions to ensure agreed
service levels are met (both in attack and non-attack scenarios).
The most common KPIs are bandwidth, CPU and memory utilization (for device health), latency
and packet loss (indication of possible network problems). In this task, we will measure the
network performance using Iperf tool 1.
Iperf is a tool to measure the bandwidth and the quality of a network link. Jperf can be
associated with Iperf to provide a graphical frontend written in Java. The network link is
delimited by two hosts running Iperf.
The quality of a link can be tested as follows: - Latency (response time or RTT): can be measured
with the Ping command. - Jitter (latency variation): can be measured with an Iperf UDP test.
- Datagram loss: can be measured with an Iperf UDP test. The bandwidth is measured through
TCP tests.
The difference between TCP (Transmission Control Protocol) and UDP (User Datagram
Protocol) is that TCP use processes to check that the packets are correctly sent to the receiver
whereas with UDP the packets are sent without any checks but with the advantage of being
quicker than TCP.
Iperf uses the different capacities of TCP and UDP to provide statistics about network links.
Iperf can be installed very easily on any UNIX/Linux or Microsoft Windows system. One host
must be set as client, the other one as server. Please read the documentation from the
footnote provided below.
1https://iperf.fr/
Part A
1) Compile from source: git clone https://github.com/esnet/iperf.git
2) Start mininet (sudo mn --custom C_Topology.py --topo C_Topology)
3) Use xterm to open windows for h1 and h2 (use any two hosts) and check there IP
configuration.
4) Basic TCP transmission evaluation. Start the TCP server (-s) at h1 with port 5566 (-p). Also,
monitor the results every one second (-i). Note: the default setting is using TCP. [Double
check the port number and enter the correct ones only].
5) Start the TCP client (-c) at h3. Also, set the transmission duration (-t) to 15 seconds. Note:
after -c, you need to specify the server ip address.
6) iperf -c 10.0.0.3 -p 5566 -t 15 [Double check the server and client ip addresses (and port
numbers as well) and enter the correct ones only].
7) Get Results at h3 (or any other host but please specify). [From 0~15 seconds, the average
throughput is 14.2 Gbps, in our case].
8) Results at h1. (The following figure is just an example for you, shows the throughput every
second). The outputs will look like Figure 1 and 2.
Figure 1: An illustration of (start of) the TCP server (-s) at h1 with port 5566 (-p).
• You are also required to calculate the average latency and explain the outcome in
maximum 250 words to let the reader know your observation. Note that latency is RTT
(Round Trip Time) and you can you use ping command to find the average latency
(https://cloud.google.com/blog/products/networking/using-netperf-and-ping-to-
measure-network-latency). In your report (250 words), you need to show how you
calculated the average latency and how do you explain the results in the network
performance context.
[Hint: average latency formula>> latency = packet size / link data a = rate].
• Write in maximum 200 words, how network security and network latency are related?
To Submit
Submit a pdf file, show your screen shorts to show us that you have successfully completed
steps/ instructions, i.e., you are required to repeat the experiment at your end and submit the
codes or images to show complete implementation of all steps. Submit all requirements in one
pdf file.
Should that fail, there is also a recommendation to reinstall display managers, just identifying
which one it is and swapping out gdm with either kdm or lightdm depending
UTM uses the Ubuntu server build (1.4 GB) (command line only, no GUI) instead of Ubuntu
desktop build (3.65 GB) which supports full GUI. Hence, we cannot have a display with xterm
or gnuplot. Try to configure GUI on Ubuntu Server or install Ubuntu Desktop with UTM.
Question: I am not able to send the data across. I ran ifconfig and it gives me 10.0.03 for node
h3 and 10.0.0.1 for h1.
Solution: Perhaps you first tried the 10.0.0.3 address so please use the correct one, but to
prevent failure please provide the correct port to connect to.
You should also use the correct IP addresses it is because on h1 (lets assume) you pinged
yourself and on h3 (assume) you tried to connect to yourself. Perhaps you do not figure out
the IPs so that's why the intermediate step of what are the IP addresses is important, and then
also the ports.