Computer Networking I

CS 3251 Section A Spring 2000

TR 935a-1055a
ESM Building, Room 201

Last Modified Sun Apr 23 15:47:20 EDT 200
Report problems to b.mckinnon@ieee.org


General Information

From the Georgia Tech Course Catalog:

CS3251: Computer Networking I

3-0-3. Prerequisites: CS2200 (or equivalent)

Course Objective:
Introduction to problems in computer networking, including error recovery, medium access, routing, flow control, and transport. Emphasis on current best practice. Includes programming of networked applications.


Jump to textbook & reference information
Jump to grade distribution information
Jump to the syllabus for the quarter (download)
Jump to the course newsgroup

Jump to the CoC Departmental Web Page


Instructor: Dr. Bill McKinnon

Teaching Assistants:

Textbooks

Required:
[Comer] Computer Networks and Internets, 2nd ed. by Comer, Prentice-Hall

Recommended:
[Stallings] Data and Computer Communications, 5th ed. by Stallings, Prentice-Hall, 1997
[Stallings2] High-Speed Networks: TCP/IP and ATM Design Principles by Stallings, Prentice Hall, 1998
[Ammar] Fundamentals of Telecommunication Networks by Saadavi and Ammar with El-Hakeem, John Wiley, 1994
[Bertsekas] Data Networks, 2nd ed. by Bertsekas & Gallager, Prentice Hall, 1992
[Spragins] Telecommunications: Protocols and Design by Spragins, Hammond, and Pawlikowski, Addison-Wesley, 1991
[Tanenbaum] Computer Networks, 2nd ed. by Tanenbaum, Prentice Hall, 1989
[Schwartz] Telecommunication Networks: Protocols, Modeling, and Analysis by Schwartz, Addison-Wesley, 1987
[Hammond] Performance Analysis of Local Computer Networks by Hammond and O'Reilly, Addison-Wesley, 1986

Software Sites of Interest
Ghostview
Netlib
STL (Software Template Library)
Walnut Creek Software (FTP)
Numerical Recipes Online
Gnuplot
Meschach
TNT by Roldan Pozo
MetaLab @ UNC, Chapel Hill
GNU Software Repository @ MIT

More information may be added as the course progresses.


Grade Division & Course Overview

 
% of Grade 
(non-degree candidates)
% of Grade
(degree candidates)
Distribution Date
Homework
40%
40%
Varies
Exam 1
20%
30%
Thurs 10 Feb 2000
Exam 2
20%
30%
Thurs 6 Apr 2000
Final Exam
20%
0%
Thurs 5 May 2000 @ 2.50-5.40p

This course is intended to provide an introduction to issues involved in making a contemporary computer network operate correctly.  Specific issues which will be discussed include error control, medium access, routing, flow control, addressing, and transport.  Emphasis in the course will, as much as possible, include techniques for implementations currently in practice.  Notice that the course will require a significant amount of implementation (i.e., programming), some of which will involve interacting programs on different machines.

Class attendance is not mandatory.  I do not care where you spend your time, as long as you get your work done.  However, in the same breath, notice that I am not tolerant of missed deadlines.  Prior notification of interviews, etc. and immediate notification of emergency situations will be mandatory for rescheduled events.

Examinations and assignments are due promptly at the dates and times noted; any assignments turned in within 10 minutes of the due time will have 20% of their grade deducted for being late.  No exams will be accepted after time is called and no assignments will be accepted after 10 minutes of the due time.  Finally, exam grades are non-negotiable (i.e., "binding") at 5pm on the days indicated in the syllabus below (i.e., one week after they are returned).

Assignments will be distributed via hyperlinks shown in the syllabus (below).  These links will be activated on the days listed in the syllabus.  It is the student's responsibility to (individually) download the assignment, print it, solve the problems, and turn in the assignments per given instructions.  Students should have access to the departmental clusters by Mon 17 Jan 2000.  Assignments are to be solved without any personal assistance from other individuals; software should be developed individually or downloaded from public domain sources and compiled by the student.  You are encouraged to use the course newsgroup (a link to which is located above) to ask and answer questions of each other about "C" (the implementation language for the course) and general questions (for example, "how do I compile with library 'X'?" or "what does error message 'Y' mean?"). The newsgroups will be monitored by the TAs and they will participate in answering posted questions and posting clarifications to assignments.  An honor code will be attached to each assignment and examination.  Academic dishonesty will be dealt with harshly by the instructor.

Finally, grades are non-negotiable (i.e., "binding") at 5pm one week after they are returned.



Syllabus

This online syllabus will be constantly updated as the term progresses. It is the student's responsibility to regularly check the syllabus for updates.
 
Week #, Date # (Prior) Class Reading
Lecture Topics & Notes
Events
W2, Tues 11 Jan 2000 1 Course Introduction;
Introduction to Networking
& Standards
(download notes)
Thurs 13 Jan 2000 2 Introduction to Layered Architectures;
"What Is A ... ?"
(download notes)
W3, Tues 18 Jan 2000 3 Skim Parts I & II;
[Comer] Ch. 16
Introduction to IP;
Addressing
(download notes)
Thurs 20 Jan 2000 4 [Comer] Ch. 26 Introduction to DNS
(download notes)
Assignment 1
available
W4, Tues 25 Jan 2000 5 [Comer] Ch. 17 ARP
(download notes)
Thurs 27 Jan 2000 6 More on ARP
(download notes)
Assignment 1 Due
W5, Tues 1 Feb 2000 7 [Comer] Ch. 18.1-18.3, 
18.9-18.10; Ch. 19
Introduction to IP
(download notes)
Thurs 3 Feb 2000 8 [Comer] Ch. 18.4-18.8 Routing with IP
(download notes)
Assignment 2
available
End of Exam 1 Material
W6, Tues 8 Feb 2000 9 Review for Exam 1 (if nec.)
Thurs 10 Feb 2000 10 Exam 1 (solutions)
W7, Tues 15 Feb 2000 11 [Comer] Ch. 21 ICMP
(download notes, revised)
Assignment 2 Due
Thurs 17 Feb 2000 12 [Comer] Ch. 22.1-22.5 Intro' to Transport Layer Services
(download notes, revised)
Fri 18 Feb 2000 Drop Day
W8, Tues 22 Feb 2000 13 [Comer] Ch. 22.10-22.11,
24.1
Intro to TCP; Intro to
Socket-Level Programming Interfaces
(download notes, revised)
Thurs 24 Feb 2000 14 [Comer] Ch. 23,
24.1-24.10
More on 
Socket-Level Programming Interfaces;
Client-Server Designs
(download notes, revised)
Assignment 3
available
W9, Tues 29 Feb 2000 15 UDP
(download notes)
Thurs 2 Mar 2000 16 TCP (Connection Setup &
Take-down)
(download notes)
Assignment 3 Due
W11, Tues 14 Mar 2000 17 [Comer] Ch. 22.6-22.9 TCP Reliability
(download notes)
Thurs 16 Mar 2000 18 [Comer] 22.12-22.13 More on TCP Reliability;
Congestion Control at
the Transport Layer
(download notes)
Assignment 4
available
W12, Tues 21 Mar 2000 19 No Class
Thurs 23 Mar 2000 20 [Comer] Ch. 26 (again) DNS
(download notes)
Assignment 5
available
W13, Tues 28 Mar 2000 21 No Class
Thurs 30 Mar 2000 22 More on DNS
(download notes)
W14, Tues 4 Apr 2000 23 Review for Exam 2 (if nec.) Assignment 4 Due
Thurs 6 Apr 2000 24 Exam 2 (solutions)
W15, Tues 11 Apr 2000 25 [Comer] Ch. 3,5 Data Link Layer
(download notes)
Thurs 13 Apr 2000 26 [Comer] Ch. 7 More on Data Link Layers
(download notes)
Assignment 5 Due
W16, Tues 18 Apr 2000 27 [Comer] Ch. 6 CRC Schemes
(download notes)
Assignment 6
available
Thurs 20 Apr 2000 28 [Comer] Ch. 29 HTTP
W17, Tues 25 Apr 2000 29 Review for Final Exam Assignment 6 Due
Thurs 27 Apr 2000 30 Final Exam



Last Modified Sun Apr 23 15:47:20 EDT 200
Report problems to b.mckinnon@ieee.org