CSE 534 Project 2

Due May 17, 2010 (electronic submission on blackboard)

Guidelines

This is again a group project. Follow the same general rules as in Project 1. Unlike Project 1, however, this project is slightly open-ended. This means that you are not told exactly what to do. You are expected to read relevant papers, construct appropriate simulation experiments, think about parameters and scenarios, and  analyze results. We expect that you will come up with some interesting observations from your experience. You will document all these in the form of a report that we will read for grading. The goal is for you to do some amount of research and investigation; so unlike project 1 you are not given an exact prescription of  what to do. For groups with three students, we simply require a more comprehensive/mature work. For solo projects, we will be somewhat lenient with grading (this means somewhat smaller scope that still addresses all major components of the project is acceptable; but mistakes and weak report writing will not be tolerated).  General goals and approaches are described below.

Description

The basic goal is to use ns-2 simulations to evaluate the performance of the RED and ECN-based schemes to improve TCP performance. To get started, read carefully the basic papers on RED and ECN. They form the basis of this project. Your goal will be to construct a (set of)  wide-area network scenario(s) using ns-2 and evaluate the bulk-transfer performance (e.g., throughput performance of large FTP transfers). You will use RED and ECN capable routers and compare their performances with respect to the base case where traditional drop-tail queues are used in a router. (Drop-tail queue means a queue that drops incoming packets when the queue is full.) Now some pointers:

We are expecting that you will not need to develop/modify ns-2 C++ code. But you may need to read the code to understand what the code is doing. This may be needed to understand the exact nature of the RED and ECN mechanism actually used in ns-2, when the ns-2 manual is not sufficient. Most parameters can actually be set from tcl scripts. But we have not researched this aspect carefully. But to get started, stick to the parameters that can be set in tcl directly. We can figure out more as we start getting specific questions. An FAQ will be posted if needed.

Your report should look like a short paper that describes your approach, your experience and performance data/plots with their analysis. The performance data must contain, at the minimum, throughput and fairness related data. The report should contain references to all papers/articles/web sites that you read and directly/indirectly used in your work. It is acceptable to get help from the wealth of research materials available on the web and digital libraries so long as you reference them.

Grading

It is hard to say beforehand how an open-ended project will be graded. Your focus should be to be able to say something concrete supported by systematic experiments and comprehensive analysis, and document this in a report that is well-rounded and easy to follow. The report should look like a paper and you should use the papers you are reading as models. I am not expecting that your report will be more than 5 pages. But content is more important than the number of pages. Presentation of a bunch of  plots without any explanation/analysis or unclear report writing will lose points. You are allowed to diverge from the guidelines presented above, if needed in the course of your investigation. Generally speaking,  the project grade will be based on (i) the scope of your work (how much you did, very little or a whole lot), (ii) your creativity (did you find something interesting to say that was not mentioned in the papers you read or did an interesting set of experiments not directly mentioned above), (iii) report writing (clarity, organization, presentation). You can assume almost equal weight in the three components.

Submission

The submission will be electronic via blackboard. One and ONLY one team member should upload the report (pdf, doc and docx formats only). Please mention the team members' names both in the report as well as in text comments at the time of upload. In addition to the report, you need to upload in a separate zip archive all codes you developed for the project (including the tcl files and scripts/codes for analysis, with a brief text file description of how to use them, on what type of systems, etc,)

Helpful Resources