15-441: Computer Networks Syllabus

Textbooks

The required textbook for the course is Computer Networks: A Systems Approach, fourth edition, by Larry Peterson and Bruce Davie. It is available in the CMU Bookstore. Almost all the material that we will cover is in the textbook.

For the recitations, please see Dave's Notes on Software Engineering for Systems Hackers.

There are a few recommended texts that are useful references (especially if networking becomes your career). You can get the best price on them by ordering from an on-line bookstore.

Finally, if you have not taken 15-213, you may find its textbook useful as a gentle, software-focused introduction to computer architecture.

Recitations

This semester we will again have recitations for 15-441. Please select one recitation section to attend (the content will be identical). Recitations will cover systems hacking techniques designed to save you time and pain on the projects, will go into more detail about certain topics such as TCP, and will have review sessions before exams.

Grading

Your final grade for the course will be based on the following weights for the individual assignments:

The midterm will be an in-class, closed-book exam, covering all material up to that point in the course. The final exam will be a closed-book exam, covering material from the entire semester, with emphasis on the second half of the course.

Project 1 will focus on the implementation of an IRC-like chat server, ensuring familiarity with socket programming. Project 2 will build upon your IRC server from project 1 implementing routing protocols within the application. Project 3 will focus on file transfers and the protocol components necessary for efficient and reliable file transfer (retransmission, congestion control, caching, etc.) Project 1 is a solo project; projects 2 and 3 are to be done in groups of two students.

The homework will combine both textbook-like questions as well as hands-on experimental exercises. There will be three homework assignments.

Because of the importance of understanding both the theoretical and hands-on elements of networking, students must pass all three components of the course (homeworks, exams, and the projects) in order to receive a passing grade for the course. This does not affect the actual letter grade assignment unless one of the components is not completed to a passing standard.

Schedule

Also available as an ical file that you can subscribe to. Note that the video links are from Spring 2005 and are provided as a "best match" to the specified lecture, in the hope that they might be useful for review.

Date Instructor Topics Notes Readings
Tue 08/24 PS Introduction
[pdf]
Wed 08/25 TA Recitation: Socket programming
[pdf] [ppt]
Thu 08/26 Srini Seshan Protocol Stacks and Layering
[pdf]
Readings End to End Arguments in System Design and Internet Protocols Design Philosophy.
Tue 08/31 PS Application Layer Examples
[pdf]
Project 1 IRC server Assigned 9.1
Wed 09/01 TA Version Control and Makefiles
[pdf] [ppt]
See Revision Control chapter of systems-se.
Also see the online Subversion book.
Thu 09/02 PS Physical Layer
[pdf]
2.1-2.5
Tue 09/07 PS Coding and error control
[pdf]
Project 1 checkpoint 1 (version control basics) due 2.6-2.10
Wed 09/08 TA Sockets & Concurrency and Project 1 Q& A
[pdf] [ppt]
Thu 09/09 PS Datalink and ethernet
[pdf]
3.1-3.2
Tue 09/14 PS Switching and Bridging
[pdf]
Project 1 checkpoint 2 due
Wed 09/15 TA Debugging in the Real World
[pdf] [ppt]
Thu 09/16 PS IP forwarding & addressing
[pdf]
4.1
Tue 09/21 Dave Andersen IPv6 and NAT
[pdf]
Homework 1 due.
Wed 09/22 TA Automation and Ruby
[pdf] [ppt]
Thu 09/23 PS Routing overview and distance vector
[pdf]
Project 1 IRC server Due. 4.2
Tue 09/28 PS Routing: BGP
[pdf]
4.4
Wed 09/29 TA Project 2 Intro
[pdf] [ppt]
Thu 09/30 PS Virtual circuits, ATM, MPLS
[pdf]
4.4-4.6, 9.1
Tue 10/05 PS DNS
[pdf]
4.3
Wed 10/06 PS Midterm exam review and QA
Thu 10/07 Michael Tschantz Router Design
[pdf]
Homework 2 due. 3.3-3.5
Tue 10/12 TBD MIDTERM EXAM
Wed 10/13 Post-midterm break
Thu 10/14 Srini Seshan Transport Intro
[pdf]
5.1-5.5
Tue 10/19 PS TCP & Congestion Control
[pdf]
5.2
Wed 10/20 TA Going Over the Midterm
Thu 10/21 PS More TCP & Congestion Control
[pdf]
6.1-6.4
Tue 10/26 PS TCP Performance, other transports
[pdf]
Interesting reference is An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol. 5.3-5.4, 7.2
Wed 10/27 TA project 2 Q and A
Held as extra office hours during the recitation time slots at Gates 9009.
Thu 10/28 Michael Tschantz Security - cryptography and SSL
[pdf] [ppt]
8.1-8.2
Tue 11/02 Srini Seshan Security - DOS, firewalls, etc.
[pdf]
8.3-8.5
Wed 11/03 TA No session
Thu 11/04 PS QoS
[pdf]
6.5, 9.3
Tue 11/09 PS Web + CDNs + Caching
[pdf]
9.4
Wed 11/10 TA No session
Thu 11/11 PS P2P
[pdf]
9.4
Tue 11/16 Enjoy the break!
Wed 11/17 TA No session
Thu 11/18 PS Mobile and Wireless Networking
[pdf]
2.8, 4.2.5
Tue 11/23 PS Wireless networks
[pdf]
2.8
Wed 11/24 Thanksgiving break
Thu 11/25 Thanksgiving break
Tue 11/30 Good chance to work on P3!
Wed 12/01 PS Course Review
Thu 12/02 PS The future of the Internet
[pdf]
Fri 12/10 PS Exam

Last updated: Wed Dec 01 13:29:17 -0500 2010 [validate xhtml]