CS 3611 Lab 2: Play with Mininet solution

$24.99

Category:

Description

5/5 - (6 votes)

1. Simulate the following topology in Mininet. Set the link bandwidth for (s1,s2) and (s1,s3) as
10Mbps. Use iperf3 to test the TCP throughput between h1 to h2, h3, h4. (30 points)
Requirements:
a) Please provide a python code file creating this topology in Mininet, and name it as hw1.py.
You can refer to https://github.com/mininet/mininet/wiki/Introduction-to-Mininet to find relevant
python codes you need to create the topology and test the TCP throughput.
b) Use the command “sudo python hw1.py”, and then put the screenshots of the process creating
this topology and the iperf3 outputs on the Ubuntu terminal in your report.
2. Now let us set the packet loss rate of the link (s1,s2) and (s1,s3) as 6%. Use iperf3 to test the
TCP throughput between h1 to h2, h3, h4 again. (30 points)
Requirements:
a) Please provide a python code file creating this topology in Mininet, and name it as hw2.py.
b) Use the command “sudo python hw2.py”, and then put the screenshots of the process creating
this topology and the iperf3 outputs on the Ubuntu terminal in your report.
3. Let us add another link between s2 and s3. Try to test the connectivity between all the hosts.
What would happen? How would you solve the problem? (40 points)
Requirements:
a) Please provide a python code file named as “hw3.py” creating this topology.
b) Use the command “sudo python hw3.py”, and then put the screenshots of the process creating
this topology.
c) Use the command “pingall” after process b) in mininet to test the connectivity between all the
hosts. Put the output screenshots on the Ubuntu terminal in your report and talk about what
happened.
d) Try to use ovs-ofctl command to help solve the problem (Hint: ovs-ofctl can add flow rules
on your switches). A shell script named as “hw3.sh” is also required, which includes all the
ovs-ofctl commands you need to solve the problem
e) Open a new terminal and use the command “sh hw3.sh” and then repeat the process c) above
to test the connectivity between all the hosts again. Put the output screenshots on the Ubuntu
terminal in your report and talk about your thinking.