Course Project

PROJECTS

There will be two reproducibility assignments you will work on throughout the quarter. The first assignment is a small, warm-up project in which you will reproduce an experiment common to many research efforts. For the second assignment you will work to reproduce a result from a published networking paper.

WARM-UP PROJECT

A Comparative Analysis of Government and Top-site Hosting Government The transition from on-premise servers to third-party infrastructure is a widespread trend across numerous sectors. For governments, this shift presents a particularly challenging dilemma. While third-party providers offer specialized content delivery solutions with benefits such as flexibility, scalability, and enhanced security, they also introduce several risks including multi-tenancy, centralization, and a lack of control over data placement.

For the first assignment, you are asked to select a country and compare the adoption of third-party providers between the country’s governments and regional popular sites. Your work you will reuse the methodology and some of the results of an upcoming paper from AquaLab (“Of Choices and Control - A Comparative Analysis of Government Hosting” to be presented at IMC 2024). You will use Google’s Chrome User Experience Report (CrUX) to compile a list of popular websites in the chosen country, use a VPN in the country and scrape resources one level beyond the landing pages. Leveraging the methodology described in the associated paper, you will determine the serving infrastructure and geolocation of the organizations responsible for the infrastructure serving these top sites and the fraction of non-government topsites that use either on-premise or third-party solutions to deliver content.

Your submission should include a description of your experimental setup, graphic representations of your results, and your key findings and observations, including you are asked to compare your findings with the reported hosting strategies for the country’s government sites.

REPRODUCTION PROJECT

For the second assignment you will work as part of a small team to reproduce results from a published paper.

Reproducing research results from a paper will let you gain a detailed, in-depth understanding of an important paper, the research area and underlying concepts, and its key results. It will let you concentrate your energy on the most rewarding part of the research effort, building a prototype or experimental framework and carrying out the experiments, knowing that the problem you are tackling is interesting and can “deliver”.

You will start by selecting a paper, either a classic or a recent one, you are interested in learning more about. We will provide you with a list of conferences and research papers, as examples, you may want to consider for this as well.

After choosing a paper and sketching the idea of your project (what part of the work you want to reproduce and how you may go about it), you may want to contact the original authors, informing them of your intended project and asking for advise and suggestions. We will be happy to help you with this.

As you work through the quarter, you will meet with the staff once a week, to check-in and discuss progress. The final delivery will include a short presentation the class, with the main highlights of the paper and your reproducibility effort, and potentially a public blog post.

This is borrowed from an excellent course initially started by Nick McKeown at Stanford U. You can look at some recent work done in the Stanford class to get an idea of how these projects look like.

DELIVERABLES AND TIMELINES

The deliverables for both assignment will be done via Canvas. For the Warm-Up Assignment, you will submit your proposed experiment during the first week and a final report at the end of the third-week of classes.

For the Reproducibility Assignment, the blogpost and short presentation to the class should cover the main highlights of the paper and your reproducibility effort, including answers to the following questions: Where you able to recreate the experiment? How do your result compare with those of the original paper? Can you explain the discrepancies? If you could not reproduce the work, what was the main challenge you face?

This is the schedule of meetings and deliverables (this is mainly to ensure steady progress):

  • Warm-up - Proposed experiment: Week 1
  • Warm-up - Final report: Week 3
  • Reproduction - Form a team: Week 2
  • Reproduction - Paper selection/project proposal: Week 3
  • Reproduction - Midpoint report: Week 6
  • Reproduction - Final report: Week 9
  • Reproduction - Project presentation: Finals