Presentation is loading. Please wait.

Presentation is loading. Please wait.

Distributed Systems1 Chapter 2: Concepts and Architectures CPU Memory I/O Disk(s) Traditional Computer Architecture.

Similar presentations


Presentation on theme: "Distributed Systems1 Chapter 2: Concepts and Architectures CPU Memory I/O Disk(s) Traditional Computer Architecture."— Presentation transcript:

1 Distributed Systems1 Chapter 2: Concepts and Architectures CPU Memory I/O Disk(s) Traditional Computer Architecture

2 Distributed Systems2 Computer System Architectures  Flynn, 1966+1972 classification of computer 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  SIMD - Single Instruction, Multiple Data  MISD - Multiple Instruction, Single Data  MIMD - Multiple Instruction, Multiple Data

3 Distributed Systems3 Flynn Architectures (1) Array Processor Serial Processor CUPU I PU 1 PU n D I D1D1 DnDn CU CU – control unit PU – processor unit I – instruction stream D – data stream SISD SIMD

4 Distributed Systems4 Flynn Architectures (2) CU 1 PU 1 I1I1 D1D1 CU n PU n InIn DnDn Multiprocessor and Multicomputer MIMD CU 1 PU 1 I1I1 D CU n PU n InIn MISD No real examples - possibly some pipeline architectures

5 Distributed Systems5 Processor-Memory Interconnection Network

6 Distributed Systems6 Crossbar switch

7 Distributed Systems7 Multiple stage switch

8 Distributed Systems8 Homogeneous Multicomputer Systems – Processor Arrays Grid Hypercube

9 Distributed Systems9 Loosely coupled multi-computer systems  Distributed Memory Multi-computer  IPC by message passing  Typically PC or workstation clusters  Physically distributed components  Characterized by longer message delays and limited bandwidth MPMPMP network

10 Distributed Systems10 Closely coupled multi-computer systems  Shared Memory Multiprocessor  Processors connected via common bus or fast network  Characterized by short message delays, high  bandwidth  IPC via Shared Memory MPMPMPMP I/O Shared Memory

11 Distributed Systems11 Network based Systems  Network size: number of nodes N  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

12 Distributed Systems12 Desired Properties:  (1) When network size grows arbitrarily, the network distance increases very slowly:  lim D/N = 0  N   (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) Trafic loads are evenly distributed over the network

13 Distributed Systems13 Typical network topologies: star ring B-tree complete regular arbitrary

14 Distributed Systems14 Evaluation of network topologies: starringB-treecompleteregulararbitrary lim D/N=0 N  yes D = 2 No D = N-1 Yes D=2log N Yes D = 1 Yes D =√N Do not know K  degree (n i ) noYes K = 2 Yes K = 3 NoYes K = 4 Do not know Routingeasy hard connectivit y bad Not goodbest good Do not know Even traficnoyesnoyes Do not know

15 Distributed Systems15 Software Concepts  DOS (Distributed Operating Systems)  NOS (Network Operating Systems)  Middleware SystemDescriptionMain Goal DOS Tightly-coupled operating system for multi-processors and homogeneous multicomputers Hide and manage hardware resources NOS Loosely-coupled operating system for heterogeneous multicomputers (LAN and WAN) Offer local services to remote clients Middleware Additional layer atop of NOS implementing general-purpose services Provide distribution transparency

16 Distributed Systems16 Uniprocessor Operating System Separating applications from operating system code through a microkernel.

17 Distributed Systems17 Distributed Operating System Tightly-coupled operating system for multi-processors and homogeneous multi-computers. Strong transparency.

18 Distributed Systems18 DOS: characteristics (1)  Distributed Operating Systems  Allows a multiprocessor or multicomputer network resources to be integrated as a single system image  Hide and manage hardware and software resources  provides transparency support  provide heterogeneity support  control network in most effective way  consists of low level commands + local operating systems + distributed features  Inter-process communication (IPC)

19 Distributed Systems19 DOS: characteristics (2)  remote file and device access  global addressing and naming  trading and naming services  synchronization and deadlock avoidance  resource allocation and protection  global resource sharing  deadlock avoidance  communication security  no examples in general use but many research systems: Amoeba, Chorus etc. see Google “distributed systems research”

20 Distributed Systems20 Network Operating System Loosely-coupled operating system for heterogeneous multi-computers (LAN and WAN). Weak transparency.

21 Distributed Systems21 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

22 Distributed Systems22 Middleware System Additional layer on the top of NOS implementing general- purpose services. Better transparency.

23 Distributed Systems23 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

24 Distributed Systems24 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.

25 Distributed Systems25 Point-to-point Message passing  sender calls send primitive to pass message to sender’s buffer  communication module transmits the message to the destination  destination communication module puts the message to receiver’s buffer  receiver calls receive primitive to get the message

26 Distributed Systems26 Distributed Shared Memory  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

27 Distributed Systems27 Item Distributed OS Network OS Middleware- based OS Multiproc.Multicomp. Degree of transparencyVery HighHighLowHigh Same OS on all nodesYes No Number of copies of OS1NNN Basis for communication Shared memory MessagesFilesModel specific Resource management Global, central Global, distributed Per node ScalabilityNoModeratelyYesVaries OpennessClosed Open Comparison between Systems

28 Distributed Systems28 Client-Server Model

29 Distributed Systems29 Timing interaction between client and server

30 Distributed Systems30 An Example Client and Server (1) header.h

31 Distributed Systems31 An Example Client and Server (2) server.c

32 Distributed Systems32 An Example Client and Server (3) client.c

33 Distributed Systems33 Multi-tiered (client-server) Architectures

34 Distributed Systems34 Comparison of different models(1) terminal Interface-level Processing-level Data-level usercomputer (a) Traditional terminal/machine

35 Distributed Systems35 Comparison of different models(2) Processing Client browserWEB server Processing Data Processing DataInterface Data server Processing-level Interface-level Processing-level Data-level clientserver (b) two-tiers (c) three-tiers

36 Distributed Systems36 Internet search engine into three different layers:

37 Distributed Systems37 Alternative client-server organizations

38 Distributed Systems38 Enterprise(J2EE) Application Model

39 Distributed Systems39 A Modern Architecture An example of horizontal distribution of a Web service.

40 Distributed Systems40 Advantages of Multi-tiered Architectures  flexibility of selecting different hardware 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


Download ppt "Distributed Systems1 Chapter 2: Concepts and Architectures CPU Memory I/O Disk(s) Traditional Computer Architecture."

Similar presentations


Ads by Google