SlideShare une entreprise Scribd logo
1  sur  34
chapter 1
Objectives
To define what is a distributed system
To know the consequences of the
definition
To identify the challenges in designing and
building a distributed system
Chapter Outlines
Introduction
Examples of Distributed Systems
Challenges of Distributed Systems
♦ Data are Distributed
» If data must exist in multiple computers for admin and ownership
reasons
♦ Computation is Distributed
» Applications taking advantage of parallelism, multiple processors,
» particular feature
» Scalability and heterogeneity of Distributed System
♦ Users are Distributed
» If Users communicate and interact via application (shared objects)
Definition of A Distributed System
“A distributed system is a collection of independent
computers that appear to the users of the system as a
single computer.” [Tanenbaum]
“A distributed system is a collection of autonomous
computers linked by a network with software designed
to produce an integrated computing facility.”
[Coulouris, Dollimore, Kindberg]
“A system of multiple autonomous processing
elements, cooperating in a common purpose or to
achieve a common goal.” [Burns & Wellings 1997]
”A system that consists of a collection of two or more
independent computers, that are connected by a
network, which coordinate their processing through the
exchange of synchronous or asynchronous message
passing. They may be on separate continents, in the
same building or the same room”.
Definition from our textbook
Centralized vs. Distributed
Introduction
Motivation for A Distributed System
 Load balancing / distribution
 breaking a problem into smaller pieces enables you to solve larger
problems without resorting to larger computer
 MAINFRAME – 10 X faster but 1000 X expensive
 Increased Processing Power
 independent processors working on the same task
 Distributed systems consisting of collections of microcomputers
may have processing powers that no single computer will ever
achieve
 10000 CPUs, each running at 50 MIPS, yields 500000 MIPS 
instruction to be executed in 0.002 nsec  equivalent to light
distance of 0.6 mm  any processor chip of that size would melt
immediately
Introduction
Motivation for A Distributed System
Fault tolerance
 If any of the machine gets down, others can still run
Availability
 Anytime, anywhere access
Resource sharing
 All clients can be server or vice versa to provide resources
(data, files, services)
 The main motivator for DS
Examples
Examples
Source : http://setiathome.ssl.berkeley.edu/
Examples
Source : http://www.girardin.org/fabien/blog/wp-content/mobile_computing_30s.png
Distributed Computing
Examples
Distributed Computing
Challenges in Distributed System
Distributed Computing
Challenge: Heterogeneity
Heterogeneity = variety and difference
Heterogeneity of
underlying network infrastructure (ethernet, ISDN, token ring etc),
computer hardware and software (e.g., operating systems, compare UNIX
sockets and Winsock calls),
programming languages (java, C, python : in particular, data
representations),
implementations by different developers
Heterogeneity needs to be masked
Distributed Computing
determines whether the system can be
extended and re-implemented in various
ways
Determined primarily by the degree to
which new resource-sharing services can be
added and be made available for use by
variety of client programs
Detailed interfaces of components need to
be standardized and published.
Challenge: Openness
Distributed Computing
Security for information resources has three components:
Confidentiality
 protection against disclosure to unauthorized individuals
Integrity
 protection against alteration or corruption
Availability
 protection against interference with the means of accessing the
resources
The challenge: sending sensitive information in a network
message in a secure manner efficiently
Not just to conceal the info but to ensure that the sender and
recipients are the rightful owners of the messages
Challenge: Security
Distributed Computing
Challenge: Scalability
A distributed system is scalable if it remains effective
as the number of users and/or resources increase
Challenges:
Controlling resource costs
Controlling performance loss
Preventing resources from running out
Avoiding performance bottlenecks
Distributed Computing
Challenge: Failure Handling
Failures more common than in centralized systems
and usually partial
Failure handling includes
Detection (may be impossible)
Masking/hiding
Tolerance
Recovery
Redundancy
Distributed Computing
Challenge: Failure Handling
Detection
Some possible (e.g., using transmission errors via
checksums)
Some impossible (crashed remote server vs. slow
remote server)
Challenge: manage failures that cannot be detected, but
suspected
Distributed Computing
Challenge: Failure Handling
Masking/hiding
Some failures can be hidden or made less severe
Replication in space/time
 Space: e.g., writing to multiple disks
 Time: e.g., transmission of multiple messages
May not work in worst cases, e.g., all disks may have
been corrupted
Distributed Computing
Challenge: Failure Handling
Tolerance
Sometimes not feasible to hide all failures
E.g., user has to tolerate if web service has failed rather than wait
until service is up again
Only feasible for certain classes of applications/systems, e.g., DNS
vs. Internet addresses
Recovery
Restoring a correct system state
Roll back using log files
Distributed Computing
Challenge: Failure Handling
Redundancy
Tolerate failures by using redundant components
Provided through replication
E.g., redundant routes in network, replication of name tables in
multiple domain name servers
Goal of failure handling: high availability
availability of a system is a measure of the proportion of time that
the system is available for use
Distributed Computing
Challenge: Concurrency
Concurrency control
Handling several simultaneous requests for a resource
 Consistent scheduling of concurrent threads (so that
dependencies are preserved, e.g., in concurrent transactions)
Synchronized operations (semaphores)
 Safest, but limits throughput
Shared objects/resources must guarantee correctness in a
concurrent environment
Avoidance of deadlocks
Distributed Computing
Challenge: Transparency
Concealing the heterogeneous and distributed nature
of the system so that it appears to the user like one
system
Eight types (ANSA/ISO)
access, location, concurrency, replication, failure,
mobility, performance and scaling transparencies
Distributed Computing
Challenge: Transparency
•Access transparency:
•enables local and remote resources to be accessed using identical
operations.
For instance, from a user's point of view, access to a remote service such as
a printer should be identical with access to a local printer.
From a programmers point of view, the access method to a remote object
may be identical to access a local object of the same class.
•E.g., Same user interface and operations offered in order to access either
local or remote resources
Distributed Computing
Challenge: Transparency
•Location transparency:
•enables resources to be accessed without knowledge of their location.
•The details of the topology of the system should be of no concern to the
user.
•The location of an object in the system may not be visible to the user or
programmer.
•This differs from access transparency in that both the naming and access
methods may be the same. Names may give no hint as to location.
•E.g., URL or e-mail addresses.
• www.google.com (IP address is the physical location)
Distributed Computing
Challenge: Transparency
•Concurrency transparency:
•enables several processes to operate concurrently using shared resources
without interference between them.
•E.g., no conflict occur when 2 or more users accessing the same system
Distributed Computing
Challenge: Transparency
•Replication transparency:
•enables multiple instances of resources to be used to increase reliability
and performance without knowledge of the replicas by users.
•This kind of transparency should be mainly incorporated for the distributed file
systems, which replicate the data at two or more sites for more reliability. The client
generally should not be aware that a replicated copy of the data exists. The clients
should also expect operations to return only one set of values.
•The examples are Distributed DBMS and Mirroring of Web pages.
•Failure transparency:
•enables the concealment of faults, allowing users and application
programs to complete their tasks despite the failure of hardware or
software components.
•E.g., retransmission of e-mail messages
•Mobility transparency:
•allows the movement of resources and clients within a system without
affecting the operation of users or programs.Distributed Computing
Challenge: Transparency
•Mobility transparency:
•allows the movement of resources and clients within a system without
affecting the operation of users or programs.
•E.g., caller and callee undergoing different places while on the phone
Distributed Computing
Challenge: Transparency
•Performance transparency:
•allows the system to be reconfigured to improve performance as loads
vary.
•Eg:Video On Demand (VOD) System
•Scaling transparency:
•allows the system and applications to expand in scale without change to
the system structure or the application algorithms.
•Eg: P2P apps
Distributed Computing
Transparency Description
Access
Hide differences in data representation and how a
resource is accessed
Location Hide where a resource is located
Migration Hide that a resource may move to another location
Relocation
Hide that a resource may be moved to another
location while in use
Replication Hide that a resource may be replicated
Concurrency
Hide that a resource may be shared by several
competitive users
Failure Hide the failure and recovery of a resource
Persistence
Hide whether a (software) resource is in memory or on
disk
1. Name a program that is using distributed computing and freely
available to the masses
2. Name 1 research field that is relying heavily on distributed computing
Summary
A distributed system is a collection of independent
and autonomous computers that appear to the
users of the system as a single computer.”
Based on the above definition, there are three
significant consequences :
Concurrency
No global clock
Independent failures
Several challenges need to be addressed in
designing and building DS
Heterogeneity, openness, security, scalability, failure
handling, concurrency and transparency.
Distributed Computing

Contenu connexe

Tendances

15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMSkoolkampus
 
Synchronization hardware
Synchronization hardwareSynchronization hardware
Synchronization hardwareSaeram Butt
 
file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada umardanjumamaiwada
 
Operating Systems 1 (11/12) - Input / Output
Operating Systems 1 (11/12) - Input / OutputOperating Systems 1 (11/12) - Input / Output
Operating Systems 1 (11/12) - Input / OutputPeter Tröger
 
distributed Computing system model
distributed Computing system modeldistributed Computing system model
distributed Computing system modelHarshad Umredkar
 
Cloud Application architecture styles
Cloud Application architecture styles Cloud Application architecture styles
Cloud Application architecture styles Nilay Shrivastava
 
8. mutual exclusion in Distributed Operating Systems
8. mutual exclusion in Distributed Operating Systems8. mutual exclusion in Distributed Operating Systems
8. mutual exclusion in Distributed Operating SystemsDr Sandeep Kumar Poonia
 
Computer network unit 1 notes
Computer network unit  1 notesComputer network unit  1 notes
Computer network unit 1 notesRavi Rajput
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsAman Srivastava
 
Intrusion Detection Systems and Intrusion Prevention Systems
Intrusion Detection Systems  and Intrusion Prevention Systems Intrusion Detection Systems  and Intrusion Prevention Systems
Intrusion Detection Systems and Intrusion Prevention Systems Cleverence Kombe
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed ComputingIntroduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed ComputingSayed Chhattan Shah
 
Operating system memory management
Operating system memory managementOperating system memory management
Operating system memory managementrprajat007
 
Locks In Disributed Systems
Locks In Disributed SystemsLocks In Disributed Systems
Locks In Disributed Systemsmridul mishra
 
Application layer security protocol
Application layer security protocolApplication layer security protocol
Application layer security protocolKirti Ahirrao
 
Microkernel architecture
Microkernel architecture Microkernel architecture
Microkernel architecture RQK Khan
 
Group Communication (Distributed computing)
Group Communication (Distributed computing)Group Communication (Distributed computing)
Group Communication (Distributed computing)Sri Prasanna
 

Tendances (20)

Distributed System ppt
Distributed System pptDistributed System ppt
Distributed System ppt
 
15. Transactions in DBMS
15. Transactions in DBMS15. Transactions in DBMS
15. Transactions in DBMS
 
Synchronization hardware
Synchronization hardwareSynchronization hardware
Synchronization hardware
 
file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada
 
Concurrency Control.
Concurrency Control.Concurrency Control.
Concurrency Control.
 
Operating Systems 1 (11/12) - Input / Output
Operating Systems 1 (11/12) - Input / OutputOperating Systems 1 (11/12) - Input / Output
Operating Systems 1 (11/12) - Input / Output
 
distributed Computing system model
distributed Computing system modeldistributed Computing system model
distributed Computing system model
 
IDS and IPS
IDS and IPSIDS and IPS
IDS and IPS
 
Cloud Application architecture styles
Cloud Application architecture styles Cloud Application architecture styles
Cloud Application architecture styles
 
8. mutual exclusion in Distributed Operating Systems
8. mutual exclusion in Distributed Operating Systems8. mutual exclusion in Distributed Operating Systems
8. mutual exclusion in Distributed Operating Systems
 
Database fragmentation
Database fragmentationDatabase fragmentation
Database fragmentation
 
Computer network unit 1 notes
Computer network unit  1 notesComputer network unit  1 notes
Computer network unit 1 notes
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life Applications
 
Intrusion Detection Systems and Intrusion Prevention Systems
Intrusion Detection Systems  and Intrusion Prevention Systems Intrusion Detection Systems  and Intrusion Prevention Systems
Intrusion Detection Systems and Intrusion Prevention Systems
 
Introduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed ComputingIntroduction to Parallel and Distributed Computing
Introduction to Parallel and Distributed Computing
 
Operating system memory management
Operating system memory managementOperating system memory management
Operating system memory management
 
Locks In Disributed Systems
Locks In Disributed SystemsLocks In Disributed Systems
Locks In Disributed Systems
 
Application layer security protocol
Application layer security protocolApplication layer security protocol
Application layer security protocol
 
Microkernel architecture
Microkernel architecture Microkernel architecture
Microkernel architecture
 
Group Communication (Distributed computing)
Group Communication (Distributed computing)Group Communication (Distributed computing)
Group Communication (Distributed computing)
 

En vedette

Compuware Mobility Presentation Overview
Compuware Mobility Presentation OverviewCompuware Mobility Presentation Overview
Compuware Mobility Presentation OverviewMPLS-Services-Compuware
 
Optimus protein
Optimus proteinOptimus protein
Optimus proteinEdDonnelly
 
3 easy changes to start taking vitamins, doing crunches, and eating healthier
3 easy changes to start taking vitamins, doing crunches, and eating healthier3 easy changes to start taking vitamins, doing crunches, and eating healthier
3 easy changes to start taking vitamins, doing crunches, and eating healthierKatherine Chen
 
Loneliness and Longevity
Loneliness and LongevityLoneliness and Longevity
Loneliness and LongevityKatherine Chen
 
Portfolio
PortfolioPortfolio
Portfoliowrwolff
 
How to start going to the gym: what worked/is working for me!
How to start going to the gym: what worked/is working for me!How to start going to the gym: what worked/is working for me!
How to start going to the gym: what worked/is working for me!Katherine Chen
 
Staff Walking Survey Results
Staff Walking Survey ResultsStaff Walking Survey Results
Staff Walking Survey ResultsKatherine Chen
 
Li Cppi Corporate Overview
Li Cppi Corporate OverviewLi Cppi Corporate Overview
Li Cppi Corporate Overviewjwarnerinmiami
 
Walking for entertainment
Walking for entertainmentWalking for entertainment
Walking for entertainmentKatherine Chen
 
STP engagement and consultation for NHS & Local Authorities
STP engagement and consultation for NHS & Local AuthoritiesSTP engagement and consultation for NHS & Local Authorities
STP engagement and consultation for NHS & Local AuthoritiesRhion Jones
 
Ebook competencias-digitales-blog
Ebook competencias-digitales-blogEbook competencias-digitales-blog
Ebook competencias-digitales-blogDaniel Gracia
 

En vedette (20)

Goal: 50 and healthy!
Goal: 50 and healthy!Goal: 50 and healthy!
Goal: 50 and healthy!
 
Compuware Mobility Presentation Overview
Compuware Mobility Presentation OverviewCompuware Mobility Presentation Overview
Compuware Mobility Presentation Overview
 
Optimus protein
Optimus proteinOptimus protein
Optimus protein
 
3 easy changes to start taking vitamins, doing crunches, and eating healthier
3 easy changes to start taking vitamins, doing crunches, and eating healthier3 easy changes to start taking vitamins, doing crunches, and eating healthier
3 easy changes to start taking vitamins, doing crunches, and eating healthier
 
Loneliness and Longevity
Loneliness and LongevityLoneliness and Longevity
Loneliness and Longevity
 
Portfolio
PortfolioPortfolio
Portfolio
 
How to start going to the gym: what worked/is working for me!
How to start going to the gym: what worked/is working for me!How to start going to the gym: what worked/is working for me!
How to start going to the gym: what worked/is working for me!
 
Staff Walking Survey Results
Staff Walking Survey ResultsStaff Walking Survey Results
Staff Walking Survey Results
 
Li Cppi Corporate Overview
Li Cppi Corporate OverviewLi Cppi Corporate Overview
Li Cppi Corporate Overview
 
Goal: 50 and healthy!
Goal: 50 and healthy!Goal: 50 and healthy!
Goal: 50 and healthy!
 
Walking for entertainment
Walking for entertainmentWalking for entertainment
Walking for entertainment
 
Predicting Motivation
Predicting MotivationPredicting Motivation
Predicting Motivation
 
Web engineering cse ru
Web engineering cse ruWeb engineering cse ru
Web engineering cse ru
 
STP engagement and consultation for NHS & Local Authorities
STP engagement and consultation for NHS & Local AuthoritiesSTP engagement and consultation for NHS & Local Authorities
STP engagement and consultation for NHS & Local Authorities
 
Ebook competencias-digitales-blog
Ebook competencias-digitales-blogEbook competencias-digitales-blog
Ebook competencias-digitales-blog
 
Cryptography cse,ru
Cryptography cse,ruCryptography cse,ru
Cryptography cse,ru
 
Introduction to computer
Introduction to computerIntroduction to computer
Introduction to computer
 
Caesar cipher
Caesar cipherCaesar cipher
Caesar cipher
 
Decision making and looping
Decision making and loopingDecision making and looping
Decision making and looping
 
Jpeg compression
Jpeg compressionJpeg compression
Jpeg compression
 

Similaire à Chapter 1 -_characterization_of_distributed_systems

distributed system chapter one introduction to distribued system.pdf
distributed system chapter one introduction to distribued system.pdfdistributed system chapter one introduction to distribued system.pdf
distributed system chapter one introduction to distribued system.pdflematadese670
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.pptbalewayalew
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introductionTamrat Amare
 
- Introduction - Distributed - System -
- Introduction - Distributed - System  -- Introduction - Distributed - System  -
- Introduction - Distributed - System -ssuser7c150a
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.pptsirajmohammed35
 
Distributed Processing
Distributed ProcessingDistributed Processing
Distributed ProcessingImtiaz Hussain
 
Chapter-1-IntroDistributeddffsfdfsdf-1.pptx
Chapter-1-IntroDistributeddffsfdfsdf-1.pptxChapter-1-IntroDistributeddffsfdfsdf-1.pptx
Chapter-1-IntroDistributeddffsfdfsdf-1.pptxmeharikiros2
 
Chapter 1_NG_2020.ppt
Chapter 1_NG_2020.pptChapter 1_NG_2020.ppt
Chapter 1_NG_2020.pptMrVMNair
 
Lect 2 Types of Distributed Systems.pptx
Lect 2 Types of Distributed Systems.pptxLect 2 Types of Distributed Systems.pptx
Lect 2 Types of Distributed Systems.pptxPardonSamson
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system Sarvesh Meena
 
Lect 1 Distributed System.pptx
Lect 1 Distributed System.pptxLect 1 Distributed System.pptx
Lect 1 Distributed System.pptxPardonSamson
 
DISTRIBUTED SYSTEM.docx
DISTRIBUTED SYSTEM.docxDISTRIBUTED SYSTEM.docx
DISTRIBUTED SYSTEM.docxvinaypandey170
 
CSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating SystemCSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating Systemghayour abbas
 
433672084-distributed-vs-parallel-computing-ppt.ppt
433672084-distributed-vs-parallel-computing-ppt.ppt433672084-distributed-vs-parallel-computing-ppt.ppt
433672084-distributed-vs-parallel-computing-ppt.pptMattChristianAustria2
 
Distributed Operating System.pptx
Distributed Operating System.pptxDistributed Operating System.pptx
Distributed Operating System.pptxharpreetkaur1129
 

Similaire à Chapter 1 -_characterization_of_distributed_systems (20)

distributed system chapter one introduction to distribued system.pdf
distributed system chapter one introduction to distribued system.pdfdistributed system chapter one introduction to distribued system.pdf
distributed system chapter one introduction to distribued system.pdf
 
Distributed Systems.pptx
Distributed Systems.pptxDistributed Systems.pptx
Distributed Systems.pptx
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introduction
 
- Introduction - Distributed - System -
- Introduction - Distributed - System  -- Introduction - Distributed - System  -
- Introduction - Distributed - System -
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 
Chapter One.ppt
Chapter One.pptChapter One.ppt
Chapter One.ppt
 
Distributed Processing
Distributed ProcessingDistributed Processing
Distributed Processing
 
distributed system original.pdf
distributed system original.pdfdistributed system original.pdf
distributed system original.pdf
 
Chapter-1-IntroDistributeddffsfdfsdf-1.pptx
Chapter-1-IntroDistributeddffsfdfsdf-1.pptxChapter-1-IntroDistributeddffsfdfsdf-1.pptx
Chapter-1-IntroDistributeddffsfdfsdf-1.pptx
 
Chapter 1_NG_2020.ppt
Chapter 1_NG_2020.pptChapter 1_NG_2020.ppt
Chapter 1_NG_2020.ppt
 
Lect 2 Types of Distributed Systems.pptx
Lect 2 Types of Distributed Systems.pptxLect 2 Types of Distributed Systems.pptx
Lect 2 Types of Distributed Systems.pptx
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system
 
Lect 1 Distributed System.pptx
Lect 1 Distributed System.pptxLect 1 Distributed System.pptx
Lect 1 Distributed System.pptx
 
DISTRIBUTED SYSTEM.docx
DISTRIBUTED SYSTEM.docxDISTRIBUTED SYSTEM.docx
DISTRIBUTED SYSTEM.docx
 
CSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating SystemCSI-503 - 11.Distributed Operating System
CSI-503 - 11.Distributed Operating System
 
Distributed computing
Distributed computingDistributed computing
Distributed computing
 
433672084-distributed-vs-parallel-computing-ppt.ppt
433672084-distributed-vs-parallel-computing-ppt.ppt433672084-distributed-vs-parallel-computing-ppt.ppt
433672084-distributed-vs-parallel-computing-ppt.ppt
 
Lecture 9.pptx
Lecture 9.pptxLecture 9.pptx
Lecture 9.pptx
 
Distributed Operating System.pptx
Distributed Operating System.pptxDistributed Operating System.pptx
Distributed Operating System.pptx
 

Dernier

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Dernier (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Chapter 1 -_characterization_of_distributed_systems

  • 2. Objectives To define what is a distributed system To know the consequences of the definition To identify the challenges in designing and building a distributed system
  • 3. Chapter Outlines Introduction Examples of Distributed Systems Challenges of Distributed Systems
  • 4. ♦ Data are Distributed » If data must exist in multiple computers for admin and ownership reasons ♦ Computation is Distributed » Applications taking advantage of parallelism, multiple processors, » particular feature » Scalability and heterogeneity of Distributed System ♦ Users are Distributed » If Users communicate and interact via application (shared objects)
  • 5. Definition of A Distributed System “A distributed system is a collection of independent computers that appear to the users of the system as a single computer.” [Tanenbaum] “A distributed system is a collection of autonomous computers linked by a network with software designed to produce an integrated computing facility.” [Coulouris, Dollimore, Kindberg] “A system of multiple autonomous processing elements, cooperating in a common purpose or to achieve a common goal.” [Burns & Wellings 1997]
  • 6. ”A system that consists of a collection of two or more independent computers, that are connected by a network, which coordinate their processing through the exchange of synchronous or asynchronous message passing. They may be on separate continents, in the same building or the same room”. Definition from our textbook
  • 8. Introduction Motivation for A Distributed System  Load balancing / distribution  breaking a problem into smaller pieces enables you to solve larger problems without resorting to larger computer  MAINFRAME – 10 X faster but 1000 X expensive  Increased Processing Power  independent processors working on the same task  Distributed systems consisting of collections of microcomputers may have processing powers that no single computer will ever achieve  10000 CPUs, each running at 50 MIPS, yields 500000 MIPS  instruction to be executed in 0.002 nsec  equivalent to light distance of 0.6 mm  any processor chip of that size would melt immediately
  • 9. Introduction Motivation for A Distributed System Fault tolerance  If any of the machine gets down, others can still run Availability  Anytime, anywhere access Resource sharing  All clients can be server or vice versa to provide resources (data, files, services)  The main motivator for DS
  • 14. Challenges in Distributed System Distributed Computing
  • 15. Challenge: Heterogeneity Heterogeneity = variety and difference Heterogeneity of underlying network infrastructure (ethernet, ISDN, token ring etc), computer hardware and software (e.g., operating systems, compare UNIX sockets and Winsock calls), programming languages (java, C, python : in particular, data representations), implementations by different developers Heterogeneity needs to be masked Distributed Computing
  • 16. determines whether the system can be extended and re-implemented in various ways Determined primarily by the degree to which new resource-sharing services can be added and be made available for use by variety of client programs Detailed interfaces of components need to be standardized and published. Challenge: Openness Distributed Computing
  • 17. Security for information resources has three components: Confidentiality  protection against disclosure to unauthorized individuals Integrity  protection against alteration or corruption Availability  protection against interference with the means of accessing the resources The challenge: sending sensitive information in a network message in a secure manner efficiently Not just to conceal the info but to ensure that the sender and recipients are the rightful owners of the messages Challenge: Security Distributed Computing
  • 18. Challenge: Scalability A distributed system is scalable if it remains effective as the number of users and/or resources increase Challenges: Controlling resource costs Controlling performance loss Preventing resources from running out Avoiding performance bottlenecks Distributed Computing
  • 19. Challenge: Failure Handling Failures more common than in centralized systems and usually partial Failure handling includes Detection (may be impossible) Masking/hiding Tolerance Recovery Redundancy Distributed Computing
  • 20. Challenge: Failure Handling Detection Some possible (e.g., using transmission errors via checksums) Some impossible (crashed remote server vs. slow remote server) Challenge: manage failures that cannot be detected, but suspected Distributed Computing
  • 21. Challenge: Failure Handling Masking/hiding Some failures can be hidden or made less severe Replication in space/time  Space: e.g., writing to multiple disks  Time: e.g., transmission of multiple messages May not work in worst cases, e.g., all disks may have been corrupted Distributed Computing
  • 22. Challenge: Failure Handling Tolerance Sometimes not feasible to hide all failures E.g., user has to tolerate if web service has failed rather than wait until service is up again Only feasible for certain classes of applications/systems, e.g., DNS vs. Internet addresses Recovery Restoring a correct system state Roll back using log files Distributed Computing
  • 23. Challenge: Failure Handling Redundancy Tolerate failures by using redundant components Provided through replication E.g., redundant routes in network, replication of name tables in multiple domain name servers Goal of failure handling: high availability availability of a system is a measure of the proportion of time that the system is available for use Distributed Computing
  • 24. Challenge: Concurrency Concurrency control Handling several simultaneous requests for a resource  Consistent scheduling of concurrent threads (so that dependencies are preserved, e.g., in concurrent transactions) Synchronized operations (semaphores)  Safest, but limits throughput Shared objects/resources must guarantee correctness in a concurrent environment Avoidance of deadlocks Distributed Computing
  • 25. Challenge: Transparency Concealing the heterogeneous and distributed nature of the system so that it appears to the user like one system Eight types (ANSA/ISO) access, location, concurrency, replication, failure, mobility, performance and scaling transparencies Distributed Computing
  • 26. Challenge: Transparency •Access transparency: •enables local and remote resources to be accessed using identical operations. For instance, from a user's point of view, access to a remote service such as a printer should be identical with access to a local printer. From a programmers point of view, the access method to a remote object may be identical to access a local object of the same class. •E.g., Same user interface and operations offered in order to access either local or remote resources Distributed Computing
  • 27. Challenge: Transparency •Location transparency: •enables resources to be accessed without knowledge of their location. •The details of the topology of the system should be of no concern to the user. •The location of an object in the system may not be visible to the user or programmer. •This differs from access transparency in that both the naming and access methods may be the same. Names may give no hint as to location. •E.g., URL or e-mail addresses. • www.google.com (IP address is the physical location) Distributed Computing
  • 28. Challenge: Transparency •Concurrency transparency: •enables several processes to operate concurrently using shared resources without interference between them. •E.g., no conflict occur when 2 or more users accessing the same system Distributed Computing
  • 29. Challenge: Transparency •Replication transparency: •enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users. •This kind of transparency should be mainly incorporated for the distributed file systems, which replicate the data at two or more sites for more reliability. The client generally should not be aware that a replicated copy of the data exists. The clients should also expect operations to return only one set of values. •The examples are Distributed DBMS and Mirroring of Web pages. •Failure transparency: •enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components. •E.g., retransmission of e-mail messages •Mobility transparency: •allows the movement of resources and clients within a system without affecting the operation of users or programs.Distributed Computing
  • 30. Challenge: Transparency •Mobility transparency: •allows the movement of resources and clients within a system without affecting the operation of users or programs. •E.g., caller and callee undergoing different places while on the phone Distributed Computing
  • 31. Challenge: Transparency •Performance transparency: •allows the system to be reconfigured to improve performance as loads vary. •Eg:Video On Demand (VOD) System •Scaling transparency: •allows the system and applications to expand in scale without change to the system structure or the application algorithms. •Eg: P2P apps Distributed Computing
  • 32. Transparency Description Access Hide differences in data representation and how a resource is accessed Location Hide where a resource is located Migration Hide that a resource may move to another location Relocation Hide that a resource may be moved to another location while in use Replication Hide that a resource may be replicated Concurrency Hide that a resource may be shared by several competitive users Failure Hide the failure and recovery of a resource Persistence Hide whether a (software) resource is in memory or on disk
  • 33. 1. Name a program that is using distributed computing and freely available to the masses 2. Name 1 research field that is relying heavily on distributed computing
  • 34. Summary A distributed system is a collection of independent and autonomous computers that appear to the users of the system as a single computer.” Based on the above definition, there are three significant consequences : Concurrency No global clock Independent failures Several challenges need to be addressed in designing and building DS Heterogeneity, openness, security, scalability, failure handling, concurrency and transparency. Distributed Computing