EECS 325 is a senior level course on computer networks. The goal of the course is to teach the fundamental concepts and principles in today's networks. The course involves various aspects of computer networking, including (1) application layer protocols such as HTTP and FTP, (2) transport layer (TCP/UDP) and congestion control, (3) routing and IP, and (4) link layer access protocols. Students are expected to attend the class, work on written homework assignments and programming projects. EECS 425 is a graduate level course taught together with EECS 325. A small number of graduate students should register for EECS 425. Students should also attend the the class, work on homework assignments and programming projects. In addition, they are required to work on an extra project and read technical materials with more research merit.
EECS 337 and EECS 340 (or their equivalents) are required. C/C++/Java programming experiences are also required. Knowledge in mathematics and statistics would be very helpful.
Required: Computer Networking, A Top-Down Approach Featuring the Internet, Third Edition, by James F. Kurose and Keith W. Ross, 2002.
Optional: Computer Networks - A Systems Approach, Third Edition by Larry L. Peterson and Bruce S. Davie, Morgan Kaufmann, 2003
Instructor: Shudong Jin (Email: jins@case.edu), Office hours: MW 4:00-5:00pm, Office: Olin 502)
Lecture time: MWF 3:00-3:50pm
Location: Olin 313
TA: Danielle Liu (Email:dxl77@case.edu)
Lectures will be given three times a week. Students are expected to attend all lectures. Classes missed for any cause other than illness may not be made up.Written homework assignments are given during some lectures. There will be about seven homework assignments. Written answers are preferable, though email submissions are acceptable (acceptable format of electronic submissions include PostScript and PDF). Each assignment is typically due in one week, and then solutions will be posted about 5 days later. A late submission (within 5 days) will still be graded, but the student will only receive partial credits. The percentage decreases linearly with time, 10% a day.
There will be two or three programming projects. The students will have about one month to finish each project. If collaboration is initiated between two students (no more than 2 students), then the students should communicate with the instructor. Programming projects will be submitted in electronic format, and it should include both commented source code (C/C++/Java) as well as documents describing the implementation details and results. The projects will be evaluated based on correctness, completeness, neatness, and its documentation.
There are two midterm exams (quizes) and one final exam. Each one-hour quiz will be scheduled at a random point of time during the semester, and it will cover all topics discussed so far. The three-hour final exam will emphasize the topics covered later. All exams will be in written format.
Written homework: 25%
Programming project: 20%
Midterm exams: 20%
Final exam: 35%
For some lectures, I will modify the slides provided by the authors of the K&R textbook. They will be posted after the lecture. For other lectures (usually they are more important), no slides will be used. The link to each assignment can be followed at the time of the assignment.