Distributed Systems

Credit: 3

Objective

  • To have a broad and up-to-date coverage of the principles and practice in the area of Distributed Systems.

  • To understand the heterogeneous systems such as computers, mobile phones, other devices and Internet) and their functionalities.

 

UNIT I Basic Concepts

Definition of a distributed systems, Examples, Resource sharing and the Web, Challenges, System models, Architectural and fundamental models, Networking Interprocess communication, External data representation and marshalling, Client-server and Group communication.

 

UNIT II Distributed Objects and Process

Distributed objects and remote invocation, Communication between distributed objects, Remote procedure call, Events and notifications - The operating system layer, Protection, Processes and

Threads, Communication and invocation, OS Architecture. Security techniques, Cryptographic algorithms, Access control, Digital signatures, Cryptography pragmatics, Needham-Schroeder, Kerberos, Securing electronics transaction, IEEE 802.11 WiFi.

 

UNIT III Operating System Issues

Distributed file systems - Name services, Domain name system, Directory and discovery services, Peer to peer systems, Napster file sharing system, Peer to peer middleware routing overlays – Clocks, Events and process states Clock Synchronization - Logical clocks Global states - Distributed debugging - Distributed mutual exclusion - Elections - Multicast communication.

 

UNIT IV Distributed Transaction Processing

Transactions - Nested transactions - Locks - Optimistic concurrency control - Timestamp ordering - Flat and nested distributed transactions - Atomic commit protocols - Concurrency control in distributed transactions - Distributed deadlocks - Transaction recovery - Overview of replication, Distributed shared memory and Web services.

 

UNIT V Distributed Algorithms

Synchronous network model - Algorithms: leader election, maximal independent set -

Asynchronous system model: I/O automata, operations on automata, fairness - Asynchronous shared memory model - Mutual exclusion: model, the problem, stronger conditions, lockout-free mutual exclusion algorithms, lower bound on the number of registers - Asynchronous network model - Asynchronous network algorithms: leader election in a ring and an arbitrary network.

 

 

 

Outcome

  • Developing skill set in developing a distributed system.

  • Designing and evaluation of algorithms and protocols for various distributed systems.

 

Textbook

  1. George Coulouris, Jean Dollimore, and Tim Kindberg, “ Distributed Systems Concepts and Design”, 5th ed., Pearson Education, 2011.

  2. Andrew S. Tanenbaum, Maartenvan Steen, “Distributed Systems Principles and Paradigms”, 2nd ed., Pearson Education, 2006.

  3. Nancy A. Lynch, “Distributed Algorithms”, Hardcourt Asia Pvt. Ltd., Morgan Kaufmann, 2000.