15-441/641 is an introductory course in computer networks. The emphasis will be on the basic performance and engineering tradeoffs in the design and implementation of computer networks. To make the issues more concrete, the class includes several multi-week projects requiring significant design and implementation.

The goal is for students to learn not only what computer networks are and how they work today, but also why they are designed the way they are and how they are likely to evolve in the future. We will draw examples primarily from the Internet. Topics to be covered include: congestion/flow/error control, routing, addressing, naming, multi-casting, switching, internetworking, and network security. Evaluation is based on homework assignments, the projects, one midterm exam, and one final exam.


"Introduction to Computer Systems" is a prerequisite for the course. It is offered under the following course numbers: 15-213, 18-213, and 15-513. Graduate students must get a B to satisfy the prerequisite. Students who have taken the prerequisite course at CMU get priority when we move students from the waiting list.

Once students who meet the prerequisites have been cleared, we will consider students with a strong systems background. These decisions will be made in the first or second week of the semester. Do not send mail to the instructors about this (e.g., explaining your background) - it will not help your case.

Course Staff


NameEmailOfficeOffice Hours
Prof. Justine Sherry GHC 9227 Sign-Up

Teaching Assistants

NameEmailOfficeOffice Hours
Hugo Sadok GHC 5215 (Carrel 1) 6-7pm Mondays
Nirav Atre GHC 9005 3-5pm Fridays
Zili Meng GHC 5213 (Carrel 2) 6-7pm Tuesdays
Office hour locations may subject to changes. Please check back on the course calendar to see the latest updates on the office hours. You can also find the floor plans of GHC at here (CMU login required).

Course Administrator

Ms. Sara Golembiewski GHC 9229