CPSC 5157 – Computer Networks

This course description covers three distinct offerings of the course:
CRN 50606CPSC 5157 UThe undergraduate offering of the course
CRN 50604CPSC 5157 GThe graduate in–class offering of the course
CRN 50605CPSC 5157 GThe graduate on–line offering.

Instructor

Dr. Edward L. Bosworth

Center for Commerce and Technology 443

(706) 565–4128

e–mail:
website:

Office Hours – Summer 2007

MondayI am not in the office on Monday.

Tuesday9:00 AM– 10:45 AM
12:30 PM– 2:00 PM
5:15 PM– 6:30 PM

Wednesday3:00 PM– 5:15 PM

Thursday9:00 AM– 10:45 AM
12:30 PM– 2:00 PM

FridayI am not in the office on Friday

All students, both in–class and on–line, are encouraged to send e–mail at any time.
On–line students should note the special requirement for e–mail class participation.

Class Meetings:

Tuesday and Thursday2:05 PM– 5:15 PMCCT 405

Course Prerequisites

CPSC 2108Data Structures (with a grade of C or better)

Textbook:Computer Networking: A Top–Down Approach
Fourth Edition
James F. Kurose & Keith W. Ross
Pearson / Addison–Wesley, © 2008.
ISBN–100 – 321 – 49770 – 3
ISBN–13978 –0 – 321 – 49770 – 8

Other Required Materials:The student will be required to download and use a number
of freeware computer tools, such as Ethereal (Wireshark).

Course Catalog Description:

Local area networks, wide area networks, and internets. Protocols and the ISO Open Systems Interconnect reference model. Design, analysis, and performance evaluation. Emphasis on data link, network, and transport protocols.

Page 1 of 6Summer 2007Revised: May 24, 2007

CPSC 5157Course Syllabus

Course Description and Objectives

This course is a broad introduction to networking concepts and emphasizes the following:

  • Local area networks, wide area networks, and internets.
  • Protocols and the OSI (Open Systems Interconnect) reference model.
  • Design, analysis, and performance evaluation.

The main objective of this course is to answer the basic question "how do computer networks and internets operate?" in the broadest sense. The course will provide a comprehensive, self-contained tour through all of networking from the lowest levels of data transmission and wiring to the highest levels of application software. At each level, we will see how the facilities and services provided by lower levels are used and extended in the next level. Upon successful completion of this course, the student will have an understanding of:

  1. The large–scale structure of the global Internet and its associated protocols;
  2. Delay, jitter, loss, and throughput;
  3. Dedicated circuits, virtual circuits, and the datagram model;
  4. The OSI Reference Model and the Internet Protocol Stack;
  5. The Application Layer: Structure and sample applications;
  6. Two service models: client–server (and its variants) and peer–to–peer;
  7. The Transport Layer: Its function and services;
  8. Connectionless and connection–oriented services;
  9. Reliable data transport and congestion control;
  10. The uses of UDP and TCP; the trade–offs between them;
  11. The Network Layer: Its function and services;
  12. The structure of a router and its function in routing packets;
  13. The structure of IP addresses: classful and classless addresses;
  14. The DNS (Domain Name Service): “User friendly” names & IP addresses;
  15. Routing on the Internet;
  16. Non–routable addresses and network address translation;
  17. The Link Layer: Its function and services;
  18. Error detection and correction techniques;
  19. Collision detection and the Ethernet solution to that problem;
  20. Collision avoidance and the Token Ring solution to that problem;
  21. Link–layer switches: forwarding and filtering;
  22. The differences between hubs, switches, and routers;
  23. The basis for each of secret–key cryptography and public–key cryptography;
  24. The ABSOLUTE NECESSITY of not “rolling your own” cryptosystem;
  25. Services provided by cryptography: confidentiality, integrity, and authentication;
  26. Session keys; key management and exchange;
  27. Common mistakes using cryptography and the resulting vulnerabilities;
  28. Basic issues in the design of cryptographic protocols (Alice, Bob, etc.);
  29. End–to–end security vs. network–layer security;
  30. Operational security: firewalls and intrusion detection systems.

Course Methods

This class will be taught using the “dual delivery” method. It is taught face–to–face
with an audio recording made of the lecture. The audio recording and the lecture
slides will be placed on the instructor’s web site

Student Responsibilities

1.Attend class regularly (if so enrolled) and participate in all web discussions.
2.Complete all reading assignments and all homework assignments.
3.Ask the instructor questions.
4.Send the instructor e–mail with both comments and questions.

Instructor Responsibilities

1.Give lectures on the course material.
2.Assign appropriate homework that illustrates the concepts of the course, and
grade and return the homework in a timely manner with adequate explanation.
3.Give tests over the material and grade and return the tests in a timely manner
4.Provide a website that supports the course.
5.Provide at least four hours of office time primarily designated for assistance of
students in this class, at times expected to be convenient for the students. It is
expected that the instructor be available to the students during these hours.
6.Reply promptly (within one business day) to all student e–mail communications.

Methods for Evaluating Students

The evaluation methods will include homeworkand a comprehensive final exam. In addition there is a “class participation” component to the grade. There is no mid–term.

Homework60%
Class Participation10%
Final Exam30%(Take home – see below)

The Final Exam
Due to the large number of students taking this course by distance education, this final will be a “take home” open book examination. It is not to be proctored. The student may use any resources that suggest themselves, including other texts and the public Internet.

The final exam will be handed out in class on Thursday, July 26, and posted on the instructor’s web site soon thereafter. It will be due back to the instructor on or before
11:30 PM on Thursday, August 1. Grades will be posted by noon on August 2.

The Class Participation Component
This strange component is designed as a result of your instructor’s taking an on–line course and being quite annoyed at lack of communication with the instructor.

All students taking the class via distance education are expected to send the instructor one e–mail message a week, for a total of seven messages. The message can be class related or about any topic of interest to the student; e.g., the chances for the Chicago White Sox in the World Series this year. We need to stay connected.

Students taking the course in class may also gain class participation credit by sending an e–mail, but will have other options as well.

Assignment of Letter Grades

The method of assigning letter grades based on overall course averages is fairly standard. The basic method for assigning grades is described as follows:

AverageLetter Grade
90 – 100A
80 – 89B
70 – 79C
55 – 69D
Below 55F

Tentative Topic ScheduleRevised on May 24, 2007

DayDateChapterTopics

1.Tuesday, June 121The Network Edge
The Network Core
Delay, Jitter, Loss, & Throughput
Protocol Layers
History

2.Thursday, June 142Network Applications
The Client / Server Model
The Web and HTTP
File Transfer: FTP
Electronic Mail: SMTP

3.Tuesday, June 192The Domain Name Service
Peer–To–Peer Applications
Introduction to TCP and UDP
Socket Programming with TCP
Socket Programming with UDP

4.Thursday, June 213End–to–end vs. host–to–host.
Transport layer vs. Network Layer
Connectionless Transport: UDP
Reliable Data Transfer

5.Tuesday, June 263Connection–Oriented Transport: TCP
Reliable Data Transfer
Flow and Congestion Control
Connection Management
The TCP “Handshakes”

6.Thursday, June 284Forwarding and Routing
Real circuits vs. virtual circuits.
Routers and Switches
Format of an IP packet
IP version 4 address format
Classful and classless addresses
CIDR (Classless Interdomain Routing)

7.Tuesday, July 34IP version 6
Routing algorithms
More on DNS
DHCP (Dynamic Host Configuration)
NAT (Network Address Translation)

8.Thursday, July 55Link Layer and Network Layer
Link layer services
Error Detection and Error Correction
Managing a Shared Channel
Link Layer Addressing

9.Tuesday, July 105The Ethernet and the Alohanet
Ethernet Addressing
CSMA/CD
Ethernet vs. Token Ring

10.Thursday, July 126Wireless LANs
3G Cellular Mobile
Managing Mobile Hosts

11.Tuesday, July 177Sample Multimedia
Streaming Audio and Video
Limitations of Best Effort Service
Interactive Audio
Internet 2

12.Thursday, July 198Elementary Cryptography
Proper Use of Cryptography
Attacks on Cryptosystems
DES, 3–DES, AES, etc.
Session Keys and Public Keys
Cryptographic Hash Functions

13.Tuesday, July 248Authentication
Key Management
Key Certificates
Protocols and Attacks

14.Thursday, July 269Introduction to Network Management
Framework for Network Management

Friday, July 27CPSC 5157 Exam 11:50 AM – 1:50 PM

As noted above, Friday (July 27) is the official day for the exam. The exam will be handed out on Thursday (July 26) and must be returned on or before 11:30 PM on Thursday, August 1. This due date and time is necessitated by the deadline set by the registrar’s office for final grade submissions. That date is noon on August 2.

Course Assistance

Student assistants in the ComputerCenter can help you with basic computer–related problems (such as logging on to the network, saving your work, etc.), but they are not trained to help you with your assignments. We have several tutors at the Department of Computer Science who can help you with programming assignments. Their schedule is posted at the department office. You can always contact me during the posted office hours or by appointment. The best way to get in touch with me is by e–mail at
.

Academic Honesty

Academic dishonesty includes, but is not limited to, activities such as cheating and plagiarism ( Dishonesty/Academic Misconduct). It is a basis for disciplinary action. Any work turned in for individual credit must be entirely the work of the student submitting the work. All work must be your own. You may share ideas but submitting identical assignments (for example) will be considered cheating. You may discuss the material in the course and help one another with debugging; however, any work you hand in for a grade must be your own. A simple way to avoid inadvertent plagiarism is to talk about the assignments, but don't read each other's work or write solutions together unless otherwise directed. For your own protection, keep scratch paper and old versions of assignments to establish ownership, until after the assignment has been graded and returned to you. If you have any questions about this, please see me immediately. For assignments, access to notes, the course textbooks, books and other publications is allowed. All work that is not your own, MUST be properly cited. This includes any material found on the Internet. Stealing or giving or receiving any code, diagrams, drawings, text or designs from another person (CSU or non-CSU, including the Internet) is not allowed. Having access to another person's work on the computer system or giving access to your work to another person is not allowed. It is your responsibility to keep your work confidential.

No cheating in any form will be tolerated. Penalties for academic dishonesty may include a zero grade on the assignment or exam/quiz, a failing grade for the course, suspension from the Computer Science program, and dismissal from the program. All instances of cheating will be documented in writing with a copy placed in the Department's files. Students will be expected to discuss the academic misconduct with the faculty member and the chairperson. For more details see the Faculty Handbook: and the Student Handbook:
CSU ADA Statement
If you have a documented disability as described by the Rehabilitation Act of 1973 (P.L. 933-112 Section 504) and Americans with Disabilities Act (ADA) and would like to request academic and/or physical accommodations please contact Joy Norman at the Office of Disability Services in the Center for Academic Support and Student Retention, Tucker Hall (706) 568-2330, as soon as possible. Course requirements will not be waived but reasonable accommodations may be provided as appropriate.

Page 1 of 6Summer 2007Revised: May 24, 2007