CS555 Computer Communications and Networking
Tuesday 7:20 - 10:00 PM, Robinson Hall B208
Instructor: |
Dr. Songqing Chen |
Office: |
5319 Engineering Building |
Phone: |
703-993-3176 |
E-mail: |
sqchen AT cs dot gmu dot edu |
Office Hours: |
Wednesday 2:00 p.m. - 4:00 p.m., or by appointment |
Course Homepage: |
http://www.cs.gmu.edu/~sqchen/courses/CS555S11
|
The course will present data communications fundamentals and
computer networking methods, using the ISO 7-layer reference model to
organize the study. Attention will be focused on the protocols of the
physical, data link control, network, and transport layers, for local
and wide area networks. Emphasis will be given to the Internet
Protocol Suite. Some advanced topics, such as network security,
wireless and mobile computing networks, will also be covered. Students
will program simplified versions of the protocols as a part of the
course project. Students will also program simplified applications
using socket programming in the course project.
Grade of C or better in CS 310 and 367, and STAT 344, ability to program in C/C++.
- Required:
-
Larry Peterson and Bruce Davie, Computer Networks, A Systems Approach, 4th Edition, Morgan-Kaufmann
- Recommended:
- James Jurose and Keith Ross, Computer Networking - A Top-Down
Approach Featuring the Internet, Addison Wesley, 2004.
- Pullen, Understanding Internet Protocols, Wiley, 2000.
- OSI 7-layer model
- Signal encoding, modulation and multiplexing
- Flow/error control
- Medium access control
- Ethernet
- Routing
- Internet architecture
- TCP/UDP protocols
- Security, multimedia networking, wireless and mobile computing
Homework assignments are on a semi-regular basis. Projects are
based on a network simulator and socket programming. The network
simulator, Network Workbench (NW), enables the study and
implementation of various networking protocols in a virtual
reality, where network devices (namely, routers and switches) are
simulated and your protocol implementations can be tested and
debugged. The socket programming projects enable the implementation
of network communications in a reality. Socket programming
projects will focus on the communications between machines. You
must be familiar with socket programming in order to complete the
projects.
The official platform for projects is
site-unix, meaning that the TA will grade your projects on that
platform. Currently, it points to zeus.ite.gmu.edu. On site-unix, the current version of NW, nw42, can be found
at /usr/local/nw42. (Note that, for security reasons, you can
login into site-unix from osf1 if you cannot login directly.) To install nw42 in your home
directory, follow the instructions in
/usr/local/nw42/Linux-setup.txt.
Alternatively, you can install NW on your PC from
netlab.gmu.edu/NW. Note that site-unix is the only official
platform. You are responsible for resolving any compatibility issues
before submitting (although we expect few such problems).
NOTE
- If your code does not compile, you get no credit.
- Assignments and Projects are individual efforts.
- We reserve the right to use MOSS to detect plagiarism.
Your grade will be calcuated as follows:
- 15% Assignments
- 20% Projects
- 30% Midterm exam
- 35% Final exam
No credit if your project does not compile. Late assignments/projects lose 20% credit and will not be accepted
3 days after due, unless under prearranged conditions.
No early exams will be given.
Missed/make-up exams are strongly discouraged and must be arranged with the instructor at least one week BEFORE the exam
date with an official and verifiable excuse.
GMU Academic Calendar
Honor Code
Disability Resource Center
Dr. Songqing Chen,
Dept. of Computer Science,
George Mason University