CMPS 376 Computer Networks
Sections 1 and 2 - Winter 2014
Instructor and Contact Information
Melissa Danforth
Office: Sci III 338, 654-3180
Office Hours: MWF 2:00-3:15pm and Th 1:00-2:30pm
Email: melissa@cs.csubak.edu

Course website: http://www.cs.csubak.edu/~melissa/ under Teaching menu
Moodle website: http://moodle.cs.csubak.edu/moodle/course/view.php?id=78

Course meets MWF 12:45-1:55pm and Tu 12:45-3:15pm in Sci III 315

Catalog Description
CMPS 376 Computer Networks (5)
A study of computer networks focusing on the TCP/IP Internet protocols and covering in detail the four layers: physical, data link, network, and transport. This course includes a laboratory in which students will cover important network utilities, debugging tools, process and thread control as it relates to network programming, and the coding of programs which do interprocess communication over sockets. The typical Internet client program which accesses a TCP network server daemon will be covered in detail. Each week lecture meets for 200 minutes and lab meets for 150 minutes. Prerequisite: CMPS 223 with a grade of C- or better
Prerequisites by Topic
C/C++ Programming
Data Structures
Introduction to Algorithms
Units and Contact Time
5 quarter units. 4 units lecture (200 minutes), 1 unit lab (150 minutes).
Type
Required for CS
Required Textbook
Computer Networks, 5th edition, Andrew S. Tanenbaum and David J. Wetherall, Prentice Hall, 2011, ISBN-13 978-0-13-212695-3.
Recommended Textbook and Other Supplemental Materials
None
Coordinator(s)
Melissa Danforth, Marc Thomas
Student Learning Outcomes
This course covers the following ACM/IEEE Body of Knowledge student learning outcomes:

CC-NC1: Introduction to net-centric computing
CC-NC2: Communication and networking
CC-NC3: Network security
CC-NC4: The web as an example of client-server computing

ABET Outcome Coverage
The course maps to the following performance indicators for Computer Science (CAC/ABET):
(CAC PIa1): Apply and perform the correct mathematical analysis.
Examination and homework questions will require application of mathematical techniques.
(CAC PIa2): Prepare and solve the appropriate physical model of the problem.
Examination and homework questions will require knowledge of the physical layer of networking.
(CAC PIe2): Recognize and describe current issues in security.
Laboratory and homework assignments will require an understanding and assessment of security in a networking context.
(CAC PIi1): Program in a suitable computer language.
Laboratory assignments will require practical application of modern TCP/IP programming practices.
(CAC PIi3): Utilize problem solving skills and techniques to complete the task.
Exam questions will analysis of a networking problem and the derivation of an appropriate solution.
Lecture Topics and Rough Schedule
Chapter 1 Introduction Week 1
Chapter 2 The Physical Layer Weeks 1 to 2
(Review) Statistical Models Week 3
Chapter 3 The Data Link Layer Weeks 3 and 4
Chapter 4 The Medium Access Sublayer Weeks 4 to 6
Chapter 5 The Network Layer Weeks 6 to 7
Chapter 6 The Transport Layer Weeks 8 to 9
Chapter 7 The Application Layer Week 9
Chapter 8 Network Security Week 10
Estimated ABET Category Content
Math and Basic Sciences ?? Credit Hours
Computing ?? Credit Hours ?? Fundamental, ??Advanced
Engineering Topics ?? Credit Hours
Engineering Design ?? Credit Hours
Design Content Description
Not applicable to this course.
Course Notes
The lectures will focus extensively on the theory of networking and the details of several popular networking protocols (e.g. Ethernet, 802.11, TCP/IP, etc). The theory has a strong mathematics component, particularly for calculating probabilities of events. A brief background of probabilty and statistical methods will be presented in class for students who have not taken the probability course in Mathematics.
Attendance
Students are responsible for their own attendance. The topics covered in lecture will be listed on the course website. Lab attendance is not required but is strongly encouraged.
Academic Integrity Policy
Assignments may discussed in groups. If the assignment is a group assignment, the group turns in one assignment for the entire group. However, if the assignment is an individual assignment, each student must turn in their own work; no direct copying is allowed. You may discuss individual assignments with other students, but you must write up the assignment in your own words. Any direct copying from other students, the textbook, Internet resources, etc. that the instructor detects will result in a grade of 0 for that assignment. Refer to the Academic Integrity policy in the campus catalog.
Computer Labs Outside of Class
The CEE/CS Tutoring Center in Sci III 324 is available for use by students in this course outside of class time on a first come, first serve basis. Priority in the lab is given to students who are completing assignments for CEE/CS courses. See the schedule on the door for hours the lab will be open.

There are also computers available in the CEE/CS Major Study Lounge in Sci III 341 (formerly the CEE/CS Library). This room is only open when faculty members are on campus, e.g. approximately 8am to 5pm on weekdays. If the door is currently locked, see Steve, Lori, myself, or another faculty member to unlock it.

Grading
Labs/Homework 25%
Midterms 50% (25% for each midterm)
Final 25%
Homework/Lab Policies
Labs will be group assignments. Each group, consisting of 1-3 students, will turn in one assignment for the entire group. Be sure all names are on the assignment so all group members receive credit.

Homeworks may be discussed in groups, but every student must turn in their own assignments in their own words. Refer to the Academic Integrity Policy above.

Assignments will be posted online on the course website. The due date will be given with the assignment.

Late Policy
Late labs are not accepted, however partial credit will be given for incomplete labs. The lowest lab grade will not count towards your overall Lab/Homework total.

Late homework is accepted, but it will be marked down 10% for every day it is late. Saturday and Sunday combined count as only one day late (e.g. if the assignment is due Friday and you turn it in Sunday, it will be marked as one day late). If there is a late policy stating the last day the assignment can be turned in late posted on the assignment, then that policy will apply for that particular assignment. Otherwise, homework assignments that are more than three days late will not be accepted.

Homework/Lab Submission
Assignments are submitted by emailing the instructor from the CEE/CS department server (coding assignments) or by attaching files to the Moodle website (non-coding assignments). All files must be in text, OpenOffice or PDF format. If scanning a hand-written page, use a standard image format such as JPG, PNG, or GIF, or use PS or PDF format.

Do NOT use Microsoft Office formats, particularly DOCX or XLSX, as they cannot be read by the instructor on all grading machines. Do not use GMail or any other email method for the coding assignments as the campus spam filter may block the email without notifying the either you or the instructor.

Allow at least one week after the assignment due date for the grade to be posted to Moodle. All coding assignments will have the Comment section of Moodle updated to say "assignment received" within a day or two of the instructor receiving the email, even if the assignment has not yet been graded.

It is your responsibility to check Moodle to see if your assignment has been received. If you believe you emailed the assignment on time but the instructor has not received it, contact the instructor.

Midterms
Midterm 1 will be on Tuesday February 4, 2014 during lab time
Midterm 2 will be on Tuesday February 25, 2014 during lab time

If you cannot make the midterm due to class conflicts, you can schedule an alternate time by contacting the instructor at least ONE WEEK in advance.

Makeup midterms will not be given, but the other midterm will be counted proportionally higher if you have a valid reason for missing a midterm. You must notify the instructor of the reason for missing the midterm as soon as possible after missing the midterm.

Final
Wednesday March 19, 2014 Thursday March 20, 2014 from 2:00pm to 4:30pm in Sci III 315
(Note: the campus final exam schedule had both CMPS 350 and CMPS 376 scheduled to give final exams on Wednesday March 19th from 2:00 to 4:30pm in Rm 315. This class has moved its exam to Thursday to avoid the conflict. By campus rules, you may still opt to take the final exam at the original time. Email the instructor if you wish to take the exam at the original time so a room can be reserved.)

If you cannot make the scheduled final time because it conflicts with another final or you have more than two finals scheduled that day, you MUST contact the instructor ONE WEEK in advance of the final to schedule an alternate time.

If sufficient requests are made for an alternate time, the instructor reserves the option to set up a second final session at an alternate time for the students who cannot make the regular final session time. If the instructor opts to schedule a second final session, it will be announced on Moodle and in class.

Prepared By
Melissa Danforth on 31 December 2013
Approval
Approved by CEE/CS Department on [date]
Effective Winter 2014