0% found this document useful (0 votes)
4 views2 pages

DC Ia1

The document outlines key concepts and issues in distributed systems, including transparency, scalability, fault tolerance, concurrency, security, and resource management. It also describes various algorithms for synchronization and mutual exclusion, such as Lamport's Logical Clock, Singhal’s Heuristic Algorithm, and the Bully Election Algorithm. Additionally, it covers types of distributed systems and methods for group communication, emphasizing the importance of efficient communication and fault tolerance.

Uploaded by

yuvrajpsingh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views2 pages

DC Ia1

The document outlines key concepts and issues in distributed systems, including transparency, scalability, fault tolerance, concurrency, security, and resource management. It also describes various algorithms for synchronization and mutual exclusion, such as Lamport's Logical Clock, Singhal’s Heuristic Algorithm, and the Bully Election Algorithm. Additionally, it covers types of distributed systems and methods for group communication, emphasizing the importance of efficient communication and fault tolerance.

Uploaded by

yuvrajpsingh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Q1: Attempt the following questions (Answer any five)

A. List the various issues in Distributed Systems.

1.​ Transparency - Hiding the distributed nature from users (e.g., location transparency).
2.​ Scalability - Ability to grow without performance degradation.
3.​ Fault Tolerance - System's capacity to continue despite failures.
4.​ Concurrency - Handling multiple operations simultaneously.
5.​ Security - Protecting data and resources from unauthorized access.
6.​ Resource Management - Efficient allocation and use of resources.

B. Describe any one method of Logical Clock Synchronization.

●​ Lamport's Logical Clock:


1.​ Each process maintains a logical clock.
2.​ On each event, the clock is incremented.
3.​ When a message is sent, it includes the sender's timestamp.
4.​ Receiver updates its clock to be higher of its own clock or sender's timestamp +1.
5.​ Ensures a consistent ordering of events across processes.
6.​ Addresses causality, not absolute time.

C. Explain Group Communication.

1.​ Definition - Communication among a group of distributed processes.


2.​ Multicast - Message sent to multiple processes at once.
3.​ Types - Reliable multicast, atomic broadcast, etc.
4.​ Ordering Guarantees - FIFO, causal, or total ordering.
5.​ Fault Tolerance - Supports fault-tolerant communication.
6.​ Application - Used in collaborative applications, distributed databases.

D. What are types of Distributed Systems?

1.​ Distributed Computing Systems - E.g., Grid, cloud computing.


2.​ Distributed Information Systems - Database systems like NoSQL.
3.​ Distributed Pervasive Systems - IoT networks.
4.​ Distributed Real-Time Systems - Systems with strict timing constraints.
5.​ Peer-to-Peer Systems - Direct communication between peers.
6.​ Client-Server Systems - Traditional model with central servers.

E. Explain Lamport's Distributed Mutual Exclusion Algorithm.

1.​ Request-Reply Mechanism - Process requests permission to enter a critical section.


2.​ Timestamping - Each request is timestamped.
3.​ Message Ordering - Requests are granted in timestamp order.
4.​ Acknowledgment - A process enters the critical section after receiving permission from all.
5.​ Reliability - Handles crashes by retrying requests.
6.​ No Deadlock - Ensures that processes will eventually gain access.

F. Illustrate working of RMI (Remote Method Invocation).

1.​ Definition - Enables invoking methods on a remote object.


2.​ Stub and Skeleton - Stub on client side, skeleton on server side.
3.​ Marshalling and Unmarshalling - Converting data formats for transmission.
4.​ Registry Service - Maintains references to remote objects.
5.​ Network Communication - Uses TCP/IP for transport.
6.​ Execution - Client invokes method, stub forwards to server, server processes, and sends result back.

Q2: Illustrate Singhal’s Heuristic Algorithm OR Suzuki-Kasami’s Broadcast Algorithm.


Singhal’s Heuristic Algorithm:

1.​ Purpose - Reduces message complexity in mutual exclusion.


2.​ Token-Based - Each process must hold a token to access the critical section.
3.​ Request Queue - Maintains a queue of processes waiting for the token.
4.​ Heuristic Mechanism - Processes predict when to request the token based on past patterns.
5.​ Efficient Communication - Reduces unnecessary messages by avoiding requests when not needed.
6.​ Token Passing - Token is only passed when necessary, conserving resources.
7.​ No Starvation - Ensures every request eventually gets the token.
8.​ Timestamping - Used to manage the order of requests.
9.​ Fault Tolerance - Can recover from certain process crashes.
10.​Use Cases - Useful in systems with low message overhead needs.

Suzuki-Kasami’s Broadcast Algorithm:

1.​ Token-Based Mutual Exclusion - Only token holders can enter the critical section.
2.​ Broadcasting - Requests for the token are broadcasted to all nodes.
3.​ Queue Management - Nodes maintain a queue of requests.
4.​ Token Granting - Token is granted in the order of requests.
5.​ Reduced Communication - Token requests are minimized in broadcast.
6.​ Logical Clock - Each process has a clock for managing request order.
7.​ Reliability - Ensures no deadlock and starvation.
8.​ Efficiency - Reduces network load in comparison to other algorithms.
9.​ Fault Tolerance - Handles loss of token by recreating it if needed.
10.​Best for Low Communication Overhead - Suitable for low-communication environments.
Q3: Illustrate Bully Election Algorithm OR Maekawa's Algorithm
Bully Election Algorithm:

1.​ Purpose - Elects a coordinator in distributed systems.


2.​ Higher-ID Election - Processes with higher IDs can initiate election.
3.​ Message Types - "Election," "OK," and "Coordinator."
4.​ Process Initiation - If a process detects failure, it initiates an election.
5.​ Election Process - Lower-ID processes give up when higher-ID is available.
6.​ Fault Tolerance - Can handle the failure of coordinator.
7.​ Leader Declaration - Winner announces itself as coordinator.
8.​ Performance - Uses more messages in larger systems.
9.​ Drawback - High message complexity for large systems.
10.​Common Use - Suitable for networks where any process can take control.

Maekawa's Algorithm:

1.​ Decentralized Mutual Exclusion - Doesn't rely on a single coordinator.


2.​ Voting Sets - Each process has a set of processes it must consult.
3.​ Quorum Requirement - Critical section can be entered with majority votes.
4.​ Reduced Communication - Limits requests to fewer processes.
5.​ Deadlock Handling - Uses timestamps to avoid deadlocks.
6.​ Token Passing - Ensures fair access to resources.
7.​ Message Complexity - Lower than centralized approaches.
8.​ Fault Tolerance - Adapts to process failures within quorum.
9.​ Starvation Prevention - Ensures all requests are eventually granted.
10.​Ideal for Distributed Systems - Suitable for large distributed systems with limited communication channels.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy