Home exam 1: Simulation

In this home exam, you explore how information for performance analysis can be generated using simulation. It is specifically concerned with discrete event simulation as it typically used in operating systems and networks.

The central task of the home exam is to determine a small number of properties that can be derived from state variables of the simulation, and which can then be used to distinguish variations of a protocol from each other. It is your task to select the relevant state variables, compute properties from them, argue why these serve to distinguish the protocol variations, provide a suitable graphical representation of the properties, and explain your findings.

The delivery consists of a presentation suitable for projection in the classroom. The exam comprises both the presentation as delivered and your oral presentation in the classroom including the handling of questions.

 

Task

Use the ns3 simulator (version 3.31) to make a comparison of the three TCP variations DCTCP, TCP CUBIC and TCP New Reno.

Simulation setup and simulation state

Compare how the three TCP variations perform using the classical "dumbbell" topology. The topology is illustrated in the figure below.

//  links:  (1)      (2)      (3)      (4)      (5)      (6)
//              ----     ----     ----     ----     ----
//  servers ---| WR |---| M1 |---| M2 |---| M3 |---| LR |--- clients
//              ----     ----     ----     ----     ----
//  ns-3 node IDs:
//  nodes 0-2    3        4        5        6         7       8-10

In this topology, clients (on the right side) are requesting data from the server (on the left side), which will then be delivered over 5 intermediate nodes.

To set up the simulation and learn about the scripts that are used to execute the study with each individual parameter, you should follow in as much detail as possible the instruction here.

The page describes how to run the simulation with a wide variety of parameters, and derive data. The scripts that are provided are even plotting PDF representations of various metrics plotted over time.

It is your task to present the data that is generated by these simulation runs differently, to give your audience a more global view. That means that you should remove the heads and tails of the simulation data, and represent the data that you can derive from the stable part of the simulation.

You should apply the statistics shown in the first lecture to provide a higher-level description of the differences between these 3 TCP variations.

These are just a few that are very frequently used:

  • sending rate of a TCP sender
  • packet loss ratios
  • throughput of the TCP connection ((bytes received)/second)
  • goodput of a TCP connection ((bytes received only once)/second)
  • fairness between different TCP connections (Jain's fairness index)
  • RTT - a TCP sender's estimation of the round-trip-time from S to R, which should change with the queue length at X
  • CWND - a TCP sender's congestion window, which is the computed number of bytes that the sender is allowed to send in the next RTT

Presentation

  • Make a visual classroom representation, in the spirit of a short lecture. Select a tool such as Powerpoint or Google Slides which allows you do download and hand in complete assignments. Tools to present results more interactively (Matlab, Jupyter Notebook) are great in many contexts but not for delivery as a homework. Deliver a PDF version of your presentation as well.
  • The presentation must:
    • explain the goals of your simulation
    • explain which state variable you have used to answer that question, and which derived variables you computed
    • present your results visually using plots (there are many examples in the intro lecture)
    • explain the results
    • explain how the plots assist you in explaining these results
  • Present in the classroom.
    • The presentation that you deliver is not a report. It should be very brief (using bullets) for each requested explanation. The oral presentation in the classroom should be more detailed.
    • It is important to select state variables that are relevant for the question.
    • It is important to plot either raw data or data that has been processed using statistical tools in a way that supports your explanation.

Deadline

The presentation must be submitted on September 15 at 12:00 (before the course starts).

Publisert 1. sep. 2020 11:41 - Sist endret 1. sep. 2020 11:51