0% found this document useful (0 votes)
9 views7 pages

DC MOD 1

The document discusses the issues and goals of distributed systems, highlighting challenges such as heterogeneity, transparency, and fault tolerance. It also outlines various system models of distributed computing, including minicomputer, workstation, workstation-server, processor-pool, and hybrid models, each with its own advantages and limitations. The overall aim is to create efficient, scalable, and reliable systems that effectively utilize resources and ensure user satisfaction.

Uploaded by

xman24505
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)
9 views7 pages

DC MOD 1

The document discusses the issues and goals of distributed systems, highlighting challenges such as heterogeneity, transparency, and fault tolerance. It also outlines various system models of distributed computing, including minicomputer, workstation, workstation-server, processor-pool, and hybrid models, each with its own advantages and limitations. The overall aim is to create efficient, scalable, and reliable systems that effectively utilize resources and ensure user satisfaction.

Uploaded by

xman24505
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/ 7

DC PYQ AND IMP

MOD 1
1) What are various issues of distributed system? (5 marks)
A distributed system is a collection of independent computers that work together in such a
way that they appear as a single coherent system to users. While this model offers many
advantages like resource sharing, scalability, and fault tolerance, it also introduces a set of
complex challenges or issues that must be carefully addressed during system design and
implementation.
Here are the major issues in a distributed system:

1. Heterogeneity
Heterogeneity refers to the diversity in hardware platforms, operating systems, network
technologies, and programming languages across the different computers in a distributed
system. Because components can be vastly different, it's difficult to ensure seamless
interaction between them. Middleware is often used to hide this diversity and provide
uniform communication between systems.

2. Openness
Distributed systems must be open to integration with other systems and easy to extend.
They should follow standard protocols and interfaces. This ensures interoperability among
diverse components and allows new services or hardware to be added without major
changes.

3. Transparency
Transparency means hiding the complexities of the distributed nature of the system from
users. Different types of transparency include:
• Access Transparency: Users shouldn’t worry about how to access a resource.
• Location Transparency: Resources can be accessed without knowing their physical or
network location.
• Replication Transparency: Users see a single resource even if it's replicated.
• Failure Transparency: The system hides failures and recovers automatically.
• Concurrency Transparency: Multiple users can access resources without conflict.
• Scalability Transparency: System performance remains stable as it scales.

4. Concurrency
Since many users can access resources simultaneously, managing concurrency is crucial. This
requires synchronization mechanisms to avoid conflicts and ensure data consistency.

5. Fault Tolerance
With many components working together, the risk of failure increases. A distributed system
should continue to operate even when parts of it fail. Fault tolerance can be achieved using
techniques like redundancy, replication, and error detection.
6. Scalability
A distributed system should support growth in terms of users, resources, and geographic
distribution without degrading performance. Techniques like data partitioning, caching, and
load balancing help achieve this.

7. Security
Because data and resources are shared over a network, security becomes a key concern.
Distributed systems must ensure authentication, authorization, data confidentiality, and
integrity.

2) What is distributed computing? Explain various system models of


distributed computing?(10 marks)
Distributed computing is a model in which multiple computers, often located in different
physical locations, are connected through a network and work together to perform a task or
provide a service. These systems are autonomous and communicate with each other by
passing messages. Despite being separate machines, to users and applications, they appear
as a single, unified system.
The main goal of distributed computing is to leverage the combined processing power,
storage, and availability of multiple systems to achieve efficiency, scalability, and reliability,
which cannot be attained through a single computer system.
A formal definition from your module states:
“A distributed system is one in which components located at networked computers
communicate and coordinate their actions only by passing messages.”
This definition highlights the two key characteristics:
• Distributed hardware and software components
• Message-passing as the only form of communication

2. System Models of Distributed Computing


System models are used to describe how distributed systems are structured and how the
components interact. These models can be classified into physical (hardware) models and
logical (architectural) models. The physical system models from your syllabus include five
traditional types:

a) Minicomputer Model
This model includes multiple minicomputers connected by a network. Each minicomputer is
capable of serving multiple users through terminal connections. It is one of the earliest
models used in distributed environments.
• Example: ARPANET setup in early universities.
• Advantages: Easy to set up using existing minicomputers; suitable for task sharing.
• Limitations: Limited scalability; outdated for modern use.

b) Workstation Model
Each user has a dedicated workstation with computing power and storage. If a user’s
machine is idle, its resources can be used by other users in the system.
• Advantages: Utilizes unused resources efficiently; cost-effective.
• Limitations: Resources are unreliable, as the owner may need their system back at any time,
interrupting tasks.

c) Workstation-Server Model
In this model, workstations handle user interaction, while specific tasks like file storage or
printing are managed by dedicated servers. This separation of responsibilities improves
efficiency.
• Example: Office environments where printers and file servers are centralized.
• Advantages: Better resource management; servers are optimized for specific tasks.
• Limitations: Servers may become bottlenecks under heavy load.

d) Processor-Pool Model
There are no assigned workstations for users. Instead, users submit jobs to a central pool of
processors. Jobs are scheduled and executed on available processors.
• Example: Cloud computing services like Amazon EC2 or Google Cloud.
• Advantages: High utilization of processor resources; better performance for large tasks.
• Limitations: Requires efficient scheduling; higher complexity in managing shared resources.

e) Hybrid Model
This model combines both workstation-server and processor-pool approaches. Users have
personal workstations for basic tasks and access to a processor pool for intensive
computations.
• Example: Universities and research centers using local machines for teaching and remote
clusters for simulations.
• Advantages: Combines best of both worlds—interactivity and computing power.
• Limitations: More complex to manage and coordinate resources.

3. Logical Models (Interaction Models)


In addition to physical models, logical or interaction models describe how components
interact:

a) Client-Server Model
• The server offers services (like file storage, database access).
• The client requests those services.
• It is a one-to-many relationship: multiple clients can request from a single server.
Example: Web servers serving requests from browsers.
Pros: Simple to implement; clear division of tasks.
Cons: Server becomes a bottleneck or single point of failure.

b) Peer-to-Peer Model (P2P)


• All nodes have equal status and can act as both client and server.
• Nodes communicate directly with each other.
Example: BitTorrent, blockchain systems.
Pros: High scalability; no single point of failure.
Cons: More complex synchronization and security.

c) Middleware Layer
A middleware layer can sit between user applications and the operating system/network to
handle:
• Communication protocols
• Security features
• Resource access
• Naming and location services
Middleware simplifies application development by hiding lower-level complexities and
providing reusable tools.

4. Summary Table of System Models


Model Best Use Case Strengths Weaknesses

Multi-terminal Simple, Not scalable


Minicomputer
academic systems proven
Utilizes idle Unreliable
Workstation Office environments
machines
Dedicated Server
Workstation-
Modern offices task bottlenecks
Server
handling
High-performance Great for Needs
Processor Pool scheduling
computing large jobs

Combines Complex
Hybrid Education/Research management
benefits

5. Conclusion
Distributed computing enables the division of complex tasks across multiple autonomous
computers, making computing more efficient and scalable. By understanding the various
system models—minicomputer, workstation, server-based, processor pool, and hybrid—
architects can choose the right structure based on their specific performance, scalability, and
reliability needs. Furthermore, logical interaction models like client-server and peer-to-peer
define how these components communicate and coordinate their actions, enabling robust
and flexible distributed systems.

3) What are the goals of distributed systems? Explain various system


models of distributed computing. (10 marks)
1. Goals of Distributed Systems
Distributed systems are designed to provide services by coordinating multiple independent
computers over a network. The primary goals of such systems define what they aim to
achieve and how they should behave. These goals ensure that the distributed system
functions effectively, efficiently, and reliably, even in complex or large-scale environments.
Below are the major goals of distributed systems:

a) Transparency
One of the most important goals is to hide the complexities of the underlying distributed
environment from the users. This is known as transparency, which includes several types:
• Access Transparency: Users should access resources without knowing how they are
accessed.
• Location Transparency: The resource location should not affect how it is accessed.
• Replication Transparency: Users should not know whether a resource is replicated.
• Concurrency Transparency: Multiple users can use the system without interference.
• Failure Transparency: The system should recover from faults automatically.
• Migration Transparency: Resources or processes can move without affecting operations.
• Performance Transparency: The system should reconfigure itself to maintain performance.
• Scaling Transparency: The system should grow without disturbing existing operations.
These types of transparency improve usability and make the system appear like a single unit.

b) Openness
A distributed system must be open, meaning it should follow standard protocols and
interfaces so that it can interact easily with other systems. This ensures that systems from
different vendors or platforms can cooperate, and developers can add new components
without reworking the entire system.

c) Reliability and Fault Tolerance


Distributed systems must be reliable, meaning they should continue functioning even if
some components fail. Fault tolerance allows a system to detect and recover from faults
automatically. Techniques such as replication, backups, and redundant servers help in
maintaining reliability.

d) Scalability
Scalability ensures that a system can handle an increasing number of users or devices
without performance degradation. Distributed systems should scale in three ways:
• Size scalability (adding more users or machines),
• Geographical scalability (expanding across wide areas), and
• Administrative scalability (managing growing systems with different policies).

e) Concurrency
Multiple users or applications may access shared resources simultaneously. Distributed
systems must manage concurrent access safely, ensuring data integrity and avoiding
conflicts. This requires synchronization, mutual exclusion, and coordination mechanisms.

f) Resource Sharing
A distributed system enables resource sharing among users and systems. These resources
include files, printers, databases, and computational power. Sharing must be secure,
efficient, and transparent.

g) Performance
A distributed system should offer high performance, such as quick response times and high
throughput. Efficient resource utilization, load balancing, and fast communication protocols
help improve performance.

h) Security
Because data and services are accessed over networks, security is critical. The system must
ensure:
• Authentication: Only verified users can access resources.
• Authorization: Users can only perform allowed operations.
• Data Integrity and Confidentiality: Data must be protected during transmission.

2. System Models of Distributed Computing


To meet the above goals, various system models of distributed computing are used. These
models describe the physical and logical organization of the system and help in
understanding how tasks are distributed.

a) Minicomputer Model
• Structure: Multiple minicomputers are connected via a network, each serving multiple users
through terminals.
• Use Case: Early distributed systems like academic networks.
• Strengths: Simple to manage, centralized control.
• Limitations: Low scalability, outdated technology.

b) Workstation Model
• Structure: Each user has their own workstation, and idle workstations offer processing power
to others.
• Use Case: Office environments where most machines are not fully used.
• Strengths: Utilizes unused computing power; cost-effective.
• Limitations: Unreliable for long jobs, as users may interrupt the system.

c) Workstation-Server Model
• Structure: Workstations handle the user interface, while servers manage specific services like
file storage or printing.
• Use Case: Common in corporate networks.
• Strengths: Specialization increases efficiency; better fault isolation.
• Limitations: Server overload can degrade performance.

d) Processor-Pool Model
• Structure: No user owns a specific processor. Jobs are sent to a central pool of processors for
execution.
• Use Case: Research institutions or cloud computing services.
• Strengths: Highly efficient for compute-heavy tasks.
• Limitations: Requires good job scheduling and resource management.

e) Hybrid Model
• Structure: Combines workstation-server and processor-pool models. Users interact on their
own workstations, while heavy tasks run in the processor pool.
• Use Case: Universities, industries running both office and research tasks.
• Strengths: Balances responsiveness and power.
• Limitations: Complex resource management.

3. Real-Life Example: University Computing


In a university:
• Faculty and students use their own laptops (workstation model).
• Services like printing, file storage, and course websites run on servers (workstation-server
model).
• High-performance computing tasks (like simulations or data analysis) are offloaded to a
centralized cluster (processor-pool model).
• This mix makes it a hybrid model, supporting transparency, resource sharing, scalability, and
performance.

4. Conclusion
The goals of distributed systems—such as transparency, openness, scalability, and
reliability—guide the design of efficient, user-friendly, and robust systems. To fulfill these
goals, different system models are employed depending on the requirements. The
minicomputer, workstation, server-based, processor-pool, and hybrid models offer unique
advantages and are used in various environments. By understanding and applying these
models appropriately, developers and architects can build distributed systems that are
scalable, secure, and resilient.

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