Logistics
  Grading Policy
  Syllabus
  Lecture Notes
  Forum
  
  PAs:
 
   
  PA1 Virtual Network
  PA2 Virtual Routing
  PA3 P2P Multiplayer Gaming
  PA4 Reliable File Transfer over UDP
  
  HWs:
 
   
  HW1
  HW2
 

Don't see the menu?

Welcome to Winter 2009 EECS 489!

Lecture:
Time: MW 12:00 - 1:30
Place: 1690 CSE
Prerequisite: EECS 482

Course page: http://www.eecs.umich.edu/~sugih/courses/eecs489/
 
Faculty: Sugih Jamin
Office: 4737 CSE
Office Hours: Mon: 1:30-2:30, Tue 2:30-3:30
and by appt. (but never right before lecture)
email:
Tel: +1 734 763 1583


Discussion Session:
Time: Wed 1:30-2:30
Place: 1690 CSE
 
GSI: Ajay Gopalakrishnan
uniqname: ajgopala
Office: 4817 CSE
Office Hours: Thu 4-5 pm, Fri 10-11 am, and by appt.

Textbooks:
  • Kurose and Ross, Computer Networking: A Top-Down Approach, 4th. ed, Addison-Wesley, 2008. ISBN 978-0-321-49770-3.
  • W.R. Stevens, et al., UNIX Network Programming, vol. 1: Networking APIs: The Sockets Networking API, 3rd. ed., Addison-Wesley, 2004. ISBN 0-13-141155-1. Check the Errata page.

If you want to learn how to design way-cool Web pages, how to build and maintain a killer Web site, or how to setup, administer, and engineer a LAN, this course is not for you. In this course we do not study how modem works, nor do we study how to set up and manage a data center.

We do try to understand how networks operate and how network applications are written. We study the workings of the Ethernet and the Internet: how packets are routed, how packets are transmitted, and what to do when there is network congestion. We look at packet headers and routing and transmission protocols. We learn what sockets are and how to use them. And we write code. We write code to implement various routing and transmission protocols. We write code to build client-server applications. There will be a lot of programming.

You should know what processes and threads are and be familiar with concurrency and interprocess communication. EECS 482 (Introduction to Operating Systems) is a strict pre-requisite. You must also have good working knowledge of C and UNIX. An introduction to probability course is highly recommended as a co-requisite.