Distributed Systems syllabus
2019 PATTERN. This is the 2019 pattern syllabus, the latest SPPU has published on its site for Third Year Computer Engineering. A 2024 pattern syllabus for this year has not been published there yet, so confirm with your college which pattern applies to you.
310245C · Third Year Computer Engineering, SPPU 2019 pattern. Every unit, the marks scheme, course outcomes and books, copied from the official syllabus PDF.
Unit-wise syllabus
Introduction
7 hoursDefining Distributed Systems, Characteristics, Middleware and Distributed Systems. Design goals: Supporting resource sharing, Making distribution transparent, Open, Scalable, Pitfalls. Types of Distributed Systems: High Performance Distributed Computing, Distributed Information Systems, Pervasive Systems. Architectural styles: Layered architectures, Object based architectures, Publish Subscribe architectures. Middleware organization: Wrappers, Interceptors, Modifiable middleware. System architecture: Centralized, Decentralized, Hybrid, Example architectures – Network File System, Web.
Communication
7 hoursIntroduction: Layered Protocols, Types of Communication, Remote Procedural Call- Basic RPC Operation, Parameter Passing, RPC-based application support, Variations on RPC, Example: DCE RPC, Remote Method Invocation. Message Oriented Communication: Simple Transient Messaging with Sockets, Advanced Transient Messaging, Message Oriented Persistent Communication, Examples. Multicast Communication: Application Level Tree-Based Multicasting, Flooding-Based Multicasting, Gossip-Based Data Dissemination.
Synchronization
7 hoursClock Synchronization: Physical Clocks, Clock Synchronization Algorithms. Logical Clocks – Lamport’s Logical clocks, Vector Clocks. Mutual Exclusion: Overview, Centralized Algorithm, Distributed Algorithm, Token-Ring Algorithm, Decentralized Algorithm .Election Algorithms: Bully Algorithm, Ring Algorithm. Location Systems: GPS, Logical Positioning of nodes, Distributed Event Matching. Gossip-Based Contribution: Aggregation, A Peer-Sampling Service, Gossip-Based Overlay Construction.
Naming and Distributed File Systems
7 hoursNames, Identifiers, Addresses, Flat Naming, Structured Naming, Attributed Based Naming, Introduction to Distributed File Systems, File Service Architecture.
Case study: Suns Network file System, Andrew File System.
Consistency and Replication
7 hoursIntroduction: Reasons for Replication, Replication as Scaling Technique. Data-Centric Consistency Models: Continuous Consistency, Consistent Ordering of Operations. Client-Centric Consistency Models: Eventual Consistency, Monotonic Reads, Monotonic Writes, Read Your Writes, Writes Follow Reads. Replica Management: Finding the best server location, Content Replication and Placement, Content Distribution, Managing Replicated Objects. Consistency Protocols: Continuous Consistency, Sequential Consistency, Cache Coherence Protocols, Example: Caching, and Replication in the web.
Fault Tolerance
7 hoursIntroduction to Fault Tolerance: Basic Concepts, Failure Models, Failure Masking by Redundancy. Process Resilience: Resilience by Process Groups, Failure Masking and Replication, Example: Paxos, Consensus in faulty systems with crash failures, some limitations on realizing Fault Tolerant tolerance, Failure Detection. Reliable Client Server Communication: Point to Point Communication, RPC Semantics in the Presence of Failures. Reliable Group Communication: Atomic multicast, Distributed commit. Recovery: Introduction, Check pointing, Message Logging, Recovery Oriented Computing.
Marks and credits
| Head | Marks | Credit |
|---|---|---|
| Mid-Sem (mid-semester exam) | 30 | 3 |
| End-semester exam | 70 |
Prerequisite: Computer Networks and Security(310244).
Course outcomes
- CO1Analyze Distributed Systems types and architectural styles
- CO2Implement communication mechanism in Distributed Systems
- CO3Implement the synchronization algorithms in Distributed System applications
- CO4Develop the components of Distributed File System
- CO5Apply replication techniques and consistency model in Distributed Systems
- CO6Build fault tolerant Distributed Systems
Books
Text books
- Maarten van Steen, Andrew S. Tanenbaum, “Distributed System”, Third edition, version 3
- George Coulouris, Jean Dollimore, Tim Kindberg, “Distributed Systems Concepts and Design”, Fifth edition
Reference books
- Christian Cachin, Rachid Guerraoui, Luís Rodrigues, “Introduction to Reliable and Secure Distributed Programming”, Springer; 2nd ed. 2011 edition
- Vijay K. Garg, “Elements of Distributed Computing”, Wiley
- Maarten Van Steen and Andrew S. Tanenbaum, “Distributed Systems”, Amazon Digital Services; 3rd edition
FAQ
How many units are in Distributed Systems?
Distributed Systems (310245C) has 6 units: Unit I Introduction (7 h); Unit II Communication (7 h); Unit III Synchronization (7 h); Unit IV Naming and Distributed File Systems (7 h); Unit V Consistency and Replication (7 h); Unit VI Fault Tolerance (7 h).
What is the marks scheme for Distributed Systems?
The official Computer Engineering 2019 pattern syllabus lists mid-semester (Mid-Sem) for 30 marks and the end-semester exam for 70 marks, for 3 credits.
What should I know before Distributed Systems?
Prerequisite listed in the syllabus: Computer Networks and Security(310244).