Learn · NPTEL

Course10610616827 lectures

Distributed Systems

Prof. Rajiv Misra · IIT Patna

Start with lecture 1 At NPTEL

About

A distributed system is a software system in which components located on networked computers communicate and coordinate their actions by passing messages. The components interact with each other in order to achieve a common goal. Distributed applications (distributed apps) are applications or software that runs on multiple computers within a network at the same time and can be stored on servers or with cloud computing. This course provides an in-depth understanding of fundamental principles and models underlying the theory, algorithms, and systems aspects of distributed computing. Few Emerging topics such as Peer-to-Peer computing, Distributed Hash Table, Google File System, HDFS, Spark, Sensor Networks and Security in Distributed Systems will also be covered for significant impact. Upon completing this course, students will have intimate knowledge about how things work in a distributed environment.

Intended audience: Any Interested Learners.

Prerequisites: Minimum: Data Structures and AlgorithmsIdeal: Basic networking concepts, Basic OS concepts (e.g., processes, threads, synchronization, file systems, scheduling etc.), Advanced Programming (Good knowledge in C and C++).

Lectures

Week 1

  1. Introduction to Distributed Systems YouTube
  2. Basic Algorithms in Message Passing System YouTube
  3. Leader Election in Rings YouTube
  4. Distributed Models of Computation, Causality & Logical Time YouTube

Week 2

  1. Size of Vector Clock, Matrix Clocks, Virtual Time and Physical Clock Synchronization YouTube
  2. Global State and Snapshot Recording Algorithms YouTube
  3. Distributed Mutual Exclusion and Non-Token based Approaches YouTube
  4. Quorum Based Distributed Mutual Exclusion Approaches YouTube

Week 3

  1. Token Based Distributed Mutual Exclusion Approaches YouTube
  2. Consensus and Agreement Algorithms YouTube
  3. Checkpointing & Rollback Recovery YouTube

Week 4

  1. Deadlock Detection in Distributed Systems YouTube
  2. Distributed Shared Memory YouTube
  3. Distributed Minimum Spanning Tree YouTube

Week 5

  1. Termination Detection in Distributed System YouTube
  2. Message Ordering and Group Communication YouTube
  3. Self-Stabilization YouTube

Week 6

  1. Case Study 01 - Distributed Randomized Algorithms YouTube
  2. Case Study 02 - Peer-to-Peer Computing and Structured Overlay Network YouTube
  3. Case Study 03 - The Google File System (GFS) YouTube

Week 7

  1. Case Study 04 - MapReduce YouTube
  2. Case Study 05 - HDFS YouTube
  3. Case Study 06 - Spark YouTube
  4. Case Study 07 - Distributed Algorithms for Sensor Networks YouTube

Week 8

  1. Case Study 08 - Authentication in Distributed Systems YouTube
  2. Case Study 09 - Bitcoin: A Peer-to-Peer Electronic Cash System YouTube
  3. Case Study 10 - BlockChain Technology YouTube

Syllabus and materials

At NPTEL, as the course publishes them.

Credits and licence

Institution
IIT Patna
Department
Computer Science and Engineering
Teacher
Prof. Rajiv Misra
Level
Undergraduate
Language
English
Subjects
Computer science, Engineering
Source
NPTEL
Licence
CC BY-NC-SA, as NPTEL states it. Non-commercial use only. NPTEL's terms
Attribution
NPTEL states: "Distributed under Creative Commons Attribution-ShareAlike / CC BY - NC - SA", beside a BY-NC-SA badge. Coordinated by IIT Kanpur.
Who can watch
NPTEL gives no rating. Invisible Network shows it to Tweens profiles and older, judged from what the source says about it. How courses are placed