Syllabus

Goals

This course introduces the basics of networking, ranging from sending bits over wires to the Web and distributed computing. We focus on the internetworking ground between these two extremes, particularly focusing on the engineering of the Internet - goals, constraints, solutions, and experiences. The outcome of this course for you should be an appreciation of the fundamental challenges of networking, design strategies of proven value, and common implementation technologies.

Course Structure

Topics

We expect to cover (at least) the following topics during the course:

  • Framing
  • Error Correction
  • Packet Switching
  • Multi-access (Ethernet)
  • Addressing and Forwarding (IP)
  • Distance Vector and Link State Routing
  • Queueing and Scheduling
  • Reliable Transport
  • Congestion Control (TCP)
  • Quality of Service
  • Naming (DNS)
  • Software Defined Networks (SDN)
  • Security

Textbooks

Computer Networks (6E 19), Peterson [Online Book]

Computer Networks (5th Edition), Andrew Tanenbaum, David Wetherall

Absence Policy

Students are expected to keep the course lecture time free and available, and quizzes will take place regularly during the lecture period. In case you have a conflict (e.g., interview), email the course staff to let us know a few days in advance so we know you need an exception (and we can provide the surprise quiz later for you). Similarly, if you have any symptoms, you should not attend the class in-person until it is safe for you to come back. Please let us know if you are unable to attend for such reasons before class. More accommodations can be made for the midterm with advance notice and a valid justification.

Exams

There will be a midterm exam held in class and a final exam during finals week. See the exams page for more details on the exam content

Homework

There will be 5 Gradescope homework assignments throughout the quarter. Announcements will be made via Edstem.

Projects

There will be 3 projects assigned throughout the quarter as well. Announcements concerning these will also be made via Edstem.

Policies

Inclusiveness

Students should expect and demand to be treated with respect by their classmates and the course staff. All students belong here, and the staff is here to help them learn and enjoy a challenging course. If any incident occurs that challenges this commitment to a supportive and inclusive environment, students should please let the staff know so the issue can be addressed.

Grading

See the grading page for details on exactly how grades will be calculated.

Late Policy

There is a 20% penalty for each late day (a day is 24 hours, including weekends), or portion thereof. Each person gets 13 free late days - 13 days of lateness with no penalty per person, not group. You can use up to 5 late days for a project, and 3 late days for a homework assignment.

Cheating vs. Collaboration

Collaboration is a very good thing. On the other hand, cheating is considered a very serious offense, and is vigorously prosecuted. Vigorous prosecution requires that you be advised of the cheating policy of the course before the offending act. For this course, the policy is simple: don't cheat. You know it when you're doing it. We'll recognize it when you do it. That said, collaborating is, for many people, an effective way to learn. Learning isn't cheating. Misrepresenting that you've learned something, or done the work that implies you've learned something, almost certainly is.

Accommodations

Please refer to university policies regarding disability accommodations and religious accommodations.