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

Distributed Systems Introduction

The document discusses distributed systems and provides examples. Key points include: - Distributed systems allow computers to communicate and coordinate actions by passing messages between networked computers. Examples include mobile phone networks and corporate intranets. - Distributed systems share both hardware and software resources across a network. This allows for concurrent access but also introduces challenges around failures, security, and heterogeneity. - Emerging trends include ubiquitous computing using devices like smartphones, distributed multimedia, and cloud computing providing computing resources as a utility over the internet. Addressing issues like scalability, availability, and open standards is important for distributed systems.

Uploaded by

sangeetha
Copyright
© © All Rights Reserved
0% found this document useful (0 votes)
95 views

Distributed Systems Introduction

The document discusses distributed systems and provides examples. Key points include: - Distributed systems allow computers to communicate and coordinate actions by passing messages between networked computers. Examples include mobile phone networks and corporate intranets. - Distributed systems share both hardware and software resources across a network. This allows for concurrent access but also introduces challenges around failures, security, and heterogeneity. - Emerging trends include ubiquitous computing using devices like smartphones, distributed multimedia, and cloud computing providing computing resources as a utility over the internet. Addressing issues like scalability, availability, and open standards is important for distributed systems.

Uploaded by

sangeetha
Copyright
© © All Rights Reserved
You are on page 1/ 40

DISTRIBUTED SYSTEMS

PRESENTED BY,
M.Sangeetha,
AP/CSE
Contents
Introduction
Consequences
Examples of DS
Infrastructure requirements
Trends in DS
Introduction
What DS is?
Computers communicate and coordinate their actions
only by passing messages
Eg
Mobile phone networks, corporate networks, factory
networks
Contd..
Resource sharing extends from hardware components
such as disks and printers
 software-defined entities such as files, databases and
data objects of all kinds
A typical Intranet
email server Desktop
computers
print and other servers

Local area
Web server network

email server
print
File server
other servers

the rest of
the Internet
router/firewall
Consequence
concurrency of components
lack of a global clock
independent failures
Applications
Web search
Finance and commerce
Creative industries and entertainment
Healthcare
Education
Transport and logistics
Science
Environmental management
Infrastructure requirements
very large numbers of networked computers located at
data centers all around the world
support very large files
structured distributed storage system that offers fast
access to very large datasets
lock service
management of very large parallel and
distributed computations
Trends in distributed systems
Pervasive networking and the modern Internet
Mobile and ubiquitous computing
Distributed multimedia systems (webcasting)
Distributed computing as a utility (IoT)
Pervasive networking and the modern Internet
WiFi, WiMAX,Bluetooth

intranet %
%
% ISP

backbone

satellite link

desktop computer:
server:
network link:
Mobile and ubiquitous computing
 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
• Refrigerators
Portable and handheld devices in a
distributed system
Internet

Host intranet WAP


Wireless LAN Home intranet
gateway

Mobile
phone
Printer Laptop
Camera Host site
Distributed computing as a utility
Focus on resource sharing
share hardware resources such as printers
Data resources such as files and resources
sharing data in the form of a shared database or a set of web pages
– not the disks and processors on which they are implemented
services restrict resource access to a well-defined set of operations
For effective sharing, each resource must be managed by a
program that offers a communication interface enabling the
resource to be accessed and updated reliably and consistently.
overall approach is known as client-server computing (remote
invocation)
‘client’ and ‘server’ refer to processes rather than the computers
that they execute upon
Challenges
Heterogeneity
Openness
Security
Scalability
Failure handling
Concurrency
Transparency
Quality of service
Heterogeneity
networks
computer hardware
operating systems
programming languages
implementations by different developers
mask differences in network, operating systems, hardware
and software to provide heterogeneity are
 Middleware
 Internet protocols
 Mobile code (Java applet)
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.
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.
Heterogeneity
 Virtual machine
 Virtual machine provides a way of making
code executable on any hardware.
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.
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.
•Open distributed systems are based on the
provision of a uniform communication mechanism
and published interfaces for access to shared
resources
•constructed from heterogeneous hardware and
software, possibly from different vendors. But the
conformance of each component to the published
standard must be carefully tested and verified if
the system is to work correctly
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.
Security
 Integrity
 Protection against alteration or corruption.
 Availability
 Protection against interference with the
means to access the resources.
Security
 Security Mechanisms are:
 Encryption
 Authentication
 Authorization
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.
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.
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.
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.
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
Failure handling
 Tolerating failures
 E.g. Exception handling
 E.g. Timeouts
 Recovery from Failure
 E.g. Rollback mechanisms
 Redundancy
 E.g. Redundant components
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
 Concurrency can be achieved by standard
techniques such as semaphores, which
are used in most operating 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.
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).
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.
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.
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.
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.
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.
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
Web servers and web browsers.

You might also like