chap 01 updated
TRANSCRIPT
-
8/3/2019 Chap 01 Updated
1/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
DISTRIBUTED SYSTEMS
Principles and ParadigmsSecond Edition
ANDREW S. TANENBAUMMAARTEN VAN STEEN
Chapter 1Introduction
-
8/3/2019 Chap 01 Updated
2/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Definition of a Distributed System (1)
A distributed system is:
A collection of independentcomputers that appears to its
users as a single coherentsystem.
-
8/3/2019 Chap 01 Updated
3/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Definition of a Distributed System (2)
Figure 1-1. A distributed system organized as middleware. Themiddleware layer extends over multiple machines, and offers
each application the same interface.
-
8/3/2019 Chap 01 Updated
4/34
Goals of Distributed Systems To make resources easily accessible
Share printers, supercomputers, storage
Transparent ( Hide the fact that resources are distributedacross a network)
Open
Interoperability, Portability, extensible
Scalable Size, location and Administration
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
5/34
Problems
Design difficult:
Operating systems, programming languages, administration
Security Network: Disconnect, loss of data
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
6/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Transparency in a Distributed System
Figure 1-2. Different forms of transparency in adistributed system (ISO, 1995).
-
8/3/2019 Chap 01 Updated
7/34
Scalability
Size: more users & resources
Geographic location
Administration
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
8/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Scalability Problems
Figure 1-3. Examples of scalability limitations.
-
8/3/2019 Chap 01 Updated
9/34
Scaling Techniques
Three techniques for scaling:
Hiding Communications latencies
Avoid waiting as much as possible (Asynchronous communication)
Distribution Splitting a component of the system into smaller parts, and spreading across
the system e. g. (DNS), WWW
Replication
Replicate components across the system Caching (copy of a resource)
Consistency problems (how much to tolerate?)
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
10/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Scaling Techniques (1)
Figure 1-4. The difference between letting (a) a serveror (b) a client check forms as they are being filled.
-
8/3/2019 Chap 01 Updated
11/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Scaling Techniques (2)
Figure 1-5. An example of dividing the DNS
name space into zones.
-
8/3/2019 Chap 01 Updated
12/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Pitfalls when DevelopingDistributed Systems
False assumptions made by first time developer:
The network is reliable.
The network is secure.
The network is homogeneous.
The topology does not change.
Latency is zero.
Bandwidth is infinite.
Transport cost is zero.
There is one administrator.
-
8/3/2019 Chap 01 Updated
13/34
Types of Distributed Systems
1. Distributed Computing Systems
2. Distributed Information Systems3. Distributed Pervasive Systems
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
14/34
Distributed Computing Systems
Distributed Computing Systems
Cluster computing
Homogeneity (same OS & network)
E.g. Linux-based Beowulf
Grid Computing
Heterogeneity (no assumptions)
Resources from different organizations are brought together
to allow the collaboration of a group of people or institutions
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
15/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Cluster Computing Systems
Figure 1-6. An example of a cluster computing system.
-
8/3/2019 Chap 01 Updated
16/34
Grid ComputingA layered architecture of Grid Computing:
Fabric layer: provides interfaces to local resources, to allowsharing of resources
Connectivity layer: Consists of Communication & security
protocols to support Grid transactions
Resource Layer: manage a single resource, perform specificoperation
Collective layer: Handling access to multiple resources, e.g.
resource discovery, allocation & scheduling of tasks
Application Layer: consists of applications that operate withina virtual organization
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
17/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Grid Computing Systems
Figure 1-7. A layered architecture for grid computing systems.
-
8/3/2019 Chap 01 Updated
18/34
Distributed Information Systems
Distributed Information Systems
Transaction Processing Systems
Enterprise Application Integration
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
19/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Transaction Processing Systems (1)
Figure 1-8. Example primitives for transactions.
-
8/3/2019 Chap 01 Updated
20/34Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Transaction Processing Systems (2)
Characteristic properties of transactions: Atomic: To the outside world, the transaction
happens indivisibly.
Consistent: The transaction does not violatesystem invariants.
Isolated: Concurrent transactions do notinterfere with each other.
Durable: Once a transaction commits, thechanges are permanent.
-
8/3/2019 Chap 01 Updated
21/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Transaction Processing Systems (3)
Figure 1-9. A nested transaction.
-
8/3/2019 Chap 01 Updated
22/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Transaction Processing Systems (4)
Figure 1-10. The role of a TP monitor in distributed systems.
-
8/3/2019 Chap 01 Updated
23/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Enterprise Application Integration
Figure 1-11. Middleware as a communication facilitator inenterprise application integration.
-
8/3/2019 Chap 01 Updated
24/34
Enterprise Application IntegrationTypes of communication Middleware:
Remote procedure call (RPC)
Remote method invocation (RMI)
Message oriented Middleware (MOM)
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
25/34
Distributed Pervasive Systems
Default is instability
Small, battery-powered, mobile, wireless connection
Lack of human administrative control
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
26/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Distributed Pervasive Systems
Requirements for pervasive systems
Embrace contextual changes.
Encourage ad hoc composition. Recognize sharing as the default.
-
8/3/2019 Chap 01 Updated
27/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Home systems
Systems built around home networks
E.g. TV, Video, PDA, Kitchen appliances
Should be self-configuring & self-managin
-
8/3/2019 Chap 01 Updated
28/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Electronic Health Care Systems (1)
Questions to be addressed for health care systems: Where and how should monitored data bestored?
How can we prevent loss of crucial data?
What infrastructure is needed to generate andpropagate alerts?
How can physicians provide online feedback?
How can extreme robustness of the monitoringsystem be realized?
What are the security issues and how can theproper policies be enforced?
-
8/3/2019 Chap 01 Updated
29/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Electronic Health Care Systems (2)
Figure 1-12. Monitoring a person in a pervasive electronic healthcare system, using (a) a local hub or
(b) a continuous wireless connection.
-
8/3/2019 Chap 01 Updated
30/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Sensor Networks (1)
Questions concerning sensor networks:
How do we (dynamically) set up anefficient tree in a sensor network?
How does aggregation of results takeplace? Can it be controlled?
What happens when network links fail?
-
8/3/2019 Chap 01 Updated
31/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Sensor Networks (2)
Figure 1-13. Organizing a sensor network database, while storingand processing data (a) only at the operators site or
-
8/3/2019 Chap 01 Updated
32/34
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
Sensor Networks (3)
Figure 1-13. Organizing a sensor network database, while storingand processing data or (b) only at the sensors.
-
8/3/2019 Chap 01 Updated
33/34
Summary
Distributed Systems (DS) consist of autonomous computersthat work together to give the appearance of a singlecoherent system
DS make it easier to integrate different applications runningon different computers into a single system
Well designed DS scale well with respect to the size of theunderlying network.
Cost: more complex software, performance & security
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
-
8/3/2019 Chap 01 Updated
34/34
Summary DS aim to hide distribution of processes, data & control
(distribution transparency)
Many developers make wrong assumptions when developing
DS Different types of DS
Emerging class of DS, ubiquitous computing (not managedthrough system administrator)