Distributed Computing
Welcome! This is a master level course for M.Tech. students at ISI Kolkata. The goal of this course is to provide an introduction to the fundamentals of distributed systems and algorithms.
Course Information
Instructor: Anisur Rahaman Molla Ansuman Banerjee
Office: 403, C D Deshmukh Bhavan Office: 510, 5th Floor, ACMU, PJ Building
Email: "my_lastname" at isical.ac.in Email: "my_firstname" at isical.ac.in
Schedule and Venue: XYZdate (will update soon!)
Course Description:
This course provides an introduction to distributed systems. The course consists of a traditional lecture component supported by programming assignments and term papers. There is one midterm exam and a final exam. In particular the course will cover the following topics:
Introduction (motivation, basics, model, distributed complexity measures)
Broadcast and Tree algorithms (broadcast, convergecast, spanning tree construction)
Minimum spanning tree
Local symmetry breaking (maximal independent set and coloring)
Leader election, agreement
Fault-Tolerant/Byzantine distributed computation
more come soon...!
Prerequisite:
Algorithms, Programming and Data Structures, Some mathematical maturity including probabilistic calculation
Grading Plan:
Project — 30%
Exams — 70% (Mid term 20%, Final 50%)
References:
Text Books
Distributed Computing: A Locality-Sensitive Approach, by David Peleg
Distributed Network Algorithms, by Gopal Pandurangan (monograph is available here)
Distributed Computing: Fundamentals, Simulations and Advanced Topics, by Hagit Attiya and Jennifer Welch
Introduction to Distributed Algorithms, by Gerard Tel, Cambridge University Press,
Advanced Concepts in Operating Systems by Mukesh Singhal and Niranjan G. Shivaratri, Tata McGraw-Hill Publishing Company Limited, New Delhi
Lecture Notes
We will try to prepare lecture slides and/or notes
Assignment: (will upload assignments here)