Craig E. Wills, FL-236, cew@cs. Office hours: 10:00-11:00 Tuesdays, 1:30-3:00 Thursdays, any time for short questions. Electronic mail is an effective method to contact me.
Robert Hasselbaum, FL-239, rhassel@cs. Office hours: TBA
Copies of all handouts, assignments, notes and old exams will be posted as
appropriate on the course Web page. The address for it is
http://www.cs.wpi.edu/~cs4514/b98/
.
Paper copies of handouts and assignments will be given out when assigned. Copies of course notes will not be handed out, but will be available online after the lecture in which they are used.
In general you may use any CCC supported lab for doing your programming assignments. Some assignments may use other computing environments such as the WINE Lab.
This is an introductory course on computer networking. It covers protocol design principles, performance considerations, and networking technologies. The goals are 1) to provide students with a theoretical and practical base in computer communication issues by considering all protocol layers involved in process-to-process communication, 2) to introduce students to the design issues and tradeoffs that arise in building and using networks for interprocess communication, and 3) to give students ``hands on'' experience with building and using network services.
Working knowledge of basic operating systems concepts. Knowledge of high-level programming language such as C/C++. An interest in learning about computer networks.
Recommended background: CS 3013 and some knowledge of probability.
Required:
Computer Networks (3rd Edition), by Andrew Tanenbaum, Prentice Hall, 1996.
Reference:
Data and Computer Communications (5th Edition), by William Stallings, Prentice Hall, 1997.
Internetworking with TCP/IP: Principles, Protocols, and Architecture (2nd Edition), by Douglas E. Comer, Prentice Hall, 1990.
The Internet Book, by Douglas E. Comer, Prentice Hall, 1995.
Unix Network Programming, by W. Richard Stevens, Prentice Hall, 1990.
Final grades will be computed as follows:
Midterm Exam: 30%;
Final Exam: 30%;
Homework, projects, quizzes, and class participation: 40%.
Grading policy for each project and homework will be provided at the time of the assignment. In general, each assignment will have a basic objective for the majority of the assignment points and an extended objective for demonstrating additional work and understanding.
Final grades will reflect the extent to which you have demonstrated understanding of the material, and completed the assigned projects. The base level grade will be a ``B'' which indicates that the basic objectives on assignments and exams have been met. A grade of ``A'' will indicate significant achievement beyond the basic objectives and a grade of ``C'' will indicate not all basic objectives were met, but work was satisfactory for credit. No incomplete grades will be assigned unless there exist exceptional, extenuating circumstances.
There will be 2-3 programming assignments. Assignments will involve programming in C/C++ on the Unix systems, and generally be done individually by each student. Students are assumed to be competent in a high-level programming language such C/C++ and the Unix operating environment. Specific Unix routines dealing with networking will be introduced as the course progresses and programming projects are assigned.
There will be two in-class exams (including a final exam during the last class period), plus the possibility of pop quizzes for which no advance notice will be provided. Exams will be closed book, closed notes.
There will be 2-4 written homework assignments. Written assignments consist of problems from the book, made up problems, or readings from literature.
Each homework and programming assignment will be given a point value when it is handed out. The point value indicates the weight of the assignment relative to the other assignments. Late programs and homeworks will be be penalized 5% of total assignment value per day or partial day, and no assignments will be accepted after seven days beyond the due date. All programs and written homeworks are due at the start of class on the due date. Homeworks and programs turned in after the start of class will be counted late. Projects will be submitted as directed in class. Exceptions to these rules can be made only a priori. Finally, no assignments will be accepted after Friday, December 18 to allow sufficient time for grading.
Unless explicitly noted, all work is to be done on an individual basis.
Any violations of the WPI Academic Honesty Policy
http://www.wpi.edu/Pubs/Policies/sect5.html
will result in no credit for the work and may receive greater penalties in
accord with the WPI procedures.
The following is a tentative outline of the material that will be covered in this course. All references to chapters are from Tanenbaum's book. Not all sections will be covered from each chapter, and the lectures will be supplemented with material from other sources. Each week will entail four lectures unless otherwise noted.