Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CPU
Distributed Systems
systems in terms of instruction and data stream organizations Based on Von-Neumann model (separate processor and memory units 4 machine organizations
SISD - Single Instruction, Single Data (PC, MIPS, etc.) SIMD - Single Instruction, Multiple Data (Array Proc.)
Serial Processor
SISD
D1 PU1 CU I PUn Dn
Array Processor
SIMD
CU control unit PU processor unit I instruction stream D data stream
Distributed Systems 3
CUn
In
PUn
Dn
MIMD
CU1 I1 PU1 D CUn In PUn
MISD
Distributed Systems
Distributed Systems
Crossbar switch
Distributed Systems
Distributed Systems
Grid
Hypercube
Distributed Systems
network
Distributed Memory Multi-computer IPC by message passing Typically PC or workstation clusters Physically distributed components
network Characterized by short message delays, high bandwidth IPC via Shared Memory
Distributed Systems 10
Node: ni, 1 i N
Distance: d(ni, nj): number of links between ni and
nj Network distance: D = max(d(ni, nj)) Degree: degree(ni): number of links from/to ni Network topology is an abstract graph to represent the architecture of a network
Distributed Systems 11
Desired Properties:
(1) When network size grows arbitrarily, the network
distance increases (Max distance between two nodes) (2) There exists a constant k, such that degree(ni) k (3) Routing algorithm is easy to implement and independent of network size (4) When some nodes or links are failed, the network is still connected (with lower performance) (5) Traffic loads are evenly distributed over the network
Distributed Systems
12
complete
regular
arbitrary
Distributed Systems
13
Software Concepts
System Description Tightly-coupled operating system for multi-processors and homogeneous multicomputers Main Goal Hide and manage hardware resources DOS
NOS
Middleware
Strong transparency.
16
Distributed Systems
Loosely-coupled operating system for heterogeneous multi-computers (LAN and WAN). Weak transparency.
Distributed Systems
19
NOS: characteristics
Network Operating System extension of centralized operating systems offer local services to remote clients each processor has own operating system user owns a machine, but can access others (e.g. rlogin, telnet) no global naming of resources system has little fault tolerance e.g. UNIX, Windows NT, 2000
Distributed Systems 20
Middleware System
Additional layer on the top of NOS implementing generalpurpose services. Better transparency.
Distributed Systems 21
Middleware Examples
Examples: Sun RPC, CORBA, DCOM, Java RMI (distributed object technology) Built on top of transport layer in the ISO/OSI 7 layer reference model: application (protocol), presentation (semantic), session (dialogue), transport (e.g. TCP or UDP), network (IP, ATM etc), data link (frames, checksum), physical (bits and bytes) Most are implemented over the internet protocols Masks heterogeneity of underlying networks, hardware, operating system and programming languages so provides a uniform programming model with standard services 3 types of middleware:
transaction oriented (for distributed database applications) message oriented (for reliable asynchronous communication) remote procedure calls (RPC) the original OO middleware
Distributed Systems
22
Types of communication
Message passing is the general basis of communication in a distributed system: transferring a set of data from a sender to a receiver.
Distributed Systems
23
sender calls send primitive to pass message to senders buffer communication module transmits the message to the destination destination communication module puts the message to receivers buffer receiver calls receive primitive to get the message
Distributed Systems 24
Pages of address space distributed among four machines Situation after CPU 1 references page 10 Situation if page 10 is read only and replication is used
Distributed Systems
25
Distributed OS
Multiproc. Multicomp.
Network OS
Middlewarebased OS
Degree of transparency
Same OS on all nodes Number of copies of OS Basis for communication Resource management Scalability Openness
Very High
Yes 1 Shared memory Global, central No Closed
High
Yes N Messages Global, distributed Moderately Closed
Low
No N Files Per node Yes Open
High
No N Model specific Per node Varies Open
26
Distributed Systems
Client-Server Model
Distributed Systems
27
Distributed Systems
28
Distributed Systems
29
Distributed Systems
30
Distributed Systems
31
Distributed Systems
32
computer
Interface-level Processing-level Data-level
(a) Traditional terminal/machine
Distributed Systems
33
Processing-level
Interface-level
(b) two-tiers
Processing-level
Data-level
Client browser
Processing Interface
WEB server
Processing Data (c) three-tiers
Distributed Systems
Data server
Processing Data
34
Distributed Systems
35
Distributed Systems
36
A Modern Architecture
components easy to maintain and manage the system easy to update or re-organize the system easy to enforce different security policies at different levels easy to implement software modules with clearly defined interfaces
Distributed Systems 38