CS555 Computer Communications and Networking
Section 002 Fall 2012: Monday 19:20 - 22:00, Nguyen Engineering 2608
Section DL2 Fall 2012: Monday 19:20 - 22:00 onlne at http://netlab.gmu.edu/moodle
updated Jul 28, 2012
Professor: Dr. J. Mark Pullen
Mail drop: CS Dept, 4301 Engineering Building
Office hours Mondays 16:00 to 18:00; also by appointment any mutually convenient time, including weekends
Preferred contact is email: mpullen@netlab.gmu.edu
TA: Mohamed Elsabagh
Office hours: 14:00 to 18:00 Mondays
email:melsabag@gmu.edu
Current Catalog Description
Techniques and systems for communication of data between
computational devices and layers of Internet Protocol Suite. Topics
include role of various media and software components, local and wide
area network protocols, network design, performance and cost
considerations, and emerging advanced commercial technologies.
Emphasizes TCP/IP family of protocols.
Textbook
* Larry Peterson and Bruce Davie, Computer Networks, A Systems Approach, 5th
Edition, Morgan-Kaufmann
* Pullen, Understanding Internet Protocols, Wiley, 2000 (out of print; available online to CS455 and CS555 students)
References
Stallings, Data and Computer Networks 9th Ed. Prentice-Hall, 2010 (older editions also useful)
Course Outcomes
1. Explain basic electrical engineering principles that enable communication at the
physical layer
2. Demonstrate an understanding of wired and wireless data link layer protocols for
shared medium and point-to-point communication
3. Demonstrate an understanding of the graph theory concepts required for unicast
and multicast routing
4. Demonstrate an understanding of distributed routing protocols
5. Describe how protocols and applications use ARQ algorithms for distributed
reliability
6. Demonstrate an understanding of end-to-end transport layer protocols
7. Explain basic concepts in cryptography and networking security protocols.
8. Illustrate fundamental understanding of networking by programming portions of
the entire network stack.
9. Demonstrate a basic understanding of performance analysis for computer
networking
10. Demonstrate a basic working vocabulary of data communications and networking terminology
Prerequisites by Topic
CS 310 (Data Structures)
CS 365 (Computer Systems Architecture)
STAT 344 (Probability and Statistics for Engineers and Scientists)
These will not be waived nor accepted as co-requisites; however equivalent study
or experience elsewhere may be accepted at the instructor's discretion.
Major Topics Covered in the Course
1. OSI 7-layer model
2. Flow/error control
3. Medium access control
4. Ethernet
5. Routing
6. Multicasting
7. Internet architecture
8. TCP/UDP protocols
9. Multimedia networking
10. Security
The grading breakdown is as follows:
* 35% Projects
* 25% Midterm exam
* 40% Final exam
Project: We will use the Java Network Workbench (JNW), software developed at GMU that simulates a protocol stack and displays the results, using a text interface. Students will create modules for Internet stack layers and run them in the JNW environment, as described in the text by Pullen. JNW is available for download from http://netlab.gmu.edu/compnets. Well commented code must be submitted for grading via an upload webpage at http://netlab.gmu.edu/moodle. Additional projects will be available for extra credit. Student problems with the project are to be addressed to the TA, who may refer them the instructor as needed. Additional project information will be found at http://netlab.gmu.edu/JNWS.
Project credit breakout: JDLC1, JDLC2, JDLC3, JLAN1, JWAN2, JTRN1, JTRN3 five points each; extra credit assignment to be announced.
Missed exams must be arranged with the instructor BEFORE the exam date.
Assignments are due by start of class on assigned date. Late assignments lose 10% per class credit. No project submission will be accepted after reading day (12/10/2012).
All students are expected to abide by the Honor Code as stated in the GMU catalog and elaborated for Computer Science. Students should be aware that their submissions may be checked by plagiarism detection software.
Grading is proficiency-based (no curve), cutoffs will be in the vicinity of (but not higher than) A 93; A- 90; B+ 87; B 83; B- 80; C 70.
Extra credit is available by doing an extra project; however, no student who
fails the final exam will receive a grade higher than C, regardless of extra
credit earned.
SYLLABUS (subject to revision)
date and topic/readings in Peterson text/project assignment
8-27 Course introduction; network concepts; 7-layer and 5-layer models / Sections 1.1 to 1.4 / JNW Setup introduced
9-10 Physical layer: analog telecommunications / Section 1.5 / Project JDLC1: bit stuffing introduced
9-17 Physical layer: digital telecommunications / Sections 2.1 & 2.2
9-24 No class; work on project
10-1 Data compression, security principles, integrity, appropriate use / Sections 2.3, 2.4 & 7.2 / Project JDLC1 due; Project JDLC2: CRC introduced
10-9 Data link control; discrete event simulation / Section 2.5 / Project JDLC3: ARQ introduced
10-15 Mid-term exam
10-22 Local area networks / Sections 2.6 and 2.7 / Project JDLC2 due; Project JLAN1: CSMA/CD LAN introduced
10-29 Network Layer: WANs, X.25, routing / Chapter 3 except Section 3.3 / Project JDLC3 due
11-5 Internet Architecture (IPv4); Metcalfe’s Law / Section 3.3, Chapter 4 / Project JLAN1 due; Project JWAN2: Forwarding and Routing introduced
11-12 Queueing basics; transport layer: TCP and UDP; IPv6 / Chapter 5 & Sections 6.1 to 6.4 / Project JTRN1: Reliable Transport introduced
11-19 Multicast, multimedia and ATM networking /Chapter 4; Section 6.5; Chapter 7 / Project JTRN3: congestion window introduced; Project JWAN2 due
11-26 Network Security and Network Management / Chapter 8 / Project JTRN1 due
12-3 Higher layer protocols / Chapter 9 / Project JTRN3 due
12-10 reading day; any extra credit projects due; no project work submitted after this day
12-17 Final exam (comprehensive) / all chapters listed above / Exam location: classroom
Course communication: we will use email extensively. Students are responsible to read email daily. Announcements will be sent to the class email list, which consists of GMU email accounts.
Course notices and assignments will be provided via email. Course
materials (for example, homework solutions) will be available though the
course Moodle page,
http://netlab.gmu.edu/moodle. Students are responsible
for assigned readings and all material outlined in lecture slides.
University Requirements
Honor Code Statement.
Students with Disabilities
If you have a documented learning disability or other condition that
may affect academic performance you should: 1) make sure this
documentation is on file with the Office of Disability Services
(SUB I, Rm. 222; 993-2474; www.gmu.edu/student/drc) to determine the accommodations you need; and 2) talk with me to discuss your accommodation needs.