Download - Chap 01v2 Modified
-
7/31/2019 Chap 01v2 Modified
1/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
1
Please purchase a personal license.
-
7/31/2019 Chap 01v2 Modified
2/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
2
Definition of a Distributed System (1)
A distributed system is:
A collection of independent
computers that appears to itsusers as a single coherentsystem.
-
7/31/2019 Chap 01v2 Modified
3/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
3
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.
-
7/31/2019 Chap 01v2 Modified
4/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
4
Transparency in a Distributed System
Figure 1-2. Different forms of transparency in adistributed system (ISO, 1995).
-
7/31/2019 Chap 01v2 Modified
5/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
5
Scalability Problems
Figure 1-3. Examples of scalability limitations.
-
7/31/2019 Chap 01v2 Modified
6/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
6
Scalability Problems
Scalability can be measure along 3 dimensions:
Size scalable: easily add more users &recourses to the system
Geographically scalable: users & resources may
lie far apart Administratively scalable: it can still be easy to
manage even if it spans independent
administrative organizations
-
7/31/2019 Chap 01v2 Modified
7/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
7
Scalability Problems
Characteristics of decentralized algorithms:
No machine has complete information about thesystem state.
Machines make decisions based only on local
information. Failure of one machine does not ruin the
algorithm.
There is no implicit assumption that a globalclock exists.
-
7/31/2019 Chap 01v2 Modified
8/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
8
Scaling Techniques (1)
Figure 1-4. The difference between letting (a) a serveror (b) a client check forms as they are being filled.
-
7/31/2019 Chap 01v2 Modified
9/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
9
Scaling Techniques (2)
Figure 1-5. An example of dividing the DNS
name space into zones.
-
7/31/2019 Chap 01v2 Modified
10/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
10
Pitfalls when Developing
Distributed 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.
-
7/31/2019 Chap 01v2 Modified
11/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
11
Types of Distributed Systems:1. Distributed Computing Systems
Cluster Computing Systems
Grid Computing Systems
2. Distributed Information Systems
Transaction Processing Systems
Enterprise Application Integration (Exchange info via RPC or RMI)
3. Distributed Pervasive Systems (usually small, battery-powered systems, Mobile & wireless)
Home Systems (e.g. Smart phones, PDAs)
Electronic Health care systems (Heart monitors, BAN: Body AreaNetworks)
Sensor Networks (distributed Databases connected wirelessly)
-
7/31/2019 Chap 01v2 Modified
12/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
12
Cluster Computing Systems
Hooking up a collection of simple computers via
high-speed networks to build a supercomputingenvironment
Mostly homogenous
Example: server clusters at Banks, Brokerages, etc.
-
7/31/2019 Chap 01v2 Modified
13/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
13
Cluster Computing Systems
Figure 1-6. An example of a cluster computing system.
-
7/31/2019 Chap 01v2 Modified
14/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
14
Grid Computing Systems
In contrast to cluster computing, grid computing
systems have a high degree of heterogeneity, noassumption are made concerning hardware, OS,Networks, Security,
Users and recourses from different organizations arebrought together to allow collaboration (i.e. a V.O.= Virtual Organization)
Members belonging to the same V.O. have access
rights to a common set of recourses (e.g. Police,FBI, and some local agencies may form acomputing grid)
-
7/31/2019 Chap 01v2 Modified
15/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
15
Grid Computing Systems
Figure 1-7. A layered architecture for grid computing systems.
Grid
Middleware
Applications operate
within a virtual
organization and make
use of grid computing
environment
-
7/31/2019 Chap 01v2 Modified
16/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
16
Grid Computing Layers:
1. Collective layer: access to multiple resources and
typically consists of services for resource discovery,allocation and scheduling.
2. Connectivity layer: transfer data between resources
or access a resource from a remote location3. Resource layer: managing a single recourse such as
creating a process or reading data
4. Fabric layer: provides interface to local resources ata specific site within a V.O.
-
7/31/2019 Chap 01v2 Modified
17/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
17
Transaction Processing Systems (1)
Figure 1-8. Example primitives for transactions.
-
7/31/2019 Chap 01v2 Modified
18/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
18
Transaction Processing Systems (2)
Characteristic properties of transactions:
Atomic: To the outside world, the transactionhappens indivisibly.
Consistent: The transaction does not violate
system invariants. Isolated: Concurrent transactions do not
interfere with each other.
Durable: Once a transaction commits, thechanges are permanent.
-
7/31/2019 Chap 01v2 Modified
19/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
19
Transaction Processing Systems (3)
Figure 1-9. A nested transaction.
-
7/31/2019 Chap 01v2 Modified
20/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
20
Transaction Processing Systems (4)
Figure 1-10. The role of a TP monitor in distributed systems.
-
7/31/2019 Chap 01v2 Modified
21/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
21
Enterprise Application Integration
Figure 1-11. Middleware as a communication facilitator inenterprise application integration.
-
7/31/2019 Chap 01v2 Modified
22/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
22
Enterprise Application Integration
Various middleware packages and
communication protocols are used insupport of Enterprise applications such as:
CORBA (Common Object Request Broker Architecture)
DCOM (Distributed Component Object Management)
RPC (Remote Procedure Call) RMI (Remote Method Invocation)
-
7/31/2019 Chap 01v2 Modified
23/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
23
Distributed Pervasive Systems
Requirements for pervasive systems:
Embrace contextual changes (i.e. I was aphone now I am a web access device. Adevice must continuously be aware of thefact that its environment may change)
Encourage ad hoc composition (used
differently by different users, e.g. PDA) Recognize sharing as the default (easilyread, store, manage, and share info)
-
7/31/2019 Chap 01v2 Modified
24/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
24
Electronic Health Care Systems (1)
Questions to be addressed for health care systems:
Where and how should monitored data be
stored? How can we prevent loss of crucial data?
What infrastructure is needed to generate and
propagate alerts? How can physicians provide online feedback?
How can extreme robustness of the monitoring
system be realized? What are the security issues and how can the
proper policies be enforced?
-
7/31/2019 Chap 01v2 Modified
25/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
25
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.
-
7/31/2019 Chap 01v2 Modified
26/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
26
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?
-
7/31/2019 Chap 01v2 Modified
27/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
27
Sensor Networks (2)
Figure 1-13. Organizing a sensor network database, while storingand processing data (a) only at the operators site or
-
7/31/2019 Chap 01v2 Modified
28/28
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5
28
Sensor Networks (3)
Figure 1-13. Organizing a sensor network database, while storingand processing data or (b) only at the sensors.