Date: Tue, 26 Nov 1996 19:08:49 GMT Server: Apache/1.1-dev Content-type: text/html Set-Cookie: Apache=gs35934784903532925; path=/
Dept. of EECS
University of Michigan
1301 Beal Ave.
Ann Arbor, MI 48109-2122
E-mail: farnam@eecs.umich.edu
Phone: (313) 936-2974
Fax: (313) 763-1503
Office: 3219 EECS
This course presents the dominant paradigms for building distributed systems/ applications including the traditional model of client-server computing, distributed objects, group communication, remote-procedure calls, distributed shared memory, and the evolving model of distributed computing on Web. The topics explored in this course include kernel support for distributed systems, failure models and programming paradigms, group multicast protocols, multicast over the Internet, replicated data management based on the state-machine and the primary-backup schemes, group membership protocols, clock synchronization and logical timestamps, the design of fault-tolerant real-time systems, and the Web client/sever model from the hypertext era to Java on CORBA. Concepts are illustrated using several case studies of experimental and commercial systems, and discussions on emerging standards.
The course also requires active student participation in a group project. Groups of no more than three students will be responsible for the design and development of a collection of distributed services such as data replication, caching, naming, group membership, object support and multicast communication. The group project is intended to complement the reading material by allowing the students develop experimental skills in building distributed protocols. Each group will have an opportunity to present its work to the class.