Cleveland State University

Department of Electrical and Computer Engineering

EEC 584 Computer Networks

Spring Semester 2008

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 WANs; network layer, TCP/IP; and network security

Prerequisite:                    Graduate standing and substantial background in Computer Engineering (I expect you are familiar with subjects such as operating systems, data structures and algorithms, and C++/Java programming languages)

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

Recommended Book:      Computer Networking: A Top-Down Approach Featuring the Internet, by James F. Kurose and Keith W. Ross, Addison-Wesley, 2004, 3rd Edition

Instructor:                        Dr. Wenbing Zhao
Office:       SH434

Phone:       (216) 523-7480

Fax:           (216) 687-5405

E-mail:       wenbing@ieee.org

Lecture time: M W 4:00-5:50pm

Office hours: M W 2:00-4:00pm and by appointment

Attention Please:

EEC584 Quiz#5 Score is HERE

Your score record for the entire course is HERE (updated 5/5 at 4pm)

I will be available on May 5th, Monday, 2-3:50pm in my office to answer your questions regarding quiz#5 and your standing in class.

Tentative Schedule:

Week

Topics

Reading

1

(Jan 14 - 18)

Jan 14:

  • Lecture #1 - Overview of the course; syllabus; policies (notes)

Jan 16:

  • Lecture #2 - Introduction to computer networks and the Internet, network hardware, network software (part1) (notes)

 

Handout

 

 

 

Ch.1.2

Ch.1.3.1, 1.3.5

2

(Jan 21 – 25)

Jan 21: Martin Luther King Day (No Class)

Jan 23:

  • Lecture #3: Network software (part2), Reference models; Network standards (notes)

 

Ch.1.3.2-1.3.3

Ch.1.4, Ch.1.5.1

Ch.1.6

3

(Jan 28 – Feb 1)

Jan 28:

  • Lecture #4 – Overview of application layer protocols, Web and HTTP (notes)
  • Handout for Lab #1 instructions

Jan 30:

 

 

Ch.7.3

 

 

4

(Feb 4 – 8)

Feb 4:

  • Lecture #5 – DNS (notes)
  • Lab #1 report due
  • Handout for Lab #2

Feb 6:

  • Lab #2 – DNS

 

 

5

(Feb 11 – 15)

Feb 11:

  • Information Literacy Workshop (at CSU Library), Location: CSU Library, RT502

Feb 13:

  • Quiz #1 (Lecture 1-5, Lab 1-2)
  • Lab #2 report due

 

 

 

 

 

 

6

(Feb 18 – 22)

Feb 18: President’s Day (No Class)

Feb 20:

  • Lecture #6 - Data link layer design issues; Error detection and correction (notes)
  • Handout for Wiki-Page Project #1

 

Ch.3.1-3.2

 

 

 

7

(Feb 25 – 29)

Feb 25:

  • Lecture #7 - The channel allocation problem; Multiple access protocols (notes)

Feb 27:

  • Lecture #8 - Ethernet; ARP; DHCP (notes)
  • Handout for Lab #3

Ch.4.1-4.2

 

 

Ch.4.3-4.4
Ch.5.6.3 (part of it)

8

(Mar 3 – 7)

Mar 3:

Mar 5:

  • Quiz #2
  • Lab #3 report due

 

 

 

 

9

(Mar 10 – 14)

Spring Break (No Class)

                                                      

 

 

10

(Mar 17 – 21)

Mar 17:

  • Lecture #9 - Network layer design issues; routing algorithms (part I) (notes)

Mar 19:

  • Lecture #10 - routing algorithms (part II); Internet protocol (part I) (notes)

 

Ch.5.1-5.2

 

 

 

Ch.5.6

11

(Mar 24 – 28)

Mar 24:

  • Lecture #11 - Internet protocol (part II) (notes)
  • Handout for Lab #4
  • Wiki-Page Project #1 due

Mar 26:

  • Lab #4 – IP

 

Ch.5.6

 

 

 

12

(Mar 31 – Apr 4)

Mar 31:

  • Quiz #3
  • Lab #4 report due

Apr 2:

  • Lecture #12 - The transport service; reliable data transfer, sliding window protocols (notes)

 

 

 

 

Ch.6.1-6.2

Ch. 3.4

 

13

(Apr 7 – 11)

Apr 7:

  • A short movie: Varriers of the Net
  • Exercise on sliding window protocols
  • Tour to IS&T data center (5pm)

Apr 9:

  • Lecture #13 - The Internet transport protocols: UDP and TCP (part 1) (notes)

 

 

 

 

Ch.6.4-6.5

 

14

(Apr 14 - 18)

 

Apr 14:

  • Lecture #14  - The Internet transport protocols: UDP and TCP (part 2) (notes)
  • Handout for Lab #5

Apr 16:

  • Lab #5 – TCP 
  • Wiki-Page Project #2 initial draft due

 

 

15

(Apr 21 – 25)

Apr 21:

  • Quiz #4

Apr 23:

  • Lecture #15 – Cryptography; Symmetric-key algorithm, cipher modes (notes)
  • Lab #5 report due
  • Wiki-Page Project #2 review due

 

 

 

Ch.8.1-8.4

 

 

 

16

(Apr 28 – May 2)

Apr 28:

  • Lecture #16 - Public-key algorithm; Digital signatures Message digest; Management of public keys (notes)

Apr 30:

  • Quiz #5

 

Ch.8.5-8.6

17

(May 5 – 9)

May 5 (4-6pm):

  • Wiki-Page Project Presentation
  • Wiki-Page Project #2 final version due (midnight)

 


Projects

For individual or a team of two. For graduate students, there are two required projects. Both are closely related to the information literacy program sponsored by the CSU library. A detailed grading rubric will be provided for each project. As a way to gain extra-credit, you are encouraged to build demonstration programs (Java applet, plain Java application, or use NS2 simulator).

 

Project #1: Select a topic in Chapters 1, 3, and 7, and build a wiki page for the topic on http://www.pbwiki.com/. Example topics are: Introduction to computer networks, Internet history, ISO/OSI reference model, TCP/IP model, World Wide Web, HTTP, DNS, Data link layer design principles.

Project #2: Select a topic in Chapters 4, 5, 6, and build a wiki page for the topic on http://www.pbwiki.com/. Example topics are: Static channel allocation, dynamic channel allocation, multiple access protocols (Aloha, CSMA etc.), Ethernet, ARP, DHCP, network layer, routing algorithms (link state and distance vector), IP, TCP, UDP, ICMP, reliable communication protocols, sliding window protocols.

As part of Project #2, peer-review and revision steps are involved. Each team is required to review three wiki pages built by other teams anonymously. The quality of the review will be counted towards the total credit for this project. Furthermore, after getting a set of reviews, each team must address the comments and revise its wiki page carefully in light of the reviews. If the team disagrees with any comment, a convincing argument should be provided to refute it.

Furthermore, as part of Project #2, a final presentation is required.

 

Quizzes

There is no makeup quiz. Each quiz is designed for one-hour completion, but you have up to 1 hour and 50 minutes to complete it. The quizzes are closed book and closed notes, except that you are allowed to bring with you a one-page cheat sheet not larger than the US letter size (double-sided allowed).

 

To improve your credit on the quizzes, the quiz with the lowest score is omitted.

 

Labs

There are 5 lab sessions on HTTP, DNS, Ethernet & DHCP, IP, and TCP. They are all based on the Ethereal tool. The labs are mandatory. There will be no makeup lab, and no extension will be granted for lab reports. Exception may be granted to those who have strong background to complete the labs without my supervision (in which case, you do not have to show up during the designated lab sessions. However, lab reports are still required). If you are granted an exception, the related requirement on the lab session attendance for class participation credit is automatically removed.


Class Participation

10% of the course credit is allocated to encourage student class participation. I may perform a roll call in the beginning of each class to determine the attendance. To obtain the full credit for class participation, you must satisfy the following conditions:

  • You do not miss more than 2 lectures
  • You do not miss any quiz and lab sessions (if you choose to the labs option)
  • You have asked at least 10 questions during the semester. You are also encouraged to give me advice on how you would like me to improve my teaching to make it more conducive. For each piece of advice, it will be counted as 2 questions.

To help me keep track who asked me questions, please send me an email with the following information for each question you have asked within 24 hours after the lecture:

  • The question you asked
  • My response
  • Your comment on my response and suggestion for improvement, if any

 

Grading

For graduate students:

        Class participation 10%

        Quizzes 40%

        Labs (20%)

        Projects (30% [project#1 5%, project#2 25%])

 

The final grading is based on your accumulated effort in this course. Your final grade is determined approximately based on the following schedule:

A: 90-100%

A-: 85-89%

B+: 75-84%

B: 65-74%

B-: 60-64%

C: 50-59%

F: <50%