CPE 400/600 Computer Communication Networks

Department of Computer Science & Engineering
UNR, Fall 2009


Course Information - Description - Prerequisites - Textbooks - Syllabus
Organization - Grading - Schedule, Notes & Assignments - Acknowledgment - ABET Criteria

Course Information

  • Credits: 3.0
  • Class hours: Tuesday & Thursday, 9:30 - 10:45am, SEM 261
  • Call numbers:
    • CS 446: #28036 (max. enrollment 30)
    • CS 646: #32726 (max. enrollment 10)

 

  • Instructor: Dr. Murat Yuksel
  • E-mail: yuksem@cse.unr.edu
  • Phone: (775) 327-2246
  • Web page: http://www.cse.unr.edu/~yuksem
  • Office: SEM 237 (Scrugham Engineering-Mines)
  • Office hours:
    • Tuesday, 11am-12:30pm
    • Wednesday, 3-5pm
    • Thursday, 11am-12:30pm
    • or by appointment

 

Description

Digital modulation, transmission and synchronization, coding, error detection, interfacing, computer networks, ISO model, circuit/packet switching, local area networks.

 

Prerequisites

  • Introduction to Computer Engineering (CPE 201).
  • C/C++ or Java programming experience in UNIX-like environment

 

Textbooks

  • Required Textbooks

 

·        J. F. Kurose and K. W. Ross. (2010) Computer Networking: A Top-Down Approach, 5th Edition. Addison-Wesley. (ISBN: 0-13-607967-9)

  • Recommended Textbooks

 

·        B. A. Forouzan. (2007) Data Communications and Networking, 4th Edition. McGraw Hill. (ISBN: 0072967757).

 

Syllabus (Tentative)

This is a tentative list of topics, subject to modification and reorganization.

  1. Introduction to Computer Networks
    • Internet
    • Delay, Loss, and Throughput
    • Protocol Layers and Service Models

 

  1. Application Layer
    • Web: HTTP
    • File Transfer: FTP
    • Electronic Mail
    • Domain Name Service
    • Peer-to-Peer Applications
    • Socket Programming

 

  1. Transport Layer
    • Multiplexing and Demultiplexing
    • Connectionless Transport: UDP
    • Reliable Data Transfer
    • Connection-Oriented Transport: TCP
    • Congestion Control

 

  1. Network Layer
    • Virtual Circuit and Datagram Networks
    • Routers
    • Internet Protocol
    • Routing Algorithms

 

  1. Link Layer
    • Error-Detection and -Correction Techniques
    • Multiple Access Protocols
    • Ethernet
    • Link-Layer Switches

 

  1. Physical Layer
    • Data and Signals
    • Digital and Analog Data
    • Encoding
    • Bandwidth Utilization
    • Transmission

 

Organization

  • WebCT   Except this web page, all course materials will be posted at the WebCT.
  • Lab Assignments   There will be four network lab assignments where you will have hands-on experience with protocols. The lowest graded one will not affect your overall grade. These assignments will require you to use Wireshark packet sniffing tool to analyze communication between two nodes.
  • Project   There will be a project involving quite a bit of programming. It will require turning in code that compiles and runs properly and a report documenting the program (specifications, implementation, user manual, etc.). Note that knowledge of C/C++ or Java is required for the project.
  • Quizzes   There will be a few in-class quizzes. Exact date for some of these quizzes will not be exposed beforehand. These quizzes will be open book/notes and extremely time-constrained, i.e., 15-30mins. Questions in these quizzes will be designed to give you an opportunity to test and affirm your knowledge of the course content.
  • Activities   There will be three in-class activities. There will be a quiz associated with each of these activities. The activities will require participation from every student.
  • Homework   There will be homework assignments approximately one in every month. The lowest graded one will not affect your overall grade.
  • Late policy   Late assignments will be penalized according to the sliding scale below. If I am not available, ask department secretary to stamp late assignments and then place them in my mailbox. You are responsible to make sure the stamp has both the date and the time.
  • Exams   There will be one midterm exam and one final exam (see Schedule for tentative dates). All exams will be open book/notes.
  • Academic Integrity   There will be no team projects or reports in this class, therefore all assignments and exams must be prepared strictly individually. Any form of cheating such as plagiarism or ghostwriting will incur a severe penalty, usually failure in the course. Please refer to the UNR policy on Academic Standards.
  • Disability Statement   If you have a disability for which you will need to request accommodations, please contact the instructor or someone at the Disability Resource Center (Thompson Student Services - 107) as soon as possible.

 

Grading (Tentative)

Both grading policy and scale are subject to change. Failure in either the programming (i.e., lab assignments + project) or the tests (i.e., quizzes + homework + midterm exam + final exam) will result in failure in the course.

Grading Policy

Lab Assignments

15%

Project

15%

Quizzes

10%

Homework

10%

Midterm Exam

25%

Final Exam

25%

Late Assignment Policy

less than 1 day late

25% deducted

between 1 and 2 days late

50% deducted

between 2 and 3 days late

75% deducted

over 3 days late

100% deducted

Grading Scale (Tentative)

90% - 100%

A-, A

80% - 89%

B-, B, B+

65% - 79%

C-, C, C+

55% - 64%

D

0% - 54%

F

Note: Saturdays and Sundays do not count toward missed days. For example, there is 1 "day" between Friday, 2pm and Monday, 2pm. Similarly, there is 1 day between Monday, 2pm and Tuesday, 2pm.

Important Note: Re-grading requests can only be made within the first week after the graded assignments/tests are returned to the students.

 

Schedule (Tentative), Notes & Assignments

This is a tentative schedule including the exam dates. It is subject to readjustment depending on the time we actually spend in class covering the topics. Slides presented in class and assignments will be posted at the WebCT. See the acknowledgment for the course materials. Permanent reading assignment: it is assumed that you are familiar with the contents of the slides of all past meetings.

Date

Lectures

Assignments & Notes

Tue, Aug 25

Lecture #1: Introduction

• Read Kurose & Ross, Ch. 1.1, 1.2

Thu, Aug 27

Lecture #2: Network Architecture & History

• Read Kurose & Ross, Ch. 1.3, 1.6, 1.7

Tue, Sep 1

Lecture #3: Basic Networking Concepts

• Read Kurose & Ross, Ch. 1.4, 1.5

Thu, Sep 3

Lecture #4: Application Layer (1) – Introduction, HTTP

• Read Kurose & Ross, Ch. 2.1, 2.2

Tue, Sep 8

Lecture #5: Application Layer (2) – FTP, E-mail, DNS

• Read Kurose & Ross, Ch. 2.3-2.5

Thu, Sep 10

Guest Lecture: Network Measurement

 

Tue, Sep 15

Lecture #6: Application Layer (3) – DNS, Peer-to-Peer

• Read Kurose & Ross, Ch. 2.6-2.8

• Homework 1 out

• Lab Assignment 1 out

Thu, Sep 17

Lecture #7: Application Layer (4) – Socket Programming

• Project out

Tue, Sep 22

Lecture #8: Transport Layer (1) – Multiplexing, UDP

• Read Kurose & Ross, Ch. 3.1-3.3

• Homework 1 due

Thu, Sep 24

Lecture #9: Transport Layer (2) – Reliability

• Read Kurose & Ross, Ch. 3.4

• Lab Assignment 1 due

Tue, Sep 29

Lecture #10: Transport Layer (3) – TCP

• Read Kurose & Ross, Ch. 3.5

• Homework 2 out

Thu, Oct 1

Lecture #11: Transport Layer (4) – Congestion Control

• Read Kurose & Ross, Ch. 3.6

• Lab Assignment 2 out

Tue, Oct 6

Lecture #12: Transport Layer (5) – TCP Congestion Control

• Read Kurose & Ross, Ch. 3.7

Thu, Oct 8

Review

• Homework 2 due

Tue, Oct 13

Midterm Exam (in-class)

 

Thu, Oct 15

Lecture #13: Network Layer (1)

• Read Kurose & Ross, Ch. 4.1, 4.2

Tue, Oct 20

Lecture #14: Network Layer (2) – Virtual Circuits, Datagrams

• Lab Assignment 2 due

Thu, Oct 22

Lecture #15: Network Layer (3) – Routers, IP

• Read Kurose & Ross, Ch. 4.3

Tue, Oct 27

Lecture #16: Network Layer (4) – IP, ICMP

• Read Kurose & Ross, Ch. 4.4

Thu, Oct 29

Lecture #17: Network Layer (5) – Routing Algorithms

• Read Kurose & Ross, Ch. 4.5

Tue, Nov 3

Lecture #18: Network Layer (6) – Routing Protocols

• Project, Phase 1 due

• Read Kurose & Ross, Ch. 4.6

Thu, Nov 5

Lecture #19: Network Layer (7) – Broadcast, Multicast

• Lab Assignment 3 out

• Read Kurose & Ross, Ch. 4.7

Tue, Nov 10

Lecture #20: Link Layer (1) – Error Detection and Correction

• Read Kurose & Ross, Ch. 5.1, 5.2

• Homework 3 out

Thu, Nov 12

Lecture #21: Link Layer (2) – MAC, ARP

• Read Kurose & Ross, Ch. 5.3, 5.4

Tue, Nov 17

Lecture #22: Link Layer (3) – Ethernet, Switching

• Read Kurose & Ross, Ch. 5.5

Thu, Nov 19

Lecture #23: Link Layer (4) – Virtual Link

• Read Kurose & Ross, Ch. 5.8

• Lab Assignment 3 due

• Lab Assignment 4 out

Tue, Nov 24

Lecture #24: Physical Layer (1)

• Homework 3 due

Thu, Nov 26

Thanksgiving Break – NO CLASSES

 

Tue, Dec 1

Lecture #25: Physical Layer (2) – Data and Signals

 

Thu, Dec 3

Lecture #26: Physical Layer (3) – Digital Transmission

• Lab Assignment 4 due

 

Tue, Dec 8

Lecture #27: Physical Layer (4) – Analog Transmission

• Project, Phase 2 due

Fri, Dec 11 (at 7:30am)

Final Exam (in-class)

 

 

Acknowledgment

The slides and other materials for this course are in-part based upon the materials from a number of people/sources, including:

·        Official website for the Kurose & Ross text: Computer Networking: A Top-Down Approach

·        Mehmet H. Gunes from UNR: http://www.cse.unr.edu/~mgunes/cpe400

 

ABET Criteria

ABET Criterion 3 Outcomes

Course Outcomes

Assessment Methods/Metrics

c, e

Knowledge of the fundamental components of a computer network.

·         Define and explain the followings in written assignments and exams:

o        the origins and challenges of self-configuring communication network operation,

o        strategies and components of modern computer communication network systems, and

o        various tradeoffs between resource management techniques.

 

a, c, e

Ability to quantitatively evaluate different network protocols and applications.

·         Solve and model quantitative performance evaluation methods of a communication network in written assignments and exams.

·         Design and implement resource management and scheduling algorithms of a computer network in programming assignments.

 

ABET Criterion 3 Outcomes:

a)      an ability to apply knowledge of mathematics, science, and engineering

b)      an ability to design and conduct experiments, as well as to analyze and interpret data

c)      an ability to design a system, component, or process to meet desired needs

d)      an ability to function on multi-disciplinary teams

e)      an ability to identify, formulate, and solve engineering problems

f)        an understanding of professional and ethical responsibility

g)      an ability to communicate effectively

h)      the broad education necessary to understand the impact of engineering solutions in a global and societal context

i)        a recognition of the need for, and an ability to engage in life-long learning

j)        a knowledge of contemporary issues

k)      an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice

 

Course Information - Description - Prerequisites - Textbooks - Syllabus
Organization - Grading - Schedule, Notes & Assignments - Acknowledgment - ABET Criteria

Last updated on August 21, 2009