distributed system ppt

Post on 22-Jan-2018

240 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

www.oeclib.in

Submitted By:

Odisha Electronics Control Library

Seminar

On

Distributed Systems

CONTENT

What is a Distributed System

Types of Distributed Systems

Examples of Distributed Systems

Common Characteristics

Basic Design Issues

Advantages

Disadvantages

Conclusion

2

1. WHAT IS A DISTRIBUTED SYSTEM?

Definition: A distributed system is one in which components

located at networked computers communicate and coordinate

their actions only by passing messages. This definition leads

to the following characteristics of distributed systems:

Concurrency of components

Lack of a global ‘clock’

Independent failures of components

3

2. TYPES OF DISTRIBUTED SYSTEMS

Distributed Computing Systems.

Distributed Information Systems.

Distributed Pervasive Systems.

Distributed Computing Systems: The distributed

computing systems include the following:

Cluster computing systems

Grid computing systems

4

Distributed Informative Systems: In the distributed

systems, the following forms are concentrated:

Transaction processing systems

Enterprise application integration

Distributed Pervasive Systems: Few examples of

distributed pervasive systems are as below:

Home systems

Electronic health care systems

Sensor networks

5

3. EXAMPLES OF DISTRIBUTED SYSTEMS

Local Area Network and Intranet

Database Management System

Automatic Teller Machine Network

Internet/World-Wide Web

Mobile and Ubiquitous Computing

6

3.1 LOCAL AREA NETWORK

the res t of

em ail server

Web server

Desktopcomputers

File serv er

router/ f irewall

print and other serv ers

other servers

print

Local area

network

em ail server

the Internet

7

3.2 DATABASE MANAGEMENT SYSTEM

8

3.3 AUTOMATIC TELLER MACHINE NETWORK

9

3.4 INTERNET

intranet

ISP

desktop computer:

backbone

satellite link

server:

%

network link:

%

%

%

10

3.4.1 WORLD-WIDE-WEB

11

3.4.2 WEB SERVERS AND WEB BROWSERS

Internet

BrowsersWeb servers

www.google.com

www.uu.se

www.w3c.org

Protocols

Activity.html

http://www.w3c.org/Protocols/Activity.html

http://www.google.comlsearch?q=lyu

http://www.uu.se/

File system of

www.w3c.org

12

3.5 MOBILE AND UBIQUITOUS COMPUTING

Laptop

Mobile

Printer

Camera

Internet

Host intranet Home intranetGSM/GPRS

Wireless LAN

phone

gateway

Host site

13

4. COMMON CHARACTERISTICS

What are we trying to achieve when we construct a distributed system?

Certain common characteristics can be used to assess distributed systems

Heterogeneity

Openness

Security

Scalability

Failure Handling

Concurrency

Transparency

14

4.1 HETEROGENEITY

Variety and differences in

Networks

Computer hardware

Operating systems

Programming languages

Implementations by different developers

Middleware as software layers to provide a programming abstraction as well as masking the heterogeneity of the underlying networks, hardware, OS, and programming languages (e.g., CORBA).

Mobile Code to refer to code that can be sent from one computer to another and run at the destination (e.g., Java applets and Java virtual machine).

15

4.2 OPENNESS

Openness is concerned with extensions and

improvements of distributed systems.

Detailed interfaces of components need to be published.

New components have to be integrated with existing

components.

Differences in data representation of interface types on

different processors (of different vendors) have to be

resolved.

16

4.3 SECURITY

In a distributed system, clients send requests to access data managed by servers, resources in the networks: Doctors requesting records from hospitals

Users purchase products through electronic commerce

Security is required for: Concealing the contents of messages: security and privacy

Identifying a remote user or other agent correctly (authentication)

New challenges: Denial of service attack

Security of mobile code

17

4.4 SCALABILITY

Adaptation of distributed systems to

accommodate more users

respond faster (this is the hard one)

Usually done by adding more and/or faster processors.

Components should not need to be changed when scale

of a system increases.

Design components to be scalable!

18

4.5 FAILURE HANDLING (FAULT TOLERANCE)

Hardware, software and networks fail!

Distributed systems must maintain availability even at

low levels of hardware/software/network reliability.

Fault tolerance is achieved by

recovery

redundancy

19

4.6 CONCURRENCY

Components in distributed systems are executed in

concurrent processes.

Components access and update shared resources (e.g.

variables, databases, device drivers).

Integrity of the system may be violated if concurrent

updates are not coordinated.

Lost updates

Inconsistent analysis

20

4.7 TRANSPARENCY

Distributed systems should be perceived by users and

application programmers as a whole rather than as a

collection of cooperating components.

Transparency has different aspects.

These represent various properties that distributed

systems should have.

21

5. BASIC DESIGN ISSUES

General software engineering principles include

rigor and formality, separation of concerns,

modularity, abstraction, anticipation of change, …

Specific issues for distributed systems:

Naming

Communication

Software structure

System architecture

Workload allocation

Consistency maintenance30

5.1 NAMING

A name is resolved when translated into an interpretable form

for resource/object reference.

Communication identifier (IP address + port number)

Name resolution involves several translation steps

Design considerations

Choice of name space for each resource type

Name service to resolve resource names to comm. id.

Name services include naming context resolution, hierarchical

structure, resource protection

31

5.2 COMMUNICATION

Separated components communicate with sending processes

and receiving processes for data transfer and synchronization.

Message passing: send and receive primitives

synchronous or blocking

asynchronous or non-blocking

Abstractions defined: channels, sockets, ports.

Communication patterns: client-server communication (e.g.,

RPC, function shipping) and group multicast

32

5.3 SOFTWARE STRUCTURE

Layers in centralized computer systems:

Applications

Middleware

Operating system

Computer and Network Hardware

33

5.3 SOFTWARE STRUCTURE

Layers and dependencies in distributed systems:

Applications

Distributed programming

support

Open

services

Open system kernel services

Computer and network hardware

34

5.4 SYSTEM ARCHITECTURES

Client-Server

Peer-to-Peer

Services provided by multiple servers

Proxy servers and caches

Mobile code and mobile agents

Network computers

Thin clients and mobile devices

35

5.4.1 CLIENTS INVOKE INDIVIDUAL SERVERS

Serv er

Client

Client

inv ocation

result

Serv erinv ocation

result

Process:Key :

Computer:

36

5.4.2 PEER-TO-PEER SYSTEMS

Application

Application

Application

Peer 1

Peer 2

Peer 3

Peers 5 . . .. N

Sharableobjects

Application

Peer 4

37

5.4.3 A SERVICE BY MULTIPLE SERVERS

Serv er

Serv er

Serv er

Serv ice

Client

Client

38

5.4.4 WEB PROXY SERVER

Client

Proxy

Web

server

Web

server

serverClient

39

5.4.5 WEB APPLETS

a) client reques t results in the downloading of applet code

Web

server

ClientWeb

serverApplet

Applet code

Client

b) client interacts with the applet

40

5.4.6 THIN CLIENTS AND COMPUTE SERVERS

ThinClient

ApplicationProcess

Network computer or PCCompute server

network

41

6.ADVANTAGES

Sharing Data : There is a provision in the environment where

user at one site may be able to access the data residing at

other sites.

Autonomy : Because of sharing data by means of data

distribution each site is able to retain a degree of control over

data that are stored locally.

Availability : If one site fails in a distributed system, the

remaining sites may be able to continue operating. Thus a

failure of a site doesn't necessarily imply the shutdown of the

System.

42

7. DISADVANTAGES

Software Development Cost

Greater Potential for Bugs

increased Processing Overhead

43

REFERENCES

www.google.com

www.wikipedia.com

www.oeclib.in

THANKS

top related