CSE573S (aka CS533S): Protocols for Computer Networks (Spring 2004)

Department of Computer Science
School of Engineering and Applied Science
Washington University in St. Louis
Meeting time: Tu/Th 2:30 - 4:00, Whitaker Hall, Room 216

Instructor

Dr. Ken Wong
kenw@arl.wustl.edu
Office Hours: By appointment, Bryan 508

Consultants

To Be Announced.


Quick Links



Course Description

The course is concerned with the design, specification, performance analysis, and implementation of protocols used in existing and emerging computer networks. Topics include: LAN and WAN access methods (e.g., CSMA/CD), internetworking with Internet Protocol (IP), transport protocols (e.g., UDP, TCP), high-speed transport protocols, routing, host-network interfacing, and hardware and software protocol implementation models.


Prerequisites

It is assumed that students have mature programming skills and have basic mathematical skills (e.g., calculus and elementary probability theory). Program assignments require the use of C/C++ and Unix system calls. CS422S (Operating Systems) or permission of the instructor.


Texts

The following two texts by are recommended. However, you may already have a textbook that will suffice. I list some alternatives. This is not my recommendation but if you have one of these alternatives and really don't want to spend more money, then you might wait to see if you need to purchase the recommended textbook.

Recommended:

Also Useful: C and C++ Books: See my CS422 list of C and C++ books .


Grading (Tentative)

The relative weighting of the grade components are:

Exams

There will be two exams.

Homework and Projects

There will be a number of exercises requiring C/C++ programming. These exercises will involve substantial programming and students are assumed to be competent in C/C++, and the UNIX operating system. There are two types of programming exercises: 1) Protocol implementation and performance evaluation, and 2) Protocol simulation and performance evaluation. No prior simulation or protocol implementation experience is assumed. All background required for these assignments will be given at an abstract level during the course but will require the student to flesh out the details. The criteria for the grading of the programs will be elaborated at the time that each project is assigned.

There will also be some number of homework exercises that do not require programming. For the most part, they deal with protocol specification and analytic performance evaluation using basic algebra, calculus and probability theory.

Class Attendance

Because the lecture material is not always out of the textbook, it is essential that you attend class. However, attendance is not recorded.

Late Submissions

Late submissions of program and homework solutions will generally NOT be accepted. Occassionally, in special situations, arrangements for a late submission can be made if it is made in advance.

Tentative Syllabus

Note that the syllabus is subject to change. In the "Reading" column, Pn refers to chapter n in the Peterson text and Dn refers to chapter n in the Donahoo text. Pn.m refers to Peterson, Section n.m.

Date Class # Topic Textbooks References
1/20 1 Protocols and Internetworking P1
1/22 2 Performance P1
1/27 3 Socket Programming D1-3,5
1/29 4 . . .

2/3,5 5,6 Link Layer P2.6-8
2/10,12 7,8 . . . P2.5
2/17,19 9,10 . . . P2.1-4
2/24 11 Project A

2/26 12 Switching P3
3/2,4 13,14 . . .

3/9
Spring Break

3/11
Spring Break

3/16 15 Open

3/18 16 Exam 1

3/23 17 Internetworking P4.1
3/25 18 . . . P4.3
3/30 19 . . . P4.2
4/1 20 Open

4/6 21 End-to-End Protocols P5
4/8 22 . . .

4/13 23 Open

4/15 24 Congestion Control P6
4/20 25 . . .

4/22 26 . . .

4/27 27 Advanced Topics

4/29 28 . . .

5/12
Exam 2 (Whitaker 216, 330-530)


Online Notes and Tutorials


Last modified 7 Jan. 2003 - Please send corrections to kenw@arl.wustl.edu