CS204: Project

Spring Quarter 2016

The goal of the project is to connect a paper you've read with real implementation. The project is deliberately under-specified so that you can have a taste of working on an open-ended research problem. Choose a paper from amongst those we've read, or (I encourage this), explore something new. Note down some of the questions you have while reading the paper, and think about how you could design experiments to answer those questions. For example:

  • Does a questionable result in a paper you read hold up when you replicate it?

  • What happens if you vary a parameter the original experimenter didn't consider?

  • If you mix two pieces of work, what new effects occur? You may try to reproduce existing results (good), negate existing results (better), or produce new results (even better). These results can be either analytic, or experimental. If experimental, you may need to learn new tools to complete the project, based on your chosen topic. Mininet might be a good starting point. You may have to 4 members of your group.

Requirements

Project proposal and update discussions (10%)

  • Discussion with professor on your idea and progress

  • All group members should be present

Project presentations (10%)

  • 15-minute presentation per group

  • 5-minute Q&A from class members (it counts as part of your participation grade!)

Final report (20%)

  • Up to 6 pages, 11pt, double-column

  • Consider the following questions

    • What paper did you choose, and why is this work important?

    • What subset of results in the original paper did you try to reproduce/improve upon? Why that particular subset?

    • What did your results look like?

Deadlines

  • May 5-6: project proposal discussion with professor

  • May 19-20: project update with professor

  • May 27, June 1, June 3: project presentations

  • June 10: final report due

Places to Look for Papers

  • SIGCOMM: ACM Annual SIGCOMM Conference

  • NSDI: USENIX Symposium on Networked Systems Design and Implementation

  • CoNEXT: ACM International Conference on emerging Networking Experiments and Technologies

  • Infocom: IEEE International Conference on Computer Communications

  • CCR: Computer Communications Review.

  • IMC: International Measurement Conference

Project Suggestions

Note that these are suggestions only, you can pick one of these but are expected to elaborate on it, or pick a different question about the paper, or pick a different paper.

GPS + Leaky bucket [pdf]

  • Paper: Delay constraint

  • This is a delay constraint only, what does the delay distribution look like? How does this depend on arrival process?

MPTCP [pdf]

  • Paper: design of MPTCP congestion control and scheduling

  • What's the interaction between congestion control and scheduling?

  • Open-source MPTCP kernel implementation available http:multipath-tcp.org/

AVIS [pdf]

  • Paper: optimize video rates to maximize utility and link utilization

  • How to modify if to account for varying user arrivals, to ensure we eventually converge to the optimal solution?

VL2 [pdf]

  • Paper: separate IP naming for host identifier and host location

  • Why not VLANs? How do VLANs perform head-to-head with VL2?

Bufferbloat [pdf]

  • Paper: Due to large buffers, some flows experience excessively long delays

  • Can you emulate these results in Mininet?

MPEG-DASH [pdf]

Internet topology weaknesses [pdf]

  • Paper: Knocking out a few “core” routers will destroy the Internet

  • Can you show this collapse using a large-scale simulation? Note that there have been several follow-up works refuting the original argument, so it may be good to also pick one of them and see which argument holds, backed up by quantitative data from the simulation.

Final presentation schedule

5/27

  • Video streaming over LTE + WiFi (Payas)

  • CDN latency (Niloufar, Andres, Christina)

  • Powerlne communications (Patrick)

6/1

  • TCP replay (Ahmad, Abhinav)

  • Chord (Lyuye, Nan, Kaicheng, Dennis)

  • MPTCP (Ignacio, Maria)

6/3

  • Chord (Joshua, Hoang)

  • Bufferbloat (Yuanzhi, Tianrui, Minying)

  • Hadoop + Chord (Reeta)

  • Bufferbload (Odalys)