0% found this document useful (0 votes)
88 views9 pages

Introduction, Examples of Distributed Systems, Resource Sharing and The Web, Challenges

The document discusses the characterization of distributed systems. It begins by defining distributed systems as systems where components located at networked computers communicate and coordinate their actions only by message passing. It then provides examples of distributed systems, such as the Internet, intranets, mobile networks, clusters, and grids. The document also discusses some key challenges in designing distributed systems, such as heterogeneity, openness, security, scalability, failure handling, and transparency. Overall, the document aims to precisely define distributed systems and provide examples and design challenges to consider when building such systems.

Uploaded by

VoohaChitta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
88 views9 pages

Introduction, Examples of Distributed Systems, Resource Sharing and The Web, Challenges

The document discusses the characterization of distributed systems. It begins by defining distributed systems as systems where components located at networked computers communicate and coordinate their actions only by message passing. It then provides examples of distributed systems, such as the Internet, intranets, mobile networks, clusters, and grids. The document also discusses some key challenges in designing distributed systems, such as heterogeneity, openness, security, scalability, failure handling, and transparency. Overall, the document aims to precisely define distributed systems and provide examples and design challenges to consider when building such systems.

Uploaded by

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

1.

Characterization of Distributed systems R10 IV/IV CSE

Unit-1 Characterization of Distributed systems

Syllabus: Introduction, Examples of Distributed Systems, Resource Sharing and The


Web, Challenges

Topic 01: 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.

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.

In this , 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.

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
definition of distributed systems has the following significant consequences:

Concurrency

Tasks carry out independently

No global clock

Tasks coordinate their actions by exchanging messages

SACET DS Page 1
1. Characterization of Distributed systems R10 IV/IV CSE

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.

General Examples of Distributed Systems

Internet

Intranets

Mobile networks

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.

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.

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.

SACET DS Page 2
1. Characterization of Distributed systems R10 IV/IV CSE

These devices include:

Laptop computers

Handheld devices

Personal digital assistants(PDAs)


Mobile phones
Pagers
Video cameras
Digital cameras
Wearable devices

Smart watches with functionality similar to a PDA

Devices embedded in appliances

Washing machines
Hi-fi systems
Cars
Refrigerators

SACET DS Page 3
1. Characterization of Distributed systems R10 IV/IV CSE

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.

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.

Topic 02: 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.

Topic 03: Design Challenges of Distributed Systems

Designers of distributed systems need to take the following challenges into account:

SACET DS Page 4
1. Characterization of Distributed systems R10 IV/IV CSE

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.

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.

Transparency

Distribution should be hidden from the user as much as possible.

1.Heterogeneity

Heterogeneous components that must be able to interoperate, apply to all of the


following:

Networks

Hardware architectures

Operating systems

Programming languages

Examples that mask differences in network, operating systems, hardware and software
to provide heterogeneity are

Middleware

Internet protocols

Mobile code

Middleware

Middleware applies to a software layer.

Middleware provides a programming abstraction.

SACET DS Page 5
1. Characterization of Distributed systems R10 IV/IV CSE

Middleware masks the heterogeneity of the underlying networks, hardware,


operating systems and programming languages.

The Common Object Request Broker (CORBA) is a middleware example.

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.

Virtual machine

Virtual machine provides a way of making code executable on any


hardware.

2. 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.

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

3. 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.

Integrity

Protection against alteration or corruption.

Availability

Protection against interference with the means to access the resources.

Security Mechanisms are:

Encryption

Authentication

Authorization

SACET DS Page 6
1. Characterization of Distributed systems R10 IV/IV CSE

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.

4. 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.

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.

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.

5. Failure handling

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

Techniques for dealing with failures:

SACET DS Page 7
1. Characterization of Distributed systems R10 IV/IV CSE

Detecting failures

E.g. Checksums

Masking failures

E.g. Retransmission of corrupt messages

E.g. File redundancy

Tolerating failures

E.g. Exception handling

E.g. Timeouts

Recovery from Failure

E.g. Rollback mechanisms

Redundancy

E.g. Redundant components

6. 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.

Concurrency can be achieved by standard techniques such as semaphores, which are


used in most operating systems.

7. Transparency

Transparency is defined as the hiding of the separation of components in 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.

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).

SACET DS Page 8
1. Characterization of Distributed systems R10 IV/IV CSE

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.

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.

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.

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.

SACET DS Page 9

You might also like