You are on page 1of 21

G.M.

Vedak Institute of Technology,Tala

Distributed Computing

Prof. S.E.Gawali
Assistant Professor
Department Of Computer Engineering
GMVIT, Tala
Module 1: Introduction to Distributed Systems

OBJECTIVES :-

− To provide students with contemporary knowledge in


distributed systems.
𝑉
OUTCOMES :-

‒ Able to demonstrate the knowledge of basic elements and


concepts related to distributed system technologies.
What is Distributed System?
o A distributed system consists of a collection of autonomous computers, connected through a network and
distribution middleware, which enables computers to coordinate their activities and to share the resources of
the system, so that users perceive the system as a single, integrated computing.
The middleware layer extends over multiple machines and provide each application the same interface.

Computer 1 Computer 2 Computer 3 Computer 4

Application A 𝑉
Application B Application C

Distributed System Layer (middleware)

Local OS 1 Local OS 2 Local OS 3 Local OS 4

Network
Figure 1.1: A distributed system organized as middleware.
… What is Distributed System?
o Distributed System Characteristics:
• Multiple autonomous components( i.e. computers).
• Components are not shared by all users(people or programs).
• Resources may not be accessible.
• Software runs in concurrent processes on different processors.
• Multiple Points of control. 𝑉
• Multiple Points of failure.
Goals
o Four important goals that should be met to make building a distributed system.

o A distributed system should


• Make resources easily accessible.( i.e. Making Resources Accessible or Resource
Sharing).
• Reasonably hide the fact that resources are distributed across a network.( i.e.
𝑉
Distribution Transparency or Transparency).
• Be open.( i.e. Openness).
• Be scalable.(i.e. Scalability).
… Goals
• Making Resources Accessible or Resource Sharing):
→ Ability to use any hardware, software or data anywhere in the system.
→ Resource manager controls access, provides naming scheme and controls
concurrency.
→ Resource sharing model (e.g. client/server or object-based) describing
how
✓ resources are provided.
𝑉
✓ they are used and
✓ provider and user interact with each other.
… Goals
• Distribution Transparency or Transparency
→ To hide the fact that its processes and resources are physically distributed
across multiple computers.
→ The concept of transparency can be applied to several aspects of a
distributed systems.
→ Types of Transparency:
Transparency Description Examples
𝑉
Access Hide differences in 1. File system operations in
data NFS(Network File System).
representations and 2. Navigation in the Web.
how a resources is
accessed. 3. SQL(Structured Query
Language) Queries.
Location Hide where a 1. File system operations in NFS.
resource is located. 2. Pages in the Web.

3. Tables in distributed databases.


… Goals
• … Distribution Transparency or Transparency
→ … Types of Transparency:
Transparency Description Examples
Migration Hide that a 1. NFS.
resources may 2. Web Pages.
move to another
location.
Relocation Hide 𝑉
that a 1 NFS.
resources may be
moved to another
location while in
use.
Replication Hide that a 1. Distributed DBMS. (DataBase
resources is Management System).
replicated. 2. Mirroring Web Pages.
… Goals
• … Distribution Transparency or Transparency
→ … Types of Transparency:
Transparency Description Examples
Concurrency Hide that a 1. NFS.
resource may be 2. Automatic teller machine
shared by several network.
competitive users.
3. DBMS.
𝑉
Failure Hide the failure 1. DBMS.
and recovery of re
a resource.
… Goals
• Openness
→ Openness is concerned with extensions and improvements of distributed
systems.
→ Detailed interfaces of components need to be published.
→ New components have to be integrated with existing components.
→ Differences in data representation of interface types on different
processors(of different vendors) have to be resolved.
𝑉
… Goals
• Scalability
→ Adaption of distributed systems to
✓ accommodate more users.
✓ respond faster (this is the hard one).
→ Usually done by adding more and/or faster processors.
→ Components should not need to be changed when scale of a system
increases.
𝑉
→ Design components to be scalable.

• Fault Tolerance
→ Hardware, software and networks fail!
→ Distributed systems must maintain availability even at low levels of
hardware/software/network reliability.
→ Fault tolerance is achieved by
✓ recovery
✓ redundancy
Types of Distributed System

Distributed Distributed Distributed


Computing System Information System Pervasive System

Used for high – large – stability


performance 𝑉 nodes are fixed
computing task

Cluster Grid Transaction Enterprise Home Electronic Sensor


Computing Computing Processing Application System Health Networks
System System System Integration Care
System
Distributed Computing Systems
o Cluster Computing System:

Master node Computer node Computer node Computer node

Management
Component Component Component
Application
of Parallel of Parallel of Parallel
Application Application Application
Parallel libs
𝑉
Local OS Local OS Local OS Local OS

Remote Standard Network


Access
Network High-Speed Network

Figure 1.2: An example of a Cluster Computing System.


… Distributed Computing System
o … Cluster Computing System:
• Used for parallel programming in Master node Computer node Computer node Computer node

which a single program is run in Management


Application Component Component Component
parallel on multiple machines. of Parallel of Parallel of Parallel
Application Application Application

• The general configuration shown Parallel libs

in fig.1.2 is formed by Linux –


Local OS Local OS Local OS Local OS
based Beowulf clusters.
• Master node handle 𝑉

→ TThe allocation of nodes to a Remote


Standard Network
Access
particular parallel program. Network
High-Speed Network

→ TMaintains a batch queue of


submitted jobs.
→ TProvides an interface for the
users of the system.
• The middleware is formed by the libraries for executing parallel programs.
• The feature of Cluster Computing System is homogeneity.
… Distributed Computing System
o Grid Computing System:
• It have a high degree of heterogeneity. No assumptions are made concerning
→ Hardware, operating system, network, administrative domains, security
policies, etc.
• A key issue in Grid Computing System is that resources from different organization
are brought together to allow the collaboration of a group of people or institutions.
Such collaborations is form of Virtual Organization.
𝑉
• The resources consist of compute servers(including supercomputers), storage
facilities and database.
… Distributed Computing System
o … Grid Computing System:
Consists of the applications that operate
within a Virtual Organizations. Application Layer
Consists of services for resource discovery
allocation and scheduling of tasks onto
multiple resources, data replication and so
on. Grid
Collective Layer
Responsible for managing a single resource. Middleware
Uses the functions provided by the 𝑉
Layer.
Connectivity layer.
and calls directly the interface made
available by the Fabric layer. Connectivity Layer Resource Layer
Consists of communication protocols.
Access a resource from a remote location.
Contains security protocol to authenticate
users and resources. Fabric Layer
Provides interfaces to local resources at a
specific site.
Provides functions for querying the state and Figure 1.3: A layered architecture for Grid
capabilities of a resources. Computing System.
Distributed System: Hardware Concepts
o Multiprocessors

o Multicomputer

o Networks of Computers

o Multiprocessors and 𝑉
Multicomputer
Distinguishing features:
• Private versus shared memory
• Bus versus switched interconnection
… Distributed System: Hardware Concepts
o Networks of Computers

High degree of node heterogeneity: High degree of network heterogeneity:

• High-performance parallel systems • Local-area gigabit networks

(multiprocessors as well as multicomputer) • Wireless connections


𝑉
• High-end PCs and workstations (servers) • Long-haul, high-latency connections

• Simple network computers • Wide-area switched megabit connections

(offer users only network access)

• Mobile computers (palmtops, laptops)

• Multimedia workstations
Distributed System: Software Concepts
o Distributed Operating System (DOS).

o Network Operating System (NOS).

o Middleware

Software Description Main Goal


𝑉
DOS Tightly – coupled OS for multiprocessors Hide and manage hardware
and homogeneous multicomputer. resources.
NOS Loosely – coupled OS for heterogeneous Offer local services to
multicomputer (LAN and WAN). remote clients.
Middleware Additional layer a top of NOS Provide distribution
implementing general – purpose services. transparency.
… Distributed System: Software Concepts
o Comparison between DOS, NOS and Middleware:

Features DOS NOS Middleware


Multiprocessor Multicomputer
Degree of Transparency Very High High Low High
Same OS on all nodes Yes Yes No No
Number of copies of OS 1 𝑉 n n n
Basis for Shared Memory Messages Files Model
Communication Specific
Resource Management Global, central Global, per node per node
distributed
Scalability No Moderately Yes Varies
Openness Closed Closed Open Open
References :
[1] Andrew S. Tanenbaum and Maarten Van Steen – Distributed Systems: Principles
and Paradigms, Second Edition.

Thank You…☺

You might also like