Computer Networks, CVN Class COMSW4119 for Summer 2004


Course Instructor
Prof. Vishal Misra
misra@cs.columbia.edu
512 CSB
212 939 7061

Course TA
Hoon Chang
hchang@cs.columbia.edu
463 CSB
212 939 7020


Office Hours
Wednesdays 10AM-11AM


Class Announcements
Click here.


Class Notes and Schedule
Click here.


Homework Assignments
Click here.


Supplemental Reading
A Brief History of the Internet
End to End Arguments in System Design


Useful Links
IETF RFC Page
The IETF Working Group on HTTP
CVN Student Login


Course Grading
50%: Homework Assignments: There will be four written assignments and two small programming projects. 5% for each written assignment and 15% for each project.
20%: Midterm: The midterm is one class period (75 minutes), closed book, calculator permitted. The midterm will cover all material discussed in the course up to the week before the exam.
30%: Final: The final exam is scheduled at the normal final exam time for this class period. The final is closed book, calculator permitted. The final is cumulative except Columbia network.
0%: No "extra credit" work.


Course Benefits

Overview of modern computer networks, with emphasis on the Internet architecture and protocols, covering link layer through application layer, as well as how to program network protocols and applications. Performance analysis, simulation and measurement will be introduced.
  • Learn fundamentals of modern computer networks.
  • Gain hands-on experience with programming techniques for network protocols.
  • Obtain background for advanced classes and projects in computer networks.

Course Abstract

Course Preview: [ppt/pdf]
Credits for Course: 3
Prerequisites: COMS W3139 (Data Structures) required and COMS W4118 (Operating Systems) recommended, but not required. Some background in basic probability and statistics. Fluency in C, C++ and/or Java.
Description: Introduction to computer networks, from physical layer to applications.
Required text(s): James F. Kurose and Keith W. Ross, Computer Networking: A Top-Down Approach Featuring the Internet,Second Edition , Addison Wesley, 2002. ISBN 0-201-976994.

There is an on-line edition of the book, containing errata and quizzes.

This book and the books below are available from most Internet book merchants. Links on the ISBN number lead to Amazon. You can find the best price from sites such as bestedeal.com, mysimon.com or smartshopper.com. The book is also available at the Papyrus book store on Broadway.
Reference text(s), not required: BEGINNING Java Networking , Wrox, ISBN number 1-861005-60-1

Class notes, copies of slides and reference documents will be available here. There is also a general list of Internet resources.
Assignments: Four written assignments.
Projects: Students are expected to complete two small-sized programming projects during the course of the semester as part of the assignments.

Programming projects may include:
  • Network client/server;
  • reliable transport protocol;
  • routing protocol;
  • name server resolver;
  • network management.
Midterm exam: 75 min. closed book, calculator allowed
Final exam: Two hours, closed book/notes, calculator allowed, comprehensive.
Grading: Assignments 50%, midterm 20%, final 30%.
Computer hardware and software requirements: Access to a Linux or Solaris machine is assumed. Programming projects can be done in C, C++ or Java. Familiarity with basic system Unix programming concepts is assumed.