What is a distributed system according to the chapter?
A collection of independent computers that appears to the user as a single coherent system.
List the five key benefits/characteristics of distributed systems mentioned.
Resource sharing, Openness, Concurrency, Scalability, Fault tolerance
Explain the benefit of ‘Resource Sharing’ in distributed systems.
Sharing of hardware and software resources across the network.
What does ‘Openness’ mean in the context of distributed systems?
The ability to use equipment and software from different vendors, built according to standard protocols.
How does ‘Concurrency’ enhance a distributed system?
It allows concurrent processing on multiple computers to enhance overall system performance.
What is ‘Scalability’ in a distributed system?
The ability to increase system throughput by adding new resources (scaling out or up).
Define ‘Fault Tolerance’.
The ability of the system to continue operating correctly after a component or network has failed.
Why are distributed systems more complex than single-processor systems?
Complexity arises because different parts are independently managed, and there is no single authority for top-down control.
List the six key design issues for distributed systems engineering.
Transparency, Openness, Scalability, Security, Quality of service, Failure management
What is the ideal goal of ‘Transparency’ in a distributed system?
To make the distributed system appear as a single, coherent system, hiding the fact that its parts are separate.
Why is achieving full transparency often impossible in practice?
Because parts of the system are independently managed and network delays are unavoidable, sometimes it’s better to make users aware of the distribution.
How does middleware help achieve transparency?
Middleware maps logical resource addresses to the physical resources where they are located.
What defines an ‘Open’ distributed system?
A system built according to generally accepted standards, allowing components from different suppliers to interoperate.
What are the three dimensions of Scalability mentioned?
Size (adding more users/resources), Distribution (geographic dispersion), and Manageability (ease of management as it grows).
What is the difference between scaling-up and scaling-out?
Scaling-up means upgrading to a more powerful system, while scaling-out means adding more instances of the same system.
Why is security more challenging in distributed systems compared to centralized ones?
There are more potential attack paths (e.g., network interception), and a breach in one part can be a ‘back door’ to others. Different organizations may also have incompatible security policies.
Name the four general types of attacks that distributed systems must defend against.
Interception, Interruption, Modification, Fabrication
Describe an ‘Interception’ attack.
Communications between parts of the system are intercepted by an attacker, leading to a loss of confidentiality.
Describe an ‘Interruption’ attack.
System services are attacked and become unavailable, preventing them from being delivered as expected.
Describe a ‘Modification’ attack.
An attacker intercepts and alters data or services within the system.
Describe a ‘Fabrication’ attack.
An attacker generates false information that should not exist to gain privileges or disrupt the system.
What does ‘Quality of Service’ (QoS) reflect in a distributed system?
The system’s ability to deliver services dependably with an acceptable response time and throughput, especially critical for time-sensitive data like video.
What are the three key aspects of Failure Management in a distributed system?
Mechanisms for discovering a failure, continuing to deliver as many services as possible despite the failure, and automatically recovering from it.
Name the two primary types of interaction between components in a distributed system.
Procedural interaction and Message-based interaction.