Systems Support for
Continuous Media



Research Project
Paper Reviews
Survey Paper




Students are expected to engage in a research project for the duration of this course, and produce a poster presentation, a research paper and a demo (if applicable) at the end of the course. Ideally, the research project tackles a current research problem, and proposes an original solution. The research paper should be of publication quality.

You are to work in a group of maximum 3 students for the research project.

A good research project must (i) define a problem (ii) propose a solution (iii) implement the solution (simulated or real solution), and (iv) evaluate against existing solutions.

Your research project can be of the following natures.

  • New research problem/solution You define a new, interesting problem and propose a solution. Your solution does not have to be real good (for example, see Bolot and Tullerti's paper on rate adaptation).

  • Existing research problem/new solution You look at an existing, interesting problem, and propose a new, novel solution that is better than existing solutions, which can lead to new ways of looking/understanding the problem (for example, the PIM paper).
  • Existing research problem/compare existing solutions You look at an existing problem and its solutions. Implement the solutions, compare them and provide new insights to why one solution is better than another (for example, see Feng and Rexford's paper on smoothing).
  • Build an innovative system Build a novel application that noone, or few, have built before. This is suppose to be fun and cool :) But most importantly, identify new issues in your system that no existing solutions can adequately solve. (for example, see McCanne and Jacobson paper on vic)
  • Empirical analysis of some data collected Researchers need to build systems that are close to reality. Therefore an in-depth understanding of what the reality is, is important. For this type of project, collect some data, perform some analysis and discuss how your findings affect current research efforts. (for example, see Padhye and Kurose paper on client interactions with video server)
Remember, good research always teaches other researchers something new.

I do not expect you to write the code from scratch. There are many existing libraries/open source applications available, which you may use for this class. See "software resources" below.

A list of suggested topics are available. However, you are encourage to propose your own research project, subjected to approval.

Due Date

16th September Project Proposal Due
13th November Project Poster Session
15th November Research Paper Due

Project Proposal

You are required to submit a project proposal by 16th of September. The proposal should contain at least the following items:

  • List of team members
  • What problem you are trying to solve
  • Some idea of how well-studied is the problem (detail list of bibliography is NOT required)
  • Some idea on what is needed to evaluate your solution (e.g. software and hardware requirements)
  • Tentative schedules.
I expect a 1-2 page document. The goal is to (i) challenge you to think about your project early, and (ii) perform a sanity check on the feasibility of your idea. The proposal will constitute 5% of your project grade.


These are just ideas. Each idea can have many open research issues (some could constitute _a few_ Ph.D. thesis). You should identify a small problem for your project. Don't try to solve everything :)
  • Peer-to-peer Streaming Some file sharing tools allow users to download from multiple sources simultaneous. Can we stream from multiple sources, and playback in real-time? Such applications would allow iTunes like service where customers can listen to an audio (without ability to save them) before they decide whether to purchase.
  • Streaming 3D Graphics Imagine watching "Finding Nemo", with all the polygons and textures streamed to your desktop. How to stream these data? how to deal with latency, jitter and packet loss? We don't stream the rendered images as video so that users can change their viewpoints dynamically, and different users may have different viewpoints. (Maybe not so suitable for cinematic entertainment, but would be nice for games)
  • Remote Surveillance Imagine a large group of people being quarantined for SARS, and someone is monitoring them through webcam. Or imagine in a battlefield, where many unmanned ariel vihecles (UAV) are flying around sending video back to the command center. These applications requires many-to-one communications and have different requirements than one-to-many communications we learned in class. What scalability, transmissions, scheduling issues can arise here?
  • Device streaming Cellphones and PDAs have limited computing resources and are battery-powered, and have lossy wireless network links. What are the challenges in transmission and playback on these devices?
  • Multipath Streaming Traditional network applications send data through a single path. Recent efforts in path diversity study how to send data through more than one paths. (say one through wireless card, another one through IR port/bluetooth/wired link) Streaming through multiple paths can reduce the effects of bustiness in network conditions.

Useful Links

Software Resources

Web Site Design by OoiWT, done with Vim and Macromedia Dreamweaver MX