Spring 2015 CSCI 373 Computer Networking Syllabus


The course instructor for CSCI 373.002 is J Dean Brock.

Lectures in CSCI 373.002 are from 3:10 PM to 4:25 PM on Tuesday and Thursday. The CSCI 373.002 lab will meet in RRO 217 on Tuesday afternoon from 4:35 PM to 5:50 PM.

When UNC Asheville is following the Late Start Schedule, the class will meet from 3:40 PM to 4:40 PM and the lab will meet from 4:50 PM to 5:50 PM.

Because class enrollment far exceeds the room capacity of RRO 217, the class will be divided into two separate lab “sections” which will attend the lab on alternate weeks.

Class home page

All class handouts, including homework assignments, can be found through the following URL:

Course topics

Fairly specific, though sometimes tentative, information about the topics covered in the course can be found on the class’ topics and schedule pages.

Course Description

Networking design and architecture: data communication, medium access, routing, session management. Programming of distributed applications using the Python programming language. Prerequisite: CSCI 181 or 182.

Learning objectives

  1. Seven layer ISO network architecture model
  2. Four-layer Internet architecture
    • Common applications for web browsing, email, and name management
    • Connections, stream communication with TCP, message exchange with UDP
    • Internetwork routing with IP
    • Intranetwork routing with bridges
    • Ethernet and WiFi
  3. Programming network applications with Python

Textbook and readings

The textbook for the course will be Computer Networks: A Systems Approach by Larry L. Peterson and Bruce S. Davie (ISBN-13: 978-0123850591). The UNC Asheville has an on-line copy of this book that you can read. We will go through this book in the “top-down pathway” described in the book’s preface: Chapters 1, 9, 7, 5, 3, 2 and 8. We will often use the textbook’s “Top-down Lecture Slides” in class discussions.

Additional readings of the course will be from on-line sources that will be referenced from the lecture schedule.


We will use network monitoring applications built into Linux and Mac OS to “see” significant operating system structures.

We will also write networking applications using Python. Although you are not expected to have previous knowledge of Python, your previous programming experience should enable you to quickly learn a new programming language.

Python references

There are many free on-line resources for learning Python. Google for Education has a Python course that provides a good introduction. The Python Software Foundation also offers its own Python tutorials for both Python 2 and Python 3.

There are a large number of Python references that you can access on-line though the UNC Asheville library. Here are a few I that I have examined.

Python IDE’s

Many Python programmers use the IDLE IDE. (Ask a Monty Python fan to explain the name.) However, you may find it a bit primitive when compared to the NetBeans (or even the processing) IDE. We have the free versions of both PyCharm and Wingware installed in the lab. You may wish to install them on you personal systems.


The following weights are used in computing the course grade.

Grade component Weight
Two in-class ordinary exams
Two in-class practical exams
Final exam


This course will have ordinary and practical exams. The distinction between the two is explained on the Exams and Practicals page.

All ordinary exams will be closed book and closed notes. No electronic devices, including calculators, may be used during the exam. If appropriate, reference sheets will be provided for details which

The practical exams will be completed using computers and will be scheduled during the course’s lab period.

Exam attendance

UNC Asheville’s Academic Policies and Procedures do provide excused absences for “travel on university-sanctioned business” and “up to two excused absences per semester for religious observances” when seven days notice is given. The instructor will announce exam times with at least ten days notice. This will allow the instructor to reschedule exams to avoid excused absences.


Students will complete near-weekly assignments to be turned in at class or submitted via the UNC Asheville moodle system.

Some homework assignments will require classroom presentations.

Students are required to cite any sources, including the work or advice of other students, used in completing their assignments. This rule implies that students must submit the names of any students with whom they have discussed a homework assignment. If this is not done, no credit will be given for the homework. Intensive use of other sources can result in adjustments to the homework grade.

Late homework

All homeworks have a specific due time. Late assignments will be accepted for up to four days with a penalty of 10% for each 24-hour period.


In general, the lab grade is passed on participation and graded on a 10-point scale.


The following numerical scale will be used in assigning grades based on Score, the score computed using the weights described above.

Score ≥ 93A
Score ≥ 90 & Score < 93A-
Score ≥ 87 & Score < 90B+
Score ≥ 83 & Score < 87B
Score ≥ 80 & Score < 83B-
Score ≥ 77 & Score < 80C+
Score ≥ 73 & Score < 77C
Score ≥ 70 & Score < 73C-
Score ≥ 67 & Score < 70D+
Score ≥ 60 & Score < 67D
Score < 60F

Classroom expectations

The classroom is a place where students and faculty behave professionally. We are polite and attentive. We avoid talk of politics and religion. We do not use offensive language.

We all try to come to class on time. If students are late, they sit near the door. (A late instructor still must come to the front of the room.)

Electronics in the classroom

You are welcome to use your electronic devices to take notes. However, you should read the article Why students using laptops learn less in class even when they really are taking notes from the Washington Post before you give up on handwritten notes.

Electronic devices should not be used for gaming and social media during class. This distracts others in the class.

Sometimes you may need to discretely respond to a TXT message received during class. In these cases, it usually is best to leave the room. Do not use TXT messages to communicate to others in class. That is very impolite.

Required attendance

Some class activities, such as exams and labs, generate grades. You will receive a grade of 0 for the activities you miss. If you have an authorized excuse, you will be given an opportunity for a make-up.

Some class periods will be dedicated to student presentations. You are expected to attend all presentations by your fellow students. If you do not, your grade for own presentation will be adjusted.

Academic misconduct

It is never proper to claim another’s work as your own in graded work.

Impermissible actions

There are several impermissible actions that will result in the imposition of course or university sanctions. Impermissible actions in homework assignments include the following:

Impermissible actions on exams include the following:

Sometimes these rules may be modified or clarified for specific assignments and exams. For example, ”pair“ programming may be allowed for an assignment, or simple scientific calculators may be allowed during an exam.

Course sanctions for impermissible actions

The first offense will result in a grade of 0 for the related assignment or exam. The second offense will result in a grade of F for the course.

University policy on academic misconduct

The UNC Asheville Student Handbook has a section devoted to Academic Misconduct. It states the following:

A student accused of academic dishonesty should talk with his or her instructor. In all situations where a student has been disciplined for plagiarism or cheating, the instructor is to submit to the VCAA a brief statement of the case; the student is to receive a copy of this document. Depending upon the severity and/or repetition of the offense, the VCAA may choose to impose a penalty of cancellation of graduation with honors; cancellation of scholarships; dismissal from the university; or any other penalty which he or she deems logical and deserved. A student has 10 class days to respond to this document, in writing; this response is to be sent to the VCAA for attachment to the document submitted by the instructor.

In practice, students who have been involved in academic misconduct in three courses will be suspended for a semester. However a single significant offense, such as the submission of a plagiarized paper, can result in immediate dismissal.

Accommodations for Students with Disabilities

Statement from the Office of Academic Accessibility

University of North Carolina at Asheville is committed to making courses, programs and activities accessible to persons with documented disabilities. Students requiring reasonable accommodations must register with the Office of Academic Accessibility by providing supporting documentation. All information provided will remain confidential. For more information please contact the Office of Academic Accessibility at (828)232-5050 or academicaccess@unca.edu or visit them in the OneStop Student Services Center.

Specific clarifications for CSCI 373.002

Students who have been approved for extended time for exams by the Office of Academic Accessibility must have their exams administered by the Office of Academic Accessibility and must take their exams at a time overlapping the scheduled in-class exam.

For more information

The best way to get in touch with me is to send email to brock@unca.edu. If you need to see me, send email to arrange an appointment.

I get lots of email, so please include CSCI 373 in the subject line.

Email and FERPA

Academic administrators at UNC Asheville have told instructors that information protected by the Family Educational Rights and Privacy Act should only be sent to official university email addresses. Information related to recorded grades is clearly protected, as is any discussion that would allow a reader to draw conclusions about your performance or attendance in class.