CMSC 417 - Computer Networks
General Course Information
This course will cover the basic principles of networking with a focus
on protocols, implementations, and issues specific to the Internet. We
will study how routing, transport, and internetworking protocols work using
the Internet family of protocols as examples. A significant part of the
course will focus on higher layer protocols and the application layer.
We will selectively implement new protocols and network services; as such,
this course will have rather a substantial programming component.
For further information, please read the course syllabus
Prerequisite: Minimum grade of C- in CMSC351 and CMSC330
Experience with some flavor of Unix and programming in C or C++.
The textbook for the course is:
Computer Networks: A Systems Approach
by Larry Peterson and Bruce Davie
Morgan Kaufmann, 5th Edition, 2011. ISBN 978-0123850591
TCP/IP Sockets in C: A Practical Guide for Programmers
by Michael J. Donahoo, Kenneth L. Calvert
Morgan Kaufmann, 2nd edition, 2009. ISBN 978-0123745408
Recommended books for reference:
Computer Networking: A Top-Down Approach Featuring the Internet.
by Jim Kurose and Keith Ross.
Addison-Wesley, 5th edition, 2009. ISBN: 978-0136079675
TCP/IP Illustrated volume 1
by W. Richard Stevens.
Addison-Wesley. ISBN: 0-201-63346-9.
The grading criteria is subject to change during the semester.
Handouts and Assignments
Assignment 0 (files)
Assignment 1 (files)
Assignment 2 (files)
Assignment 3 (files)
Please keep up with and participate in the
I will use the forum for broadcast announcements and to answer questions
that may be interesting to more than one of you. Further, the forum
is the best medium for asking questions about homework, for debugging
your programming environment, and for posting the latest Internet rumor.
Thus, unless it is private, post to the forum before writing e-mail.
Attendance, Group Interactions, and Class Participation
This is a
senior-level course; I will not mandate you to come to class (you are
still responsible for all the material covered in class). The
class project is a major part of this course, and please be aware that
you will be working in groups of four. Lastly, note that 5% of your
grade is based upon class participation. This is to
encourage you to voice your ideas in class and to post them to the
forum. Minimally, I must know your name by the end of the
term in order for you to get any points for class participation.