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 which 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 m aterial from the whole year, 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
Mon 01/12 bmm Motivation - Content Delivery Networks
[ppt] [Video 1]
Wed 01/14 bmm Motivation - Content Delivery Networks
[ppt] [Video 1]
Fri 01/16 TAs Recitation: Socket programming
[pdf] [ppt]
Mon 01/19 Martin Luther King Day
Wed 01/21 prs Introduction and protocol stacks
[pdf]
Project 1 IRC server Assigned
Fri 01/23 TA Version Control and Makefiles
[pdf] [ppt]
See Revision Control chapter of systems-se.
Also see the online Subversion book.
Mon 01/26 prs Application Layer Examples
[pdf] [Video 1]
Optional readings End to End Arguments in System Design and Internet Protocols Design Philosophy. 9.1
Wed 01/28 prs Physical Layer
[pdf] [Video 1]
Project 1 checkpoint 1 (version control basics) due 2.1-2.5
Fri 01/30 TA Sockets & Concurrency and Project 1 Q& A
[pdf] [ppt]
Mon 02/02 prs Coding and error control
[pdf] [Video 1]
2.6-2.10
Wed 02/04 prs Datalink and ethernet
[pdf] [Video 1]
Project 1 checkpoint 2 due 3.1-3.2
Fri 02/06 TA Debugging in the Real World
[ppt]
Mon 02/09 prs Switching and Bridging
[pdf]
Homework 1 due. 4.1
Wed 02/11 bmm IP Protocol and Routers
[pdf] [ppt] [Video 1]
4.3
Fri 02/13 TA Automation and Ruby
[pdf] [ppt]
Mon 02/16 bmm Routing overview and distance vector
[pdf] [ppt] [Video 1]
Project 1 IRC server Due. 4.2
Wed 02/18 bmm Routing: BGP
[ppt] [Video 1]
4.4
Fri 02/20 TA Project 1 Wrapup, Project 2 Intro
[pdf] [ppt]
Mon 02/23 prs DNS
[pdf] [Video 1]
4.3
Wed 02/25 bmm IPv6 and DNS
[ppt] [Video 1]
9.1
Fri 02/27 TA Midterm exam review and QA
[ppt]
Mon 03/02 bmm Router Design
[ppt] [Video 1]
Project 2 Checkpoint 1 Due 3.3-3.5
Wed 03/04 bmm/prs MIDTERM EXAM
Fri 03/06 Spring break
Mon 03/09 Spring break
Wed 03/11 Spring break
Fri 03/13 Spring break
Mon 03/16 gnychis Virtual circuits, ATM, MPLS
[ppt] [Video 1]
4.4-4.6
Wed 03/18 prs Transport Intro
[pdf]
5.1-5.5
Fri 03/20 TA IRC Project Post-Mortem
Project 2 Checkpoint 2 Due
Mon 03/23 prs TCP & Congestion Control
[pdf] [Video 1]
5.2
Wed 03/25 prs More TCP & Congestion Control
[pdf] [Video 1]
Project 2 IRC Routing Due 6.1-6.3
Fri 03/27 TA Going through the exam and project 2 Q and A
Mon 03/30 prs TCP Performance
[pdf] [Video 1]
Project 2 Final Due 6.4
Wed 04/01 bmm Skype
[ppt]
Helpful references Silver Needle in the Skype and An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol. 9.4
Fri 04/03 TA Project 3 Discussion
Mon 04/06 bmm Database Scalability Services
[ppt]
PJ3 Checkpoint 1 Due 9.4
Wed 04/08 bmm Freenet and Chord
[ppt]
Optional readings Freenet and Chord.
Fri 04/10 TA P2P Research and Advanced Topics
PJ3 Checkpoint 2 Due
Mon 04/13 prs Mobile Networking (IP & TCP)
[pdf] [Video 1]
2.8, 4.2.5
Wed 04/15 prs Wireless neworks, ad-hoc wireless, and sensor networks
[pdf]
2.8
Fri 04/17 TA No recition - carnival
PJ3 Checkpoint 3 Due
Mon 04/20 bmm Security - firewalls, DoS, etc.
[ppt] [Video 1]
8.3-8.5
Wed 04/22 bmm Security - Cryptography, and SSL
[ppt]
8.1-8.2
Fri 04/24 bittorrent optimizations for project 3 contest
PJ3 Checkpoint 4 Due
Mon 04/27 TBD Quantum Key Exchange and eCash
[ppt]
PJ3 Early bird deadline
Wed 04/29 bmm Class Review
[ppt]
Fri 05/01 TAs Final Review, Wean 7500, 7-9pm
Project 3 Due!
Mon 05/04 bmm/prs FINAL EXAM
Location is PH 100

Last updated: Sun May 03 10:59:46 EDT 2009 [validate xhtml]