1 Lecture 2: System Models Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2003.

Slides:



Advertisements
Similar presentations
DISTRIBUTED COMPUTING PARADIGMS
Advertisements

SYSTEM MODEL From Chapter 2 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Jaringan Informasi Pengantar Sistem Terdistribusi oleh Ir. Risanuri Hidayat, M.Sc.
Some ideas from Chapter 1
CMPT 431 Dr. Alexandra Fedorova Lecture II: Architectural Models.
CS 582 / CMPE 481 Distributed Systems Fault Tolerance.
6/14/20151 System Models Chapter 2: Coulouris + Chapter notes from K. Birman’s that in turn was based on Professor Paul Francis notes, Cornell University.
Slides for Chapter 2: Architectural Models
Edition 3, © Addison-Wesley 2001
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
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.
System Models. Architectural model Structure of the system in terms of components Goals:  reliable, manageable, adaptable, cost-effective system design.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
OCT1 Principles From Chapter Two of “Distributed Systems Concepts and Design” Material on Lamport Clocks from “Distributed Systems Principles and Paradigms”
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture II: Architectural Models.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Distributed System Models
Chapter 2 Architectural Models. Keywords Middleware Interface vs. implementation Client-server models OOP.
Distributed Systems – CS425/CSE424/ECE428 – Fall Nikita Borisov — UIUC1.
IS473 Distributed Systems
October 2005Distributed systems: Introduction1 Distributed Systems: Introduction.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
Distributed Computing Class: BIT5 & 6 Instructor: Aatif Kamal Chapter 02: (part 01) Distributed System Models Dated: 7 th Sept 2006.
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.
Exercises for Chapter 2: System models
Distributed Processing and Client/Server
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
Introduction Architecture Models Fundamental Models Summary Chapter 2: System Model.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction.
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.
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.
Architecture Models. Readings r Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 m Note: All figures from this book.
Lecture 11 Failure Detectors (Sections 12.1 and part of 2.3.2) Klara Nahrstedt CS 425/ECE 428/CSE424 Distributed Systems (Fall 2009)
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.
D ISTRIBUTED S YSTEM UNIT-1 Prepared By: G.S.Mishra.
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
Distributed SYSTEM MODEL
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
1 Distribuerede systemer og sikkerhed – 7. februar 2002 From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, © Addison-Wesley.
Distributed System Models
Exercises for Chapter 2: System models From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson Education 2005.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 System Models by Dr. Sarmad Sadik.
Distributed Systems: Concepts and Design Jinghai Rao 13,9,2000.
1 SYSTEM MODEL. 2 Topics  Introduction  Architectural Models  Fundamental Models SYSTEM MODEL.
Nouf Al Batati NET 422. Course outline Characterization of distributed systems Introduction Examples Resource sharing and the web Challenges Summary system.
Chapter 2: System Model Introduction Architecture Models
UNIT-I Characterization of Distributed Systems
Slides for Chapter 2: Architectural Models
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Slides for Chapter 2: Architectural Models
SYSTEM MODEL From Chapter 2 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Architectures of distributed systems Fundamental Models
Architectures of distributed systems Fundamental Models
Architectures of distributed systems
Architectures of distributed systems Fundamental Models
Chapter 2: System models
Presentation transcript:

1 Lecture 2: System Models Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2003

2 Why have system models? zMake assumptions clear zOrganize and classify different approaches zMake generalizations

3 Architectural model zDefines the way in which the components of systems interact with one another and the way in which they are mapped onto an underlying network of computers. yStructure in terms of separately specified components. yPlacement of components across a network of computers yInterrelationships between components yDivision of responsibilities among components

4 Terminology zserver yprocess that accepts requests from other process. zservice yWhat provided by one or more servers zplatform yhardware and underlying operating system zmiddleware ysoftware layer that masks heterogeneity and provides a programming model

5 Figure 2.1 Software and hardware service layers in distributed systems RPC, CORBA, DCOM, RMI

6 Client/Server zServer: A subsystem that provides a particular type of service to a priori unknown clients. zControl functionally distributed among the various servers in the system. zControl of individual resources is centralized in a server(localized?) zProblems: y Reliability/Availability y Scalability y Replication?

7 Figure 2.2 Clients invoke individual servers

8 Figure 2.3 A service provided by multiple servers

9 Figure 2.4 Web proxy server cache

10 Peer processes zAll of the processes play similar roles, interacting cooperatively as peers to perform a distributed activity or computation without any distinction between clients and servers.

11 Figure 2.5 A distributed application based on peer processes

12 Variations on the client-server model zMobile code zMobile agents zNetwork computers zThin clients

13 Figure 2.6 Web applets

14 Mobile Agent zA running programming including both code and data that travels from one computer to another in a network carrying out a task on someone’s behalf, such as collecting information, eventually returning with the results. zIt is a potential security threat to the resources in computers that they visit.

15 Network Computers zIt downloads its operating system and any application software needed by the user from a remote file server. zIts disk (if included) holds only a minimum of software. The extra space is used as a cache holding copies of software and data files that have recently loaded from servers. zLow cost on hardware and management.

16 Figure 2.7 Thin clients and compute servers Thin Client Application Process Network computer or PC Compute server network A software layer that supports a window-based user interface on a computer that is local to the user while executing application programs on a remote computer. Low cost on hardware and management.

17 Design requirements for distributed architecture zPerformance yResponsiveness & Throughput zQoS (Quality of Services) yReliability, Security, Performance, & Adaptability zCaching and replication zDependability yCorrectness, security, & fault tolerance

18 Fundamental Models zA model includes: yMain entities yInteractions yIndividual and collective characteristics zInteraction: yHow do components interact and coordinate to solve a problem? zFailure: yWhat are the potential failures and how do they affect the results? zSecurity: yWhat are the system’s vulnerabilities and how should they be handled?

19 Interaction models zProcesses interact through message-passing to solve a problem. zInteraction is influenced by: yPerformance of the communication channels ySynchronization of the clocks

20 Communication performance: zLatency yThe delay between the sending of a message by one process and its receipt by another xData, network, and OS zBandwidth yThe total amount of information that can be transmitted over a (network) in a given time. zJitter yVariation in time taken to deliver a series of messages.

21 Clocks and event ordering: zMessages are often time-stamped to indicate ordering. zEach computer has at least one local clock. zTime-stamps are often based on local clock values. zLocal clocks aren’t synchronized.

22 Synchronous & Asynchronous distributed system: zSynchronous yCan bound: xTime for each processing step xTime to transmit each message xClock drift for each process. zAsynchronous yNo bounds on: xTime for each processing step xTime to transmit each message xClock drift for each process.

23 Event ordering: zWhen does an event (sending or receiving a message) from one process occur relative to an event from another process? zA mailing list contains users X, Y, Z and A yX sends an to the list with subject Meeting: (m1) yY and Z reply by sending each a message to the list with subject Re: Meeting (m2 and m3 respectively) zExample: What are the possible orderings of messages in the following scenario?

24 Figure 2.9 Real-time ordering of events

25 Logical time zProvide proper ordering of events without reference to physical clocks (Lamport, 1978). yExample: In the scenario: xX sends m1 before Y sends m2 xY sends m2 before X receives m2 xY receives m1 before Y sends m2

26 Failure models zCDK: z“…(define) the ways in which failure may occur in order to provide and understanding of the effects of failures.” yOmission failures - process or channel fails to do something xProcess and communication yArbitrary failures - usually refer to sabotage xNot only do not good, but also do bad yTiming failures - required time bounds are exceeded

27 Figure 2.10 Processes and channels

28 Figure 2.11 Omission and arbitrary failures 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.

29 Figure 2.12 Timing failures Class of FailureAffectsDescription ClockProcessProcess’s local clock exceeds the bounds on its rate of drift from real time. PerformanceProcessProcess exceeds the bounds on the interval between two steps. PerformanceChannelA message’s transmission takes longer than the stated bound.

30 Reliable one-to-one communication zValidity - any message in the outgoing message buffer is eventually delivered to the incoming message buffer zIntegrity - the received message is identical to the sent message and is delivered exactly once. zThe threats to integrity: yRetransmission ySpurious message

31 Security model zProtect processes and channels from corruption. zProtect resources (encapsulated by objects) from unauthorized access.

32 Figure 2.13 Objects and principals

33 Figure 2.14 The enemy Communication channel Copy of m Process p q m The enemy m’ Threats to processes; Threats to communication channels and Denial of services

34 Figure 2.15 Secure channels Principal A Secure channel Process p q Principal B Encryption and authorization are used to build secure channels as a service layer on top of existing communication services. Both processes are the authorities of accessing rights.

35 Basic terminology zCryptography - science of keeping information secure zEncryption - scrambling a message to hide its contents zAuthentication - method for assuring the true identity of an entity

36 Summary zArchitectural Model ySoftware layers ySystem architectures xClient/server xProxy server xPeer server xMobile code and mobile agent xNetwork computers and thin clients xSpontaneous networking zFundamental models yInteraction model yFailure model ySecurity model