4. Distributed Systems
โข Definition:
โ The Collection of individual computers that
appears to its users as a single coherent
system.
โข Coherent System:
โ The system in which all the individual systems
shares the central memory (RAM).
4
8. DS: I know it when I see it
โข
โข
โข
โข
โข
-Big: Enterprise level
โข Examples of DS are all around us
-Small: Personal
-Innovative: Sensor Networks
-Common: Web service
11. Biggest Challenges of DS
โข
โข
โข
โข
โข Configuration: How to find each other,
get started, etc
โข Consensus: How to agree on stuff
โข Consistency: How to have the same
view
โข in the face of changes
โข โข Fault Tolerance: How to survive in a
world
12. Characteristics of DS
โข
โข
โข
โข
Scalability
Support Heterogeneity
Continuous Availability
Users are unaware about the distribution
and heterogeneity of the system
โข The components of a system are also
unaware of the heterogeneity
โข Users and applications can interact with
the system uniformly
12
14. Connecting Users and
Resources
โข The main goal is to make easy for users to
access remote resources and to share
them with other users in a controlled way
โ Security
โข From external users: (Authentication, Firewall)
โข From internal users: (Policies, Log Files)
14
15. Transparency
โข To hide the fact that its processes and
resources are physically distributed across
multiple computers.
OR
โข A distributed system that is able to present
itself to users and applications as it were
only a single computer system is said to
be transparent.
15
16. Types of Transparency
โข Access (Data representation: little endian / big endian )
โ To hide the details of data representations, code
translation etc.
โข Location (URL)
โ To hide the actual location of the resource.
โข Migration
โ To hide the fact that the resource has migrated from
previous location.
โข Relocation
โ To hide the fact that resource has been reallocated due
16
to non availability from previous location.
17. Types of Transparency
โข Replication
โ To hide the fact that resource is copied at different
locations to make availability of the resource faster.
โข Concurrency
โ This is a type of transparency that is related to
concurrent access to same resource.
โข Failure
โ To hide any of the failure that occur in accessing the
resources.
17
18. Openness
โข An open distributed system support
heterogeneity.
โข An open distributed system offer services
according to standard rules (protocols).
โข Interoperability
โ It is an extent by which two implementations
of system or components from different
manufacturers can co exists.
โข Portability
โ An application developed on one system can
be executed without modification on another.
18
19. Scalability
โข A distributed system should be expandable
โ Scalable with respect to Size
โข Increase in number of nodes.
โ Scalable Geographically
โข Increase in size with respect to geographical location.
โ Scalable Administratively
โข If we expand the system then administration should not
19
become difficult.
20. Scalability
โข Problems to be taken care of in scalability:
โ Centralized Services
โข Services available at central machine i-e server.
โ Centralized Data
โข Data available at central machine i-e data base
server.
โ Centralized Algorithms.
โข The algorithms that are running on server machine
20
21. Parallel Processing or
Computing
โข Parallel computing
โ Using parallel computer to solve single
problems faster
โข Parallel computer
โ Multiple-processor system supporting parallel
programming
โข Parallel programming
โ Programming in a language that supports
concurrency explicitly
21
22. Evolution of Supercomputing
โข Supercomputers โ Most powerful computers that
can currently be built. Note: This definition is
time dependent.
โข Uses during World War II
โ Hand-computed artillery tables
โ Need to speed computations
โ Army funded ENIAC to speedup calculations
โข Uses during the Cold War
โ Nuclear weapon design
โ Intelligence gathering
โ Code-breaking
22
23. Supercomputer
โข General-purpose computer
โข Solves individual problems at high speeds,
compared with contemporary systems
โข Typically costs $10 million or more
โข Traditionally found in government labs
23
24. Commercial Supercomputing
โข Started in capital-intensive industries
โ Petroleum exploration
โ Automobile manufacturing
โข Other companies followed suit
โ Pharmaceutical design
โ Consumer products
24
25. 50 Years of Speed Increases
Today
> 1 trillion flops
ENIAC
350 flops
25
26. CPUs 1 Million Times Faster
โข Faster clock speeds
โข Greater system concurrency
โ Multiple functional units
โ Concurrent instruction execution
โ Speculative instruction execution
26
28. Hardware Concepts
โข All distributed systems consist of multiple
CPUs.
โข we can organize hardwares in several
different ways in term of their connection
and communication
โข Various classification schemes have been
proposed by the time but none of them
have been widely adopted
28
29. Classification in term of Hardware
โข We can classify distributed systems
regarding hardware in two broad
categories.
โ Multi Processor Systems.
โ Multi Computer Systems.
29
30. Hardware Requirements
โข We cant define complete hardware
requirements for a distributed system in
general but we will discuss the most basic
requirements here and these are.
โ Processors.
โ Memory (Specially RAM).
โ Interconnecting Resources.
30
31. Multi Processor Systems
โข Such systems consist of computer having
multiple processors and memory that are
connected through a high speed back
plane over the mother board.
OR
โข A simple configuration is to have a high
speed mother board into which CPU and
memory cards can be inserted.
31
32. Multi Processor Systems
โข There are two types of multiprocessor
system with respect to Memory.
โ Multi Processor System with Shared Memory.
โ Multi Processor System with Non Shared
Memory.
โข There are two types of multiprocessor
system with respect to Inter connection of
Memory and Processors.
โ Bus Based Systems.
โ Switch Based Systems.
32
33. Multi Processor Systems With
Shared Memory
โข In such system there are multiple
processors using memory that is shared
among the processors.
โข Coherent System:
โ In shared memory system since there is only
one memory if processor A writes some thing
at memory address 40, and after some time
processor B reads from memory address 40 it
will get the same data written by processor A.
Inter process communication is very easy. 33
35. Multi Processor Systems With Non
Shared Memory
โข In such system there are multiple processors
each having its on memory along with the main
memory.
โข Such Systems are incoherent.
โข Inter process communication is hard to
implement due to incoherence.
โข Difficult to built such systems.
โข Message Passing Technique is then used to
enable inter process communication.
โข Generally slow as compare to shared memory
systems.
โข Advantage is we can connect more Processors.
35
37. Types of Multi Processor Systems
With Respect to Interconnection
โข There are two types.
โ Bus Based System.
โ Switch Based System.
37
38. Bus Based Multi Processor
Systems With Shared Memory
P1
P2
M1
P3
M2
P4
M3
38
39. Switch Based Multi Processor
Systems With Shared Memory
โข There are two types.
โ Cross Bar Switch Based.
โ Omega Switch Based.
39
40. Cross Bar Switch Based Multi
Processor Systems With Shared
Memory
P1
P2
P3
P4
M1
M2
M3
Cross Point
Switch
40
41. Omega Switch Based Multi
Processor Systems With Shared
Memory
M1
P1
M2
P2
M3
P3
M4
P4
2 x 2 Cross
Point Switch
41
42. Multi Computer Systems
โข The system consists of multiple computers
connected by interconnecting resources.
โข For Example:
โ We have ten computers in the lab, we have
ten processors with memories available for
process an application.
โ Why not we use them as a single system to
process an application.
โ Internet.
42
43. Multi Computer Systems
โข Such system will be incoherent in nature as it
will have ten processors, all of which have its
own memory.
โข In other words No Shared memory.
โข Inter Process communication will then achieved
through message passing techniques.
โข This technique is little bit hard to implement but
not as much costly as to buy minicomputer or
any other high rank systems.
โข And then make program using parallel
programming.
43
44. Types Of Multi Computer Systems
โข There are two types based on types of
computers we wanted to use in our
system
โ Homogeneous Multi Computer systems.
โ Heterogeneous Multi Computer Systems.
44
45. Types Of Multi Computer Systems
โข There are two types further based on
Interconnection resources.
โ Homogeneous Multi Computer Systems
โข Bus Based Systems.
โข Switch Based systems.
โ Heterogeneous Multi Computer Systems
โข Bus Based Systems.
โข Switch Based systems.
45
46. Homogeneous Multi Computer
Systems
โข The system consist of same type of
computers.
โข Each Computer has its own memory.
โข Computer will communicate each other
through a high speed interconnection
network.
โข This high speed interconnection network
can be a bus based or switch based.
46
47. System Area Network
โข SAN are homogeneous multi computer
systems based on fast bus based
interconnecting network.
โข Normally these computers are connected
through a shared multi access network
(Fast Ethernet).
โข They have limited scalability.
47
48. Cluster of Workstation
โข COWs are homogeneous multi computer
systems based on switches.
โข Topologies used are
โ Meshes.
โ Hypercubes.
48
51. Heterogeneous Multi Computer
Systems
โข The system consist of computers of
different types.
โข Each Computer has its own memory.
โข Computer will communicate each other
through a high speed interconnection
network.
โข This high speed interconnection network
can be a bus based or switch based.
51
52. Bus based Heterogeneous Multi
Computer Systems
โข These are heterogeneous multi computer
systems based on fast bus based
interconnecting network.
โข Normally these computers are connected
through a shared multi access network
(Fast Ethernet).
โข They have limited scalability.
52
53. Switch Based Heterogeneous Multi
Computer Systems
โข These are heterogeneous multi computer
systems based on switches.
โข Topologies used are
โ Meshes.
โ Hypercubes.
53