Lesson Overview Lesson Overview Human Chromosomes Lesson Overview 14.1 Human Chromosomes.
Lesson 1-Distributed Overview)
-
Upload
rhoda-morrison -
Category
Documents
-
view
221 -
download
0
Transcript of Lesson 1-Distributed Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 1/72
PART 1
Foundations of Distributed Systems
By Henry Quarshie
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 2/72
Details of PART 1
Distributed Systems (Overview)
Models of Distributed Systems
Distributed Systems Networking &
Internetworking
Interprocess Communication in
Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 3/72
PART 1: Foundations of Distributed Systems
INTRODUCTION
Networks of computers are everywhere.
The Internet is one, as are the many networks of which it is
composed. Examples of existing networks include;
mobile phone networks
corporate networks
factory networks
campus networks
home networks
in-car networks
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 4/72
PART 1: Foundations of Distributed Systems
All of the above, both separately and in
combination, share the essential
characteristics that make them relevant
subjects for study under distributed
systems.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 5/72
PART 1: Foundations of Distributed Systems
Definition
1. A distributed system is defined as one in
which components at networked computers
communicate and coordinate their actions only bypassing messages.
OR
2. A distributed system is defined as one inwhich hardware or software components located atnetworked computers communicate and coordinate
their actions only by passing messages.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 6/72
PART 1: Foundations of Distributed Systems
Definition
3. A distributed system is a collection of
independent computers that appears to its users as a
single coherent system
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 7/72
PART 1: Foundations of Distributed Systems
A look at Definition #3 reveal some important aspects
The first one is that a distributed system consists of components (i.e. software & hardware) that are
autonomous.
A second aspect is that users (i.e. people or programs)think they are dealing with a single system.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 8/72
PART 1: Foundations of Distributed Systems
Examples
of Distributed Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 9/72
PART 1: Foundations of Distributed Systems
1. The Internet
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 10/72
PART 1: Foundations of Distributed Systems
The Internet
Lesson 1: Distributed Systems (Overview)
intranet
ISP
desktop computer:
backbone
satellite link
server:
%
network link:
%
%
%
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 11/72
PART 1: Foundations of Distributed Systems
The Internet
Lesson 1: Distributed Systems (Overview)
The Internet is a vast interconnected collection of
computer networks of many different types.
Programs running on the computers connected to itinteract by passing messages, employing a common
means of communication.
The Internet enables users wherever they are to makeuse of services such as the World Wide Web, email and
file transfer.
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 12/72
PART 1: Foundations of Distributed Systems
The Internet
Lesson 1: Distributed Systems (Overview)
Note: The World Wide Web is not the same as the
Internet.
Also available on the Internet are multimedia services,which enable users to access audio and video data
including music, radio and TV channels and to hold
phone and video conferences.
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 13/72
PART 1: Foundations of Distributed Systems
2. The Intranet
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 14/72
PART 1: Foundations of Distributed Systems
An Intranet is a portion of the Internet that is separatelyadministered and has a boundary that can be configured
to enforce local security policies.
Intranets are linked together by backbones.
A backbone is a network link with a high transmission
capacity,employing satellite connections,
fibre optic cables and
other high-bandwidth circuits.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 15/72
PART 1: Foundations of Distributed Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 16/72
PART 1: Foundations of Distributed Systems
3. Mobile & Ubiquitous
Computing
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 17/72
PART 1: Foundations of Distributed Systems
MOBILE AND UBIQUITOUS COMPUTING
Technological advances in device miniaturization,
improved computing performance and wirelessnetworking have led increasingly to the
integration of small and portable computing
devices into distributed systems.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 18/72
PART 1: Foundations of Distributed Systems
These portable computing devices include laptop computers
handheld devices, including personal digital
assistants (PDAs), mobile phones, pagers, video
cameras and digital cameras
wearable devices, such as smart watches with
functionality similar to PDA
devices embedded in appliances such as washingmachines, hi-fi systems, cars and refrigerators.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 19/72
PART 1: Foundations of Distributed Systems
Portable & Handheld devices in a distributed system
Lesson 1: Distributed Systems (Overview)
Laptop
Mobile
Printer
Camera
Internet
Host intranet Home intranetWAP
Wireless LAN
phone
gateway
Host site
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 20/72
PART 1: Foundations of Distributed Systems
Portable & Handheld devices in a distributed
Lesson 1: Distributed Systems (Overview)
Mobile (Nomadic) computing [Kleinrock 1997]
is the performance of computing tasks while the
user is on the move, or visiting places other thantheir usual environment.
In mobile computing, users who are away from their ‘home’intranet (the intranet at work, or their residence) are still
provided with access to resources via the devices they carry with
them.
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 21/72
PART 1: Foundations of Distributed Systems
Ubiquitous Computing [Weiser 1993] is theharnessing of many small, cheap computational
devices that are present in users’ physical
environments, including the home, office and
even natural settings.
The term ‘ubiquitous’ is intended to suggest that small computingdevices will eventually become so pervasive in everyday objects that
they are scarcely noticed.
That is, their computational behavior will be transparently and
intimately tied up with their physical function.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 22/72
PART 1: Foundations of Distributed Systems
The presence of computers everywhere onlybecomes useful when they can communicatewith one another.
For example, it would be convenient for usersto control their washing machine and their hi-fisystem from a universal remote control devicein the home.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 23/72
PART 1: Foundations of Distributed Systems
The distinction between mobile computing andubiquitous computing is that:
Ubiquitous computing benefit users while they remain in a
single environment like the home, office or hospital whereaswith mobile computing users can still access their networkirrespective of where they are located.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 24/72
PART 1: Foundations of Distributed Systems
So what’s
the motivationDistributed Systems?
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 25/72
PART 1: Foundations of Distributed Systems
The sharing of resources (i.e. the range of things that can usefully be shared in anetworked computer system) is a main
motivation for constructing distributedsystems.
Note: Resources may be managed by servers and accessed
by clients or they may be encapsulated as objects andaccessed by other client objects.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 26/72
PART 1: Foundations of Distributed Systems
These resources includes
hardware components such as disks and printers.
software-defined entities such as files, databases and data
objects of all kinds. stream of video frames that emerges from a digital video
camera and
the audio connection that a mobile phone call represents.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1 F d ti f Di t ib t d S t
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 27/72
PART 1: Foundations of Distributed Systems
RESOURCE SHARING AND THE WEB
Resource is very important. Routinely we share hardwareresources such as printers, data resources such as files, andresources with more specific functionality such as the searchengine.
Users share hardware resources to safe cost. But of far greatersignificance to users is their sharing of the higher-levelresources that play a part in their applications and in theireveryday work and social activities. For example, users areconcerned with sharing data in the form of shared databases ora set of web pages – not the disks and processors that those areimplemented on.
Similarly, users think in terms of shared resources such as asearch engine or a currency converter, without regard for theserver or servers that provide these.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 28/72
PART 1: Foundations of Distributed Systems
RESOURCE SHARING AND THE WEB
The patterns of resource sharing vary widely in their scopeand in how closely users work together.
One pattern is that, a search engine on the Web provides afacility to users throughout the world, users who need never
come into contact with one another directly.
Another pattern may be in the form of a computer-supportedcooperative working (CSCW), which is a group of users, whocooperate directly by sharing resources such as documents in a
small, closed group. Note that, the pattern of sharing and thegeographic distribution of particular users determine whatmechanisms the system must supply to coordinate users’actions.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 29/72
PART 1: Foundations of Distributed Systems
RESOURCE SHARING AND THE WEB
Resources in a distributed system are physically encapsulatedwithin computers and can only be accessed from othercomputers by communication.
For effective sharing, each resource must be managed by aprogram that offers a communication interface enabling theresource to be accessed and updated reliably and consistently.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 30/72
PART 1: Foundations of Distributed Systems
The World Wide Web
A good example of resource sharing is the WorldWide Web. The World Wide Web is an evolving systemfor publishing and accessing resources and servicesacross the Internet.
Through commonly available web browsers ( such as Internet Explorer, Netscape, Firefox Morzilla, and Pine) users retrieve and view documents of many types,
listen to audio streams and view video streams, andinteract with an unlimited set of services.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 31/72
PART 1: Foundations of Distributed Systems
Note that by default the termsserver and client
refer to processes rather than the computers that
they execute upon, although in everydayparlance those terms also refer to thecomputers themselves.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 32/72
PART 1: Foundations of Distributed Systems
Web Servers and Web Browsers
Lesson 1: Distributed Systems (Overview)
Internet
www.google.com
www.cdk3.net
www.w3c.org
Protocols
Activity.html
http://www.w3c.org/Protocols/Activity.html
http://www.google.comlsearch?q=kindberg
http://www.cdk3.net/
File system of
www.w3c.org
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 33/72
PART 1: Foundations of Distributed Systems
The World Wide Web
The Web is an open system because it can be extendedand implemented in new ways without disturbing itsexisting functionality. Firstly, it operation is based on communication standards and
document standards that are freely published and widelyimplemented.
Secondly, the web is an open system due to the types of resource that can be published and shared on it. A resource on
the web is a web page or some other type of content that can bestored in a file and presented to the user, such as program files,media files, and documents in PostScript or Portable DocumentFormat.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 34/72
PART 1: Foundations of Distributed Systems
The web is based on three main standard technological components:
The HyperText Markup Language (HTML) is a language for
specifying the contents and layout of pages as they are displayed
by web browsers.
Uniform Resource Locators (URLs) which identify documents
and other resources stored as part of the web.
A client-server system architecture, with standard rules for
interaction (the HyperText Transfer Protocol - HTTP) by which
browsers and other clients fetch documents and other resources
from web servers.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 35/72
PART 1: Foundations of Distributed Systems
Characteristics
of
Distributed Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 36/72
PART 1: Foundations of Distributed Systems
1. ConcurrencyIn a network of computers, this is characterized
by concurrent program execution, sharing of
resources such as web pages or files whennecessary.
Also, the capacity of the system to handle
shared resources can be increased by addingmore resources (for example computers) to
the network.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 37/72
PART 1: Foundations of Distributed Systems
2. No Global Clock Programs need to corporate and they do so by coordinating
their actions through exchanging messages. Close
coordination often depends on a shared idea of the time at
which the programs’ actions occur.
But since there are limits to the accuracy with which
computers in a network can synchronize their clocks, thereis no single global notion of the correct time. This is so
because of the fact that the only communication is by
sending messages through a network.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 38/72
PART 1: Foundations of Distributed Systems
3. Independent Failures Each component in the network can fail
independently. Faults in the network can led to the
isolation of the computers that are connected to it,but that does not mean that they stop running.
Also, the failure of a computer, or the unexpectedtermination of a program somewhere in the system
(a crash) is not immediately made known to other
components with which it communicates.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 39/72
PART 1: Foundations of Distributed Systems
Challenges
facing
Distributed Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 40/72
PART 1: Foundations of Distributed Systems
THESE ARE
Heterogeneity
Openness
Security
Scalability
Failure Handling
Concurrency Transparency
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 41/72
PART 1: Foundations of Distributed Systems
Heterogeneity
The term heterogeneity implies variety and difference.The internet enables users to access services and runapplications over a heterogeneous collection of
computers and networks.
Heterogeneity applies to all the following: Networks
Computer hardware
Operating systems
Programming languages
Implementations by different developers
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 42/72
PART 1: Foundations of Distributed Systems
Heterogeneity
One way to mitigate this challenge is through the use of middleware.
Middleware is a software layer that provides a programming
abstraction as well as masking the variety and difference of theunderlying networks, hardware, operating systems and programminglanguages.
Examples of middleware are
CORBA – Common Object Request BrokerRMI - Java Remote Invocation
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 43/72
PART 1: Foundations of Distributed Systems
Openness
The openness of a computer system is the characteristicthat determines whether the system can be extendedand re-implemented in various ways.
The openness of distributed systems is determinedprimarily by the degree to which new resource sharingservices can be added and be made available for use bya variety of client programs.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 44/72
PART 1: Foundations of Distributed Systems
Openness
In short
Open systems are characterized by the fact that their keyinterfaces are published.
Open distributed systems are based on the provision of a
uniform communication mechanism and published interfacesfor access to shared resources.
Open distributed systems can be constructed fromheterogeneous hardware and software, possibly from differentvendors. But the conformance of each component to thepublished standard must be carefully tested and verified if thesystem is to work correctly.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 45/72
Security
The information resources that are made available andmaintained in distributed systems have a high intrinsicvalue to their users.
Security for Information resources have threecomponents: Confidentiality - protection against disclosure to unauthorized
individuals
I ntegrity - protection against alteration or corruption
Availability – protection against interference with the means toaccess the resources
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 46/72
Security
A second security challenge is identifying a remote useror other agent correctly. The use of encryption is oneway of meeting this challenge.
Despite the success in providing solutions to some of the security challenges, there are still some securitychallenges that have not as at yet been completely met.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 47/72
Security
These are
Denial of service attacks – is the situation where auser may wish to disrupt service by bombarding the
service with such a large number of pointlessrequests that the serious users are unable to use theservice.
Security of mobile code – is the situation where onereceives an executable program as an electronic mailattachment: the possible effects of running theprogram are unpredictable.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 48/72
PART 1: Foundations of Distributed Systems
Scalability
A distributed system is said to be scalable if it remain
effective when there is a significant increase in the
number of resources and the number of users.
The internet is an example of a distributed
system in which the number of computers and
services has increased dramatically.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 49/72
PART 1: Foundations of Distributed Systems
Scalability
Lesson 1: Distributed Systems (Overview)
WORLD INTERNET USAGE AND POPULATION STATISTICS
World RegionsPopulation( 2009 Est.)
Internet UsersDec. 31, 2000
Internet UsersLatest Data
Penetration(% Population)
Growth2000-2009
Users %of Table
Africa 991,002,342 4,514,400 86,217,900 8.7 % 1,809.8 % 4.8 %
Asia 3,808,070,503 114,304,000 764,435,900 20.1 % 568.8 % 42.4 %
Europe 803,850,858 105,096,093 425,773,571 53.0 % 305.1 % 23.6 %
Middle East 202,687,005 3,284,800 58,309,546 28.8 % 1,675.1 % 3.2 %
North America 340,831,831 108,096,800 259,561,000 76.2 % 140.1 % 14.4 %
Latin America/Caribbean
586,662,468 18,068,919 186,922,050 31.9 % 934.5 % 10.4 %
Oceania / Australia 34,700,201 7,620,480 21,110,490 60.8 % 177.0 % 1.2 %
WORLD TOTAL 6,767,805,208 360,985,492 1,802,330,457 26.6 % 399.3 % 100.0 %
Internet Usage and World Population Statistics are for December 31, 2009.Source: Internet Stats
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 50/72
PART 1: Foundations of Distributed Systems
Scalability
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
YEAR Users Population % Pen.
2000 30,000 18,881,600 0.2 %
2006 401,300 21,801,662 1.8 %
2008 880,000 23,382,848 3.8 %
2009 997,000 23,887,812 4.2 %
Source: Internet Stats
Ghana Internet Usage and Population Growth:
23,887,812 population for 2009, according to Census Bureau
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 51/72
PART 1: Foundations of Distributed Systems
Scalability
Challenges facing scalable distributed systems include:
Controlling the cost of physical resources – As the demand for a
resource grows, it should be possible to extend the system, at
reasonable cost to meet it. For example, the frequency with which
files are accessed in an intranet is likely to grow as the number of
users and computers increases. It must be possible to add server
computers to avoid the performance bottleneck that would arise if a
single file server had to handle all file access requests.
Controlling the performance loss – this is the management of a set of
data whose size is proportional to the number of users or resources in
the system. Note, algorithms that use hierarchic structures scale better
than those that use linear structures.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 52/72
PART 1: Foundations of Distributed Systems
ScalabilityChallenges facing scalable distributed systems include:
Preventing software resources running out – An exampleof lack of scalability is shown by the numbers used as
Internet (IP) addresses. The supply of Internet addresses isrunning out and a new version of the protocol with 128-bitInternet address is being considered.
Avoiding performance bottlenecks – algorithms should be
decentralized to avoid having performance bottleneckssince some shared resources are accessed very frequently bymany users and this can cause a decline in performance. Away to meet this challenge is by catching and replication
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 53/72
PART 1: Foundations of Distributed Systems
Failure Handling
When faults occur in hardware or software, programsmay produce incorrect results or may stop before theyhave completed the intended computation.
Failures in a distributed system are partial – that is,some components fail while others continue tofunction.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 54/72
PART 1: Foundations of Distributed Systems
Failure Handling
The following are techniques for dealing with failures in adistributed system.
Detecting failures – checksums can be used to detect
corrupted data in a message or file. Masking failures – Some failures that have been detected can
be hidden or made less severe.
Two examples of hiding failures
messages can be retransmitted when they fail to arrive
file data can be written to a pair of disks so that if one iscorrupted , the other may still be correct.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
i f i i S
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 55/72
PART 1: Foundations of Distributed Systems
Failure Handling
Tolerating failures – most of the services in the internet do exhibit
failures, it would not be practical for them to attempt to detect
and hide all of the failures that might occur in such a large
network with so many components. Their clients can be designed
to tolerate failures, which generally involve the users tolerating
them as well.
Recovery from failures – Recovery involves the design of software so
that the state of permanent data can be recovered or rolled back after a server has crashed. In general, computations performed by
some programs will be incomplete when a fault occurs, and the
permanent data that they update (files and other material stored in
permanent storage) may not be in a consistent state.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1 F d i f Di ib d S
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 56/72
PART 1: Foundations of Distributed Systems
Failure Handling Redundancy – Services can be made to tolerate failures by the use of
redundant components. Example;
There should always be at least two different routes between any
two routers in the internet. In the Domain Name System, every name table is replicated in at
least two different servers.
A database may be replicated in several servers to ensure that the
data remains accessible after the failure of any single server; theservers can be designed to detect faults in their peers; when a
fault is detected in one server, and clients are redirected to the
remaining servers.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1 F d ti f Di t ib t d S t
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 57/72
PART 1: Foundations of Distributed Systems
ConcurrencyThis is the situation where both services and applications provide
resources that can be shared by clients in a distributed system.
There is therefore the possibility that several clients will attempt
to access a shared resource at the same time.
Thus any object that represents a shared resource in a distributed
system must be responsible for ensuring that it operates correctly
in a concurrent environment. This applies not only to servers but
also to objects in applications.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1 F d ti f Di t ib t d S t
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 58/72
PART 1: Foundations of Distributed Systems
ConcurrencyFor an object to be safe in a concurrent environment, its
operations must be synchronized in such a way that its data
remains consistent. This can be achieved by standard techniques
such as semaphores, which are used in most operating systems.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1 Fo ndations of Distrib ted S stems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 59/72
PART 1: Foundations of Distributed Systems
TransparencyTransparency is defined as the concealment from the
user and the application programmer of the separation
of components in a distributed system, so that thesystem is perceived as a whole rather than as a
collection of independent components.
There are eight forms of transparency.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 60/72
PART 1: Foundations of Distributed Systems
TransparencyThese are;
Access transparency: enables local and remote resources to
be accessed using identical operations.
Location transparency: enables resources to be accessed
without knowledge of their physical or network location (for
example, which building or IP address).
Concurrency transparency: enables several processes to
operate concurrently using shared resources without
interference between them.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 61/72
PART 1: Foundations of Distributed Systems
Transparency
Replication transparency: enables multipleinstances of resources to be used to increasereliability and performance without knowledge of
the replicas by users or application programmers.
Failure transparency: enables the concealment of faults, allowing users and application programs tocomplete their tasks despite the failure of hardware
or software components.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 62/72
PART 1: Foundations of Distributed Systems
Transparency
Mobility transparency: allows the movement of resources and clients within a system withoutaffecting the operation of users or programs.
Performance transparency: allows the system to bereconfigured to improve performance as loads vary.
Scaling transparency: allows the system andapplications to expand in scale without change to thesystem structure or the application algorithms.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 63/72
PART 1: Foundations of Distributed Systems
Types
of Distributed Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 64/72
PART 1: Foundations of Distributed Systems
The types of Distributed Systems are:
i. Distributed Computing Systems
ii. Distributed Information Systems
iii. Distributed Embedded Systems
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 65/72
PART 1: Foundations of Distributed Systems
Distributed Computing Systems
- Cluster Computing
- Grid Computing
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 66/72
PART 1: Foundations of Distributed Systems
Cluster Computing
For cluster computing, the underlying hardware consists of acollection of similar workstations or PCs, closely connected bymeans of a high speed local-area network.
Also, each node runs the same operating system.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 67/72
PART 1: Foundations of Distributed Systems
Grid Computing
Consists of distributed systems that are often constructed as afederation of computer systems, where each system may fallunder a different administrative domain, and may be verydifferent when it comes to hardware, software, and deployed
network technology.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 68/72
y
NOTE:
A characteristic feature of cluster computing is its homogeneity.In most cases, the computers in a cluster are largely the same,they all have the same operating system, and are all connectedthrough the same network.
In contrast, grid computing systems have a high degree of heterogeneity: no assumptions are made concerning hardware,operating systems, networks, administrative domains, securitypolicies etc.
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 69/72
y
Distributed Information Systems
Client processes send request to server process(es) to execute anoperation. These operations usually are operations carried out ondatabases in the form of transactions.
Thus they are usually known as Transaction Processing Systems.
Such systems require a transaction processing monitor.
For example the iSchool Software
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 70/72
y
Distributed Embedded/Pervasive Systems
Most devices used are small, battery-powered, mobile, andhaving a wireless connection.
Three requirements for pervasive applications are
1. Embrace contextual changes
2. Encourage ad hoc composition
3. Recognize sharing as the default.
Distributed Pervasive Systems are implemented ini. Home Systems
ii. Electronic Health Care Systems
iii. Sensor Networks
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 71/72
y
REFERENCES
George Coulouris, Jean Dollimore, and Tim Kindberg, Distributed
Systems Concepts & Design, Addison-Wesley (2005)
A Taxonomy of Distributed Systems by Paul Krzyzanowski,
www.pk.org/rutgers
http://www.cs.vu.nl/~steen/courses/ds-slides/notes.01.pdf
http://www.cis.upenn.edu/~lee/07cis505/Lec/lec-ch1-DistSys-v4.pdf
http://www.gridbus.org/papers/InfoNet-Article06.pdf
http://en.wikipedia.org/wiki/Distributed_computing
Lesson 1: Distributed Systems (Overview)
Distributed Systems (Overview)
PART 1: Foundations of Distributed Systems
8/3/2019 Lesson 1-Distributed Overview)
http://slidepdf.com/reader/full/lesson-1-distributed-overview 72/72
END
Lesson 1: Distributed Systems (Overview)