|
|
|
|
Location: This class meets Tuesday evenings, 6:30-9:20pm in
EE1
105. (status)
Instructors: David Wetherall (djw at cs.washington.edu) and
Radia Perlman (radia.perlman at sun.com). Please include 561 in the subject
line.
Office Hours: By appointment.
TA: Harsha Madhyastha (harsha at cs.washington.edu)
Office Hours: By appointment. Required Textbook:
- Peterson and Davie, Computer Networks: A Systems Approach,
3rd Ed., Morgan Kaufmann Publishers (now Elsevier).
Don't buy the second edition by
mistake.
Recommended Textbooks:
- R. Perlman, Interconnections, 2nd Ed., Addison-Wesley
- Kaufman, Perlman and Speciner, Network Security, 2nd Ed., Prentice-Hall
Pre-Requisites: No formal pre-reqs will be enforced. The
course does not assume prior knowledge of networking and the Internet, though this
is of course helpful. The course includes programming assignments. There is
little in the way of mathematics.
Mailing List: Please subscribe to the class mailing list.
We will use it for updates and clarifications during the quarter.
Overview
The goal of the course is to help you understand the fundamental ideas and design principles that underlie
large-scale, distributed computer networks. To do so, we will study the Internet, a remarkable engineering triumph by any measure that is rich in
experience and lessons. It is one of the few systems of any kind to have successfully scaled in numbers of users by six
orders of magnitude while providing continuous service over the past three decades. Yet, surprisingly, the design of
the Internet is far from complete. Its everyday operation is poorly understood, it provides a playing ground that is
not well-suited for competitive interests, and it is fragile and insecure against frequent disruptions by worms,
viruses and denial-of-service attacks. The only certainty is that the Internet will continue to change, and this class
is intended to help you understand how and why. The content of the class is relatively broad. We will cover topics
including reliability, addressing, routing, naming, congestion and quality of service, evolution, and
security. We will learn about some of the Internet protocols along the
way, but the goal of the course is not to teach you how today's Internet works.
The course will be comprised of lectures, with textbook and a small amount of
paper reading as preparation, as well as programming and homework assignments.
The programming assignments provide the quintessential experience of developing
the components of a network. There will also be a take-home final exam.
Homeworks (tentative)
There will be three written homeworks, due in weeks 4, 8, and
10.
Programming Assignments
We will use the Fishnet projects from CSE461. There are four
assignments, due in weeks 3, 5, 7 and 9. Coding is done in Java. Everyone codes
their own solution.
Take-home Final
There will be a take-home final to be done in a two day period during
the final exam week. The final will be available in the last week of classes.
Grading
Class participation | 10% |
Programming Assignments | 30% |
Homeworks | 30% |
Final (take home) | 30% |
|