计算机网络辅导 | CS 4457A: Computer Networks II Department of Computer Science
这个assignment是完成一个网络仿真模拟
CS 4457A: Computer Networks II
Department of Computer Science
Western University
Assignment 3
Fall 2019
Due Date: Nov 23
rd, 2019
Purpose
The goals of this assignment are the following:
• Get familiar with Mininet [1] network simulator, design a Software-Defined Networks (SDN)-based
network architecture, set various network layer parameters, and simulate various scenarios.
• Conduct multiple experiments to evaluate QoS metrics such as latency, packet loss, jitter, and
throughput.
• From the simulation results, identify network performance (QoS) issues and adjust the network
architecture to enhance/improve the network performance evaluation.
Problems
Part1 (50 points): You are given a network topology that consists of two sets of switches and hosts (8
hosts and 14 switches) as shown in Figure 1.
FIGURE 1. Network architecture.
All related parameter settings such as link bandwidth, link delay, and percentage of packet loss are included
in Table I.
TABLE I. Parameter settings
Parameter Values
Link bandwidth 15 Mbps
Link delay 1 ms
Link packet loss 1%
Using the Mininet simulator and Floodlight controller [2], your tasks are:
2
(a) Build SDN-based network shown in Figure 1. [10 points]
(b) Use Table 1 to set up the network parameters for your simulation. [10 points]
(c) One Floodlight controller should be added to the simulated network. Floodlight controller should
be connected to all switches (i.e., vSwitches). [5 points]
(d) The goal is to evaluate the performance of the network against the following QoS metrics: Latency,
Jitter, Packet loss, and throughput. To simplify the task, you are asked to assess these metrics
between two nodes: ℎ1 and ℎ7 where ℎ1 is the source/sender of any packet flow and ℎ7 is the
destination/receiver (See Table II). [25 points]
Hints: The ping application, which uses Internet Control Message Protocol (ICMP), can be utilized to test
the sender-to-receiver connection, compute its round-trip time (RTT) through the timestamps of packets at
sender and receiver host nodes, and then calculate the latency metric. Having the whole list of packet
latencies enables evaluating jitter metric. Similarly, you can run iperf application to generate real-time
traffic using User Datagram Protocol (UDP) probe packets to collect statistical parameters to measure
packet loss and throughput metrics.
Two traffic flows can be used to test SDN-based network’s performance against QoS metrics as shown in
Table II. UDP flow, F1, with a source is host ℎ1 and a destination is host ℎ7, while F2 is ICMP flow that has
ℎ1 and ℎ7 as a source and destination hosts, respectively. All UDP and ICMP flows run for 100 seconds (s)
and this is shown in Table II, the column of “values.” The generated traffic packets can be sniffed at the
destination host using tcpdump tool, saved in separate files for processing and then calculating the required
QoS metrics.
TABLE II. Experimental traffic flows: sender, receiver, and type.
Flow# Sender Receiver Protocol Type Values
F1 ℎ1 ℎ7 UDP
6 Mbps
bandwidth,
100 s
F2 ℎ1 ℎ7
ICMP 100 s
Part2 (50 points): In this part, you are given a new piece of information about a special node in the
network (Host ℎ7 is a data centre). Your task is to enhance the survivability of the network in case of a link
failure. Your solution should give a priority to deliver packets to/from Host ℎ7. You can explore the
following potential options that could help you in this task: (a) Update the topology by adding some links
between nodes (i.e., strengthen the connectivity). You can add up to three links (i.e., budget restrictions);
(b) Add extra controllers (up to two additional controllers), and (c) Update the network’s parameters in
Table I.
Your solution should deliver the followings:
• Demonstrate the enhancement. [10 points]
• Explain what options you used to achieve this enhancement. [5 points]
• Provide an example that demonstrates the validity of your solution to increase the survivability
of the network. [10 points]
3
• Re-run your experiment in Part 1 using your updated model and evaluate the performance
evaluation against the QoS metrics in this case. Does your modification to the model effect the
performance evaluation? Provide analysis to justify your answer. [25 points]
References
[1] “Mininet: Network Emulator/Simulator.” [Online]. Available: http://mininet.org/.
[2] Floodlight, “OpenFlow Controller -Project Floodlight.” [Online].