COS-518 Semester Project

The semester-long project in COS-518 is an open-ended systems research project. Project topics should be reached after discussion with the class instructor. Projects should be done in groups of two or three, and must involve significant system programming. All group students are expected to share equally in the implementation.

The project time-line is as follows:

Project Management

You should strongly consider using a version control system (git, svn, etc.) to perform source code control for your project and the paper you write describing it.

Writing Papers

Evaluation

If you need access to one or two computers for testing your system, please contact us. For larger-scale tests, you should try out one of the following testbeds:

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.

If you wish to use Emulab for your project, you should join our class emulab project.

Planetlab

PlanetLab is a large-scale, distributed collection of machines that can be used for experiments and measurements, managed by a group based here at Princeton. It has around 600 nodes scattered over about 350 sites. The machines run something linux-ish that you can login to and run programs, and there exist a variety of utilities for automatically distributing software to the nodes, running programs, and so on.

You must sign up to use a PlanetLab account. Please only sign up if you're going to use the account, since it imposes some management overhead on people not involved with the course.

Analysis


Last updated: Fri Jan 06 10:47:49 -0500 2012