second edition andrew s. tanenbaum maarten … · 2 tanenbaum & van steen, distributed systems:...

30

Upload: ngoque

Post on 01-Oct-2018

268 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

1

Tanenbaum & Van Steen, Distributed Systems: 1

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. TANENBAUM

MAARTEN VAN STEEN

Chapter 2

ARCHITECTURES

Slide 1 (Notes)

Page 2: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

2

Tanenbaum & Van Steen, Distributed Systems: 2

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Architectural Styles (1)

Important styles of architecture for distributed systems

� Layered architectures

� Object-based architectures

� Data-centered architectures

� Event-based architectures

Slide 2 (Notes)

Page 3: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

3

Tanenbaum & Van Steen, Distributed Systems: 3

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Architectural Styles (2)

Figure 2-1. The (a) layered architectural style and �

Slide 3 (Notes)

Page 4: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

4

Tanenbaum & Van Steen, Distributed Systems: 4

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Architectural Styles (3)

Figure 2-1. (b) The object-based architectural style.

Slide 4 (Notes)

Page 5: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

5

Tanenbaum & Van Steen, Distributed Systems: 5

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Architectural Styles (4)

Figure 2-2. (a) The event-based architectural style and �

Slide 5 (Notes)

Page 6: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

6

Tanenbaum & Van Steen, Distributed Systems: 6

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Architectural Styles (5)

Figure 2-2. (b) The shared data-space architectural style.

Slide 6 (Notes)

Page 7: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

7

Tanenbaum & Van Steen, Distributed Systems: 7

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Centralized Architectures

Figure 2-3. General interaction between a client and a server.

Slide 7 (Notes)

Page 8: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

8

Tanenbaum & Van Steen, Distributed Systems: 8

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Application Layering (1)

Recall previously mentioned layers of

architectural style

� The user-interface level

� The processing level

� The data level

Slide 8 (Notes)

Page 9: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

9

Tanenbaum & Van Steen, Distributed Systems: 9

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Application Layering (2)

Figure 2-4. The simplified organization of an Internet search engine into three different layers.

Slide 9 (Notes)

Page 10: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

10

Tanenbaum & Van Steen, Distributed Systems: 10

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Multitiered Architectures (1)

The simplest organization is to have only two

types of machines:

� A client machine containing only the

programs implementing (part of) the user-

interface level

� A server machine containing the rest,

� the programs implementing the processing and

data level

Slide 10 (Notes)

Page 11: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

11

Tanenbaum & Van Steen, Distributed Systems: 11

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Multitiered Architectures (2)

Figure 2-5. Alternative client-server organizations (a)�(e).

Slide 11 (Notes)

Page 12: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

12

Tanenbaum & Van Steen, Distributed Systems: 12

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Multitiered Architectures (3)

Figure 2-6. An example of a server acting as client.

Slide 12 (Notes)

Page 13: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

13

Tanenbaum & Van Steen, Distributed Systems: 13

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Structured Peer-to-Peer Architectures (1)

Figure 2-7. The mapping of data items onto nodes in Chord.

Slide 13 (Notes)

Page 14: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

14

Tanenbaum & Van Steen, Distributed Systems: 14

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Structured Peer-to-Peer Architectures (2)

Figure 2-8. (a) The mapping

of data items onto nodes

in CAN.

Slide 14 (Notes)

Page 15: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

15

Tanenbaum & Van Steen, Distributed Systems: 15

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Structured Peer-to-Peer Architectures (3)

Figure 2-8. (b) Splitting a

region when a node

joins.

Slide 15 (Notes)

Page 16: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

16

Tanenbaum & Van Steen, Distributed Systems: 16

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Unstructured Peer-to-Peer

Architectures (1)

Figure 2-9. (a) The steps taken by the active thread.

Slide 16 (Notes)

Page 17: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

17

Tanenbaum & Van Steen, Distributed Systems: 17

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Unstructured Peer-to-Peer

Architectures (2)

Figure 2-9. (b) The steps take by the passive thread

Slide 17 (Notes)

Page 18: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

18

Tanenbaum & Van Steen, Distributed Systems: 18

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Topology Management of Overlay

Networks (1)

Figure 2-10. A two-layered approach for constructing and

maintaining specific overlay topologies using techniques from

unstructured peer-to-peer systems.

Slide 18 (Notes)

Page 19: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

19

Tanenbaum & Van Steen, Distributed Systems: 19

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Topology Management of Overlay

Networks (2)

Figure 2-11. Generating a specific overlay network using a two-layered unstructured peer-to-peer system [adapted with

permission from Jelasity and Babaoglu (2005)].

Slide 19 (Notes)

Page 20: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

20

Tanenbaum & Van Steen, Distributed Systems: 20

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Superpeers

Figure 2-12. A hierarchical organization of nodes into a

superpeer network.

Slide 20 (Notes)

Page 21: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

21

Tanenbaum & Van Steen, Distributed Systems: 21

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Edge-Server Systems

Figure 2-13. Viewing the Internet as consisting of a

collection of edge servers.

Slide 21 (Notes)

Page 22: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

22

Tanenbaum & Van Steen, Distributed Systems: 22

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Collaborative Distributed Systems (1)

Figure 2-14. The principal working architecture of BitTorrent

[adapted with permission from Pouwelse et al. (2004)].

Slide 22 (Notes)

Page 23: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

23

Tanenbaum & Van Steen, Distributed Systems: 23

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Collaborative Distributed Systems (2)

Components of Globule collaborative content

distribution network:

� A component that can redirect client requests

to other servers.

� A component for analyzing access patterns.

� A component for managing the replication of

Web pages.

Slide 23 (Notes)

Page 24: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

24

Tanenbaum & Van Steen, Distributed Systems: 24

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Interceptors

Figure 2-15. Using interceptors to handle remote-object invocations.

Slide 24 (Notes)

Page 25: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

25

Tanenbaum & Van Steen, Distributed Systems: 25

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

General Approaches to Adaptive

Software

Three basic approaches to adaptive

software:

� Separation of concerns

� Computational reflection

� Component-based design

Slide 25 (Notes)

Page 26: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

26

Tanenbaum & Van Steen, Distributed Systems: 26

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

The Feedback Control Model

Figure 2-16. The logical organization of a

feedback control system.

Slide 26 (Notes)

Page 27: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

27

Tanenbaum & Van Steen, Distributed Systems: 27

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Figure 2-17. Data collection and information

aggregation in Astrolabe.

Example: Systems Monitoring

with Astrolabe

Slide 27 (Notes)

Page 28: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

28

Tanenbaum & Van Steen, Distributed Systems: 28

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Example: Differentiating Replication

Strategies in Globule (1)

Figure 2-18. The edge-server model assumed by Globule.

Slide 28 (Notes)

Page 29: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

29

Tanenbaum & Van Steen, Distributed Systems: 29

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Example: Differentiating Replication

Strategies in Globule (2)

Figure 2-19. The dependency between prediction

accuracy and trace length.

Slide 29 (Notes)

Page 30: Second Edition ANDREW S. TANENBAUM MAARTEN … · 2 Tanenbaum & Van Steen, Distributed Systems: 2 Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007

30

Tanenbaum & Van Steen, Distributed Systems: 30

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved. 0-13-239227-5

Example: Automatic Component Repair

Management in Jade

Steps required in a repair procedure:

� Terminate every binding between a component on a nonfaulty node, and a component on the node that just failed.

� Request the node manager to start and add a new node to the domain.

� Configure the new node with exactly the same components as those on the crashed node.

� Re-establish all the bindings that were previously terminated.

Slide 30 (Notes)