Cleveland State University

Department of Electrical and Computer Engineering

EEC 484/584 Computer Networks

Fall Semester 2007

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

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 2:00-3:50pm

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

Teaching Assistants:       Honglei Zhang and Bo Chen (SH 307)

 


Tentative Schedule:

Week

Topics

Reading

1

(Aug 27 - 31)

Aug 27:

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

Aug 29:

  • 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

(Sep 3 – 7)

Sept 3: Labor Day (No Class)

Sept 5:

  • 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

(Sep 10 – 14)

Sept 10:

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

Sept 12:

 

 

Ch.7.3

 

 

4

(Sep 17 – 21)

Sept 17:

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

Sept 19:

  • Lab #2 – DNS, Lab report template is here

 

 

5

(Sep 24 – 28)

I’ll travel to DASC’07 (Sept 25-27)

Sept 24:

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

Sept 26:

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

 

 

 

 

 

 


 

6

(Oct 1 – 5)

Oct 1:

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

Oct 3:

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

 

Ch.3.1-3.2

 

 

 

 

Ch.4.1-4.2

7

(Oct 8 – 12)

Oct 8: Columbus Day (No Class)

Oct 10:

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

 

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

8

(Oct 15 – 19)

I will travel to MWS/EDOC’07 (Oct 15-18)

Oct 15:

Oct 17:

  • Quiz #2

 

 

 

 

9

(Oct 22 – 26)

Oct 22:

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

Oct 24:

  • Lecture #10 - routing algorithms (part II); Internet protocol (part I) (notes)
  • Wiki-Page Project #1 due
  • Handout for Wiki-Page Project #2 (graduate students only)

 

Ch.5.1-5.2

 

 

 

Ch.5.6

 

10

(Oct 29 - Nov 2)

Oct 29:

  • Lecture #11 - Internet protocol (part II) (notes)
  • Handout for Lab #4

Oct 31:

 

Ch.5.6

 

 

 


 

11

(Nov 5 - 9)

I’ll travel to WI’07 (Nov 2-6)

Nov 5:

  • Quiz #3

Nov 7:

  • Lecture #12 - The transport service; reliable data transfer (notes)
  • Lab #4 report due

 

 

 

 

Ch.6.1-6.2

12

(Nov 12 – 16)

Nov 12: Veterans Day (No Class)

Nov 14:

  • Lecture #13 - Sliding window protocols (notes)
  • Tour to IS&T data center

 

 

Ch. 3.4

13

(Nov 19 - 23)

Nov 19:

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

Nov 21:

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

 

Ch.6.4-6.5

 

14

(Nov 26 - 30)

 

Nov 26:

  • Lab #5 – TCP  
  • Wiki-Page Project #2 initial draft due (graduate students only)

Nov 28:

  • Quiz #4

 

 

15

(Dec 3 – 7)

Dec 3:

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

Dec 5

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

Ch.8.1-8.4

 

 

 

 

Ch.8.5-8.6

16

(Dec 10 - 14)

Dec 12 (2-4pm):

  • Quiz #5 (Final Exam time slot)
  • Wiki-Page Project #2 final version due

 

 


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 is waived for undergraduate students.

 

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, DSN, 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.

 

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,

(1)   The weight of the best quiz is doubled

(2)   The weight of the worst quiz is halved

 

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 10%, project#2 20%])

For undergraduate students:

        Class participation 10%

        Quizzes 40%

        Labs (30%)

        Projects (20%)

 

 

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%

D: 40-49% (undergraduate only)

F: (<50% for graduate students; <40% for undergraduate students)