198:552 is an introductory graduate course in computer networks. This course will provide an understanding of the fundamental principles by which the Internet, and in general computer networks, are built and operated. Students will gain experience with state of the art tools in the field and have the option to work on an original research project with the instructor.
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 core and the periphery of this infrastructure? What does it take to build a large Internet service? How can an Internet service ensure that it provides the best possible user experience? How can service developers and operators ensure that network infrastructure is functioning 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 techology industry positions or further research through graduate studies in the area.
The course does not assume any familiarity with undergraduate-level computer networking. There will be a summary of relevant topics in the first few lectures. The instructor will provide supplementary readings for specific lecture material where requested by students. The course will cover a number of research papers spanning a mix of classic and recent research literature.
Recorded lecture materials will be released every Tuesday and will be available on the course web page. This course also uses the Sakai course management system. Students are expected to read the assigned readings diligently and to participate significantly in reviewing and discussing technical papers on the hotCRP system (see assessments). Students will work on two or three programming homeworks, as well as a programming project that will span the entire semester (see project requirements). Course projects must involve significant programming and may constitute original research and development occurring with guidance from the instructor.
Course-related communication (e.g., announcements) will happen primarily over Sakai, the course web page, and a Slack workspace. Students are welcome and encouraged to post questions and discussion material to the class Slack workspace. Instructions to join this workspace will be sent out over email.
In general, in this course, open discussions and collaborations are welcome and encouraged. However, all written work and software must be your own. If you used a library software you found on the Internet for a programming assignment or a project, you must reference and credit the source appropriately. If you discussed a paper with your friend, you must mention who you worked with in your paper review.
Violations of the academic integrity policies will be taken very seriously. Ignorance of the policies will not be considered excusable if you are found in violation.
Last updated: 2020-11-30 16:42:41 -0500 [validate xhtml]