6.852J / 18.437J Distributed Algorithms

Fall 2005

Image of honeycomb, a common architectural metaphor for distributed algorithms.
The honeycomb shown above is a common architectural metaphor for distributed algorithms. Similar to bees performing different functions to build a honeycomb, multiple computing devices depend on each other to accomplish a task. (Image by MIT OCW.)

Course Highlights

This course features a complete bibliography of readings and, in the assignments section, all problem sets.

Course Description

This course intends to provide a rigorous introduction to the most important research results in the area of distributed algorithms, and prepare interested students to carry out independent research in distributed algorithms. Topics covered include: design and analysis of concurrent algorithms, emphasizing those suitable for use in distributed networks, process synchronization, allocation of computational resources, distributed consensus, distributed graph algorithms, election of a leader in a network, distributed termination, deadlock detection, concurrency control, communication, and clock synchronization. Special consideration is given to issues of efficiency and fault tolerance. Formal models and proof methods for distributed computation are also discussed.

Detailed information on the course textbook can be found here:

Lynch, Nancy A. Distributed Algorithms. San Francisco, CA: Morgan Kaufmann, 1997. ISBN: 1558603484.

Donate Now


Prof. Nancy Lynch

Course Meeting Times

Two sessions / week
1.5 hours / session



Archived Courses

Previous version