|
|
|
Focus
|
The main focus of this course is on networking (mainly the Internet) protocols.
There is no required textbooks (but there are recommanded ones).
The required reading materials mainly come from a list of
technical papers.
|
|
Academic Integrity Policy
|
Please make sure you read the Academic
Integrity Policy of this course.
|
|
Recommanded
Textbooks
|
- L. L. Peterson and B. Davie, Computer Networks: A Systems Approach,
2nd Edition, Morgan Kaufman, 1999.
- John W. Stewart III, BGP4, Inter-domain Routing in the Internet,
Addison-Wesley, 1999.
- W. R. Stevens, Unix Network Programming: Volume 1: Networking APIs:
Sockets and XTI, 2nd Edition, Prentice Hall, 1998.
- B. Nichols, D. Buttlar, and J. P. Farrell, Pthreads Programming,
O'Rielly & Associates, 1996.
|
|
Syllabus / Topics Covered
|
Please see the list of technical papers
covered in this course.
|
|
Lecture Slides from
Fall 2002
|
The PowerPoint files below were used by Prof. Christos Papadopoulos in
his CSCI551 class in Fall of 2002.
They are copyrighted and may not be redistributed. They are
provided here for your information.
Our class may not follow these slides exactly. They are provided here
for your information.
(Please note that this list may be incomplete.)
|
|
Homework
|
There will be 2 to 3 homework assignments consisting of problems.
Assignments will be based on readings and class discussions.
Written assignments should be in typed or computer-generated
output, with the exception of formulas, drawings, tables etc.,
which you are free to do by hand so long as they are neat and legible.
|
|
Projects
|
A major programming project to be writeen in C or C++. Please see
the projects specifications for details.
|
|
Exams
|
A midterm and a final examination will be given.
The date of the midterm examination will be posted in the
News section of the class page.
The date of the final examination is listed in the
class home page.
Any schedule conflicts regarding the midterm exam date must
be resolved with the instructor at least one week
before the exam date.
|
|
Grading
|
-
Homeworks:
|
| 5%
|
Projects:
|
| 35%
|
Midterm Exam:
|
| 25%
|
Final Exam:
|
| 35%
|
Pleaes also note the following:
- Final grades (A,B,C,D,or F) will be determined using a modified
curve (i.e., we won't necessarily assign an equal number of failing
grades as passing grades!)
- We will assign grades of C and below to individuals who do not
perform satisfactorily in the above areas. (i.e., you should not
assume a B- or even C if you perform unsatisfactorily.)
However, we hope that everyone will perform well.
- Your assignments are your own work! No group assignments are allowed
or will be tolerated. You are free to talk to other students about
assignments but no actual material (files, photocopies etc.) should
be shared. We will act harshly at any sign of copying.
- We will not assign incompletes unless it is
for a documented medical reason (in accordance with USC policy).
|
|
Late Policy
|
All homeworks and project assignments must be turned in on time.
Late submissions will receive severe penalties. Due to clock skews,
electronic submissions of projects and homeworks assignments will
be accepted within 15 minutes after the specified deadlines without
penalties. If your submission is beyond the 15 minutes grace period,
you will receive 75% of your grade if your submission
is 15 minutes late beyond the grace period;
you will receive 50% of your grade if your submission
is 30 minutes late beyond the grace period;
you will receive 25% of your grade if your submission
is 45 minutes late beyond the grace period;
and you will receive a score of zero otherwise.
Written homeworks are to be turned in at the end (when the
instructor leaves) of specified classes.
Written homeworks are to be turned in at the beginning of specified classes.
You may also leave written homeworks in the instructor's mailbox
by the end of specified classes at your own risk.
If you are unable to complete a homework or a programming assignment due
to illness or family emergency, please see the instructor as soon as
possible to get an extension. A doctor's note is required
as proof of illness or emergency.
|
|
Regrading Policy
|
All requests to change grading of homework, programming projects, or
exams must be submitted in writing within one week
of the time the initial grade was given. Requests must be specific
and explain why you feel your answer deserves additional credit.
A request to re-grade an assignment can result in the entire assignment
being re-evaluated and as a result the score of any part of
the assignment be increased or lowered as appropriate.
|
|
Office Hours
|
Office hours are held twice a week for one hour each. The instructor
will be at the designated office for the first 15 minutes. If no
students is waiting to see the instructor 15 minutes into the office
hour, the instructor may cut the office hour short. You are
always welcome to make an appointment to see the instructor.
So, if you plan to show up after 15 minutes into the office, you are
better off making an appointment.
|
|
Extra Credits
|
No extra credit assignments will be given for this class. So, there
is not need to ask. Try your best from the beginning and don't slack off!
|
|
Class Newsgroup
|
The class newsgroup is
usc.class.csci551b.
The main purpose of the class newsgroup is for the students to
discuss about homeworks and projects. Students may
not exchange answers here because it would violate academic
integrity. Posting of small code segments is allowed
as long as it is meant to clarify discussions.
The instructor and the TA do not normally read the class
newsgroup. Please do not post questions for them here.
Please note that you may not be able to access the class news
server if you are not on campus.
|
|
Implicit Student Agreement
|
All work including homeworks, programming
assignments and exams must be that of the individual student. It is often
productive to study with other students. However, if any portions of homeworks
or programming assignments are found to be shared between two (or more)
students, zero credit will be given to all students concerned and all students
will be disciplined. This policy is in the interest of those students who
do their own work, which hopefully applies to all of you in this class.
This policy also holds for programming assignments. In
this class, we will use sophisticated automated program checkers to detect
cheating. Be aware that the program checkers have demonstrated very good
results and are widely used within the academic community. Any student
caught cheating will be given zero credit and will be disciplined.
It is the students responsibility to submit their assignments
to the TA in time.
For students who satisfied the CS402 prerequisite at other universities
or through work experience, this course assumes that you understand concurrency,
synchronization, and UNIX programming. You should be able to write large
programs in C/C++. No special assistance or consideration will be offered
if your background is inadequate.
|
|
Student Responsibilities
|
During the semester you are responsible for completing the assigned
readings, homeworks, programs, and exams.
You are expected to read all the papers in detail.
Not all details will be covered in class. We will assume knowledge
of material covered in EE450 and a C language programming proficiency from
CS402 or its equivalent. If you covered the introductory material at some
other school it is YOUR responsibility to fill in any missing background.
Feel free to ask me for advice on appropriate introductory readings if
you feel your background is insufficient.
We expect you to attend every class meeting.
If you do happen to miss a session, you are responsible for finding out
what material was covered and if any administrative announcements were
made. You must do so BEFORE the next session (e.g., if there is an assignment
given during the missed session, you are still responsible for completing
it by the next week along with the other students). You are advised
to read the papers for a particular lecture before attending the lecture.
This will greatly enhance your understanding of the subject matter.
|
|
E-mail
|
Most class related announcements will be done through e-mail via
an e-mail reflector setup by the instructor. Please see
instructions on how to get
on this list.
|
|
Additional
Resources
|
|
|