COS-561 Semester Project
The semester-long project in COS-561 is an open-ended networking 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 programming. All group students are expected to share equally in the implementation.
The project time-line is as follows:
- Proposal: Project proposals are due in late October on Piazza.
- Demo and review of "minimal viable prototype" of system:Early December. Meetings
to be scheduled, status report should be submitted on Piazza.
- Final paper: Due on Dean's date. Project writeup should be 5 pages of double-columned, single-spaced, 10-point font (excluding references, which can go on a sixth page). Papers must be typeset in LaTeX. Use this skeleton framework for formatting and building your paper.
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.
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 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
If you wish to use Emulab for your project, you should join our class emulab
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.
- Books: Raj Jain, the Art of Computer Systems Performance Analysis - a very good overview of lots of mathematical
techniques and queuing bits, aimed at a systems audience
Last updated: Tue Oct 23 14:58:22 -0400 2012