Cleveland State University

Department of Electrical and Computer Engineering

 

EEC 681/781 Computer Networks I

Spring Semester 2005

 

Course Objectives:          This course provides a comprehensive overview of computer networks. Topics include network architectures, communication protocols; data link control, medium access control, LANS and MANS; network layer, TCP/IP; and network security

 

Textbook:                         Computer Networks, by Andrew S. Tanenbaum, Prentice Hall, 2003, 4th Edition.

 

Reference Books             Unix Network Programming: Volume 1 Sockets and XTI (2nd Edition), by Richard Stevens 1998

 

Instructor:                        Dr. Wenbing Zhao     

Office:                SH317

Phone:                (216) 523-7480

Fax:                    (216) 687-5405

E-mail:                w.zhao1 at csuohio.edu

Office hours:      T Th 4:00-6:00pm and by appointment

 

Final Grade is available here – posted on May 16, 2005


 

Week

Topics

Reading

1

(Jan 17 - 21)

Lecture 1 - Users of computer networks; Network hardware; Network software;

Lecture 2 - Reference models; Example Networks; Network Standardization

1.1-1.6

2

(Jan 24 – 29)

Lecture 3 - The theoretical basis for data comm.; Guided transmission media; Wireless transmission; Communication satellites;

Lecture 4 - The public switched telephone network; The mobile telephone system; Cable television

2.1-2.7

3

(Jan 31 – Feb 4)

Out of town, no class

 

 

4

(Feb 7 – 11)

Lecture 5 - Data link layer design issues; Error detection and correction;

Lecture 6 - Elementary data link protocols; sliding window protocols

3.1-3.4

5

(Feb 14 – 18)

Lecture 7 – Protocol verification; Example data link protocols;

Lecture 8 – The channel allocation problem; Multiple access protocols;

3.5-3.6

4.1-4.2

6

(Feb 21 – 25)

Lecture 9 – Ethernet; Wireless LANs;

Lecture 10 – Broadband wireless; Bluetooth; Data link layer switching

4.3-4.7

7

(Feb 28 – Mar 4)

Midterm #1 – Tuesday, March 1

Lecture 11 – Network layer design issues; routing algorithm;

Ch.1-4

5.1-5.2

8

(Mar 7 – 11)

Lecture 12 – Congestion control algorithms; Quality of service;

Lecture 13 – Internetworking; The network layer in the internet (1st part)

5.3-5.5

 

9

(Mar 14 – 18)

Spring Recess, no class

 

10

(Mar 21 – 25)

Lecture 14 – The network layer in the internet (2nd part);

Programming Assignment #1 issued (due April 12)

Lecture 15 – The transport service; Elements of transport protocols;

5.6

6.1-6.2

11

(Mar 28 – Apr 1)

Lecture 16 – The Internet transport protocols: UDP and TCP (1st part)

Lecture 17 – TCP (2nd part)

6.4-6.5

12

(Apr 4 – 8)

Lecture 18 – Performance issues; review for midterm #2

Midterm #2 – Thursday, April 7

6.6

Ch. 5-6

13

(Apr 11 – 15)

Lecture 19 – DNS; Electronic mail

Lecture 20 – The World Wide Web;

7.1-7.3

14

(Apr 18 – 22)

Lecture 21 – Multimedia;

Programming Assignment #2 issued (due May 3)

Lecture 22 – Cryptography; Symmetric-key algorithm

7.4

8.1-8.2

15

(Apr 25 – 29)

Lecture 23 – Public-key algorithm; Digital signatures;

Lecture 24 – Management of public keys; Communication security

8.3-8.6

16

(May 2 – 6)

Lecture 25 – Authentication protocols; E-mail security;

Lecture 26 – Web security; Social issues

8.7-8.10

17

(May 9 – 13)

Final Exam – May 12 Th, 6:00-8:00pm

Ch. 1-8

Assignments

Mandatory Programming Assignments. For each assignment, you are to submit the program source code together with documentation, containing a concise design specification (flow charts are encouraged), usage instructions and performance measurement results. C/C++ is required.

(1)      A simple client/server application using TCP/IP socket programming.

(2)      Set up your home page on the Web. Must be hand-coded Web page using HTML.

Optional Course Project. If you choose to do a course project, you must turn in a project report (10-20 pages long), together with the source code. A demo is required. For interesting projects, I might arrange in-class demos. You can choose a project of your own interest, but it must be implementation oriented. Potential projects:

(1)      Implementation of a group communication system

(2)      Implementation of a reliable point-to-point transport service that resembles TCP in the user space using UDP

(3)      Build a switch using a PC and a few network interface cards

 

Late programming assignments are accepted within 5 calendar days after due date, but the scores will be lowered on a 20% per day basis.

 

Grading

Midterm #1 25%

Midterm #2 20%

Final exam 30%

Mandatory assignments 20% (10% each)

Class Participation 5%

Optional course projects – can substitute for any midterm or the final exam, or 25% extra

 

Note

Midterms are closed-book and closed-notes. There will be no make-up tests. If you have serious reasons for missing a test (accident, medical emergency, death in the family), upon presentation of an official written document validating the circumstance the test will be rescheduled.

 

The date and time for the final examination are specified by the University. No changes are allowed for any reason, including travel plans.