95-702 OCT Masters of Information Systems Management 1 Organizational Communications and Distributed Object Technologies Week 3: Models and Architectures.

Slides:



Advertisements
Similar presentations
SYSTEM MODEL From Chapter 2 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Advertisements

Synchronization Chapter clock synchronization * 5.2 logical clocks * 5.3 global state * 5.4 election algorithm * 5.5 mutual exclusion * 5.6 distributed.
Some ideas from Chapter 1
CMPT 431 Dr. Alexandra Fedorova Lecture II: Architectural Models.
CS 582 / CMPE 481 Distributed Systems Fault Tolerance.
Slides for Chapter 2: Architectural Models
Edition 3, © Addison-Wesley 2001
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Lecture 13 Synchronization (cont). EECE 411: Design of Distributed Software Applications Logistics Last quiz Max: 69 / Median: 52 / Min: 24 In a box outside.
System Models. Architectural model Structure of the system in terms of components Goals:  reliable, manageable, adaptable, cost-effective system design.
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.
Lecture 12 Synchronization. EECE 411: Design of Distributed Software Applications Summary so far … A distributed system is: a collection of independent.
Computer Science Lecture 10, page 1 CS677: Distributed OS Last Class: Clock Synchronization Physical clocks Clock synchronization algorithms –Cristian’s.
Time, Clocks, and the Ordering of Events in a Distributed System Leslie Lamport (1978) Presented by: Yoav Kantor.
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
1 Lecture 2: System Models Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2003.
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.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 2: Architectural.
Lamport’s Logical Clocks & Totally Ordered Multicasting.
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.
Agenda Fail Stop Processors –Problem Definition –Implementation with reliable stable storage –Implementation without reliable stable storage Failure Detection.
Communication & Synchronization Why do processes communicate in DS? –To exchange messages –To synchronize processes Why do processes synchronize in DS?
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.
Distributed SYSTEM MODEL
Feb 15, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements.
Logical Clocks. Topics r Logical clocks r Totally-Ordered Multicasting.
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.
11-Jun-16CSE 542: Operating Systems1 Distributed systems Time, clocks, and the ordering of events in a distributed system Leslie Lamport. Communications.
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.
CSE 486/586 Distributed Systems Failure Detectors
CSE 486/586 Distributed Systems Failure Detectors
Chapter 2: System Model Introduction Architecture Models
Slides for Chapter 2: Architectural Models
Distributed Systems CS
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
Distributed Systems CS
Architectures of distributed systems
Architectures of distributed systems Fundamental Models
CSE 486/586 Distributed Systems Failure Detectors
Chapter 2: System models
Presentation transcript:

OCT Masters of Information Systems Management 1 Organizational Communications and Distributed Object Technologies Week 3: Models and Architectures

OCT Masters of Information Systems Management 2 System Models Architectural Models Placement of parts and the relationships between them Examples: client-server model peer process model Fundamental Models Formal description of properties that are common in the architectural models focusing on the dependability characteristics (correctness, reliability, and security)

OCT Masters of Information Systems Management 3 Main Architectural Models of DS Client processes Server processes Peer processes – cooperate and communicate in a symmetrical manner to perform a task

OCT Masters of Information Systems Management 4 Software and hardware service layers in distributed systems Mask heterogeneity and provides a convenient programming model to applications Services such as communications, data sharing, naming,security, transactions, persistent storage and event notification

OCT Masters of Information Systems Management 5 Client-Server Model

OCT Masters of Information Systems Management 6 A service provided by multiple servers Replication is used to increase performance and availability and to improve fault tolerance

OCT Masters of Information Systems Management 7 Proxy server and caches A cache is a store of recently used data objects that is closer than the objects themselves. Caches may be collocated with each client or may be located in a proxy server that can be shared by several clients. This approach may increase availability and performance.

OCT Masters of Information Systems Management 8 A distributed application based on peer processes No server All processes play a similar role Consider a distributed white board where each application contacts the middle ware layer to perform event notification

OCT Masters of Information Systems Management 9 Napster: peer-to-peer file sharing with a centralized, replicated index

OCT Masters of Information Systems Management 10 Variations on client-server (mobile code)

OCT Masters of Information Systems Management 11 Thin Clients Thin Client Application Process Compute server network The client does graphics only. Think “Old Text terminal” with a GUI. Applications run on the sever. Examples include: Unix X-11 display protocol Citrix and Microsoft put Microsoft apps in a mainframe model

OCT Masters of Information Systems Management 12 Network Computer NC File server network The OS and Applications are downloaded to the client. No disk (or very little) is included. A disk would act as a cache. Oracle and Sun were once behind this approach. Remember the Javastation?

OCT Masters of Information Systems Management 13 Mobile Agents Includes both code and data. Copies itself from one machine to another. Collects information and returns. The Xerox PARC worm carried out useful work on idle processors Big security concerns but doable. The disk with the Robert Morris Internet worm is displayed at the Boston Museum of Science (under glass!)

OCT Masters of Information Systems Management 14 Mobile devices and Spontaneous networking Internet gateway PDA service Music service Discovery Alarm Camera Guests devices Laptop TV/PC Hotel wireless network

OCT Masters of Information Systems Management 15 Fundamental Models All of the above systems share some fundamental properties: Interaction Model communication takes place with delays and without a universal clock Failure Model correct operation of DS is threatened by various types of faults Security Model the security model defines and classifies forms of attack

OCT Masters of Information Systems Management 16 Interaction Model Two Variants: Synchronous Distributed System The model assumes we can place bounds on time needed for process execution, communication, and clock drift. Asynchronous Distributed Systems assumes we can set no bounds on any of the above (some design problems can be solved even with these assumptions) The internet fits this model well.

OCT Masters of Information Systems Management 17 Lamport Clocks (1) Three processes, each with its own clock. P0P1 P A B C D

OCT Masters of Information Systems Management 18 Lamport Clocks (2) Lamport defined the “happens-before” relation. The expression a->b is read “a happens before b”. If a and b are two events within the same process and a occurs before b then a -> b is true. If a is the sending of a message by one process and b is the reception of that message by another then a -> b is true. “Happens-before” is transitive. If a->b and b->c then a->c.

OCT Masters of Information Systems Management 19 Lamport Clocks (3) We need a way of assigning time values so that all processes (P) agree that: If a->b then C(a) < C(b) with C always increasing never decreasing.

OCT Masters of Information Systems Management 20 Lamport Clocks (4) Lamport’s Algorithm LC1: C(i) is incremented before each event happens at P(i) LC2: (a) When a process P(i) send a message m, it piggybacks on m the value t = C(i) (b) On receiving (m,t), a process P(j) computes C(j) = max(C(j), t) and then applies LC1 before timestamping the event receive(m) So, if the “happens-before” relation holds between a and b then C(a) < C(b)

OCT Masters of Information Systems Management 21 Lamport Clocks (5) Three processes, using Lamport’s Algorithm. P0P1 P A B C D

OCT Masters of Information Systems Management 22 Lamport Clocks (6) Adding the process number to events P0P1 P A B C D

OCT Masters of Information Systems Management 23 Lamport Timestamps(7) Update 1 : San Fransisco wants to add $100 to account containing $1000. Update 2: New York wants to add 1% interest to the same account. Result: San Fransisco Data Base holds $1,111 New York Data Base holds $1,110

OCT Masters of Information Systems Management 24 Totally-ordered multicast Assume that messages from the same sender are received in the order that they were sent. Assume all messages arrive and are muticast to every process. When a process receives a message it puts it into a local queue ordered according to the timestamp in the message (every message has a unique timestamp) The receiver multicasts an acknowledgement. Note that the timestamp on the received message will always be lower than the timestamp on the acknowledgement.

OCT Masters of Information Systems Management 25 Totally-ordered multicast All processes will eventually have the same copy of the local queue. A process can deliver a message to the application it is running only when that message is at the head of the queue and has been acknowledged by each other process. At that point the message and its acknowledgements are removed All messages are delivered in the same order everywhere

OCT Masters of Information Systems Management 26 Failure Model Processes may fail Communication channels may fail The failure model describes various types of failures

OCT Masters of Information Systems Management 27 Processes and channels Process omission failures Communication omission failures Arbitrary failures Timing failures in synchronized systems

OCT Masters of Information Systems Management 28 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.

OCT Masters of Information Systems Management 29 Synchronous Model 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.

OCT Masters of Information Systems Management 30 Security Model Secure the processes Secure the channels Protect encapsulated objects from unauthorized access

OCT Masters of Information Systems Management 31 Objects and principals Access rights specify who is allowed to read or write the object’s state. Associated with each invocation and each result is an authority on which it is issued. Such an authority is called a principal. A principal may be a user or process. Both the server and the client may check the identity of the principal behind each invocation or result to determine if access rights have been granted..

OCT Masters of Information Systems Management 32 The enemy Communication channel Copy of m Process p q m The enemy m’ Lack of reliable knowledge of the identity of the source of a message is a threat to clients and servers. An enemy can copy, alter or inject messages as they travel across the network. An enemy can replay old messages.

OCT Masters of Information Systems Management 33 Secure channels Principal A Secure channel Process p q Principal B Cryptography can be used for: Encryption Authentication