Cleveland State University

Department of Electrical and Computer Engineering

EEC 484/584 Computer Networks

Fall Semester 2009

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 (for graduate students)

Textbook:                         Computer Networking: A Top-Down Approach Featuring the Internet, by James F. Kurose and Keith W. Ross, Addison-Wesley, 2004, 3rd Edition (or newer)

Recommended Book:      Computer Networks, by Andrew S. Tanenbaum, Prentice Hall, 2003, 4th Edition (or newer).

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 1:00-2:00pm & 6:00-7:00pm and by appointment

 

EEC484 Term Project Instruction is posted here

EEC584 Term Project Instruction is posted here

Tentative Schedule:

Week

Topics

1

(Aug 24 - 28)

Aug 24:

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

Aug 26:

·         Lecture #2 - Introduction to computer networks and the Internet(part1) (notes)


2

(Aug 31 – Sept 4)

Aug 31:

  • Lecture #3: Introduction to computer networks and the Internet(part2) (notes)

Sept 2:

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

3

(Sept 7 – 11)

Sept 7:

  • Labor Day (No Class)

Sept 9:

4

(Sept 14 – 18)

Sept 14:

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

Sept 16:

  • Lab #2 – DNS

5

(Sept 21 – 25)

Sept 21:

·         Discussion session (HTTP & DNS)

·         Lab #2 report due

Sept 23:

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

6

(Sept 28 – Oct 2)

Sept 28:

  • Lecture #6 - The transport service; reliable data transfer (notes)

Sept 30:

  • Lecture #7 - Sliding window protocols; The Internet transport protocols: UDP and TCP (part 1) (notes)

7

(Oct 5 – 9)

Oct 5:

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

Oct 7:

8

(Oct 12 – 16)

Oct 12:

·         Columbus Day (No Class)

Oct 14:

  • Discussion session (Transport layer)
  • Lab #3 report due

9

(Oct 19 – 23)

Oct 19:

  • Quiz #2 (Lecture 6-8, Lab 3)

Oct 21:

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

10

(Oct 26 – 30)

Oct 26:

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

Oct 28:

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

11

(Nov 2 – 6)

Nov 2:

  • Lab #4 – IP

Nov 4:

  • Tour to IS&T data center
  • Discussion session (Network layer)
  • Lab #4 report due

12

(Nov 9 - 13)

Nov 9:

  • Quiz #3 (Lecture 9-11, Lab 4)

Nov 11:

  • Veterans Day (No Class)

13

(Nov 16 – 20)

Nov 16:

  • Lecture #12 - Data link layer design issues; Error detection and correction (notes)

Nov 18:

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

14

(Nov 23 – 27)

Nov 23:

  • Lecture #14 - Ethernet; ARP; DHCP (notes)
  • Handout for Lab #5

Nov 25: (Thanksgiving Eve)

15

(Nov 30 – Dec 4)

Nov 30:

  • Discussion session (Datalink layer)

Dec 2:

·         Quiz #4 (Lecture 12-14, Lab#5)

  • Lab #5 report due

16

(Dec 7 – 11)

Dec 7 (4-6pm):

  • Project presentation (EEC484 only)

 

Project for Undergraduate Students

For individual or a team of two. Implementation of a reliable point-to-point communication on lossy medium. Open to alternative project ideas.

 

Project for Graduate Students

For individual or a team of two. As a way to gain extra-credit, you are encouraged to build demonstration programs (Java applet, plain Java application, or use NS2 simulator) in addition to building the wiki page.

 

Project requirement: Select a topic related to computer networks, and build a wiki page for the topic on http://www.pbwiki.com/ or a similar Web hosting site. 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 the project, 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 hand-written cheat sheet no larger than the US letter size (double-sided allowed).

 

Labs

There are 5 lab sessions on HTTP, DNS, Ethernet & DHCP, IP, and TCP. They are all based on the Wireshark 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.

 

In addition to the Wireshark labs, up to 3 special lab exercises will be designed. The special labs will utilize the iPod touches to get you directly in the decision making process of the network protocols experimented (by touching, tilting, and/or shaking the iPod touch).

 

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.

 

 

Grading

        Class participation 10%

        Quizzes 40%

        Labs (25% for graduate students, 30% for undergraduate students)

        Projects (25% for graduate students, 20% for undergraduate students)

 

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)