MNIT Jaipur Syllabus Information Technology Distributed Systems
Introduction: What is a distributed system? Main characteristics. Advantages/Disadvantages. Design
goals. Main problems. Models of distributed systems.
Communication in Distributed Systems: Message passing and the client/server model. Remote Procedure
Call. Group Communication.
Time and State in Distributed Systems: Time in distributed systems. Logical clocks. Vector clocks.
Causal ordering of messages. Global state and state recording.
Distributed Mutual Exclusion: Mutual exclusion in distributed systems. Non-token based algorithms.
Token based algorithms. Distributed elections.
Transaction and concurrency control: Introduction. Transactions. Nested transactions. Locks. Optimistic
concurrency control. Timestamp ordering. Comparison method of concurrency control
Distributed Transactions: Introduction. Flat and nested distributed transactions. Atomic commit
protocols, Concurrency control in distributed transactions, Distributed deadlocks. Transaction recovery Replication: Motivation for replication. Consistency and ordering. Total and causal ordering. Update
protocols and voting.
Recovery and Fault Tolerance: Transaction recovery. Checkpointing and recovery. Fault tolerance in
distributed systems. Hardware and software redundancy. Byzantine agreement.
File Systems: Introduction, File Service Architecture. Sun network file system. The Andrew File system.
1. Distributed Systems: Concepts and Design, 4rd ed by Coulouris, G, Dollimore, J., and Kindberg,
T., Addison-Wesley, 2006. ISBN: 0321263545
2. Distributed Systems: Principles and Paradigms, 2nd ed by Tanenbaum, A. and van Steen, M.,
Prentice Hall, 2007. ISBN: 0132392275.