WPI Computer Science Department

Computer Science Department

CS 4514 Computer Networks, C Term 2007

Course Overview

This course introduces students to the basic principles of computer networks. Although current technologies will be discussed, the emphasis is on understanding the important concepts in modern computer networks and issues that affect design and implementation. The programming assignments require a good background in programming in C or C++ and will involve UNIX system calls. Some of the material covered in CS 2303 (systems programming concepts) will be assumed. Knowledge of some material in CS 3013 (operating systems) shall also be helpful.

Course Information

Lectures: AK-219, MTRF, 2:00pm - 2.50pm

Teaching Assistant: Fan Wu, wuf@wpi.edu, Office hours: TBD
Student Assistant: Paul Sader, bytbaron@wpi.edu, Office hours: TBD

Instructor: Prof. Emmanuel Agu, FL-139, 508-831-5568, emmanuel@cs.wpi.edu
Office Hours: Mondays, Thursdays, 3-4PM. Others by appointment

Text: Required: Computer Networks (fourth edition) by A.S. Tanenbaum

Recommended: TCP/IP Sockets in C: Practical Guide for Programmers, Michael J Donahoo and Kenneth Calvert Morgan Kaufmann Publishers 2001

Academic Honesty: Cheating or plagiarism will not be tolerated and will result in an NR grade for the course. Discussing assignments and approaches to solving them is permitted, but the expectation is that programs turned in are work of that programming team. It is fine to find algorithms or code from publicly available sources such as a textbook or a public website. However, you must document the source clearly in your code and in your program documentation. Failure to do this will be treated as plagiarism.

Class Websites: The class website is at http://www.cs.wpi.edu/~emmanuel/courses/cs4514/C07/. A myWPI class website has also been set up. The discussion board should be used for asking questions to avoid excessive emails and so that everyone can benefit from answers given. Emails should be used only for specific questions which are unique to you.

Class email: You have automatically been added to the class email list: cs4514-all@cs.wpi.edu. The TAs and I will use this mailing list to send information to the class. Since everyone receives email sent to this alias, judicious and courteous use of this alias is expected. Inquiries which are specific to the TA/SA should be sent to cs4514-ta@cs.wpi.edu. The TA/SA will answer most of your questions regarding the programming assignments. I will answer questions about understanding concepts, policy issues or when the TAs are unable to answer your questions.


  1. Reading is mandatory, working ahead is encouraged.
  2. Exams are based on lectures, readings and assignments so class attendance is strongly encouraged.

Grade Policy: 40% exams (2 exams), 45% programming assignments (3), and 15% written homeworks (3)

Programming Assignments

http://www.cs.wpi.edu/Help/documentation-standard.html specifies the CS Department Documentation standards. Please follow these guidelines in all your documentation. Every function or subroutine must include the author of the function. This is critical to grading team projects.

All assignments should be submitted using the turnin facility (For more info on turnin, see http://www.cs.wpi.edu/Help/turnin.html). Please include a README file with each assignment to provide information to assist the TAs in grading your programs.

All programs turned in must compile and execute on one of the WPI Unix platforms. You are encouraged to develop your programs on WPI Unix machines because historically students have had difficulties porting their programs from other operating systems and because you may be given test files that work only on the CCC machines. Turned in programs that do not compile will not be graded and will receive a grade of 0. Points will also be deducted for programs without comments.

Late Assignment Credit

Late programming assignments (turned in after the start of class on the due date) will be penalized 15 percent per day. Assignments will not be accepted after the start of class on the Friday following the due date. Since solutions to written homeworks will be handed out on the due date, written homeworks will not be accepted after the due date.


Introduction (2 days)
   Topics: Introduction, uses and overview of networks (hardware and software) and reference models
   Reading: Chapter 1: 1.1 - 1.4 

Physical Layer (3 days)
   Topics: Transmission media, public telephone network, mobile telephones and cable TV
   Reading: Chapter 2: 2.1 - 2.7

Data Link Layer (4 days)
   Topics: Data link protocols, error detection and correction
   Reading: Chapter 3: 3.1 - 3.4, 3.6

Medium Access Control Sublayer (3 days)
   Topics: Multiple access protocols, ethernet, wireless LANs, bluetooth and data link switching
   Reading: Chapter 4: 4.1-4.4, 4.6-4.6.2, 4.7 - 4.7.1
   Midterm Exam: February 8

Network Layer (4 days)
   Topics: Network layer design issues, routing algorithms, congestion control
   Reading: Chapter 5: 5.1-5.3

Transport Layer (4 days)
   Topics: transport service, sockets, internet transport protocols
   Reading: Chapter 6: 6.1 - 6.2, 6.4

Application Layer (3 days)
   Topics: email, web,
   Reading: Chapter 7: 7.1 - 7.3
   Final Exam: March 1

Plus one "floating" day


Please note that the following timeline is tentative. Look at the assignment write-up when handed out in order to confirm the due date.

Schedule for office hours

Note: All TA and SA office hours will be held in the ADP lab. Prof. Agu's office hours will be in his office in FL-139.

Time Monday Tuesday Wednesday Thursday Friday
1:00 - 2:00PM

2:00 - 2:50PM CLASS CLASS
3:00 - 4:00PM Fan

4:00 - 5:00PM Fan

5:00 - 6:00PM

Fan Fan
6:00 - 7:00PM Paul Fan
Paul Paul
7:00 - 8:00PM Paul Fan

8:00 - 9:00PM Paul Paul

9:00 - 10:00PM

10:00 - 11:00PM

Web Resources

[Feedback] [Search Our Web] [Help & Index]

[Return to the WPI Homepage] [Return to CS Homepage]