Lecture 6: Introduction to Distributed Computing.

Slides:



Advertisements
Similar presentations
Distributed System Services Prepared By:- Monika Patel.
Advertisements

IPC (Interprocess Communication)
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Distributed Snapshots: Determining Global States of Distributed Systems - K. Mani Chandy and Leslie Lamport.
Impossibility of Distributed Consensus with One Faulty Process
Lecture 8: Asynchronous Network Algorithms
Operating Systems & Concurrent Programming Distributed Operating Systems & Algorithms Lecturer: Xu Qiwen Textbook: Randy Chow Theodore Johnson.
Uncoordinated Checkpointing The Global State Recording Algorithm Cristian Solano.
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
Virtual Synchrony Jared Cantwell. Review Multicast Causal and total ordering Consistent Cuts Synchronized clocks Impossibility of consensus Distributed.
CPSC 668Set 1: Introduction1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
Distributed Systems Fall 2010 Time and synchronization.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 3 – Distributed Systems.
Dynamic Hypercube Topology Stefan Schmid URAW 2005 Upper Rhine Algorithms Workshop University of Tübingen, Germany.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Performance Comparison of Existing Leader Election Algorithms for Dynamic Networks Mobile Ad Hoc (Dynamic) Networks: Collection of potentially mobile computing.
Ch4: Distributed Systems Architectures. Typically, system with several interconnected computers that do not share clock or memory. Motivation: tie together.
1 Parallel computing and its recent topics. 2 Outline 1. Introduction of parallel processing (1)What is parallel processing (2)Classification of parallel.
1 A Modular Approach to Fault-Tolerant Broadcasts and Related Problems Author: Vassos Hadzilacos and Sam Toueg Distributed Systems: 526 U1580 Professor:
LIGO-G Z 8 June 2001L.S.Finn/LDAS Camp1 How to think about parallel programming.
1 Fault Tolerance in the Nonstop Cyclone System By Scott Chan Robert Jardine Presented by Phuc Nguyen.
1 Lecture 20: Parallel and Distributed Systems n Classification of parallel/distributed architectures n SMPs n Distributed systems n Clusters.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
Introduction Distributed Algorithms for Multi-Agent Networks Instructor: K. Sinan YILDIRIM.
Computer and its components Computer Skills university of Palestine.
Distributed systems A collection of autonomous computers linked by a network, with software designed to produce an integrated computing facility –A well.
Lecture 5: Sun: 1/5/ Distributed Algorithms - Distributed Databases Lecturer/ Kawther Abas CS- 492 : Distributed system &
Architectures of distributed systems Fundamental Models
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Spring 2014 Prof. Jennifer Welch CSCE 668 Set 1: Introduction 1.
Chapter 2: System Models. Objectives To provide students with conceptual models to support their study of distributed systems. To motivate the study of.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Distributed Systems and Algorithms Sukumar Ghosh University of Iowa Spring 2011.
Multiprossesors Systems.. What are Distributed Databases ? “ A Logically interrelated collection of shared data ( and a description of this data) physically.
Distributed Computing CSC 345 – Operating Systems By - Fure Unukpo 1 Saturday, April 26, 2014.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
DISTRIBUTED ALGORITHMS AND SYSTEMS Spring 2014 Prof. Jennifer Welch Set 11: Asynchronous Consensus 1.
PARALLEL COMPUTING overview What is Parallel Computing? Traditionally, software has been written for serial computation: To be run on a single computer.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Processes CSCI 4534 Chapter 4. Introduction Early computer systems allowed one program to be executed at a time –The program had complete control of the.
Hwajung Lee. Maximilien Brice, © CERN  Fact: Processor population is exploding. Technology has dramatically reduced the price of processors.  Geographic.
Time This powerpoint presentation has been adapted from: 1) sApr20.ppt.
Several sets of slides by Prof. Jennifer Welch will be used in this course. The slides are mostly identical to her slides, with some minor changes. Set.
CS 3471 CS 347: Parallel and Distributed Data Management Notes13: Time and Clocks.
Global Clock Synchronization in Sensor Networks Qun Li, Member, IEEE, and Daniela Rus, Member, IEEE IEEE Transactions on Computers 2006 Chien-Ku Lai.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 1.
Failure detection The design of fault-tolerant systems will be easier if failures can be detected. Depends on the 1. System model, and 2. The type of failures.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
CS4315A. Berrached:CMS:UHD1 Introduction to Operating Systems Chapter 1.
Distributed Mutual Exclusion Synchronization in Distributed Systems Synchronization in distributed systems are often more difficult compared to synchronization.
Background Computer System Architectures Computer System Software.
Silberschatz and Galvin  Operating System Concepts Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming.
Classifying fault-tolerance Masking tolerance. Application runs as it is. The failure does not have a visible impact. All properties (both liveness & safety)
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
INTRODUCTION TO COMPUTERS. A computer system is an electronic device used to input data, process data, store data for later use and produce output in.
CONCEPTS OF REAL-TIME OPERATING SYSTEM. OBJECTIVE  To Understand Why we need OS?  To identify Types of OS  To Define Real - Time Systems  To Classify.
These slides are based on the book:
Distributed and Parallel Processing
Introduction to parallel programming
Parallel Programming By J. H. Wang May 2, 2017.
Lecture 9: Asynchronous Network Algorithms
Lecture 7: Introduction to Distributed Computing.
Introduction to locality sensitive approach to distributed systems
Part 2: Parallel Models (I)
COMP60621 Fundamentals of Parallel and Distributed Systems
COMP60611 Fundamentals of Parallel and Distributed Systems
Hwajung Lee ITEC452 Distributed Computing Lecture 1 Introduction to Distributed Systems.
Distributed Systems and Algorithms
Presentation transcript:

Lecture 6: Introduction to Distributed Computing

Distribute Systems and Distributed Computing Contents Introduction of Distributed Systems Distributed Computation Models Synchronous Network Algorithms Asynchronous Network Algorithms Clock in Asynchronous Distributed Systems and Snapshot algorithms Fault-Tolerant Algorithms Wei Chen, Professor Tennessee State University

Construction of Distributed Systems Units of A Distributed System: Units/Nodes (Computers, sensors, … ) Network Software network

What Is Distribute Systems? There is no unique definition for distributed systems. Similar terms are Networked system parallel systems Concurrent systems Decentralized systems Enslow’s Definition Distributed System = Distributed hardware + Distributed control + Distributed data

Distributed Hardware Physically shared/distributed memory and logically shared/distributed memory Logically sharedLogically distributed Physically shared Common memorySimulated message passing Physically distributed Distributed shared memory message passing processor Network memory Physically shared memory processor Network memory Physically distributed memory

Distributed System Software Cooperating the actions of units (computers, sensors, …) Supporting system resources (hard ware and software) sharing. Supporting data sharing.

Distributed Control Master/Slave (fixed/dynamic) Multi control points (homogenous/heterogeneous) Distributed Data Copies: Processors hold data copies. Divided data: Data are divided and distributed to processors.

Features of Distributed Systems Resource sharing: hardware, software, data Openness: openness of main interface of the system, scalability of the current system Concurrency: concurrent execution of the processes, high performance, nice rate of price and performance (PC cluster = poor man’s supercomputer ) Fault tolerance: ability to tolerate the fault of system units, availability( using potential redundancy to overcome the system fault). Transparency: a distributed system can be looked as one computer (access transparency, position transparency, parallel transparency,….)

Distributed Computational models Processes: never mind in which unit they are. Communicating links: communication channels Computer process Communication link

Process Generalized RAM (Random Access Machine) CPU with program Infinite memory Message changeable with adjacent processes Each process has a distinct ID. Without fault (it will be considered in the model with fault).

Communication Links Bidirectional Asynchronous Infinite FIFO queue Without fault (no massage losing, alteration) Sending in order of A,B,C Receiving in order of A,B,C

Synchronism Running speed of each process Transmission delay Speed of the local clock in each process: constant upper and lower bounds

Local Clock of Synchronous Distribute Systems p(t): the value of the local clock of process p at moment t Real clock Real time Local clock Typical synchronous distributed model: Round Model Processes execute each round synchronously Each round consists of message receiving, computation, and message sending Processes accept the message sent from the previous round.

Complete asynchronous model No assumption for the speed of processes. No assumption for the transmission delay of communication links. No assumption for the speed of local clocks.