Content:
INCS 775 – Data Center Security
Fall 2024
Assignment - 1
Total points: 100 (Zhida Li edited for INCS 775-VA4-VA5)
• OracleVirtualBoxor/andVMwareWorkstationPlayerinstallation • Python
• Userisnotinthesudoersfile
• MininetInstallation
• InstallingiPerf3onUbuntu • StartMininet
• MininetHosts
• Mininet
• MininetBuilt-inTopologies • WorkingwithOVS
Background:
The Fat-Tree topology, depicted in the Figure below, consists of k pods (k=8), each of which consisting of 𝑘⁄2 edge switches and 𝑘⁄2 aggregation switches.
Edge and aggregation switches connected as a clos topology and form a complete bipartite in each pod. Also each pod is connected to all core switches forming another bipartite graph.
Fat-Tree built with k-port identical switches in all layers of the topology and each of which supports 𝑘3⁄4 hosts. With Fat-Tree topology issues with oversubscription, costly aggregation and core switches, fault tolerance, and scalability are resolved. Fat-Tree established a solid topology for researchers to work onto solve other important issues such as agility through virtualization.
• Establish the Data Center topology demonstrated above and employ a Python script to construct a Fat Tree topology using Mininet.
Link bandwidth = 8 Mbps Link Delay = 3 ms
I've attached a Python script for a Fat-Tree topology with 4
pods. You can modify it to support a Fat-Tree topology with 8 pods
(Custom_FatTree_4Pods.py).
Do not add any controller for path
setup.
• Useovs-ofctltocreatesixbidirectionalpaths,i.e.,theorangepath between h1 and h5, the blue path between h4 and h5, the brown path between h17 and h52, the red path between h20 and h25, the purple path between h113 and h126, and the pink path between h116 and h125. (No other pair of hosts should be able to communicate)
• AftersettingupthepathrunthefollowingfromMininetconsole: o iperf h1 – h5
o iperf h4 – h5
o iperf h17 – h52 o iperf h20 – h25 o iperf h113 - h126 o iperf h116 - h125
• Thenrun:
o h1 ping h5
o h4 ping h5
o h17 ping h52
o h20 ping h25
o h113 ping h126 o h116 ping h125
What to submit?
• Put the following files inside a compressed folder named <lastname_firstname.zip> (Only one member of the group is required to submit the assignment)
• Create a text file called Group_info and fill it with the names, student IDs, and email of each group member.
• Custom_FatTree_8Pods.py - - script containing the code to construct the Fat Tree topology 8 pods using Mininet.
(28)
• Files containing the flow rules using ovs-ofctl for the switches: L1_Acc-S1, L1_Acc-S2, L1_Acc-S5, L1_Acc-S7, L1_Acc-S13, L1_Acc-S29, L1_Acc-S32, L2_Agg-S1, L2_Agg-S6, L2_Agg-S14, L2_Agg-S32, L3_Core-S8. (30)
• Files created by the following commands (after path setup)
o ovs-ofctl dump-flows L1_Acc-S1 (2) o ovs-ofctl dump-flows L1_Acc-S2 (2) o ovs-ofctl dump-flows L1_Acc-S5 (2) o ovs-ofctl dump-flows L1_Acc-S7 (2) o ovs-ofctl dump-flows L1_Acc-S13 (2) o ovs-ofctl dump-flows L1_Acc-S29 (2) o ovs-ofctl dump-flows L1_Acc-S32 (2) o ovs-ofctl dump-flows L2_Agg-S1 (2) o ovs-ofctl dump-flows L2_Agg-S6 (2) o ovs-ofctl dump-flows L2_Agg-S14 (2) o ovs-ofctl dump-flows L2_Agg-S32 (2) o ovs-ofctl dump-flows L3_Core-S8 (2)
• Output of iperf commands (9) o Filename: iperf.out
o One line for each iperf output in the following format ▪ < host_id >-- < host_id >:<reported_bw>
<h1> <h5>
< h4> <h5> <h17> <h52>
< h20> <25>
< h113> < h126> < h116> <h125>
• Average of the first 20 reported round trip times from ping output (9) o Filename: latency.out
o One line containing the average round trip time between each pair:
& > L1(Acc-S1)
&> L1(Acc-S2)
&> L1(Acc-S5)
&> L1(Acc-S7)
&> L1( Acc-S13)
&> L1(Acc-S29)
&> L1(Acc-S32)
&> L2(Agg-S1)
&> L2(Agg-S6)
&> L2(Agg-S14)
&> L2(Agg-S32)
&> L3(Core-S8)
<h1> <h5>
< h4> <h5> <h17> <h52>
< h20> <25>
< h113> < h126> < h116> <h125>
请加QQ:99515681 邮箱:99515681@qq.com WX:codinghelp