Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
DISTRIBUTED SYSTEMS
B. Tech IV/IV, II Semester
COMPUTER SCIENCE & ENGINEERING
2/6/2017 © Copyright Material 1
Course Organization
2/6/2017 2
Distributed Systems
Foundation Middleware Support Systems
Algorithms &
Shared Data
Characte...
Table of Contents
1. Why to have a Distributed System?
2. What is a Distributed System?
3. Introduction to a Distributed S...
Why to have a Distributed
System
• The need to share data across remote geographies
– Online Encyclopedia Britannica is ac...
Why to have a Distributed
System
• Cost of hardware and management
– A collection of cheap computers may be less expensive...
Introduction
• Computer hardware prices falling, power increasing
• Network connectivity increasing
– Everyone is connecte...
Introduction
Typical Layering in a Distributed System
2/6/2017 © Copyright Material 7
Introduction
• In building a Distributed System we need to address the
following consequences:
1. Concurrency
2. No Global...
Examples of Distributed Systems
1. Web Search
Nearly 3 Billion search requests hit Google servers everyday
About 276 Milli...
Examples of Distributed Systems
2. Massively Multiplayer Online Games
– World of Warcraft is one of the Most played games ...
Examples of Distributed Systems
3. Financial Trading
– Foreign exchange markets averaged $5.3 Trillion per day in April 20...
Other Examples of Distributed
Systems
• Flight management system in an aircraft
• Automotive control systems (50+ embedded...
Trends of a Distributed System!
2/6/2017 © Copyright Material 13
How is the requirement of a Distributed System
evolved?
...
Trends of a Distributed System!
2/6/2017 © Copyright Material 14
1. Pervasive networking & the modern Internet
• Inter con...
Trends of a Distributed System!
2/6/2017 © Copyright Material 15
2. Mobile & Ubiquitous Computing
• Device miniaturization...
Trends of a Distributed System!
2/6/2017 © Copyright Material 16
3. Distributed Multimedia Systems
• Distributed Multimedi...
Trends of a Distributed System!
2/6/2017 © Copyright Material 17
4. Distributed Computing as a Utility
• Why shouldn’t com...
Focus on Resource Sharing
2/6/2017 © Copyright Material 18
• Sharing Printers, Files was very helpful 
• In the earlier s...
2/6/2017 © Copyright Material 19
WE NEED A
DISTIBUTED
SYSTEM 
WHAT ARE
THE
CHALLENGES

WE KNOW
WHAT IT IS

Design issues of a Distributed
System
Heterogeneity
Openness
Security
Synchronization
Absence of Global Clock
Partia...
Challenges of DS: Heterogeneity
• Different network infrastructures (Ethernet, 802.11 –
wireless)
• Hardware and software ...
Challenges of DS: Openness
• The openness of a computer system is the characteristic that
determines whether the system ca...
Challenges of DS: Security
• Shared data must be protected
– Privacy – avoid unintentional disclosure of private
data
– Se...
Challenges of DS:
Synchronization
• Concurrent cooperating tasks need to synchronize
– When accessing shared data
– When p...
Challenges of DS: Absence of
Global Clock
• Cooperating task need to agree on the order of
events
• Each task has its own ...
Challenges of DS: Partial Failures
• Detection of failures – may be impossible
– Has a component crashed? Or is it just sl...
Challenges of DS: Scalability
• Does the system remain effective as if
grows?
• As you add more components:
– More synchro...
Challenges of DS: Transparency
• Concealing the heterogeneous and distributed nature
of the system so that it appears to t...
Challenges of DS: Transparency
• Transparency categories (continued)
– Replication: use replicated resource as if there wa...
Advantages of distributed systems
over centralized systems
Economics Microprocessors offer a better
price/performance than...
Advantages of distributed systems
over isolated (personal) computers
Data sharing Allow many users access to a common data...
Disadvantages of Distributed Systems
Software Little software exists at present for
distributed systems
Networking The net...
Glossary
Distributed System: A distributed system is one in which components
located at networked computers communicate an...
QUIZ
1. Which of these layers are not a part of Distributed system
architecture
(a) Middleware (b) Operating System (c) Ne...
QUIZ
5. _____ is used to capture this vision of computing as a Utility
(a) Grid Computing (b) Cloud Computing (c) Cluster ...
QUIZ
9. Which of the following would make certain aspects of distribution
invisible to the application programmer
(a) Tran...
KEY
1. D
2. A
3. C
4. B
5. B
6. D
7. C
8. B
9. A
10. C
2/6/2017 37© Copyright Material
2/6/2017 38© Copyright Material
Upcoming SlideShare
Loading in …5
×

Characterization of Distributed System

129 views

Published on

Characterization of Distributed System

Published in: Education
  • Be the first to comment

  • Be the first to like this

Characterization of Distributed System

  1. 1. DISTRIBUTED SYSTEMS B. Tech IV/IV, II Semester COMPUTER SCIENCE & ENGINEERING 2/6/2017 © Copyright Material 1
  2. 2. Course Organization 2/6/2017 2 Distributed Systems Foundation Middleware Support Systems Algorithms & Shared Data Characterization of Distributed Systems System Models Inter Process Communication Distributed Objects Remote Invocation Operating System Distributed File System Coordination & Agreement Transactions & Replications © Copyright Material
  3. 3. Table of Contents 1. Why to have a Distributed System? 2. What is a Distributed System? 3. Introduction to a Distributed Systems 4. Examples of Distributed Systems 5. Trends of a Distributed System 6. Focus on resource sharing 7. Design issues of a Distributed System 2/6/2017 3© Copyright Material
  4. 4. Why to have a Distributed System • The need to share data across remote geographies – Online Encyclopedia Britannica is accessed by users all over the world – Computer users in different geographies send messages to each other • Replication of processing power – Independent processors working on the same task – Distributed systems consisting of collections of microcomputers may have processing power of a large supercomputer • Use of heterogeneous components – Compute-intensive sub-tasks of a problem are run on powerful computers – Less resource-demanding sub-tasks run on less powerful computers – More efficient use of resources 2/6/2017 4© Copyright Material
  5. 5. Why to have a Distributed System • Cost of hardware and management – A collection of cheap computers may be less expensive than one large supercomputer – Small simple computers may be easier to manage than one large one • Resilience to failures – If one component fails, others can proceed with work on the task • Scalability – The system can be extended by adding more components (i.e., WWW) 2/6/2017 © Copyright Material 5
  6. 6. Introduction • Computer hardware prices falling, power increasing • Network connectivity increasing – Everyone is connected with fat pipes • It is easy to connect hardware together Definition: A Distributed System is one in which components located at networked computers communicate and coordinate their actions only by passing messages 2/6/2017 © Copyright Material 6
  7. 7. Introduction Typical Layering in a Distributed System 2/6/2017 © Copyright Material 7
  8. 8. Introduction • In building a Distributed System we need to address the following consequences: 1. Concurrency 2. No Global Clock 3. Independent Failures • The prime motivation for constructing and using distributed systems stems from a desire to share resources 2/6/2017 © Copyright Material 8
  9. 9. Examples of Distributed Systems 1. Web Search Nearly 3 Billion search requests hit Google servers everyday About 276 Million search requests hit Yahoo servers everyday • Web search is one of the largest and most complex distributed systems installations in the history of computing • Its infrastructure comprises of – Underlying physical infrastructure with very large numbers of networked computers located at data centre’s around the world – A distributed file system designed to support very large files – An associated structured distributed storage system that offers fast access to very large datasets – A lock service that offers distributed system functions such as distributed locking and agreement – Programming model supporting very large parallel and distributed computations 2/6/2017 © Copyright Material 9
  10. 10. Examples of Distributed Systems 2. Massively Multiplayer Online Games – World of Warcraft is one of the Most played games with over 10 Million customers. – According to the predictions, MMOG are estimated to rise to 60% by 2015 to $3.1 Billion. – Challenges include • Fast Response Times • Real time propagation of events – Solutions for the design of a MMOG • Client – server model where Server is formed through a dedicated cluster • Distributed architectures spread across globally (Example: EverQuest) • Completely decentralized approach based on peer-to-peer technology 2/6/2017 © Copyright Material 10
  11. 11. Examples of Distributed Systems 3. Financial Trading – Foreign exchange markets averaged $5.3 Trillion per day in April 2013 – Events in Distributed Systems involve communication & Processing of items of interest – Such systems typically employ Distributed event-based Systems. EXAMPLE OF FINANCIAL TRADING SYSTEM 2/6/2017 © Copyright Material 11
  12. 12. Other Examples of Distributed Systems • Flight management system in an aircraft • Automotive control systems (50+ embedded processors in a Mercedes S-class) • Distributed file systems (NFS, Samba) • P2P file sharing • The World Wide Web!!! 2/6/2017 © Copyright Material 12
  13. 13. Trends of a Distributed System! 2/6/2017 © Copyright Material 13 How is the requirement of a Distributed System evolved? What are the influential trends responsible for this paradigm shift 1. Emergence of Pervasive networking technologies 2. Emergence of Ubiquitous computing supporting mobility 3. Growing demand for Multimedia services 4. Computing as an Utility
  14. 14. Trends of a Distributed System! 2/6/2017 © Copyright Material 14 1. Pervasive networking & the modern Internet • Inter connecting varied range of computer networks
  15. 15. Trends of a Distributed System! 2/6/2017 © Copyright Material 15 2. Mobile & Ubiquitous Computing • Device miniaturization and wireless networking led to the integration of portable computing devices into distributed systems • Devices like Laptops, PDA’s, Smart phones, Tablets, Wearable devices, Embedded devices • Ubiquitous computing includes the need to deal with variable connectivity and indeed disconnection
  16. 16. Trends of a Distributed System! 2/6/2017 © Copyright Material 16 3. Distributed Multimedia Systems • Distributed Multimedia Systems • Teleconferencing • Distance learning • Cellular phone systems • IP Telephony • Webcasting is an application of distributed multimedia technology
  17. 17. Trends of a Distributed System! 2/6/2017 © Copyright Material 17 4. Distributed Computing as a Utility • Why shouldn’t computing resources be delivered as a Utility • Similar to how we use Electricity & Water, as and when Needed? • Example: Computing requirements like • Configured environment (Type of OS, Processing power, RAM, Hard disk, Networking capabilities) with custom requirements of user • Scalable storage/compute/networking needs • Cloud Computing is used to showcase computing as a Utility • Cluster computers provide a range of cloud services • Grid Computing is also a form of Cloud Computing primarily focused towards support for scientific applications
  18. 18. Focus on Resource Sharing 2/6/2017 © Copyright Material 18 • Sharing Printers, Files was very helpful  • In the earlier slide we have introduced sharing of compute, storage & network abilities • To book a Tatkal ticket, users must share the common reservation database. • Its all about Reliability & Consistency • WWW, Email, Networked printers are example of Distributed Systems. • Not all, but often, resource sharing is achieved using Client- Server models. • A complete interaction between a client and a server, from the point when the client sends its request to when it receives the server’s response, is called a Remote Invocation.
  19. 19. 2/6/2017 © Copyright Material 19 WE NEED A DISTIBUTED SYSTEM  WHAT ARE THE CHALLENGES  WE KNOW WHAT IT IS 
  20. 20. Design issues of a Distributed System Heterogeneity Openness Security Synchronization Absence of Global Clock Partial Failures Scalability Transparency 2/6/2017 © Copyright Material 20
  21. 21. Challenges of DS: Heterogeneity • Different network infrastructures (Ethernet, 802.11 – wireless) • Hardware and software (e.g., operating systems, processors): how can an Intel/Windows system understand messages sent by an Macintosh OS X system? • Programming languages – how can a Java program and a C program communicate? 2/6/2017 21© Copyright Material
  22. 22. Challenges of DS: Openness • The openness of a computer system is the characteristic that determines whether the system can be extended and reimplemented in various ways. • The challenge to designers is to tackle the complexity of distributed systems consisting of many components engineered by different people. • Open systems are characterized by the fact that their key interfaces are published. • Open distributed systems are based on the provision of a uniform communication mechanism and published interfaces for access to shared resources. • Open distributed systems can be constructed from heterogeneous hardware and software, possibly from different vendors 2/6/2017 22© Copyright Material
  23. 23. Challenges of DS: Security • Shared data must be protected – Privacy – avoid unintentional disclosure of private data – Security – data is not revealed to unauthorized parties – Integrity – protect data and system state from corruption • Denial of service attacks – put significant load on the system, prevent users from accessing it 2/6/2017 23© Copyright Material
  24. 24. Challenges of DS: Synchronization • Concurrent cooperating tasks need to synchronize – When accessing shared data – When performing a common task • Synchronization must be done correctly to prevent data corruption: – Example: two account owners; one deposits the money, the other one withdraws; they act concurrently – How to ensure that the bank account is in “correct” state after these actions? • Synchronization implies communication • Communication can take a long time • Excessive synchronization can limit effectiveness and scalability of a distributed system 2/6/2017 24© Copyright Material
  25. 25. Challenges of DS: Absence of Global Clock • Cooperating task need to agree on the order of events • Each task has its own notion of time • Clocks cannot be perfectly synchronized • How to determine which even occurred first? • Example: Bank account, starting balance = $100 – Client at bank machine A makes a deposit of $150 – Client at bank machine B makes a withdrawal of $100 – Which event happened first? – Should the bank charge the overdraft fee? 2/6/2017 25© Copyright Material
  26. 26. Challenges of DS: Partial Failures • Detection of failures – may be impossible – Has a component crashed? Or is it just slow? – Is the network down? Or is it just slow? – If it’s slow – how long should we wait? • Handling of failures – Retransmission – Tolerance for failures – Roll back partially completed task • Redundancy against failures – Duplicate network routes – Replicated databases 2/6/2017 26© Copyright Material
  27. 27. Challenges of DS: Scalability • Does the system remain effective as if grows? • As you add more components: – More synchronization – More communication –> the system runs slowly. • Avoiding performance bottlenecks: – Everyone is waiting for a single shared resource – In a centrally coordinated system, everyone waits for the co-ordinator 2/6/2017 27© Copyright Material
  28. 28. Challenges of DS: Transparency • Concealing the heterogeneous and distributed nature of the system so that it appears to the user like one system • Transparency categories – Access: access local and remote resources using identical operations (NFS or Samba-mounted file systems) – Location: access without knowledge of location of a resource (URL’s, e-mail) – Concurrency: allow several processes to operate concurrently using shared resources in a consistent fashion (two users simultaneously accessing the bank account) 2/6/2017 28© Copyright Material
  29. 29. Challenges of DS: Transparency • Transparency categories (continued) – Replication: use replicated resource as if there was just one instance – Failure: allow programs to complete their task despite failures – Mobility: allow resources to move around – Performance: adaption of the system to varying load situations without the user noticing it – Scaling: allow system and applications to expand without need to change structure of applications or algorithms 2/6/2017 29© Copyright Material
  30. 30. Advantages of distributed systems over centralized systems Economics Microprocessors offer a better price/performance than mainframes Speed A distributed system may have more total computing power than a mainframe Inherent distribution Some applications involve spatially separated machines Reliability If one machine crashes, the system as a whole can still survive Incremental growth Computing power can be added in small increments 2/6/2017 30© Copyright Material
  31. 31. Advantages of distributed systems over isolated (personal) computers Data sharing Allow many users access to a common data base Device sharing Allow many users to share expensive peripherals like color printers Communication Make human-to-human communication easier, for example, by electronic mail Flexibility Spread the workload over the available machines in the most cost effective way 2/6/2017 31© Copyright Material
  32. 32. Disadvantages of Distributed Systems Software Little software exists at present for distributed systems Networking The network can saturate or cause other problems Security Easy access also applies to secret data 2/6/2017 32© Copyright Material
  33. 33. Glossary Distributed System: A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages Cloud Computing: A model for enabling ubiquitous, convenient, on- demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. Middleware: A software layer that provides a programming abstraction as well as masking the heterogeneity of the underlying networks, hardware, operating systems and programming languages Cluster computing: is a set of interconnected computers that cooperate closely to provide a single, integrated high performance computing capability 2/6/2017 © Copyright Material 33
  34. 34. QUIZ 1. Which of these layers are not a part of Distributed system architecture (a) Middleware (b) Operating System (c) Network (d) Storage 2. What is the main motivating factor for constructing distributed systems (a) Resource Sharing (b) Concurrency (c) Global Clock (d) Security 3. Pick the odd man out (a) Web Search (b) MMOG (c) Utility Computing (d) Financial Trading 4. __________ in Distributed Systems involve communication & Processing of items of interest. (a) (a) Networks (b) Events (c) Mobile Computing (d) Webcasting 2/6/2017 34© Copyright Material
  35. 35. QUIZ 5. _____ is used to capture this vision of computing as a Utility (a) Grid Computing (b) Cloud Computing (c) Cluster Computing (d) None 6. Focus of resource sharing is on (a) Reliability (b) Efficiency only (c) Consistency (d) A&B 7. Which layer masks the heterogeneity of the underlying Hardware, Network and OS (a) Application (b) Virtual Machine (c) Middleware (d) None 8. Which of the following is an advantage of a Distributed System (a) Security (b) Reliability (c) Networking (d) A&C 2/6/2017 35© Copyright Material
  36. 36. QUIZ 9. Which of the following would make certain aspects of distribution invisible to the application programmer (a) Transperency (b) Concurrency (c) Openness (d) Scalability 10. _________ a set of interconnected computers that cooperate closely to provide a single, integrated high performance computing capability (a) Distributed System (b) Cloud Computing (c) Grid Computing (d) All 2/6/2017 36© Copyright Material
  37. 37. KEY 1. D 2. A 3. C 4. B 5. B 6. D 7. C 8. B 9. A 10. C 2/6/2017 37© Copyright Material
  38. 38. 2/6/2017 38© Copyright Material

×