CS 681 Simulation Assignment & Self-Study


Study and Validation of TCP Analytical Performance Models

This is an individual - single person assignment.

We had studied an analytical model of TCP throughput performance at the beginning of this course. This model was from the following paper:

Matthew Mathis, Jeffrey Semke, Jamshid Mahdavi, and Teunis Ott. 1997. The macroscopic behavior of the TCP congestion avoidance algorithm. SIGCOMM Comput. Commun. Rev. 27, 3 (July 1997), 67-82. DOI=10.1145/263932.264023 http://doi.acm.org/10.1145/263932.264023

In this assignment you will write a discrete event simulation model that studies the validity of this model and other advanced models of TCP. 

The simulation should study

  • The scenarios under which the basic model works well
  • The scenarios under which the basic model  does not work well but advanced models do. (Any one scenario.)

Read the following papers about more advanced analytical performance models of TCP. Two papers are listed below, more may be added:

Jitendra Padhye, Victor Firoiu, Don Towsley, and Jim Kurose. 1998. Modeling TCP throughput: a simple model and its empirical validation. SIGCOMM Comput. Commun. Rev. 28, 4 (October 1998), 303-314. DOI=10.1145/285243.285291 http://doi.acm.org/10.1145/285243.285291

Mellia, M.; Zhang, H., "TCP model for short lived flows," Communications Letters, IEEE , vol.6, no.2, pp.85,87, Feb. 2002. doi: 10.1109/4234.984705. URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=984705&isnumber=21225


The assignment deliverables are open-ended. Evaluation of the assignment will be based on how thorough a study of TCP performance models you do, both in terms of understanding the theory given in the above papers, and how/what you choose to validate by simulation. You should formulate questions, decide how you will answer them, and then answer them. You will be evaluated on the quality of your questions, and how you answered them.

For any one metric, a statistical analysis resulting in confidence intervals should be done and plot should show confidence intervals. For all other plots, it is ok to just plot the mean value, but repetitions should be done nonetheless.

The theoretical understanding of these papers may be evaluated either by viva or by a written open-paper/notes/book quiz.