15-744 Semester Project

Projects should be done in groups of two.

Project Management

You should strongly consider using either Subversion or CVS to perform source code control for your project and the paper you write describing it. I suggest Subversion.

I also strongly suggest writing your course project report using LaTeX. It is the de-facto tool in which most CS research papers are written. While it has a bit of start up cost, it's much easier to collaboratively write complex research papers using LaTeX than using word.

Writing Papers

Simulation

The most popular network simulators are ns-2 and Opnet. ns-2 is free, and CSD has some licenses for Opnet.

Testbeds and Emulation

Emulab

Emulab is a network emulation environment at the University of Utah. It provides racks of machines and programmable switches that can be configured to form mostly-arbitrary network topologies, with controllable delay and loss between nodes. It's a great way to test real programs in repeatable conditions or at scales that you can't get on your own.

Emulab also provides a set of wireless nodes that you can control, located around their building. They also have an experimental mobile robot testbed that could make for fun projects (the robots are designed to move computers and radios around so that you can do repeatable experiments involving mobility).