Distributed Systems. Chapman & Hall/CRC. «H Taylor S* Francis Croup Boca Raton London New York
|
|
- Darleen Gilbert
- 5 years ago
- Views:
Transcription
1 Distributed Systems An Algorithmic Approach Sukumar Ghosh University of Iowa Iowa City, U.S.A. Chapman & Hall/CRC «H Taylor S* Francis Croup Boca Raton London New York Chapman & Hall/CRC is an imprint of the Taylor & Francis Group, an informa business
2 Table of Contents Part A Background Materials 1 Chapter 1 Introduction What Is a Distributed System? Why Distributed Systems? Examples of Distributed Systems Important Issues in Distributed Systems Common Subproblems Implementing a Distributed System Parallel vs. Distributed Systems Bibliographic Notes 10 Chapter 2 Interprocess Communication: An Overview Introduction Processes and Threads Client-Server Model Middleware Network Protocols The Ethernet Wireless Networks The OSI Model Internet Protocol Transport Layer Protocols Interprocess Communication Using Sockets Naming Domain Name Service Naming Service for Mobile Clients Remote Procedure Call Implementing RPC SUN RPC Remote Method Invocation Web Services Messages Transient and Persistent Messages Streams Event Notification CORBA Mobile Agents 31
3 2.11 Basic Group Communication Services Concluding Remarks Bibliographie Notes Exercises 33 Part В Foundational Topics 35 Chapter 3 Models of Communication The Need for a Model A Message-Passing Model for Interprocess Communication Process Actions Channels Synchronous vs. Asynchronous Systems Shared Variables Linda Modeling Mobile Agents Relationship among Models Strong and Weak Models Implementing a FIFO Channel Using a Non-FIFO Channel Implementing Message Passing on Shared Memory Implementing Shared Memory Using Message Passing An Impossibility Result with Channels Classification Based on Special Properties Reactive vs. Transformational Systems Named vs. Anonymous Systems Complexity Measures Concluding Remarks Bibliographic Notes 51 Chapter 4 Representing Distributed Algorithms: Syntax and Semantics Introduction Guarded Actions Nondeterminism Atomic Operations Fairness Unconditionally Fair Scheduler Weakly Fair Scheduler Strongly Fair Scheduler Central vs. Distributed Schedulers Concluding Remarks Bibliographic Notes 65 Chapter 5 Program Correctness Introduction Correctness Criteria Safety Properties Liveness Properties 71
4 5.3 Correctness Proofs Predicate Logic A Review of Prepositional Logic Brief Overview of Predicate Logic Assertional Reasoning: Proving Safety Properties Proving Liveness Properties Using Well-Founded Sets Programming Logic Predicate Transformers Concluding Remarks Bibliographic Notes 84 Chapter 6 Time in a Distributed System Introduction The Physical Time Sequential and Concurrent Events Logical Clocks Vector Clocks Physical Clock Synchronization Preliminary Definitions Clock Reading Error Algorithms for Internal Synchronization Algorithms for External Synchronization Concluding Remarks Bibliographic Notes 100 PartC Important Paradigms 103 Chapter 7 Mutual Exclusion Introduction Solutions Using Message Passing Lamport's Solution Ricart-Agrawala's Solution Maekawa's Solution Token Passing Algorithms Suzuki-Kasami Algorithm Raymond's Algorithm Solutions on the Shared-Memory Model Peterson's Algorithm Mutual Exclusion Using Special Instructions Solution Using Test-and-Set Solution Using Load-Linked and Store-Conditional The Group Mutual Exclusion Problem A Centralized Solution Decentralized Solution on the Shared-Memory Model Concluding Remarks Bibliographic Notes 121
5 Chapter 8 Distributed Snapshot Introduction Properties of Consistent Snapshots The Chandy-Lamport Algorithm Two Examples The Lai-Yang Algorithm Concluding Remarks Bibliographic Notes 134 Chapter 9 Global State Collection Introduction An Elementary Algorithm for Broadcasting Termination Detection Algorithm The Dijkstra-Scholten Algorithm Termination Detection on a Unidirectional Ring Distributed Deadlock Detection Detection of Resource Deadlock Detection of Communication Deadlock Concluding Remarks Bibliographic Notes 149 Chapter 10 Graph Algorithms Introduction Routing Algorithms Computation of Shortest Path Distance Vector Routing Link-State Routing Interval Routing Graph Traversal Spanning Tree Construction Tarry's Graph Traversal Algorithm Minimum Spanning Tree Graph Coloring A Simple Coloring Algorithm Planar Graph Coloring Concluding Remarks Bibliographic Notes 170 Chapter 11 Coordination Algorithms Introduction Leader Election The Bully Algorithm Maxima Finding on a Ring Chang-Roberts Algorithm Franklin's Algorithm Peterson's Algorithm 177
6 Election in Arbitrary Networks Election in Anonymous Networks Synchronizers The ABD Synchronizer Awerbuch's Synchronizer The a-synchronizer The /S-Synchronizer The у -Synchronizer Performance of Synchronizers Concluding Remarks Bibliographic Notes Exercises 186 PartD Faults and Fault-Tolerant Systems 189 Chapter 12 Fault-Tolerant Systems Introduction Classification of Faults Specification of Faults Fault-Tolerant Systems Masking Tolerance NonMasking Tolerance Fail-Safe Tolerance Graceful Degradation Detection of Failures Tolerating Crash Failures Triple Modular Redundancy Tolerating Omission Failures The Sliding Window Protocol The Alternating Bit Protocol HowTCPWorks Concluding Remarks Bibliographic Notes Exercises 205 Chapter 13 Distributed Consensus Introduction Consensus in Asynchronous Systems Consensus on Synchronous Systems: Byzantine Generals Problem The Solution with No Traitor Solution with Traitors: Interactive Consistency Requirements Consensus with Oral Messages An Impossibility Result The OM(m) Algorithm Consensus Using Signed Messages Failure Detectors Solving Consensus Using Failure Detectors 222
7 Consensus with P Consensus Using S Concluding Remarks Bibliographic Notes Exercises 225 Chapter 14 Distributed Transactions Introduction Classification of Transactions Implementing Transactions Concurrency Control and Serializability Testing for Serializability Two-Phase Locking Timestamp Ordering Atomic Commit Protocols One-Phase Commit Two-Phase Commit Non-Blocking Atomic Commit Recovery from Failures Stable Storage Checkpointing and Rollback Recovery Message Logging Concluding Remarks Bibliographic Notes Exercises 239 Chapter 15 Group Communication Introduction Atomic Multicast IP Multicast Application Layer Multicast Ordered Multicasts Implementing Total Order Multicast Implementing Causal Order Multicast Reliable Ordered Multicast The Requirements of Reliable Multicast Scalable Reliable Multicast Open Groups View-Synchronous Group Communication An Overview of Transis Concluding Remarks Bibliographic Notes Exercises 256 Chapter 16 Replicated Data Management Introduction Reliability vs. Availability Architecture of Replicated Data Management 264
8 Passive vs. Active Replication Fault-Tolerant State Machines Data-Centric Consistency Models Strict Consistency Linearizability Sequential Consistency Causal Consistency Client-Centric Consistency Protocols Eventual Consistency Consistency Models for Mobile Clients Implementation of Data-Centric Consistency Models Quorum-Based Protocols Replica Placement Case Studies Replication Management in Coda Replication Management in Bayou Gossip Architecture Concluding Remarks Bibliographic Notes Exercises 278 Chapter 17 Self-Stabilizing Systems Introduction Theoretical Foundations Stabilizing Mutual Exclusion Mutual Exclusion on a Unidirectional Ring Mutual Exclusion on a Bidirectional Array Stabilizing Graph Coloring Stabilizing Spanning Tree Protocol Distributed Reset Stabilizing Clock Synchronization Concluding Remarks Bibliographic Notes Exercises 296 PartE Real World Issues 301 Chapter 18 Distributed Discrete-Event Simulation Introduction Event-Driven Simulation Distributed Simulation The Challenges Correctness Issues Conservative Simulation Optimistic Simulation and Time Warp Global Virtual Time Concluding Remarks 310
9 18.6 Bibliographie Notes Exercises 310 Chapter 19 Security in Distributed Systems Introduction Security Mechanisms Common Security Attacks Encryption Secret-Key Cryptosystem Confusion and Diffusion DES DES AES One-Time Pad Stream Ciphers Steganography Public-Key Cryptosystems The Rivest-Shamir-Adleman (RSA) Method ElGamal Cryptosystem Digital Signatures Signatures in Secret-Key Cryptosystems Signatures in Public-Key Cryptosystems Hashing Algorithms Birthday Attack Elliptic Curve Cryptography Authentication Server Authentication Server for Secret-Key Cryptosystems Authentication Server for Public-Key Cryptosystems Digital Certificates Case Studies Kerberos Pretty Good Privacy (PGP) Secure Socket Layer (SSL) Virtual Private Networks (VPN) and Firewalls VPN Firewall Sharing a Secret Concluding Remarks Bibliographic Notes Exercises 334 Chapter 20 Sensor Networks The Vision Architecture of a Sensor Node MICA Mote ZigBee Enabled Sensor Nodes TinyOS Operating System The Challenges in Wireless Sensor Networks Energy Conservation 345
10 Fault-Tolerance Routing Time Synchronization Location Management Middleware Design Security Routing Algorithms Directed Diffusion Cluster-Based Routing LEACH PEGASIS Meta-Data Based Routing: SPIN Time Synchronization Using Reference Broadcast Reference Broadcast Localization Algorithms RSSI Based Ranging Ranging Using Time Difference of Arrival Anchor-Based Ranging Security in Sensor Networks SPIN for Data Security An Overview of SNEP An Overview of AITESLA Attacks on Routing Sample Application: Pursuer-Evader Games Concluding Remarks Bibliographic Notes Exercises 358 Chapter 21 Peer-to-Peer Networks Introduction The First-Generation P2P Systems Napster Gnutella The Second-Generation P2P Systems KaZaA Chord Content Addressable Network (CAN) Pastry Koorde and De Bruijn Graph The Small-World Phenomenon Skip Graph Replication Management Free Riders and Bittorrent Censorship Resistance, Anonymity, and Ethical Issues Concluding Remarks Bibliographic Notes 378 Bibliography 383 Index 393
DISTRIBUTED SYSTEMS. Second Edition. Andrew S. Tanenbaum Maarten Van Steen. Vrije Universiteit Amsterdam, 7'he Netherlands PEARSON.
DISTRIBUTED SYSTEMS 121r itac itple TAYAdiets Second Edition Andrew S. Tanenbaum Maarten Van Steen Vrije Universiteit Amsterdam, 7'he Netherlands PEARSON Prentice Hall Upper Saddle River, NJ 07458 CONTENTS
More informationDistributed Systems Question Bank UNIT 1 Chapter 1 1. Define distributed systems. What are the significant issues of the distributed systems?
UNIT 1 Chapter 1 1. Define distributed systems. What are the significant issues of the distributed systems? 2. What are different application domains of distributed systems? Explain. 3. Discuss the different
More informationDEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK. UNIT I PART A (2 marks)
DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK Subject Code : IT1001 Subject Name : Distributed Systems Year / Sem : IV / VII UNIT I 1. Define distributed systems. 2. Give examples of distributed systems
More informationDistributed Systems. coordination Johan Montelius ID2201. Distributed Systems ID2201
Distributed Systems ID2201 coordination Johan Montelius 1 Coordination Coordinating several threads in one node is a problem, coordination in a network is of course worse: failure of nodes and networks
More informationDistributed Systems. Characteristics of Distributed Systems. Lecture Notes 1 Basic Concepts. Operating Systems. Anand Tripathi
1 Lecture Notes 1 Basic Concepts Anand Tripathi CSci 8980 Operating Systems Anand Tripathi CSci 8980 1 Distributed Systems A set of computers (hosts or nodes) connected through a communication network.
More informationDistributed Systems. Characteristics of Distributed Systems. Characteristics of Distributed Systems. Goals in Distributed System Designs
1 Anand Tripathi CSci 8980 Operating Systems Lecture Notes 1 Basic Concepts Distributed Systems A set of computers (hosts or nodes) connected through a communication network. Nodes may have different speeds
More informationCprE Fault Tolerance. Dr. Yong Guan. Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University
Fault Tolerance Dr. Yong Guan Department of Electrical and Computer Engineering & Information Assurance Center Iowa State University Outline for Today s Talk Basic Concepts Process Resilience Reliable
More informationPART B UNIT II COMMUNICATION IN DISTRIBUTED SYSTEM PART A
CS6601 DISTRIBUTED SYSTEMS QUESTION BANK UNIT 1 INTRODUCTION 1. What is a distributed system? 2. Mention few examples of distributed systems. 3. Mention the trends in distributed systems. 4. What are backbones
More informationVerteilte Systeme/Distributed Systems Ch. 5: Various distributed algorithms
Verteilte Systeme/Distributed Systems Ch. 5: Various distributed algorithms Holger Karl Computer Networks Group Universität Paderborn Goal of this chapter Apart from issues in distributed time and resulting
More informationCSE 486/586 Distributed Systems
CSE 486/586 Distributed Systems Mutual Exclusion Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586 Recap: Consensus On a synchronous system There s an algorithm that works. On
More informationINSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad
Course Name Course Code Class Branch INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad -500 043 COMPUTER SCIENCE AND ENGINEERING TUTORIAL QUESTION BANK 2015-2016 : DISTRIBUTED SYSTEMS
More informationVALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester : III and VI Section : CSE- 1 & 2 Subject Code : CS6601 Subject Name : DISTRIBUTED
More informationExam 2 Review. Fall 2011
Exam 2 Review Fall 2011 Question 1 What is a drawback of the token ring election algorithm? Bad question! Token ring mutex vs. Ring election! Ring election: multiple concurrent elections message size grows
More informationFailure Tolerance. Distributed Systems Santa Clara University
Failure Tolerance Distributed Systems Santa Clara University Distributed Checkpointing Distributed Checkpointing Capture the global state of a distributed system Chandy and Lamport: Distributed snapshot
More informationVALLIAMMAI ENGINEERING COLLEGE
VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur 603 203 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK II SEMESTER CP7204 Advanced Operating Systems Regulation 2013 Academic Year
More informationParallel and Distributed Systems. Programming Models. Why Parallel or Distributed Computing? What is a parallel computer?
Parallel and Distributed Systems Instructor: Sandhya Dwarkadas Department of Computer Science University of Rochester What is a parallel computer? A collection of processing elements that communicate and
More informationTotal No. of Questions : 09 ] [ Total No.of Pages : 02
CS / IT 321 (CR) Total No. of Questions : 09 ] [ Total No.of Pages : 02 III/IV B. TECH. DEGREE EXAMINATIONS, OCT / NOV - 2015 Second Semester COMPUTER SCIENCE & ENGINEERING NETWK SECURITY Time : Three
More informationDistributed Systems Conclusions & Exam. Brian Nielsen
Distributed Systems Conclusions & Exam Brian Nielsen bnielsen@cs.aau.dk Definition A distributed system is the one in which hardware and software components at networked computers communicate and coordinate
More informationHomework #2 Nathan Balon CIS 578 October 31, 2004
Homework #2 Nathan Balon CIS 578 October 31, 2004 1 Answer the following questions about the snapshot algorithm: A) What is it used for? It used for capturing the global state of a distributed system.
More information殷亚凤. Consistency and Replication. Distributed Systems [7]
Consistency and Replication Distributed Systems [7] 殷亚凤 Email: yafeng@nju.edu.cn Homepage: http://cs.nju.edu.cn/yafeng/ Room 301, Building of Computer Science and Technology Review Clock synchronization
More informationCoordination 1. To do. Mutual exclusion Election algorithms Next time: Global state. q q q
Coordination 1 To do q q q Mutual exclusion Election algorithms Next time: Global state Coordination and agreement in US Congress 1798-2015 Process coordination How can processes coordinate their action?
More informationDistributed Algorithms. Partha Sarathi Mandal Department of Mathematics IIT Guwahati
Distributed Algorithms Partha Sarathi Mandal Department of Mathematics IIT Guwahati Thanks to Dr. Sukumar Ghosh for the slides Distributed Algorithms Distributed algorithms for various graph theoretic
More informationPROCESS SYNCHRONIZATION
DISTRIBUTED COMPUTER SYSTEMS PROCESS SYNCHRONIZATION Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Process Synchronization Mutual Exclusion Algorithms Permission Based Centralized
More informationSeveral of these problems are motivated by trying to use solutiions used in `centralized computing to distributed computing
Studying Different Problems from Distributed Computing Several of these problems are motivated by trying to use solutiions used in `centralized computing to distributed computing Problem statement: Mutual
More informationCSE 5306 Distributed Systems
CSE 5306 Distributed Systems Fault Tolerance Jia Rao http://ranger.uta.edu/~jrao/ 1 Failure in Distributed Systems Partial failure Happens when one component of a distributed system fails Often leaves
More informationToday: Fault Tolerance. Fault Tolerance
Today: Fault Tolerance Agreement in presence of faults Two army problem Byzantine generals problem Reliable communication Distributed commit Two phase commit Three phase commit Paxos Failure recovery Checkpointing
More informationCSE 5306 Distributed Systems. Fault Tolerance
CSE 5306 Distributed Systems Fault Tolerance 1 Failure in Distributed Systems Partial failure happens when one component of a distributed system fails often leaves other components unaffected A failure
More informationDistributed Systems Conclusions & Exam. Brian Nielsen
Distributed Systems Conclusions & Exam Brian Nielsen bnielsen@cs.aau.dk Study Regulations Purpose: That the student obtains knowledge about concepts in distributed systems, knowledge about their construction,
More informationSelf Stabilization. CS553 Distributed Algorithms Prof. Ajay Kshemkalyani. by Islam Ismailov & Mohamed M. Ali
Self Stabilization CS553 Distributed Algorithms Prof. Ajay Kshemkalyani by Islam Ismailov & Mohamed M. Ali Introduction There is a possibility for a distributed system to go into an illegitimate state,
More informationDistributed Systems. Fall 2017 Exam 3 Review. Paul Krzyzanowski. Rutgers University. Fall 2017
Distributed Systems Fall 2017 Exam 3 Review Paul Krzyzanowski Rutgers University Fall 2017 December 11, 2017 CS 417 2017 Paul Krzyzanowski 1 Question 1 The core task of the user s map function within a
More informationToday: Fault Tolerance
Today: Fault Tolerance Agreement in presence of faults Two army problem Byzantine generals problem Reliable communication Distributed commit Two phase commit Three phase commit Paxos Failure recovery Checkpointing
More informationDistributed Systems COMP 212. Revision 2 Othon Michail
Distributed Systems COMP 212 Revision 2 Othon Michail Synchronisation 2/55 How would Lamport s algorithm synchronise the clocks in the following scenario? 3/55 How would Lamport s algorithm synchronise
More informationDistributed Systems Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2016
Distributed Systems 2016 Exam 1 Review Paul Krzyzanowski Rutgers University Fall 2016 Question 1 Why does it not make sense to use TCP (Transmission Control Protocol) for the Network Time Protocol (NTP)?
More informationDistributed Systems (5DV147)
Distributed Systems (5DV147) Replication and consistency Fall 2013 1 Replication 2 What is replication? Introduction Make different copies of data ensuring that all copies are identical Immutable data
More informationSynchronization Part 2. REK s adaptation of Claypool s adaptation oftanenbaum s Distributed Systems Chapter 5 and Silberschatz Chapter 17
Synchronization Part 2 REK s adaptation of Claypool s adaptation oftanenbaum s Distributed Systems Chapter 5 and Silberschatz Chapter 17 1 Outline Part 2! Clock Synchronization! Clock Synchronization Algorithms!
More informationKey-value store with eventual consistency without trusting individual nodes
basementdb Key-value store with eventual consistency without trusting individual nodes https://github.com/spferical/basementdb 1. Abstract basementdb is an eventually-consistent key-value store, composed
More informationAdvanced Distributed Systems
Course Plan and Department of Computer Science Indian Institute of Technology New Delhi, India Outline Plan 1 Plan 2 3 Message-Oriented Lectures - I Plan Lecture Topic 1 and Structure 2 Client Server,
More informationMichel Raynal. Distributed Algorithms for Message-Passing Systems
Michel Raynal Distributed Algorithms for Message-Passing Systems Contents Part I Distributed Graph Algorithms 1 Basic Definitions and Network Traversal Algorithms... 3 1.1 DistributedAlgorithms... 3 1.1.1
More informationCHAPTER 4: INTERPROCESS COMMUNICATION AND COORDINATION
CHAPTER 4: INTERPROCESS COMMUNICATION AND COORDINATION Chapter outline Discuss three levels of communication: basic message passing, request/reply and transaction communication based on message passing
More informationAnnouncements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris
Announcements Email me your survey: See the Announcements page Today Conceptual overview of distributed systems System models Reading Today: Chapter 2 of Coulouris Next topic: client-side processing (HTML,
More informationReplication in Distributed Systems
Replication in Distributed Systems Replication Basics Multiple copies of data kept in different nodes A set of replicas holding copies of a data Nodes can be physically very close or distributed all over
More informationLecture 1: Introduction to distributed Algorithms
Distributed Algorithms M.Tech., CSE, 2016 Lecture 1: Introduction to distributed Algorithms Faculty: K.R. Chowdhary : Professor of CS Disclaimer: These notes have not been subjected to the usual scrutiny
More informationExam 2 Review. October 29, Paul Krzyzanowski 1
Exam 2 Review October 29, 2015 2013 Paul Krzyzanowski 1 Question 1 Why did Dropbox add notification servers to their architecture? To avoid the overhead of clients polling the servers periodically to check
More informationCRYPTOGRAPHY AND NETWORK SECURITY
CRYPTOGRAPHY AND NETWORK SECURITY PRINCIPLES AND PRACTICE FIFTH EDITION William Stallings Prentice Hall Boston Columbus Indianapolis New York San Francisco Upper Saddle River Amsterdam Cape Town Dubai
More informationCourse Curriculum for Master Degree in Network Engineering and Security
Course Curriculum for Master Degree in Network Engineering and Security The Master Degree in Network Engineering and Security is awarded by the Faculty of Graduate Studies at Jordan University of Science
More informationReplication and Consistency. Fall 2010 Jussi Kangasharju
Replication and Consistency Fall 2010 Jussi Kangasharju Chapter Outline Replication Consistency models Distribution protocols Consistency protocols 2 Data Replication user B user C user A object object
More informationDistributed Deadlock
Distributed Deadlock 9.55 DS Deadlock Topics Prevention Too expensive in time and network traffic in a distributed system Avoidance Determining safe and unsafe states would require a huge number of messages
More informationDistributed Systems Exam 3 Review. Paul Krzyzanowski. Rutgers University. Fall 2016
Distributed Systems 2015 Exam 3 Review Paul Krzyzanowski Rutgers University Fall 2016 2013-2016 Paul Krzyzanowski 1 2015 Question 1 What information does each node need to store for a three-dimensional
More informationPh.D. Written Examination Syllabus
Ph.D. Written Examination Syllabus April 18, 2013 Architecture Syllabus 1. Fundamentals of Instruction Set Architecture (H&P, Appendix B & misc) Classifying ISAs. Memory addresses, storage formats. Basic
More informationConsensus and related problems
Consensus and related problems Today l Consensus l Google s Chubby l Paxos for Chubby Consensus and failures How to make process agree on a value after one or more have proposed what the value should be?
More informationChapter 1: Distributed Systems: What is a distributed system? Fall 2013
Chapter 1: Distributed Systems: What is a distributed system? Fall 2013 Course Goals and Content n Distributed systems and their: n Basic concepts n Main issues, problems, and solutions n Structured and
More informationQUESTIONS Distributed Computing Systems. Prof. Ananthanarayana V.S. Dept. Of Information Technology N.I.T.K., Surathkal
QUESTIONS Distributed Computing Systems Prof. Ananthanarayana V.S. Dept. Of Information Technology N.I.T.K., Surathkal Questions Fundamentals 1. Discuss five fundamental issues in distributed system 2.
More informationImportant Lessons. Today's Lecture. Two Views of Distributed Systems
Important Lessons Replication good for performance/ reliability Key challenge keeping replicas up-to-date Wide range of consistency models Will see more next lecture Range of correctness properties L-10
More informationSynchronization. Clock Synchronization
Synchronization Clock Synchronization Logical clocks Global state Election algorithms Mutual exclusion Distributed transactions 1 Clock Synchronization Time is counted based on tick Time judged by query
More informationDepartment of Computer Science & Engineering Indian Institute of Technology Patna CS701 DISTRIBUTED SYSTEMS AND ALGORITHMS
CS701 DISTRIBUTED SYSTEMS AND ALGORITHMS 3-0-0-6 Basic concepts. Models of computation: shared memory and message passing systems, synchronous and asynchronous systems. Logical time and event ordering.
More informationIntroduction to Distributed Systems
Introduction to Distributed Systems Other matters: review of the Bakery Algorithm: why can t we simply keep track of the last ticket taken and the next ticvket to be called? Ref: [Coulouris&al Ch 1, 2]
More informationAcronyms. International Organization for Standardization International Telecommunication Union ITU Telecommunication Standardization Sector
Acronyms 3DES AES AH ANSI CBC CESG CFB CMAC CRT DoS DEA DES DoS DSA DSS ECB ECC ECDSA ESP FIPS IAB IETF IP IPsec ISO ITU ITU-T Triple DES Advanced Encryption Standard Authentication Header American National
More informationOUTLINE. Introduction Clock synchronization Logical clocks Global state Mutual exclusion Election algorithms Deadlocks in distributed systems
Chapter 5 Synchronization OUTLINE Introduction Clock synchronization Logical clocks Global state Mutual exclusion Election algorithms Deadlocks in distributed systems Concurrent Processes Cooperating processes
More informationToday: Fault Tolerance. Replica Management
Today: Fault Tolerance Failure models Agreement in presence of faults Two army problem Byzantine generals problem Reliable communication Distributed commit Two phase commit Three phase commit Failure recovery
More informationConsistency and Replication. Some slides are from Prof. Jalal Y. Kawash at Univ. of Calgary
Consistency and Replication Some slides are from Prof. Jalal Y. Kawash at Univ. of Calgary Reasons for Replication Reliability/Availability : Mask failures Mask corrupted data Performance: Scalability
More informationMiddleware and Distributed Systems. System Models. Dr. Martin v. Löwis
Middleware and Distributed Systems System Models Dr. Martin v. Löwis System Models (Coulouris et al.) Architectural models of distributed systems placement of parts and relationships between them e.g.
More informationCoordination and Agreement
Coordination and Agreement Nicola Dragoni Embedded Systems Engineering DTU Informatics 1. Introduction 2. Distributed Mutual Exclusion 3. Elections 4. Multicast Communication 5. Consensus and related problems
More informationDistributed Systems 8L for Part IB
Distributed Systems 8L for Part IB Handout 3 Dr. Steven Hand 1 Distributed Mutual Exclusion In first part of course, saw need to coordinate concurrent processes / threads In particular considered how to
More informationIntroduction to Distributed Systems Seif Haridi
Introduction to Distributed Systems Seif Haridi haridi@kth.se What is a distributed system? A set of nodes, connected by a network, which appear to its users as a single coherent system p1 p2. pn send
More informationBCA III Network security and Cryptography Examination-2016 Model Paper 1
Time: 3hrs BCA III Network security and Cryptography Examination-2016 Model Paper 1 M.M:50 The question paper contains 40 multiple choice questions with four choices and student will have to pick the correct
More informationChapter 6 Synchronization (2)
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 6 Synchronization (2) Plan Clock synchronization in distributed systems Physical clocks Logical
More informationChapter 5: Distributed Systems: Fault Tolerance. Fall 2013 Jussi Kangasharju
Chapter 5: Distributed Systems: Fault Tolerance Fall 2013 Jussi Kangasharju Chapter Outline n Fault tolerance n Process resilience n Reliable group communication n Distributed commit n Recovery 2 Basic
More informationImportant Lessons. A Distributed Algorithm (2) Today's Lecture - Replication
Important Lessons Lamport & vector clocks both give a logical timestamps Total ordering vs. causal ordering Other issues in coordinating node activities Exclusive access to resources/data Choosing a single
More informationChapter 8. Network Security. Cryptography. Need for Security. An Introduction to Cryptography 10/7/2010
Cryptography Chapter 8 Network Security Introduction to Cryptography Substitution Ciphers Transposition Ciphers One-Time Pads Two Fundamental Cryptographic Principles Need for Security An Introduction
More informationPractical Byzantine Fault
Practical Byzantine Fault Tolerance Practical Byzantine Fault Tolerance Castro and Liskov, OSDI 1999 Nathan Baker, presenting on 23 September 2005 What is a Byzantine fault? Rationale for Byzantine Fault
More informationToday: Fault Tolerance. Failure Masking by Redundancy
Today: Fault Tolerance Agreement in presence of faults Two army problem Byzantine generals problem Reliable communication Distributed commit Two phase commit Three phase commit Failure recovery Checkpointing
More informationLast time. Distributed systems Lecture 6: Elections, distributed transactions, and replication. DrRobert N. M. Watson
Distributed systems Lecture 6: Elections, distributed transactions, and replication DrRobert N. M. Watson 1 Last time Saw how we can build ordered multicast Messages between processes in a group Need to
More informationDistributed Systems 11. Consensus. Paul Krzyzanowski
Distributed Systems 11. Consensus Paul Krzyzanowski pxk@cs.rutgers.edu 1 Consensus Goal Allow a group of processes to agree on a result All processes must agree on the same value The value must be one
More informationCS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [P2P SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Byzantine failures vs malicious nodes
More informationCurriculum 2013 Knowledge Units Pertaining to PDC
Curriculum 2013 Knowledge Units Pertaining to C KA KU Tier Level NumC Learning Outcome Assembly level machine Describe how an instruction is executed in a classical von Neumann machine, with organization
More informationPaxos and Raft (Lecture 21, cs262a) Ion Stoica, UC Berkeley November 7, 2016
Paxos and Raft (Lecture 21, cs262a) Ion Stoica, UC Berkeley November 7, 2016 Bezos mandate for service-oriented-architecture (~2002) 1. All teams will henceforth expose their data and functionality through
More informationDistributed Mutual Exclusion
Distributed Mutual Exclusion Mutual Exclusion Well-understood in shared memory systems Requirements: at most one process in critical section (safety) if more than one requesting process, someone enters
More informationDefinition of a DS A collection of independent computers that appear to its user as a single coherent system.
Definition of a DS A collection of independent computers that appear to its user as a single coherent system. Challenges in DS Transparency, Heterogeneity, Failure Handling, Openness, Scalability and Openness
More information10EC832: NETWORK SECURITY
10EC832: NETWORK SECURITY Objective: In this electronic age, security and privacy are two of the issues whose importance cannot be stressed enough. How do we ensure the systems we use are resistant to
More information416 practice questions (PQs)
416 practice questions (PQs) 1. Goal: give you some material to study for the final exam and to help you to more actively engage with the material we cover in class. 2. Format: questions that are in scope
More informationChapter 8 Fault Tolerance
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 8 Fault Tolerance 1 Fault Tolerance Basic Concepts Being fault tolerant is strongly related to
More informationCipher Suite Configuration Mode Commands
The Cipher Suite Configuration Mode is used to configure the building blocks for SSL cipher suites, including the encryption algorithm, hash function, and key exchange. Important The commands or keywords/variables
More informationSelected Questions. Exam 2 Fall 2006
Selected Questions Exam 2 Fall 2006 Page 1 Question 5 The clock in the clock tower in the town of Chronos broke. It was repaired but now the clock needs to be set. A train leaves for the nearest town,
More informationFault Tolerance. Distributed Systems IT332
Fault Tolerance Distributed Systems IT332 2 Outline Introduction to fault tolerance Reliable Client Server Communication Distributed commit Failure recovery 3 Failures, Due to What? A system is said to
More informationIntuitive distributed algorithms. with F#
Intuitive distributed algorithms with F# Natallia Dzenisenka Alena Hall @nata_dzen @lenadroid A tour of a variety of intuitivedistributed algorithms used in practical distributed systems. and how to prototype
More informationChapter 4: Distributed Systems: Replication and Consistency. Fall 2013 Jussi Kangasharju
Chapter 4: Distributed Systems: Replication and Consistency Fall 2013 Jussi Kangasharju Chapter Outline n Replication n Consistency models n Distribution protocols n Consistency protocols 2 Data Replication
More informationDEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT-1
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year & Semester Section Subject Code Subject Name Degree & Branch : I & II : M.E : CP7204 : Advanced Operating Systems : M.E C.S.E. 1. Define Process? UNIT-1
More informationTo do. Consensus and related problems. q Failure. q Raft
Consensus and related problems To do q Failure q Consensus and related problems q Raft Consensus We have seen protocols tailored for individual types of consensus/agreements Which process can enter the
More informationCSE 5306 Distributed Systems. Consistency and Replication
CSE 5306 Distributed Systems Consistency and Replication 1 Reasons for Replication Data are replicated for the reliability of the system Servers are replicated for performance Scaling in numbers Scaling
More informationFault Tolerance. Distributed Systems. September 2002
Fault Tolerance Distributed Systems September 2002 Basics A component provides services to clients. To provide services, the component may require the services from other components a component may depend
More informationSynchronization. Chapter 5
Synchronization Chapter 5 Clock Synchronization In a centralized system time is unambiguous. (each computer has its own clock) In a distributed system achieving agreement on time is not trivial. (it is
More informationConsensus Problem. Pradipta De
Consensus Problem Slides are based on the book chapter from Distributed Computing: Principles, Paradigms and Algorithms (Chapter 14) by Kshemkalyani and Singhal Pradipta De pradipta.de@sunykorea.ac.kr
More informationDistributed Systems. 09. State Machine Replication & Virtual Synchrony. Paul Krzyzanowski. Rutgers University. Fall Paul Krzyzanowski
Distributed Systems 09. State Machine Replication & Virtual Synchrony Paul Krzyzanowski Rutgers University Fall 2016 1 State machine replication 2 State machine replication We want high scalability and
More informationDep. Systems Requirements
Dependable Systems Dep. Systems Requirements Availability the system is ready to be used immediately. A(t) = probability system is available for use at time t MTTF/(MTTF+MTTR) If MTTR can be kept small
More informationDistributed systems. Lecture 6: distributed transactions, elections, consensus and replication. Malte Schwarzkopf
Distributed systems Lecture 6: distributed transactions, elections, consensus and replication Malte Schwarzkopf Last time Saw how we can build ordered multicast Messages between processes in a group Need
More informationChapter 8. Network Security. Need for Security. An Introduction to Cryptography. Transposition Ciphers One-Time Pads
Cryptography p y Chapter 8 Network Security Introduction to Cryptography Substitution Ciphers Transposition Ciphers One-Time Pads Two Fundamental Cryptographic Principles Need for Security An Introduction
More informationChapter 8 Fault Tolerance
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 8 Fault Tolerance Fault Tolerance Basic Concepts Being fault tolerant is strongly related to what
More informationContents. 1.1 What Operating Systems Do Computer-System Organization Computer-System Architecture 12. Operating-System Structures
PART ONE Chapter 1 Introduction OVERVIEW 1.1 What Operating Systems Do 3 1.2 Computer-System Organization 6 1.3 Computer-System Architecture 12 1.4 Operating-System Structure 15 1.5 Operating-System Operations
More informationLarge-Scale Key-Value Stores Eventual Consistency Marco Serafini
Large-Scale Key-Value Stores Eventual Consistency Marco Serafini COMPSCI 590S Lecture 13 Goals of Key-Value Stores Export simple API put(key, value) get(key) Simpler and faster than a DBMS Less complexity,
More informationCS 417: the one-hour study guide for exam 2
CS 417: the one-hour study guide for exam 2 Disclaimer: This study guide attempts to touch upon the most important topics that may be covered on the exam but does not claim to necessarily cover everything
More information