552, Fall 2019: Computer Networks

Latest Announcements

12/07: Project report instructions -- please read carefully
Instructions are on piazza.

The project report is due at 8 PM on Fri 12/13 on Sakai.
12/07: Email me ONE slide on your project by 7 AM on Mon 12/9
Due to a large number of projects, each team gets just 3 minutes to summarize your project.

In your slide, please tell the class

(1) the goals of your project,
(2) what you've built (software architecture, design decisions, etc.),
(3) how you've experimentally evaluated what you've built. I strongly encourage presenting one quantitative result in the form of a table or a graph.

Please feel free to use figures as needed.

There will be an additional 1.5 minutes for Q&A.

Teams will be called out to present in random order. All members of the team must be present when the team is called out.

See all announcements


198:552 is a graduate course in computer networks. The goals of this course are to understand the state of the art as well as the classic works in this field and to familiarize oneself with the methods and tools of conducting original research.

The Internet is an exciting place with its many services that we, as consumers, take for granted. But how does this global communication infrastructure work? What goes into the guts of this infrastructure? What does it take to build a large Internet service? How can an Internet service (like Google) ensure that it provides the best possible user experience? How can service developers and network operators ensure that their infrastructure is operating reliably and correctly? How have the answers to these questions evolved over time, and what lies ahead?

This course will attempt to answer the questions above by describing the foundational principles by which large computer networks and applications atop them are designed and maintained. We will examine the ways in which those principles have been applied in existing research literature and production systems, with a keen eye on learning the details of real-world implementations and learning how to comprehensively evaluate such implementations. Students can expect to leave the course with a deep understanding of the state-of-the-art of networking, and apply this understanding towards their forthcoming tech industry jobs or further research through graduate studies in the area.

The course assumes some familiarity with undergraduate-level networking concepts; however, there will be a summary of relevant topics in the first few lectures. We will be happy to provide supplementary readings for specific lecture material where requested by students. The course will cover about 25 research papers spanning a mix of classic and recent research literature.

Students are expected to read diligently before class and to participate significantly by reflecting on the readings during class discussions. Students will learn to critique research literature through a number of instructor-posed questions. Students will also attempt to improve the state-of-the-art in networking through a semester-long research project.


Many thanks to Dave Andersen and Nick Feamster for their coursegen software. We have borrowed slide content generously from Jennifer Rexford's and Badri Nath's similar course offerings.

Last updated: 2019-12-07 16:16:02 -0500 [validate xhtml]