Overview
Description
This is an undergraduate level course on computer networking. The goal
of the course is to teach the fundamental concepts and principles in
today's networks and how to apply those concepts. The course will
present various aspects of computer networking, with an emphasis on (1)
flow and congestion control, (2) routing, (3) quality of service, and
(4) application level protocols such as peer-to-peer networks and
overlay networks.
Prerequisites
Math 53 or 54 is required. CS 61A, 61B, and 61C are highly
recommended. You should know C, data structures, series and
products, logarithms, advanced algebra, some calculus, and basic
probability (means, standard deviations, etc.). The TAs will spend very
little time reviewing material that is not specific to networking.
We assume that you either know the material that is supposed to
be covered in those courses, or that you are willing to learn the
material as necessary. We will not cover any of this material in
lecture.
Textbooks
Required textbook:
Optional textbooks:
Computing Facilities
All students enrolled in the class will be given an instructional
account, ee122-??@cory. Account forms will be handed out at the end of
the first lecture (if you did not receive an account form, see your
TA). Most of
the Unix systems should have cross-mounted file systems, so you should
actually be able to work on most of the EECS Unix systems. Your final
run
for each assignment must be done under that account, and must run on
x86
Solaris machines.