Home/Degree/CS3551
Back to Degree
CS3551Actively Used

Distributed Computing

This course is part of the B.E. Computer Science Engineering curriculum under Anna University Regulation 2021. The knowledge from this course continues to be actively applied in professional software development.

Semester 5 (Third Year)
3 Credits
45 Lecture Hours

Course Overview

  • UniversityAnna University
  • Regulation2021
  • Semester5
  • Credits3
  • TypeCore
  • Units5

Course Objectives

1

To understand distributed system concepts

2

To learn logical time and global state algorithms

3

To understand distributed mutex and deadlock detection

4

To learn consensus and recovery mechanisms

5

To understand cloud computing concepts

Syllabus

Detailed unit-wise breakdown of the course curriculum as per Anna University Regulation 2021.

1

INTRODUCTION

9 Hours
Definition of Distributed ComputingRelation to Computer System ComponentsMotivationMessage-Passing vs Shared Memory SystemsPrimitives for Distributed CommunicationSynchronous vs Asynchronous ExecutionsDesign Issues and ChallengesA Model of Distributed ComputationsModels of Communication NetworksGlobal State of Distributed System
2

LOGICAL TIME AND GLOBAL STATE

9 Hours
Physical Clock Synchronization – NTPFramework for Logical ClocksScalar TimeVector TimeMessage Ordering ParadigmsSynchronous vs Asynchronous CommunicationGroup CommunicationCausal Order and Total OrderSnapshot Recording AlgorithmsSnapshot Algorithms for FIFO Channels
3

DISTRIBUTED MUTEX AND DEADLOCK

9 Hours
Distributed Mutual ExclusionLamport's algorithmRicart-Agrawala's AlgorithmToken-Based AlgorithmsSuzuki-Kasami's Broadcast AlgorithmDeadlock Detection in Distributed SystemsSystem Model and PreliminariesModels of DeadlocksChandy-Misra-Haas AlgorithmAND model and OR Model
4

CONSENSUS AND RECOVERY

9 Hours
Consensus and Agreement AlgorithmsProblem DefinitionAgreement in Failure-Free SystemsSynchronous and Asynchronous AgreementAgreement with FailuresCheckpointing and Rollback RecoveryIssues in Failure RecoveryCheckpoint-based RecoveryCoordinated Checkpointing AlgorithmAsynchronous Checkpointing and Recovery
5

CLOUD COMPUTING

9 Hours
Definition of Cloud ComputingCharacteristics of CloudCloud Deployment ModelsCloud Service ModelsDriving Factors and ChallengesVirtualizationLoad BalancingScalability and ElasticityReplication and MonitoringCompute ServicesStorage ServicesApplication Services

Course Outcomes

Upon completion of this course, students will be able to:

CO1

Understand distributed system models

CO2

Implement logical time and snapshot algorithms

CO3

Apply distributed mutex algorithms

CO4

Design consensus and recovery mechanisms

CO5

Deploy applications on cloud platforms

Industry Application & Relevance

How the concepts learned in this course are applied in real-world software development projects across Banking, Healthcare, and Enterprise domains over 20+ years of experience.

Professional Application

Microservices, cloud architecture, scalable systems

Textbooks & References

Textbooks

  • Ajay D. Kshemkalyani, Mukesh Singhal, 'Distributed Computing', Cambridge University Press
  • George Coulouris et al., 'Distributed Systems: Concepts and Design', Pearson

Reference Books

  • Andrew S. Tanenbaum, 'Distributed Systems: Principles and Paradigms', Pearson
  • Rajkumar Buyya et al., 'Cloud Computing: Principles and Paradigms', Wiley