0% found this document useful (0 votes)
34 views

Distributed Computing

The document discusses distributed computing including its definition, motivation, goals, characteristics, examples of applications, advantages and disadvantages, issues and challenges. Distributed computing involves multiple computers communicating over a network to share resources and work on computational problems.

Uploaded by

assad
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Distributed Computing

The document discusses distributed computing including its definition, motivation, goals, characteristics, examples of applications, advantages and disadvantages, issues and challenges. Distributed computing involves multiple computers communicating over a network to share resources and work on computational problems.

Uploaded by

assad
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 27

Presented by :

Muhammad Assad
Waseem

7452
7451

Introduction

Motivation
Goal
Characteristics

Example of Applications
Advantages and Disadvantages
Issues and Challenges
Conclusion

Introduction

Definition
A

distributed system consists of multiple


autonomous computers that communicate
through a computer network.
Distributed computing utilizes a network of
many computers, each accomplishing a portion
of an overall task, to achieve a computational
result much more quickly than with a single
computer.
Distributed computing is any computing that
involves multiple computers remote from each
other that each have a role in a computation
problem or information processing.

Introduction

A distributed system is one in which hardware or


software components located at networked
computers communicate and coordinate their
actions only by message passing.
In the term distributed computing, the word
distributed means spread out across
space. Thus, distributed computing is an activity
performed on a spatially distributed system.
These networked computers may be in the same
room, same campus, same country, or in
different continents

Introduction
Agent

Agent

Cooperation

Agent

Cooperation
Distribution

Distribution

Cooperation

Distribution

Internet
Internet
Subscription

Agent
Distribution

Job Request

Resource
Management

Large-scale
Application

Motivation

Inherently distributed applications


Performance/cost
Resource sharing
Flexibility and extensibility
Availability and fault tolerance
Scalability
Network connectivity is increasing.
Combination of cheap processors often more costeffective than one expensive fast system.
Potential increase of reliability.

Goal

Making Resources Accessible


Data

sharing and device sharing

Distribution Transparency
Access,

location, migration, relocation, replication,


concurrency, failure

Communication
Make

human-to-human comm. easier. E.g.. :


electronic mail

Flexibility
Spread

the work load over the available machines in


the most cost effective way

To coordinate the use of shared resources


To solve large computational problem

Characteristics

Resource Sharing
Openness
Concurrency
Scalability
Fault Tolerance
Transparency

Architecture

Client-server
3-tier architecture
N-tier architecture
loose coupling, ortight coupling
Peer-to-peer
Space based

Application

Examples of commercial application :


Database

Management System
Distributed computing using mobile agents
Local intranet
Internet (World Wide Web)
JAVA Remote Method Invocation (RMI)

Distributed Computing Using Mobile Agents

Mobile agents can be wandering around in a network using


free resources for their own computations.

Local Intranet

A portion of Internet that is separately administered &


supports internal sharing of resources (file/storage systems
and printers) is called local intranet.

Internet

The Internet is a global system of interconnected computer


networks that use the standardized Internet Protocol Suite (TCP/IP).

JAVA RMI

Embedded in language Java:Object variant of remote procedure call


Adds naming compared with RPC (Remote Procedure Call)
Restricted to Java environments

RMI Architecture

Science

Life Sciences

Cryptography

Internet

Financial

Mathematics

Language

Art

Puzzles/Games

Miscellaneous

Distributed Human Project

Collaborative Knowledge Bases

Charity

Internet Gomez Distributed PEER Client


(peerReview)
Evaluatethe

performance of large websites to


find bottlenecks.

Life Sciences - Compute Against


Cancer(CAC)
Create

immediate impact in the lives of cancer


patients and their families today, while at the
same time empowering the research that will
result in improved therapies and perhaps even
the cure.

Collaborative Knowledge Bases Wikipedia


A

collaborative project to produce a complete


a free encyclopedia from scratch.
The encyclopedia is available in manynonEnglish languages.

Distributed Human Projects- Open Mind Indoor


Common Sense
Helpteach

indoor mobile robots to be


smarter. It will create a repository of
knowledge which will enable people to
create more intelligent mobile robots for
use in home and office environments.

Advantages

Economics:

Speed:

Some applications are inherently distributed. E.g., an ATMbanking application.

Reliability:

A distributed system may have more total computing power than


a mainframe.

Inherent distribution of applications:

Computers harnessed together give a better price/performance


ratio than mainframes.

If one machine crashes, the system as a whole can still survive if


you have multiple server machines and multiple storage devices
(redundancy).

Extensibility and Incremental Growth:

Possible to gradually scale up (in terms of processing power and


functionality) by adding more sources (both hardware and
software). This can be done without disruption to the rest of the
system.

Disadvantages

Complexity :

Network problem:

Lack of experience in designing, and implementing a


distributed system. E.g. which platform (hardware and
OS) to use, which language to use etc.
If the network underlying a distributed system saturates
or goes down, then the distributed system will be
effectively disabled thus negating most of the
advantages of the distributed system.

Security:

Security is a major hazard since easy access to data


means easy access to secret data as well.

Issues and Challenges

Heterogeneity of components : variety or differences that apply to computer


hardware, network, OS, programming language and
implementations by different developers.
All differences in representation must be deal with if
to do message exchange.
Example : different call for exchange message in UNIX
different from Windows.
Openness: System can be extended and re-implemented in
various ways.
Cannot be achieved unless the specification and
documentation are made available to software
developer.
The most challenge to designer is to tackle the
complexity of distributed system; design by different
people.

Issues and Challenges cont

Transparency: Aim

: make certain aspects of distribution are


invisible to the application programmer ; focus
on design of their particular application.
They not concern the locations and details of
how it operate, either replicated or migrated.
Failures can be presented to application
programmers in the form of exceptions must be
handled.

Issues and Challenges cont

Transparency: This

concept can be summarize as shown in this


Figure:

Issues and Challenges cont

Security: Security

for information resources in distributed


system have 3 components :
a. Confidentiality : protection against disclosure to
unauthorized individuals.
b. Integrity : protection against alteration/corruption
c. Availability : protection against interference with the
means to access the resources.

The

challenge is to send sensitive information


over Internet in a secure manner and to identify
a remote user or other agent correctly.

Issues and Challenges cont..

Scalability : Distributed

computing operates at many


different scales, ranging from small Intranet to
Internet.
A system is scalable if there is significant
increase in the number of resources and users.
The challenges is :
a. controlling the cost of physical resources.
b. controlling the performance loss.
c. preventing software resource running out.
d. avoiding performance bottlenecks.

Issues and Challenges cont

Failure Handling : Failures

in a distributed system are partial some


components fail while others can function.
Thats why handling the failures are difficult
a. Detecting failures : to manage the presence of failures
cannot be detected but may be suspected.
b. Masking failures : hiding failure not guaranteed in the
worst case.

Concurrency : Where

applications/services process concurrency,


it will effect a conflict in operations with one
another and produce inconsistence results.
Each resource must be designed to be safe in a
concurrent environment.

Conclusion

The concept of distributed computing is the most


efficient way to achieve the optimization.
Distributed computing is anywhere : intranet,
Internet or mobile ubiquitous computing (laptop,
PDAs, pagers, smart watches, hi-fi systems)
It deals with hardware and software systems, that
contain more than one processing / storage and
run in concurrently.
Main motivation factor is resource sharing; such as
files , printers, web pages or database records.
Grid computing and cloud computing are form of
distributed computing.

You might also like