Syllabus

CS6601       DISTRIBUTED SYSTEMS

OBJECTIVES:

The student should be made to:

·        Understand foundations of Distributed Systems.

·        Introduce the idea of peer to peer services and file system.

·        Understand in detail the system level and support required for distributed system.

·        Understand the issues involved in studying process and resource management.

 

UNIT I         INTRODUCTION

Examples of Distributed Systems–Trends in Distributed Systems – Focus on resource sharing – Challenges. Case study: World Wide Web.

 

UNIT II        COMMUNICATION IN DISTRIBUTED SYSTEM

System Model – Inter process Communication - the API for internet protocols – External data representation and Multicast communication. Network virtualization: Overlay networks. Case study: MPI Remote Method Invocation And Objects: Remote Invocation – Introduction - Request-reply protocols - Remote procedure call - Remote method invocation. Case study: Java RMI - Group communication - Publish-subscribe systems - Message queues - Shared memory approaches -Distributed objects - Case study: Enterprise Java Beans -from objects to components.

 

UNIT III       PEER TO PEER SERVICES AND FILE SYSTEM

Peer-to-peer Systems – Introduction - Napster and its legacy - Peer-to-peer – Middleware - Routing overlays. Overlay case studies: Pastry, Tapestry- Distributed File Systems –Introduction - File service architecture – Andrew File system. File System: Features-File model -File accessing models - File sharing semantics Naming: Identifiers, Addresses, Name Resolution – Name Space Implementation – Name Caches – LDAP.

 

UNIT IV       SYNCHRONIZATION AND REPLICATION

Introduction - Clocks, events and process states - Synchronizing physical clocks- Logical time and logical clocks - Global states – Coordination and Agreement – Introduction - Distributed mutual exclusion – Elections – Transactions and Concurrency Control– Transactions -Nested transactions – Locks – Optimistic concurrency control - Timestamp ordering – Atomic Commit protocols -Distributed deadlocks – Replication – Case study – Coda.

 

UNIT V        PROCESS & RESOURCE MANAGEMENT

Process Management: Process Migration: Features, Mechanism - Threads: Models, Issues, Implementation. Resource Management: Introduction- Features of Scheduling Algorithms –Task Assignment Approach – Load Balancing Approach – Load Sharing Approach.

TOTAL: 45 PERIODS

OUTCOMES:

At the end of the course, the student should be able to:

·        Discuss trends in Distributed Systems.

·        Apply network virtualization.

·        Apply remote method invocation and objects.

·        Design process and resource management systems.

 

TEXT BOOK:

1. George Coulouris, Jean Dollimore and Tim Kindberg, “Distributed Systems Concepts and Design”, Fifth Edition, Pearson Education, 2012.

 

REFERENCES:

1. Pradeep K Sinha, "Distributed Operating Systems: Concepts and Design", Prentice Hall of India, 2007.

2. Tanenbaum A.S., Van Steen M., “Distributed Systems: Principles and Paradigms”, Pearson Education, 2007.

3. Liu M.L., “Distributed Computing, Principles and Applications”, Pearson Education, 2004.

4. Nancy A Lynch, “Distributed Algorithms”, Morgan Kaufman Publishers, USA, 2003.