Skip to main content

Define DS and its requirements

Short answer

A distributed system is a collection of independent computers connected by a network and middleware that appears as a single coherent system. Requirements include resource sharing, transparency, openness, scalability, concurrency, fault tolerance, heterogeneity support, security, QoS, and manageability/mobility.

Define Distributed System (DS). Explain the requirements to successfully implement DS to suit modern computing.

Definition

A distributed system is a collection of independent computers, connected by a network and running distribution middleware, that appears to its users as a single coherent system. Its components communicate and coordinate their actions only by passing messages (Tanenbaum; Coulouris).

Examples: the World Wide Web, banking networks with ATMs, cloud services, online reservation systems.

Requirements for modern computing

To succeed in modern computing a distributed system must satisfy the following.

  1. Resource sharing: hardware, data and services are available to all authorised users.
  2. Transparency: access, location, migration, replication, concurrency and failure are hidden so users see one system.
  3. Openness: published interfaces and standards (IDL, protocols) let different vendors' components work together and let the system be extended.
  4. Scalability: it must grow in size (users and resources), geography and administration without loss of performance. Use replication, caching, partitioning and avoid centralised services.
  5. Concurrency: many users and processes access resources at once, so synchronisation (locks, transactions) is required.
  6. Fault tolerance and availability: detect failures, mask them by redundancy and recover.
  7. Heterogeneity support: different hardware, OS, networks and languages are linked by middleware.
  8. Security: confidentiality, integrity, authentication, access control and protection against denial of service.
  9. Performance and quality of service: low latency, high throughput and timeliness, especially for multimedia.
  10. Manageability and mobility: easy to configure, monitor and extend; supports mobile and ubiquitous devices.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Distributed System chapter 1 questions →