Distributed Systems

Department of Computer Science and Engineering

 

Subject Name: Distributed System                                                          Credits: 3:0:0:3

 

Subject Code: 18CS3040

 

Faculty Name: Dr. A Kathirvel

 

Course Objectives:

 

Enable the student to

 

1.        describe the concepts of resource sharing, system modeling, inter-process communication and file systems in distributed systems.

2.        apply the skill sets in name services and global states, distributed transaction and concurrency control model, distributed shared memory and distributed multimedia system.

3.        compare the replication techniques and shared memory schemes in distributed systems.

 

Course Outcomes:

 

The student will be able to

 

1.        describe the distributed system models.

2.        distinguish between different inter-process communication mechanisms and their application scenarios.

3.        illustrate a transaction and concurrency control scheme for a real time application.

4.        compare the various file system architectures used in distributed systems

5.        construct a real time distributed system with suitable IPC, event coordination, file management, name service, transaction and concurrency control mechanisms.

6.        evaluate an efficient distributed system and its qualities.

 

Module I - Introduction:

 

Introduction to Distributed systems - Examples of distributed systems, resource sharing and the web, challenges - System model - introduction - architectural models - fundamental models - Introduction to inter-process communications - API for Internet protocol - external data.

 

Module II - Distributed objects and file systems:

 

Introduction - Communication between distributed objects - Remote procedure call - Events and notifications - case study - Operating system support - introduction - operating system layer - protection - process and threads - communication and invocation - architecture - Introduction to DFS - File service architecture - Sun network file system - Andrew file system - Enhancements and future developments.

 

Module III - Name services and global states:

 

Introduction to Name Services- Name services and DNS - Directory services - case study - Introduction to peer-to-peer systems - Napster and its legacy - Peer-to-peer middleware - Routing overlays - case study - Introduction to time and global states - Clocks, Events and Process states - Synchronizing physical clocks - Logical time and logical clocks - Global states - Distributed debugging.

 

Module IV - Distributed transaction and concurrency control:

 

Introduction to coordination and agreement - Distributed mutual exclusion - elections - multicast communication - consensus and related problems - Introduction to transaction and concurrency control - Transactions - Nested transaction - Locks - Optimistic concurrency control - Timestamp ordering - Comparison of methods for concurrency control - Introduction to distributed transactions - Flat and nested distributed transactions - Atomic commit protocols - Concurrency control in distributed transactions - Distributed deadlocks - Transaction recovery.

 

Module V - Replication, distributed shared memory:

 

 Introduction to Replication - System model and group communications - Fault tolerant services - Highly available services - Transactions with replicated data - Distributed shared memory - design and implementation issues - sequential consistency and Ivy - release consistency and Munin - other consistency models-

 

Module 6 - distributed multimedia system

 

Distributed multimedia systems - characteristics of multimedia data - quality of service management - resource management - stream adaptation - case study.

 

Reference Books:

 

1.      George Coulouris, Jean Dollimore, and Tim Kindberg, Distributed Systems Concepts and Design, Fifth edition, Addison-Wesley, 2011. ISBN: 0132143011.

 

2.      Andrew S. Tanenbaum and Maartenvan Steen, Distributed Systems: Principles and Paradigms, Second edition, Prentice Hall, 2006. ISBN: 0132392275.

 

3.      William Buchanan, Distributed Systems and Networks, McGraw-Hill, 2001.ISBN: 0077095839.

 

4.      Pradeep K. Sinha, Distributed Operating Systems: Concepts and Design, Wiley- IEEE Press, 1996. ISBN: 0780311191.