40
1/41 Kyung Hee University Introduction Chapter 1

Kyung Hee University 1/41 Introduction Chapter 1

Embed Size (px)

Citation preview

1/41

Kyung Hee University

Introduction

Chapter 1

2/41

Kyung Hee University

Agenda

-Definition

-Hardware concept

-Software concept

-The Client-Server model

3/41

Kyung Hee University

Definition of a Distributed System (1)

A distributed system is:

A collection of independent computers that appears to its

users as a single coherent system.

4/41

Kyung Hee University

Definition of a Distributed System (2)

A distributed system organized as middleware.Note that the middleware layer extends over multiple machines.

1.1

5/41

Kyung Hee University

Goal of Distributed system

• Connecting users to resources

• Openness

• Transparency

• Scalability

6/41

Kyung Hee University

Transparency in a Distributed System

Different forms of transparency in a distributed system.

Transparency Description

AccessHide differences in data representation and how a resource is accessed

Location Hide where a resource is located

Migration Hide that a resource may move to another location

RelocationHide that a resource may be moved to another location while in use

Replication Hide that a resource is replicated

ConcurrencyHide that a resource may be shared by several competitive users

Failure Hide the failure and recovery of a resource

PersistenceHide whether a (software) resource is in memory or on disk

7/41

Kyung Hee University

Scalability Problems

Examples of scalability limitations.

Concept Example

Centralized services A single server for all users

Centralized data A single on-line telephone book

Centralized algorithmsDoing routing based on complete information

8/41

Kyung Hee University

Scaling Techniques (1)

1.4

The difference between letting:

a) a server or

b) a client check forms as they are being filled

9/41

Kyung Hee University

Scaling Techniques (2)

1.5

An example of dividing the DNS name space into zones.

10/41

Kyung Hee University

Hardware Concepts

1.6

Different basic organizations and memories in distributed computer systems

11/41

Kyung Hee University

Multiprocessors (1)

A bus-based multiprocessor.

1.7

12/41

Kyung Hee University

Multiprocessors (2)

a) A crossbar switchb) An omega switching network

1.8

13/41

Kyung Hee University

Multicomputers

• Each node is an autonomous machinePrivate memory

• Lower traffic than multiprocessorsCPU – CPU versus CPU – Memory traffic

• Homogeneous or Heterogeneous

14/41

Kyung Hee University

• Similar nodesSame processors and memory space

• Homogeneous access to networkSingle network

• Bus-based or point-to-point communication

Homogeneous Multicomputer Systems (1)

15/41

Kyung Hee University

Homogeneous Multicomputer Systems (2)

a) Gridb) Hypercube

1-9

16/41

Kyung Hee University

Heterogeneous Multicomputers

• Different nodesNodes can be complex system

• None-homogeneous access to networkDifferent network

• Distributed systems are commonly built on this H/W category Need S/W to make it transparent

17/41

Kyung Hee University

Software Concepts

An overview between • DOS (Distributed Operating Systems)• NOS (Network Operating Systems)• Middleware

System Description Main Goal

DOSTightly-coupled operating system for multi-processors and homogeneous multicomputers

Hide and manage hardware resources

NOSLoosely-coupled operating system for heterogeneous multicomputers (LAN and WAN)

Offer local services to remote clients

MiddlewareAdditional layer atop of NOS implementing general-purpose services

Provide distribution transparency

18/41

Kyung Hee University

Uniprocessor Operating Systems

Separating applications from operating system code through a microkernel.

1.11

19/41

Kyung Hee University

Multicomputer Operating Systems (1)

General structure of a multicomputer operating system

1.14

20/41

Kyung Hee University

Multicomputer Operating Systems (2)

Alternatives for blocking and buffering in message passing.

1.15

21/41

Kyung Hee University

Distributed Shared Memory Systems (1)

a) Pages of address space distributed among four machines

b) Situation after CPU 1 references page 10

c) Situation if page 10 is read only and replication is used

22/41

Kyung Hee University

Distributed Shared Memory Systems (2)

False sharing of a page between two independent processes.

1.18

23/41

Kyung Hee University

Network Operating System (1)

General structure of a network operating system.

1-19

24/41

Kyung Hee University

Network Operating System (2)

Two clients and a server in a network operating system.

1-20

25/41

Kyung Hee University

Network Operating System (3)

Different clients may mount the servers in different places.

1.21

26/41

Kyung Hee University

DOS and NOS v.s DS

• DOS qualifies as DS?

Computers are not independentEasy to use and transparent

• NOS qualifies as DS?

No single coherent viewScalable and open

27/41

Kyung Hee University

Positioning Middleware

General structure of a distributed system as middleware.

1-22

28/41

Kyung Hee University

Middleware and Openness

In an open middleware-based distributed system, the protocols used by each middleware layer should be the same, as well as the interfaces they offer to applications.

1.23

29/41

Kyung Hee University

Comparison between Systems

A comparison between multiprocessor operating systems, multicomputer operating systems, network operating systems, and middleware based distributed systems.

ItemDistributed OS

Network OS

Middleware-based OSMultipro

c.Multicomp

.

Degree of transparency

Very High High Low High

Same OS on all nodes

Yes Yes No No

Number of copies of OS

1 N N N

Basis for communication

Shared memory

Messages FilesModel

specific

Resource management

Global, central

Global, distributed

Per node Per node

Scalability No Moderately Yes Varies

Openness Closed Closed Open Open

30/41

Kyung Hee University

The Clients and Servers Model

31/41

Kyung Hee University

Client and Server

-Clients request services.-Servers provide services by replying to the requests.

General interaction between a client and a server.

Client

Server

Packaged message

Reply message

32/41

Kyung Hee University

An Example Client and Server (1)The header.h file used by the client and server.Client and server need to agree on a couple things first!

33/41

Kyung Hee University

An Example Client and Server (2)A sample server (A basic server loop) -The server continually listens for new requests (receive).

-Extracting the request and simply executes it.

-It then prepares a response message and sends it back to the requesting client.

34/41

Kyung Hee University

An Example Client and Server (3)Sample Client: using the server to copy a file.

1-27 b

35/41

Kyung Hee University

Application LayeringA client-server application typically consists of three layers:

1.User-Interface level:

+Consists of the programs that allow end users to interact with application.

2.Processing level:

+Implements the application logic (core functionality)

+Typically implemented at the server side 

3.Data level

+Maintain the actual data on which the application operate.

+Also keep data consistent across different application

36/41

Kyung Hee University

Application Layering

The general organization of an Internet search engine into three different layers

1-28

Web browser

Application server

Database server

37/41

Kyung Hee University

Client-Server Architectures

Alternative client-server organizations (a) – (e).

1-29

Two-tiers Architectures

38/41

Kyung Hee University

Client-Server Architectures (con.t)

An example of a server acting as a client.

1-30

Three-tiers Architectures

39/41

Kyung Hee University

Modern Architectures

An example of horizontal distribution of a Web service.

-Vertical distribution Model : where the tiers corresponded directly with the logical organization of the apps (The previous architectures)

-Horizontal distribution Model: where the application layers are physically split up into logically equivalent part-> This is how high-performance web services (e.g., Google, Amazon, E-bay..)

40/41

Kyung Hee University

End of Chapter 1