Assignments

Homework

Homework sets will be posted on the course Canvas page.

Homework sets are due by 11:59 PM ET on the date specified on the course schedule page and should be submitted through Canvas. See the home page for the late policy. Please e-mail the course instructor in the case of extenuating circumstances.

Homework sets will cover the following topics:

  • Homework 1: Link layer
  • Homework 2: Network layer
  • Homework 3: Transport layer

You may discuss general approaches to the problems with others, but you must individually submit work that is your own.

Midterm exam

The midterm exam will be based on the core networking material covered in the first half of the course. The exam will be given in person on March 1, unless the course is being taught remotely at that time.

Paper presentations and discussions

The majority of our meeting time after the midterm exam will be spent discussing recent research papers related to networking from the systems, networking, and security resesarch communities. Be prepared to read a lot of research papers!

Prior to each class, you will be responsible for reviewing the papers and submitting your comments through the course’s Perusall page. You will also be responsible for leading the presentation and discussion of several of the papers.

Discussion leader sign-up

For papers that you want to lead the presentation and discussion, signing up will be on a first-come, first-served basis. (Link to paper sign-up form posted on Canvas in an announcement.) If you have not selected papers by the sign-up deadline, you will be assigned some of the remaining papers at random.

Discussion participation

For each paper that we read, it is expected that you add your own comments and discussion questions on Perusall to help facilitate class discussion. Your comments and questions will constitute a substantial portion of the final grade, and it is expected that you participate for every paper.

Some suggestions for good comments are ones that address the following:

  • Problems and challenges that the work addresses
  • Novelty of the research problem (i.e., why this is not just X method applied to Y domain/application)
  • Scope of the solution (e.g., too general, too narrow)
  • Shortcomings and limitations of the approaches or evaluation
  • Suggested alternative approaches that could have been taken
  • Unanswered questions that the paper’s discussion omitted
  • How this work relates to other works covered in the course

Please also include one or more discussion questions that can be brought up to the rest of the class.

To give enough time for the discussion leader to prepare the paper’s presentation and discussion, you should ideally submit all comments on Perusall before the lecture day that the paper is presented.

Discussion leader

For each paper that you lead, it is expected that you will lead about half of the class meeting that day (since 2 papers will be presented per meeting).

This involves two parts:

  1. presenting a short (~10 minute) presentation over the key technical insights, methodologies, and contributions of the paper, as well as
  2. leading the class discussion.

For the presentation, note that there is no need to present every last detail of the paper (since everyone has already read it). However, if there are particularly salient points that you want to draw attention to or background context that you want to add, you are welcome to do so! The paper presentations are meant to show your ability to present the highlights and contributions of the paper, as well as to show your ability to analyze the paper for interesting insights beyond what is simply stated in the paper. In essence, it is a summary of what you think is important but should also be what you believe are interesting insights that we should take away from reading it.

If existing presentations exist for the paper that you present (e.g., the original author’s presentation), it is okay to borrow limited selections from the presentations so long as you properly attribute the work. Do not present the author’s presentation. Your presentation should reflect what you think is important.

For the discussion, you should address key points based on the comments and questions that others have submitted. The discussions should not simply be one-sided (i.e., lecturing over what was submitted) but should involve calling on others, posing questions, and active participation.

Some questions may be more relevant or interesting to bring up to discuss, so it is okay to highlight those and to skip over others. It’s even more effective if you are able to group similar questions together, as that makes it easier to discuss when grouped.

Term project

The term project encompasses a significant portion of the course related to research. You may work on the project alone or in groups of two students. Groups of three students are permissible but require justification and are expected to complete additional work.

Term projects may take one of two approaches of reproducing research or novel research. Some questions to think about for each, which can be incorporated into your proposal:

  • Reproducing research: Implement a protocol or system found in existing work
    • What is needed to implement the existing work? (e.g., emulation tools, testbed setups)
    • Which key results should be reproduced and why?
    • Which aspects of evaluation (e.g., different metrics, different parameters for existing metrics) are not evaluated in the work? Why might they be important? Would the key results change?
  • Novel research: Work on an aspect of your research related to this course
    • How does this problem relate to networking?
    • What problem is this research trying to solve?
    • Why is this research problem important?
    • What is the novel insight compared to the current state of the art?
    • How should success be measured?
    • What is achievable within the course timeframe?

Proposal

Proposals must be approved by the course instructor before the project is started. It is required to meet with the course instructor to discuss this and strongly encouraged to meet prior to the proposal deadline so that you have as much time as possible to work on the project and so that you can avoid having to revise/resubmit the proposal later.

Proposals should be 1–2 pages and include:

  • a set of project member(s),
  • either:
    • a summary of the protocol, algorithm or technique to be implemented, or
    • the research problem to be explored,
  • a proposed timeline, and
  • a set of deliverables (e.g., code)

Midpoint report

Midpoint reports should be 1–2 pages and include:

  • a summary of work completed up to this point,
  • remaining work to be completed, and
  • any potential roadblocks (and mitigation strategies)

Final presentation

Final presentations will be presented to the class near the end of the semester. More details will be announced later.

Final report

Final reports will be submitted to the instructor during the final exam week. More details will be announced later.