100% found this document useful (1 vote)
467 views49 pages

From Chapter 1 of Distributed Systems Concepts and Design, 4 Edition

This document discusses distributed systems and provides examples. It defines a distributed system as a collection of independent computers that communicate through message passing and where components can fail independently. Examples given include the Internet, intranets, and mobile networks. Resources are shared over these networked computers to provide services to users.

Uploaded by

sunder V
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
467 views49 pages

From Chapter 1 of Distributed Systems Concepts and Design, 4 Edition

This document discusses distributed systems and provides examples. It defines a distributed system as a collection of independent computers that communicate through message passing and where components can fail independently. Examples given include the Internet, intranets, and mobile networks. Resources are shared over these networked computers to provide services to users.

Uploaded by

sunder V
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 49

CHARACTERIZATION OF

DISTRIBUTED SYSTEMS

From Chapter 1 of Distributed Systems


Concepts and Design,4th Edition,

By G. Coulouris, J. Dollimore and T. Kindberg

Published by Addison Wesley/Pearson


Education June 2005

1
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Topics
 Defining Distributed Systems
 Resource sharing and the Web
 Design Challenges of Distributed Systems

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
2
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 Various definition of distributed systems
have been given in the literature, for
example:
 A collection of logically related data that is
distributed over different processing nodes
of computer network.
 Definition above does not provide all
characteristics of distributed systems.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
3
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 It is difficult to find a definition that provides all
characteristics of distributed systems.
 Another way is a definition that gives a loose
characterization for distributed systems such as:
 A distributed system is a collection of independent
computers that appear to the users of the system
as a single computer.
 With any definition, sharing of resources is a
main motivation for constructing distributed
systems.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
4
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 In this course, we define distributed
systems more precisely as :
 A distributed system is one in which
hardware or software components located
at networked computers communicate and
coordinate their actions only by message
passing.
 Definition above covers the entire range of
distributed systems in which networked
computers can usefully be deployed.
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
5
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 Networks of computers are everywhere!
 Examples of networks of computers are:
 Mobile phone networks
 Corporate networks
 Factory networks
 Campus networks
 Home networks
 In-car networks
 On board networks in aero planes and
trains

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
6
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 Our definition of distributed systems has
the following significant consequences:
 Concurrency
 Tasks carry out independently
 No global clock
 Tasks coordinate their actions by
exchanging messages

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
7
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Defining Distributed Systems


 Independent Failures
 Faults in the network result in the isolation
of the computers that are connected to it.
 Each component of the system can fail
independently, leaving the others still
running.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
8
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 Internet
 Intranets
 Mobile networks

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
9
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 The Internet
 The Internet is a vast interconnected
collection of computer networks of many
different types.
 Multimedia services are available in the
Internet enabling users to access audio
and video data including music, radio, TV
channels, phone, and video conferencing.
(Figure 1)

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
10
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems

intranet %
%
% ISP

backbone

satellite link

desktop computer:
server:
network link:

Figure 1. A typical portion of the Internet


Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
11
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 Intranet
 An intranet is a portion of the Internet that
is separately administered and has a
boundary that can be configured to
enforce local security policies.
(Figure 2)

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
12
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


email s erv er Desktop
computers
print and other s erv ers

Loc al area
Web server netw ork

email s erv er
print
File s erv er
other s erv ers
the res t of
the Internet
router/f irew all

Figure 2. A typical Interanet


Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
13
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 Mobile networks
 Technological advances in device
miniatorization and wireless networking
have led increasingly to the integration of
small and portable computing devices into
distributed systems.
 These devices include:
 Laptop computers

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
14
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 Handheld devices
• Personal digital assistants(PDAs)
• Mobile phones
• Pagers
• Video cameras
• Digital cameras

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
15
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems


 Wearable devices
 Smart watches with functionality similar to a
PDA
 Devices embedded in appliances
 Washing machines
 Hi-fi systems
 Cars
 Refrigerators
(Figure 3)

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
16
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

General Examples of Distributed Systems

Internet

Host intranet WAP


Wireless LAN gatew ay Home intranet

Mobile
phone
Printer Laptop
Camera Host site

Figure 3. Portable and handheld devices in a distributed system.


Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
17
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Other Examples of Distributed Systems


 Cluster
 A type of parallel or distributed processing
system, which consists of a collection of
interconnected stand-alone computers
cooperatively working together as a single,
integrated computing resource. The
computers may be standard per
uniprocessor or multiprocessor.
 A cluster can be used for providing highly
scalable services such as search engines
provide for users all over the Internet.
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
18
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Other Examples of Distributed Systems


 Grid
 A type of parallel and distributed system
that enables the sharing, selection, and
aggregation of geographically distributed
autonomous resources dynamically at
runtime depending on their availability,
capability, performance, cost, and users'
quality-of-service requirements.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
19
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Resource sharing and the Web


 The World Wide Web
 The World Wide Web is an evolving
system for publishing and accessing
resources and services across the
Internet.
(Figure 4)

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
20
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Resource sharing and the Web

http://www.google.com/search?q=Buyya
www.google.com

Web servers Browsers

www.cdk3.net
http://www.cdk3.net/

www.w3c.org

File system of http://www.w3c.org/Protocols/Activity.html


www.w3c.org Protocols

Activity.html
Figure 4. Web servers and web browsers.
21
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Design Challenges of Distributed Systems


 Designers of distributed systems need to
take the following challenges into account:
 Heterogeneity
 Heterogeneous components must be able
to interoperate.
 Openness
 Interfaces should allow components to be
added or replaced.
 Security
 The system should only be used in the way
intended.
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
22
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Design Challenges of Distributed Systems


 Scalability
 System should work efficiently with an
increasing number of users.
 System performance should increase with
inclusion of additional resources.
 Failure handling
 Failure of a component (partial failure)
should not result in failure of the whole
system.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
23
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Design Challenges of Distributed Systems


 Transparency
 Distribution should be hidden from the user
as much as possible.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
24
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Heterogeneity
 Heterogeneous components that must be
able to interoperate, apply to all of the
following:
 Networks
 Hardware architectures
 Operating systems
 Programming languages

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
25
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Heterogeneity
 Examples that mask differences in
network, operating systems, hardware and
software to provide heterogeneity are
 Middleware
 Internet protocols
 Mobile code

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
26
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Heterogeneity
 Middleware
 Middleware applies to a software layer.
 Middleware provides a programming
abstraction.
 Middleware masks the heterogeneity of the
underlying networks, hardware, operating
systems and programming languages.
 The Common Object Request Broker
(CORBA) is a middleware example.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
27
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Heterogeneity
 Mobile code
 Mobile code is the code that can be sent
from one computer to another and run at the
destination.
 Java applets are the example of mobile
codes.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
28
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Heterogeneity
 Virtual machine
 Virtual machine provides a way of making
code executable on any hardware.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
29
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Openness
 Distributed systems must be extensible.

 Openness of a computer system is the


characteristic that determines whether the
system can be extended and re-
implemented in various ways.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
30
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Openness
 The first step in openness is publishing
the documentation of software
components and interfaces of the
components to make them available to
software developers.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
31
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Security
 Security of a computer system is the
characteristic that the resources are
accessible to authorized users and used in
the way they are intended.

 Security for information resources has


three components:
 Confidentiality
 Protection against disclosure to
unauthorized individual.
32
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Security
 Integrity
 Protection against alteration or corruption.
 Availability
 Protection against interference with the
means to access the resources.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
33
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Security
 Security Mechanisms are:
 Encryption
 Authentication
 Authorization

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
34
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Security challenges
 Denial of service attacks
 Denial of service attacks is an attempt to
make a computer resource unavailable to
its intended users.
 Security of mobile code
 Mobile code needs to be handled with
care.
 E.g. receiving an executable program as an
electronic mail attachment to display an interesting
picture but in reality it may access local resources, or
perhaps be part of a denial of service attack.
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
35
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Scalability
 Scalable distributed systems operate
effectively and efficiently at many different
scales, ranging from a small Intranet to the
Internet.

 Scalable distributed systems remain


effective when there is a significant
increase in the number of resources and
the number of users.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
36
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Scalability
 Challenges of designing scalable
distributed systems are:
 Controlling the cost of physical resources
 Cost should linearly increase with the
system size.
 Controlling the performance loss
 For example, in hierarchically structured
data, search performance loss due to data
growth should not be beyond O(log n),
where n is the size of data.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
37
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Scalability
 Preventing software resources running out
 An example is the numbers used as Internet
addresses (IP)(32 bit->128-bit)
 Y2K like problem.
 Avoiding performance bottlenecks
 Using decentralized algorithms to avoid
having performance bottlenecks.
 Caching and replication in Web are
examples of providing scalability.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
38
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Failure handling
 Failures in distributed systems are partial,
that is some components fail while others
continue to function.

 Techniques for dealing with failures:


 Detecting failures
 E.g. Checksums
 Masking failures
 E.g. Retransmission of corrupt messages
 E.g. File redundancy
39
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Failure handling
 Tolerating failures
 E.g. Exception handling
 E.g. Timeouts
 Recovery from Failure
 E.g. Rollback mechanisms
 Redundancy
 E.g. Redundant components

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
40
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Concurrency
 With concurrency, services and
applications can be shared by clients in a
distributed system.

 For an object to be safe in a concurrent


environment, its operations must be
synchronized in such a way that its data
remains consistent.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
41
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Concurrency
 Concurrency can be achieved by standard
techniques such as semaphores, which
are used in most operating systems.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
42
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 Transparency is defined as the hiding of
the separation of components in a
distributed systems from the user and the
application programmer.

 With transparency the system is perceived


as a whole rather than a collection of
independent components.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
43
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 Forms of transparencies:
 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).

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
44
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 Concurrency transparency
 Enables several processes to operate
concurrently using shared resources without
interference between them.
 Replication transparency
 Enables multiple instances of resources to
be used to increase reliability and
performance without knowledge of the
replicas by users or application
programmers.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
45
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 Failure transparency
 Enables the concealment of faults, allowing
users and application programs to complete
their tasks despite the failure of hardware or
software components.
 Mobility transparency
 Allows the movement of resources and
clients within a system without affecting the
operation of users or programs.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
46
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 Performance transparency
 Allows the system to be reconfigured to
improve performance as loads vary.
 Scaling transparency
 Allows the system and applications to
expand in scale without change to the
system structure or the application
algorithms.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
47
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Transparency
 The two most important transparencies
are access and location transparency
referred to together as network
transparency.

 Presence or absence of network


transparency most strongly affects the
utilization of distributed resources.

Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
48
CHARACTERIZATION OF DISTRIBUTED SYSTEMS

Question 1.10
 The INFO service manages a potentially very
large set of resources, each of which can be
accessed by users throughout the Internet by
means of a key (a string name). Discuss an
approach to the design of the names of the
resources that achieves the minimum loss of
performance as the number of resources in the
service increases. Suggest how the INFO
service can be implemented so as to avoid
performance bottlenecks when the number of
users becomes very large
Couloris,Dollimore and Kindberg Distributed Systems: Concepts & Design Edn. 4 , Pearson Education 2005
49

You might also like