Syllabus


CS 538 is a graduate-level course in computer networks at the University of Illinois Urbana-Champaign (UIUC). Class sessions will focus on discussions of paper readings, supplemented by background lectures. Students will carry out a research project in groups, with the goal of achieving publishable results in top-quality venues.

The course consists of:

Each of these components of the course is discussed below, along with several other administrative issues.

Class sessions

Class sessions combine discussions of readings, background lectures, and presentations by students.

In all cases, the class is centered on discussion. Please comment, question, and interact! We ask that you refrain from using laptops during class. This way, we'll all be maximally engaged.

In-class participation will account for 10% of the grade. It is easy to receive the full 10% credit: you only need to come to class prepared and share your own opinions about the assigned papers in N ≥ 10 classes over the course of the semester. Partial credit will be given proportionally otherwise (N% for N < 10).

I know what you might be thinking: "I'll just attend the first 10 classes, speak up, and then never have to show up again!" Well, no one will stop you from doing so, but I truly believe that class participation is key to having a memorable and fun experience! Meanwhile, consuming technical content (such as research papers) and engaging in technical discussions is a valuable skill that will serve you well in your future career, whether in academia or industry.

Participation logging
Go to the class discussion board and log your in-class participation in an assignment created for this purpose (under the "Assignments" tab). Add a new line with the date of the class each time you contribute to a class discussion.

Readings and reviews

Most classes will have only one assigned reading, which we will all read thoroughly prior to class and discuss during the session. We intentionally focus on one paper per class, as we expect you to study the paper closely and actively search for the necessary background knowledge on the topic.

Reading the papers is essential to get the most out of this course. Depending on your past familiarity with the topic, you should expect to spend at least 3 hours (and potentially up to 8 hours!) reading the paper in order to fully comprehend the material.

For each required reading, you must submit a paper review containing at least four comments, formatted as a numbered list with one item per comment. Your reviews should not summarize the paper or repeat the abstract; we have all read the paper already. Instead, each of your comments should supply information that is not found in the paper itself. For example, a comment might be:

Four valid comments are required to receive full credit. Longer is usually not better, and we will provide feedback for unnecessarily lengthy reviews. Here is an example of a review that is not good:

  1. The paper introduces Inter-Galactic Networking, or IGN, which solves the problem of sending messages between galaxies. The authors introduce a novel protocol that can send packets long distances via a distributed array of wormhole actuators.
  2. The paper evaluated the design with a simulation and showed a 57% improvement over IP. Then the authors analyzed the delivery probability of messages and tradeoffs between delivery time and cost of replication along multiple paths.
  3. On page 7 the authors misspelled "ambidextrous."
  4. The first author's mother was a hamster and his father smelt of elderberries.

This review is unhelpful because it summarizes the paper (old news: we already read the paper!) and gives no interesting new thoughts or information. Here is an example of a review that is good:

  1. The simulation was relatively realistic, but didn't measure the total round-trip latency including wormhole setup time for a new destination. So it was hard to know the range of distances at which IGN works better than traditional Inter-Planetary Networking. If most communication is local, IGN would help for only a minority of traffic.
  2. The IGN design assumes that the wormhole actuators have already been calibrated to their destinations' coordinates within a certain tolerance. It's not clear how robust this fixed calibration will be given the motion of galaxies and spacecraft while packets are in flight.
  3. The theoretical analysis is particularly valuable because their statistical techniques can probably be applied to terrestrial delay-tolerant and underwater networks too.
  4. The study does not address how transient phenomena, such as cosmic interference, could disrupt communication. Including resilience mechanisms for such scenarios would make the approach more practical.
The above review provides an insightful critique of the work. It meets the guidelines and thus will be given full credit.
Review submissions
By 11:59 pm the night before the class for which each paper is assigned, submit your review to the corresponding assignment on the class discussion board. You may skip any 2 paper reviews over the course of the semester without affecting your grade — just submit "skip" in the assignment.

You may find skipping reviews useful if you are busy with other coursework. (If you did not skip, we'll have to randomly drop 2 reviews when grading.) However, except in extreme cases, we will not grant additional free passes on the reviews.

Paper presentation

Students will work in groups (likely 2 to 3) to deliver an in-class presentation on one assigned reading during the semester. The goals are for you to gain deeper knowledge in a specific area by closely studying the paper, strengthen your technical presentation skills, and support the execution and writing of your class project.

Early in the semester, you will sign up for one of the required readings from the course schedule based on your topic preference. Students who choose the same paper will be presentation partners.

Presentation requirements
Your presentation should be 20–30 minutes in length if uninterrupted, but you should expect to take many questions in the middle. Engage the audience at the end of your presentation by posing several discussion questions.

You may split the presentation (including Q&A and discussion) however you want among your group, but every member is expected to participate. You may use speaker notes or any supporting materials on stage — the focus is on the quality of technical content and the effectiveness of its delivery, rather than the means of communication. While preparing the presentation, you are encouraged to attend the TA's office hours to flip through the slides and ask for feedback. Make sure you have a dress rehearsal with the group before the presentation date.

After the presentation (on the same day), post your slides in PDF format (so avoid fancy animations) on the class discussion board for the class to review and ask any follow-up questions.

We will grade your presentation based on your understanding of the content, presentation structure and flow, question answering, and class engagement. Feedback will be provided along with the grade.

Can a presentation use the paper author's slides? Yes, if you like. But if you do this, you must clearly credit the source of the slides in your presentation. In any case, you should not repeat the paper author's presentation.

Research project

The research project is the absolute highlight of the course. The goal is to conduct novel research broadly related to networking that, by the end of the semester, could be publishable as a short (6-page) paper in a high-quality workshop like HotNets, HotMobile, HotOS, or ANRW.

An alternative target is conferences that accept 6-page submissions, such as IMC, CoNEXT, USENIX ATC, or SoCC. The difference is that workshop papers present early-stage work with preliminary ideas that are not yet fully evaluated, whereas short conference papers are finished work whose descriptions fit within 6 pages.

We recommend designing your class project with HotNets in mind as the primary target venue, with the hope that, when expanded into a full (12-page) paper in the future, the work could be publishable at a top conference like SIGCOMM or NSDI.

No actual paper submissions are required to complete the course, but you are encouraged to continue the study afterward. If you decide to submit a paper after the semester (e.g., HotNets submissions are typically due at the end of June), the instructor will be happy to assist with the submission. Regardless, throughout the semester, you are expected to meet regularly with the course staff during office hours (or through additional appointments) and seek advice on the project.

Project workflow

The steps in the research project are as follows:

  1. Team formation: During the first two weeks of the course, you should think about projects you might like to do. Check out the project ideas page for ways to find inspiration. As you are considering projects, find collaborators who are interested in the topic. We recommend you work in groups of 2 to 4; larger or smaller groups should discuss with the instructor first.
  2. Project proposal: The proposal should describe each of the following:
    • The research problem broadly related to computer networks and networked systems that you plan to address.
    • The significance and difficulty of the problem.
    • The prior solutions (including the state of the art) from at least 3 related works. For each cited past work (with a paper URL), briefly state what it does and why it falls short of the goal.
    • The goal of your project, with anticipated novelty and benefits of a prospective solution that you will be seeking.
    • The first steps you will take to attack the problem, including what experimental resources you intend to leverage.
    • The plan to partition the work among team members.
    The proposal should be approximately one page, and brevity is appreciated. Use our provided LaTeX template for the proposal. The goal is to demonstrate that you have a plausible project and a general idea of how to approach it. The course staff will give a grade for the proposal, and either approve the project or ask for a revision.
  3. Intermediate check-ins: About 8 weeks and 12 weeks into the semester, arrange a short meeting with the instructor to discuss project status. The meeting format is up to you, e.g., slides, demo, or whiteboard. You will receive full credit as long as you demonstrate progress. Be prepared to describe the contribution of each team member as well.
  4. Final presentation: At the end of the course, we will have in-class project presentations. This will be an opportunity for the course staff, other students, and possibly other faculty in the department to ask questions about your project and witness the work you have accomplished! Presentation format will be announced on the class discussion board.
  5. Final paper: This is a 6-page research paper suitable for submission to a venue like HotNets. Use our paper template (adapted from the ACM LaTeX template for HotNets '24). We will critically evaluate your paper using standards on par with HotNets, so be sure to read the pointers provided on the research toolbox page as you draft your paper.
Project milestones
Dates for the above steps will be announced on the class schedule. Submit your team roster, project proposal, and final paper to the corresponding assignments on the class discussion board by 11:59 pm on the due dates.
Additional information

Taking CS 538 has been rewarding for students, with many past projects in this class being quite successful. Below are some projects that went on to be published, and we look forward to your work adding to the list! (Only the CS 538 student author is shown for each publication below; click the link to view all authors.)

Can a project be shared with another course's project or independent research? It is OK to work on a class project that complements your other ongoing projects with a related topic. However, you should clearly define the piece of the larger project that you are working on for CS 538, with separate pieces for another course or independent research. Please discuss with the instructor first if you plan to share your class project. Be sure to check with your teammates and any other instructors or advisors involved as well.

Guidelines on paper submissions: If you plan to submit a paper (short or long) largely based off of your class project at some point, you are welcome to consult with the instructor for guidance on improving the manuscript and identifying suitable venues for submission. Before submitting the paper, we recommend having an open conversation with your project collaborators, including anyone who provided non-negligible advice or assistance, to determine appropriate authorship. If your paper is accepted at a venue, please report back to the instructor so we can add it to the CS 538 list of publications!

Textbook

There is no required textbook. If you need a refresher, we recommend looking at:

There are also books focusing on mathematical aspects of networking:

Grading

Grade breakdown
  • In-class participation (10%)
  • Paper reviews (20%)
  • Paper presentation (20%)
  • Research project (50%)
    • Project proposal (5%)
    • Intermediate check-ins (5%)
    • Final presentation (10%)
    • Final paper (30%)

The overall score will be converted to a letter grade. The minimum score needed for each grade is at most the following values:

A+: 97B+: 87C+: 77D+: 67
A: 93B: 83C: 73D: 63
A-: 90B-: 80C-: 70D-: 60
Late policy

You are allowed to skip up to 2 paper reviews during the semester, with any late submission automatically counting as a skipped review. For each other required submission, such as a project write-up, you will have a default 24-hour grace period. Additional extensions will only be granted in cases of extreme circumstances.

Academic honesty and cheating

The author of all writing, ideas, and other work must be clearly credited. For example, if your presentation uses slides from someone else, you must credit the author. Please note that even a single sentence, or fragment of a sentence, directly copied from another work without being a clearly attributed quotation can constitute plagiarism.

Generative AI tools such as GPT must be used with caution in this course. For example, you may use them as grammar checkers to proofread your writing, but they must not be used to create the initial drafts. You may use them as search engines to gather background information, but they must not be used to directly generate solutions to your assignments. You may not abuse or misuse generative AI in any way that compromises academic integrity.

The standard penalty for a first instance of cheating is a grade of zero on the assignment in question, plus a reduction of one full letter grade in your final course grade.

For details, please see the departmental honor code.