Z. Morley Mao 4629 CSE zmao AT umich.edu
Office hours: Mon,Wed 1:30-2:30PM (tentative), 4629 CSE (or by
appointment) , Email is
the best way to get hold of me.
Time: Wed 4:30-5:30PM, Location: 1690CSE
Ying Zhang (wingying AT umich.edu) is the GSI.
Her office hours are Tues 10-11AM and Fri 4-5PM.
Location: 1637 CSE.
(Required) Kurose and Ross, Computer Networking: A Top-Down Approach Featuring
the Internet, 3rd. Edition, Addison Wesley, 2004. ISBN:0321227352
(Optional) W.R. Stevens, UNIX Network Programming, vol. 1:
Networking APIs: Sockets and XTI, 2nd. ed., Prentice-Hall, 1997. Or
the latest 3rd. edition. (book info and src code)
(Optional) W. R. Stevens, TCP/IP ILLUSTRATED, VOLUME 1: THE PROTOCOLS, 1st
Edition, 1994. (book info and src code)
CS482 or undergraduate introductory class to
operating system required. Background in system programming,
network socket programming are helpful.
This is an undergraduate level introductory course on computer
networking. Both undergraduates and graduate students are encouraged
to take the class.
In this course, We attempt 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 significant amount of
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
such as EECS 401, EECS 501, Math 425, Math 525, or Stat 412 is highly
recommended as a co-requisite.