CS 640, Spring 2015


Course Description

Introduction to Networking focuses on common paradigms and protocols used in present day data communication. Through lectures, in-class activities, and assignments, you will learn the theory and application of (1) medium access control, congestion control, flow control, and reliable transmission, (2) addressing and naming, (3) intra- and inter-domain routing, (4) widely used protocols such as Ethernet, IP, TCP, UDP, and HTTP, (5) security threats and common defensive techniques, and (6) special purpose networks such as data centers, content delivery networks, peer-to-peer networks, and software-defined networks.

Course Website



Aaron Gember-Jacobson
Email: agember {at} cs.wisc.edu
Office: Computer Sciences 7376
Office Hours: Tuesdays and Thursdays 2:15pm-3:15pm, or by appointment

Teaching Assistant

Srini Ravichandran
Email: srini {at} cs.wisc.edu
Office: Computer Sciences 1306
Office Hours: Mondays 4:30pm-5:30pm, or by appointment

Class Meetings

Tuesdays and Thursdays 1:00pm - 2:15pm in Computer Sciences 1325

Class meetings will consist of lecture, individual and small group activities, and occasional scheduled quizzes (see Schedule). You are expected to actively participate in class by responding to questions posed during lecture, completing activities, and respecting and supporting your fellow classmates. In exchange, I will make class engaging, fun, and worth your while.

Required Materials

Computer Networks: A Systems Approach, Fifth Edition
Larry Peterson and Bruce Davie
Morgan Kauffmann, 2011, ISBN: 978-0123850591

(The 4th edition is also suitable, although the textbook section numbers listed on the schedule may not be accurate for this edition. Copies of the 4th edition are on reserve at Wendt Commons Library.)

The textbook is intended to serve as a complement to lectures. You should read relevant sections before class to be able to fully participate in class and better understand the material. It may also be helpful for you to review relevant sections of the textbook when studying for quizzes and the final exam.

Learning Objectives

By the end of the course you should be able to:


Your grade in this course will be based on three types of assessments, with the following breakdown:

Assignments (5) 50%100 points
Quizzes (5, excludes lowest score) 25%50 points
Final Exam 25%50 points
Total 100% 200 points

Grades will be posted on Learn@UW (https://learnuw.wisc.edu).


Assignments will consist of implementation and experimentation related to course topics. There will be five assignments throughout the semester. Each assignment will be due 2-3 weeks after it is assigned. Prior experience has shown that students who begin assignments shortly after they are assigned are more likely to succeed. Assignments submitted after the day and time they are are due will be penalized 25% per day, unless you have made prior arrangements with me due to extenuating circumstances.

Assignments must be completed in pairs. You should pick your own partner; you can use Piazza to help you find a partner. You have the option of switching partners between assignments, but you must do so within one week of the assignment's release date. Completing a project individually requires my prior approval.

All code and results you submit must be the original work of you and your partner. Plagiarism will not be tolerated and will be dealt with in accordance with University of Wisconsin policies (http://students.wisc.edu/doso/academic-integrity).


Scheduled quizzes will be given towards the end of class meetings approximately every 2 weeks. Each quiz will consist of several short answer questions that focus on topics covered in class, the textbook, and other posted materials during the preceding 2-3 weeks. You should use quizzes to gauge your learning progress and identify areas requiring further study.

Your lowest quiz grade will be dropped at the end of the semester. Correspondingly, no makeup quizzes will be given.

Final Exam

The final exam will be cumulative. It is scheduled for Tuesday, May 12 at 10:05am; room information will be announced towards the end of the semester.


If you have questions on assignments or topics covered in class or the textbook, you should post your questions on the Piazza site for the course: http://piazza.com/wisc/spring2015/cs640.

Missing Class

You are expected to attend class, but sometimes other obligations may get in the way. If you miss class, you should be sure to (1) read the relevant sections of the textbook and other materials posted on the course website, (2) ask a classmate for a copy of his/her notes, and (3) talk to me in-person to ask questions about things from class which are unclear. As noted above, no makeup quizzes will be given since one quiz score will be dropped.

Special Learning Accommodations

If you require special learning accommodations, please contact me in-person or via email within the first 2 weeks of the course so appropriate arrangements can be made. All information you share will remain confidential.


You should have taken CS 537 prior to this course, or have talked with me about enrolling without this prerequisite.