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. |
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.
|
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:
|
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. |