CSS434 System Models1 Textbook Ch2 Professor: Munehiro Fukuda.

Slides:



Advertisements
Similar presentations
Multiple Processor Systems
Advertisements

Distributed Processing, Client/Server and Clusters
Distributed System Structures Network Operating Systems –provide an environment where users can access remote resources through remote login or file transfer.
2. Computer Clusters for Scalable Parallel Computing
Chapter 7 LAN Operating Systems LAN Software Software Compatibility Network Operating System (NOP) Architecture NOP Functions NOP Trends.
Classification of Distributed Systems Properties of Distributed Systems n motivation: advantages of distributed systems n classification l architecture.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
I.1 Distributed Systems Prof. Dr. Alexander Schill Dresden Technical University Computer Networks Dept.
Distributed Processing, Client/Server, and Clusters
Distributed components
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization and Design Goals Dr. Michael R. Lyu Computer.
Distributed Hardware How are computers interconnected ? –via a bus-based –via a switch How are processors and memories interconnected ? –Private –shared.
CSS430 Introduction1 Textbook Ch1 These slides were compiled from the OSC textbook slides (Silberschatz, Galvin, and Gagne) and the instructor’s class.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
OCT Masters of Information Systems Management 1 Organizational Communications and Distributed Object Technologies Week 3: Models and Architectures.
20101 Overview Distributed systems Layers Communication is logically on the application layer Only that has to be considered except for speed,
OCT1 Principles From Chapter Two of “Distributed Systems Concepts and Design” Material on Lamport Clocks from “Distributed Systems Principles and Paradigms”
Winter, 2004CSS490 Fundamentals1 Textbook Ch1 Instructor: Munehiro Fukuda These slides were compiled from the course textbook and the reference books.
Computer Science Lecture 1, page 1 CS677: Distributed OS Distributed Operating Systems Spring 2005 Prashant Shenoy UMass Computer Science
DISTRIBUTED COMPUTING
Ch4: Distributed Systems Architectures. Typically, system with several interconnected computers that do not share clock or memory. Motivation: tie together.
Introduction MSCS 6060 – Parallel and Distributed Systems.
CH2 System models.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
Architectures of distributed systems Fundamental Models
Distributed System Models (Fundamental Model). Architectural Model Goal Reliability Manageability Adaptability Cost-effectiveness Service Layers Platform.
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 COMPUTING Introduction Dr. Yingwu Zhu.
Distributed Computing Systems CSCI 4780/6780. Distributed System A distributed system is: A collection of independent computers that appears to its users.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 2: Architectural.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Chapter 2: Architectural Models Jenhui Chen. Introduction zArchitectural models ySoftware layers ySystem architecture yVariations on the client-server.
Distributed Computing Systems CSCI 4780/6780. Geographical Scalability Challenges Synchronous communication –Waiting for a reply does not scale well!!
Unit-IV Distributed Computing Systems Distributed Computing models
Prepared By: Md Rezaul Huda Reza
Chapter 2: System Models  Architectural Models  Fundamental Models.
Slides for Chapter 2: Architectural Models
1DT066 D ISTRIBUERADE I NFORMATIONSSYSTEM Distribuerade System Karaktäristik och Design 1.
Definition of a Distributed System (1) A distributed system is: A collection of independent computers that appears to its users as a single coherent system.
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
Distributed Computing Systems CSCI 4780/6780. Scalability ConceptExample Centralized servicesA single server for all users Centralized dataA single on-line.
Distributed Systems Unit – 1 Concepts of DS By :- Maulik V. Dhamecha Maulik V. Dhamecha (M.Tech.)
Distributed System Models
Distributed Computing Systems CSCI 6900/4900. Review Definition & characteristics of distributed systems Distributed system organization Design goals.
Background Computer System Architectures Computer System Software.
Primitive Concepts of Distributed Systems Chapter 1.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 System Models by Dr. Sarmad Sadik.
Univ. of TehranDistributed Operating Systems1 Advanced Operating Systems University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani.
Distributed Systems Lecture 1 Introduction to distributed systems 1.
Lecture 13 Parallel Processing. 2 What is Parallel Computing? Traditionally software has been written for serial computation. Parallel computing is the.
Distributed Operating Systems Spring 2004
Last Class: Introduction
Distributed Operating Systems
Definition of Distributed System
Slides for Chapter 2: Architectural Models
Lecture 1 Introduction to distributed systems
Parallel and Multiprocessor Architectures – Shared Memory
Chapter 17: Database System Architectures
Slides for Chapter 2: Architectural Models
Multiple Processor Systems
Multiple Processor Systems
Architectures of distributed systems Fundamental Models
Architectures of distributed systems Fundamental Models
Multiple Processor and Distributed Systems
Architectures of distributed systems
Architectures of distributed systems Fundamental Models
Introduction Chapter 1.
Presentation transcript:

CSS434 System Models1 Textbook Ch2 Professor: Munehiro Fukuda

CSS434 System Models2 Outline Parallel versus distributed systems Service layers Platform models Middleware models Reasons for distributed systems

CSS434 System Models3 Parallel v.s. Distributed Systems Parallel SystemsDistributed Systems MemoryTightly coupled shared memory UMA, NUMA Distributed memory Message passing, RPC, and/or used of distributed shared memory ControlGlobal clock control SIMD, MIMD No global clock control Synchronization algorithms needed Processor interconnection Order of Tbps Bus, mesh, tree, mesh of tree, and hypercube (-related) network Order of Gbps Ethernet(bus), token ring and SCI (ring), myrinet(switching network) Main focusPerformance Scientific computing Performance(cost and scalability) Reliability/availability Information/resource sharing

CSS434 System Models4 Service Layers in Distributed Systems

CSS434 System Models5 Distributed Computing Environment Platforms Threads Distributed File Service RPC Security Name Distributed Time Service DCE Applications

CSS434 System Models6 Platform Milestones in Distributed Systems s Loading monitor 1950s-1960s Batch system 1960s Multiprogramming 1960s-1970s Time sharing systemsMultics, IBM WAN and LANARPAnet, Ethernet 1960s-early1980s MinicomputersPDP, VAX Early 1980s WorkstationsAlto 1980s – present Workstation/Server modelsSprite, V-system 1990s ClustersBeowulf Late 1990s Grid computingGlobus, Legion

CSS434 System Models7 Platforms Minicomputer model Workstation model Workstation-server model Processor-pool model Cluster model Grid computing

CSS434 System Models8 Minicomputer Model Extension of Time sharing system User must log on his/her home minicomputer. Thereafter, he/she can log on a remote machine by telnet. Resource sharing Database High-performance devices Mini- computer Mini- computer Mini- computer ARPA net

CSS434 System Models9 Workstation Model Process migration Users first log on his/her personal workstation. If there are idle remote workstations, a heavy job may migrate to one of them. Problems: How to find am idle workstation How to migrate a job What if a user log on the remote machine 100Mbps LAN Workstation

CSS434 System Models10 Workstation-Server Model Client workstations Diskless Graphic/interactive applications processed in local All file, print, http and even cycle computation requests are sent to servers. Server minicomputers Each minicomputer is dedicated to one or more different types of services. Client-Server model of communication RPC (Remote Procedure Call) RMI (Remote Method Invocation) A Client process calls a server process ’ function. No process migration invoked Example: NFS 100Gbps LAN Workstation Mini- Computer file server Mini- Computer http server Mini- Computer cycle server

CSS434 System Models11 Processor-Pool Model Clients: They log in one of terminals (diskless workstations or X terminals) All services are dispatched to servers. Servers: Necessary number of processors are allocated to each user from the pool. Better utilization but less interactivity Server 1 100Mbps LAN Server N

CSS434 System Models12 Cluster Model Client Takes a client-server model Server Consists of many PC/workstations connected to a high- speed network. Puts more focus on performance: serves for requests in parallel. 100Mbps LAN Workstation Master node Slave 1 Slave N Slave 2 1Gbps SAN http server1 http server2 http server N

CSS434 System Models13 High-speed Information high way Grid Computing Goal Collect computing power of supercomputers and clusters sparsely located over the nation and make it available as if it were the electric grid Distributed Supercomputing Very large problems needing lots of CPU, memory, etc. High-Throughput Computing Harnessing many idle resources On-Demand Computing Remote resources integrated with local computation Data-intensive Computing Using distributed data Collaborative Computing Support communication among multiple parties Super- computer Cluster Super- computer Cluster Mini- computer Workstation

CSS434 System Models14 Middleware Models Platforms Client-server modelWorkstation-server model Services provided by multiple servers Cluster model Proxy servers and cachesISP server Cluster model Peer processesWorkstation model Mobile code and agentsWorkstation model Workstation-server model Thin clientsProcessor-pool model Cluster model

CSS434 System Models15 Client-Server Model 100Gbps LAN Workstation Mini- Computer file server Mini- Computer http server Mini- Computer cycle server HTTP server File server DNS server

CSS434 System Models16 Services Provided by Multiple Servers Ex. altavista.digital.com DB server Replication Availability Performance 100Gbps LAN Workstation Master node Slave 1 Slave N Slave 2 1Gbps SAN

CSS434 System Models17 Proxy Servers and Caches Ex. Internet Service Provider 100Gbps LAN Workstation Master node Slave 1 Slave N Slave 2 1Gbps SAN

CSS434 System Models18 Peer Processes 100Gbps LAN Workstation Distributed whiteboard application

CSS434 System Models19 Mobile Code and Agents 100Gbps LAN Workstation Mini- Computer file server Mini- Computer http server Mini- Computer cycle server

CSS434 System Models20 Network Computers and Thin Clients Thin Client Application Process Network computer or PC Compute server network Server 1 100Gbps LAN Server N 100Gbps LAN Workstation Master node Slave 1 Slave N Slave 2 1Gbps SAN X11 Diskless workstations

CSS434 System Models21 Reasons for Distributed Computing Systems Inherently distributed applications Distributed DB, worldwide airline reservation, banking system Information sharing among distributed users CSCW or groupware Resource sharing Sharing DB/expensive hardware and controlling remote lab. devices Better cost-performance ratio / Performance Emergence of Gbit network and high-speed/cheap MPUs Effective for coarse-grained or embarrassingly parallel applications Reliability Non-stopping (availability) and voting features. Scalability Loosely coupled connection and hot plug-in Flexibility Reconfigure the system to meet users ’ requirements

CSS434 System Models22 Network v.s. Distributed Operating Systems FeaturesNetwork OSDistributed OS SSI (Single System Image) NO Ssh, sftp, no view of remote memory YES Process migration, NFS, DSM (Distr. Shared memory) AutonomyHigh Local OS at each computer No global job coordination Low A single system-wide OS Global job coordination Fault ToleranceUnavailability grows as faulty machines increase. Unavailability remains little even if fault machines increase.

CSS434 System Models23 Issues in Distributed Computing System Transparency (=SSI) Access transparency Memory access: DSM Function call: RPC and RMI Location transparency File naming: NFS Domain naming: DNS (Still location concerned.) Migration transparency Automatic state capturing and migration Concurrency transparency (See the next page) Event ordering: Message delivery and memory consistency Other transparency: Failure, Replication, Performance, and Scaling

CSS434 System Models24 Issues in Distributed Computing System Event Ordering

CSS434 System Models25 Issues in Distributed Computing System Reliability Faults Omission failure (See the next page.) Byzantine failure Fault avoidance The more machines involved, the less avoidance capability Fault tolerance Redundancy techniques K-fault tolerance needs K + 1 replicas K-Byzantine failures needs 2K + 1 replicas. Distributed control Avoiding a complete fail stop Fault detection and recovery Atomic transaction Stateless servers

CSS434 System Models26 Omission and Arbitrary Failure Class of failureAffectsDescription Fail-stopProcessProcess halts and remains halted. Other processes may detect this state. CrashProcessProcess halts and remains halted. Other processes may not be able to detect this state. OmissionChannelA message inserted in an outgoing message buffer never arrives at the other end’s incoming message buffer. Send-omissionProcessA process completes asend, but the message is not put in its outgoing message buffer. Receive-omissionProcessA message is put in a process’s incoming message buffer, but that process does not receive it. Arbitrary (Byzantine) Process or channel Process/channel exhibits arbitrary behaviour: it may send/transmit arbitrary messages at arbitrary times, commit omissions; a process may stop or take an incorrect step.

CSS434 System Models27 Flexibility Ease of modification Ease of enhancement Network Monolithic Kernel (Unix) Monolithic Kernel (Unix) Monolithic Kernel (Unix) User applications User applications User applications Network Microkernel (Mach) User applications User applications User applications Daemons (file, name, Paging) Microkernel (Mach) Daemons (file, name, Paging) Microkernel (Mach) Daemons (file, name, Paging)

CSS434 System Models28 Performance/Scalability Unlike parallel systems, distributed systems involves OS intervention and slow network medium for data transfer Send messages in a batch: Avoid OS intervention for every message transfer. Cache data Avoid repeating the same data transfer Minimizing data copy Avoid OS intervention (= zero-copy messaging). Avoid centralized entities and algorithms Avoid network saturation. Perform post operations on client sides Avoid heavy traffic between clients and servers

CSS434 System Models29 Heterogeneity Data and instruction formats depend on each machine architecture If a system consists of K different machine types, we need K – 1 translation software. If we have an architecture-independent standard data/instruction formats, each different machine prepares only such a standard translation software. Java and Java virtual machine

CSS434 System Models30 Security Lack of a single point of control Security concerns: Messages may be stolen by an enemy. Messages may be plagiarized by an enemy. Messages may be changed by an enemy. Services may be denied by an enemy. Cryptography is the only known practical mechanism.

CSS434 System Models31 Exercises (No turn-in) 1. In what respect are distributed computing systems superior to parallel systems? 2. In what respect are parallel systems superior to distributed computing systems? 3. Discuss the difference between the workstation-server and the processor-pool model from the availability view point. 4. Discuss the difference between the processor-pool and the cluster model from the performance view point. 5. What is Byzantine failure? Why do we need 2k+1 replica for this type of failure? 6. Discuss about pros and cons of Microkernel. 7. Why can we avoid OS intervention by zero copy?