distributedsystems 090709113230-phpapp02

30
Distributed Systems A Brief Introduction

Upload: amare-lakew

Post on 07-Aug-2015

12 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Distributedsystems 090709113230-phpapp02

Distributed Systems

A Brief Introduction

Page 2: Distributedsystems 090709113230-phpapp02

OUTLINE

BRIEF HISTORY. WHAT ARE DISTRIBUTED

SYSTEMS ? ? WHY DISTRIBUTED SYSTEMS ? ? ADVANTAGES OF D.S. OVER THE

CENTRALIZED SYSTEM. ADVANTAGES OF D.S. OVER

INDEPENDENT PC’S.

Page 3: Distributedsystems 090709113230-phpapp02

OUTLINE (Contd.)

ORGANISATION OF DISTRIBUTED SYSTEM.

GOALS OF D.S.− Resource Sharing.− Openness.− Transparency.− Scalability.

Page 4: Distributedsystems 090709113230-phpapp02

OUTLINE (Contd.)

− Concurrency. TYPES OF DISTRIBUTED SYSTEMS.− Distributed Computing Systems.− Distributed Information Systems.− Distributed Pervasive Systems. SUMMARY.

Page 5: Distributedsystems 090709113230-phpapp02

HISTORY 1945~1985

− Computers were large and expensive.

− No way to connect them.

− All systems were Centralized Systems.

Mid-1980s

− Powerful microprocessors.

− High Speed Computer Networks (LANs , WANs).

Page 6: Distributedsystems 090709113230-phpapp02

HISTORY (Contd.)

Then came the

DISTRIBUTED

SYSTEMS…

Page 7: Distributedsystems 090709113230-phpapp02

What are Distributed Systems ? ?

A distributed system is a piece of software that ensures that: a collection of independent computers appears

to its users as a single coherent system.

Two aspects: (1) independent computers and (2) single

system => middleware.

Page 8: Distributedsystems 090709113230-phpapp02

EXAMPLES

World Wide Web (WWW) is the biggest example of distributed system.

Others are The internet An intranet which is a portion of the internet

managed by an organization

Page 9: Distributedsystems 090709113230-phpapp02

WHY DISTRIBUTED SYSTEMS ? ?

availability of powerful yet cheap microprocessors (PCs, workstations),

continuing advances in communication technology

Page 10: Distributedsystems 090709113230-phpapp02

ADVANTAGES OF D.S. OVER CENTRALIZED SYSTEM:

Economics:

A collection of microprocessors offer a better price/performance than mainframes. Low price/performance ratio:  cost effective way to increase computing power.

Reliability: If one machine crashes, the system as a whole

can still survive. Higher availability and improved reliability.

Page 11: Distributedsystems 090709113230-phpapp02

ADVANTAGES (Contd.)

Speed: a distributed system may have more total computing power than a mainframe. 

Ex.: 10,000 CPU chips, each running at 50 MIPS. Not possible to build 500,000 MIPS single processor.

Enhanced performance through load distributing.

Page 12: Distributedsystems 090709113230-phpapp02

ADVANTAGES (Contd.)

Incremental growth: Computing power can be added in small increments. This leads to Modular expandability

Page 13: Distributedsystems 090709113230-phpapp02

ADVANTAGES OF D.S. OVER INDEPENDENT PCs:

Data sharing: allow many users to access to a common data base.

Resource Sharing: expensive peripherals like color printers.

Page 14: Distributedsystems 090709113230-phpapp02

ADVANTAGES (Contd.)

Communication: enhance human-to-human communication. E.g.: email, chat.

Flexibility: spread the workload over the available machines

Page 15: Distributedsystems 090709113230-phpapp02

ORGANIZATION OF D.S.:

A distributed system organized as middleware. − The middleware layer extends over multiple machines, and offers each application the same interface.

Page 16: Distributedsystems 090709113230-phpapp02

GOALS OF D.S. :

− Resource Sharing.− Openness.− Transparency.− Scalability.− Concurrency.

Page 17: Distributedsystems 090709113230-phpapp02

RESOURCE SHARING: With Distributed Systems, it is easier for users to

access remote resources and to share resources with other users.

− Examples: printers, files, Web pages, etc A distributed system should also make it easier for

users to exchange information. Easier resource and data exchange could cause

security problems – a distributed system should deal with this problem.

Page 18: Distributedsystems 090709113230-phpapp02

OPENNESS:

The openness of DS is determined primarily by the degree to which new resource-sharing services can be added and be made available for use by a variety of client programs.

Page 19: Distributedsystems 090709113230-phpapp02

TRANSPARENCY:

It hides the fact that the processes and resources are physically distributed across multiple computers.

Transparency is of various forms as follows:

Page 20: Distributedsystems 090709113230-phpapp02

TRANSPARENCY (Contd.)

Page 21: Distributedsystems 090709113230-phpapp02

SCALABILITY:

A system is described as scalable if it remains effective when there is a significant increase in the number of resources and the number of users.

Challenges: Controlling the cost of resources or money. Controlling the performance loss.

Page 22: Distributedsystems 090709113230-phpapp02

CONCURRENCY:

There is a possibility that several clients will attempt to access a shared resource at the same time.

Any object that represents a shared resource in a distributed system must be responsible for ensuring that operates correctly in a concurrent environment.

Page 23: Distributedsystems 090709113230-phpapp02

TYPES OF D.S. :

Distributed Computing Systems.− Cluster Computing Systems.− Grid Computing Systems.

Distributed Information Systems.

Distributed Pervasive Systems.

Page 24: Distributedsystems 090709113230-phpapp02

DISTRIBUTED COMPUTING SYSTEMS:

Goal: High performance computing tasks.

Cluster Computing Systems:− A “supercomputer” built from “off the

shelf” computer in a high-speed network (usually a LAN)

− Most common use: a single program is run in parallel on multiple machines

Page 25: Distributedsystems 090709113230-phpapp02

(Contd.)

Grid Computing Systems:− Contrary to clusters, grids are usually

composed of different types of computers (hardware, OS, network, security, etc.)

− Resources from different organizations are brought together to allow collaboration

− Examples: SETI@home, WWW…

Page 26: Distributedsystems 090709113230-phpapp02

DISTRIBUTED INFORMATION SYSTEMS:

Goal: Distribute information across several Servers.

− Remote processes called Clients access the servers to manipulate the information

− Different communication models are used. The most usual are RPC (Remote Procedure Calls) and the object oriented RMI (Remote Method Invocations)

Page 27: Distributedsystems 090709113230-phpapp02

(Contd.)

− Often associated with Transaction systems− Examples: Banks; Travel agencies; Rent-a-Cars’; Etc…

Page 28: Distributedsystems 090709113230-phpapp02

DISTRIBUTED PERVASIVE SYSTEMS:

− These are the distributed systems involving mobile and embedded computer devices like Small, wireless, battery-powered devices (PDA’s, smart phones, sensors, wireless surveillance cams, portable ECG monitors, etc.)

− These systems characterized by their “instability” when compared to more “traditional” distributed systems

Page 29: Distributedsystems 090709113230-phpapp02

(Contd.)

− Pervasive Systems are all around us, and ideally should be able to adapt to the lack of human administrative control:

Automatically connect to a different network; Discover services and react accordingly; Automatic self configuration (E.g.: UPnP –

Universal Plug and Play)…− Examples: Home Systems, Electronic Health Care

Systems, Sensor Networks, etc.

Page 30: Distributedsystems 090709113230-phpapp02

SUMMARY

Distributed systems are everywhere Internet, intranet, wireless networks.

Resource sharing is the main motivating factor for constructing distributed systems.

The construction of distributed systems produces many challenges like Secure communication over public networks.