EE 7700-2: Distributed Computing
(Spring 2017)


Broadly speaking, a distributed computing system is a set of computers that collectively solve a problem. This encompasses environments ranging from a tightly coupled multiprocessor and wide area networks connecting computers over large distances, to even a system on a multicore chip. Such systems are finding increasing use in todays applications including cloud computing, distributed databases, the smart grid, sensor networks, autonomous robot swarms and elements of the Internet. However, factors like asynchrony that come with a system consisting of many independent computers make distributed computing quite challenging. The possibility of failure or malicious behavior of some computers in the system further complicates the task. This course will study some these issues in distributed computing through models, algorithms and bounds, with an emphasis on fundamental problems.

Text: Distributed Algorithms: An Intuitive Approach, by Wan Fokkink, MIT Press, 2013.
           Distributed Computing, by H. Attiya and J. Welch, 2nd edition, Wiley Interscience, 2004.
           Papers from current literature

Prerequisites: Basic ideas in algorithm design and analysis

Tentative Topics: basic models and complexity measures, leader election, mutual exclusion, consensus, fault-tolerance, broadcast and multicast, causality, synchonization, simulations among models, applications.


R. Vaidyanathan

Elaine T. and Donald C. Delaune Distinguished Professor
School of Electrical Engineering and Computer Science
Louisiana State University
Baton Rouge, LA 70803-5901

Phone: (225) 578-5238
Fax: (225) 578-5200
E-mail:
 


Provide website feedback
Accessibility Statement