UNIT-I
Introduction: Goals and Types of Distributed Systems
Architectures: Architectural Styles, System Architectures, Architectures versus Middleware, and Self-
Management in Distributed Systems.
Processes: Threads, Virtualization, Clients, Servers, and Code Migration.
Communication: Fundamentals, Remote Procedure Call, Message-Oriented Communication, Stream-
Oriented Communication, and Multicast Communication.
UNIT-II
Naming: Names, Identifiers and Addresses, Flat Naming, Structured Naming, and Attribute-Based Naming.
Synchronization: Clock Synchronization, Logical Clocks, Mutual Exclusion, Global Positioning of Nodes,
and Election Algorithms.
Consistency and Replication: Introduction, Data-Centric Consistency Models, Client-Centric Consistency
Models, Replica Management, and Consistency Protocols.
UNIT-III
Fault Tolerance: Introduction to Fault Tolerance, Process Resilience, Reliable Client-Server
Communication, Reliable Group Communication, Distributed Commit, and Recovery.
Distributed Object-Based Systems: Architecture, Processes, Communication, Naming, Synchronization,
Consistency and Replication, Fault Tolerance, and Security.
UNIT-IV
Distributed File Systems: Architecture, Processes, Communication, Naming, Synchronization, Consistency
and Replication, Fault Tolerance, and Security.
Distributed Web-Based Systems: Architecture, Processes, Communication, Naming, Synchronization,
Consistency and Replication, Fault Tolerance, and Security.
UNIT-V
Distributed Coordination-Based Systems: Introduction to Coordination Models, Architecture, Processes,
Communication, Naming, Synchronization, Consistency and Replication, Fault Tolerance, and Security.
Map-Reduce: Example, Scaling, programming model, Apache Hadoop, Amazon Elastic Map
Reduce,Mapreduce.net, Pig and Hive.
Suggested Readings:
1. Andrew S. Tanenbaum and Maarten Van Steen, Distributed Systems, PHI 2nd Edition, 2009.
2. R. Hill, L. Hirsch, P. Lake, S. Moshiri, Guide to Cloud Computing, Principles and Practice‖,
Springer, 2013.
3. R. Buyya, J. Borberg, A. Goscinski, Cloud Computing-Principles and Paradigms, Wiley, 2013.