Distributed Coordination-Based Systems

Slides:



Advertisements
Similar presentations
The Jini Technology Lookup Service. How Does It Work Services and clients find a lookup service using the discovery protocol Services advertise themselves.
Advertisements

Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
Copyright © 2001 Qusay H. Mahmoud RMI – Remote Method Invocation Introduction What is RMI? RMI System Architecture How does RMI work? Distributed Garbage.
Transaction.
An Associative Broadcast Based Coordination Model for Distributed Processes James C. Browne Kevin Kane Hongxia Tian Department of Computer Sciences The.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Distributed Coordination-Based Systems
Computer Science Lecture 24, page 1 CS677: Distributed OS Today: More Case Studies DCOM Jini.
Distributed Service Architectures Yitao Duan 03/19/2002.
1 CS 194: Distributed Systems Distributed Coordination-based Systems Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering.
Tuple Spaces and JavaSpaces CS 614 Bill McCloskey.
Practical Issues of RPCCS-4513, D-Term Remote Procedure Call Practical Issues CS-4513 Distributed Computing Systems (Slides include materials from.
Distributed Coordination-Based Systems Chapter 13
ECSE Software Engineering 1I HO 7 © HY 2012 Lecture 7 Publish/Subscribe.
490dp Prelude I: Group Membership Prelude II: Team Presentations Tuples Robert Grimm.
CSE 490dp Resource Control Robert Grimm. Problems How to access resources? –Basic usage tracking How to measure resource consumption? –Accounting How.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
File Access and Transfer. Issues 4 Access and transfer are different operations –with different requirements 4 Transfer –move the file from one place.
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
January 26, Bob Scheifler Copyright 1999 Sun Microsystems, Inc., all rights reserved. Jini™ Lookup Service Bob Scheifler Senior Staff Engineer Sun.
JavaSpaces TM By Stephan Roorda Source: JavaSpaces specification.
(Business) Process Centric Exchanges
MESSAGE ORIENTED MODEL (MOM). Slide 2CITE 4420 Message Oriented Model Message-Oriented Model (MOM)
Jini tm NetworkingTechnology Directions Jim Waldo Jini Architect Sun Microsystems, Inc.
Distributed Systems Principles and Paradigms Chapter 12 Distributed Coordination-Based Systems 01 Introduction 02 Communication 03 Processes 04 Naming.
William Stallings Data and Computer Communications
Distributed Coordination-Based Systems Adapted from: "Distributed Systems", Tanenbaum & van Steen, course slides.
JINI Coordination-Based System By Anthony Friel * David Kiernan * Jasper Wood.
Jini Architecture Introduction System Overview An Example.
Eric Tryon Brian Clark Christopher McKeowen. System Architecture The architecture can be broken down to three different basic layers Stub/skeleton layer.
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
V1-5Coordination Based Systems1 Distributed Coordination Based Systems.
1 Distributed Systems Distributed Object-Based Systems Chapter 10.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Pervasive Computing MIT SMA 5508 Spring 2006 Larry Rudolph 1 Publish & Subscribe Larry Rudolph May 3, 2006 SMA 5508 & MIT
Replication & Fault Tolerance CONARD JAMES B. FARAON
Resource subscription using DDS in oneM2M
Last Class: Introduction
MODERN OPERATING SYSTEMS Third Edition ANDREW S
Java Distributed Object System
The Movement To Objects
Client/Server Databases and the Oracle 10g Relational Database
Definition of Distributed System
CORBA Alegria Baquero.
Distribution and components
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
What’s “Inside” a Router?
Communication Chapter 2.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Application layer Lecture 7.
DISTRIBUTED COMPUTING
CORBA Alegria Baquero.
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
Today: Coda, xFS Case Study: Coda File System
Lecture 4: RPC Remote Procedure Call CDK: Chapter 5
Bina Ramamurthy Chapter 9
Implementing an OpenFlow Switch on the NetFPGA platform
An Introduction of Jini Technology
Bina Ramamurthy Chapter 9
Bina Ramamurthy Chapter 9
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Message Queuing.
Could Jiro™ Extend the Jini™ Pattern Lanuguage?
Today: Distributed File Systems
Distributed File Systems
Games Development Game Architecture: Entities
Presentation transcript:

Distributed Coordination-Based Systems Chapter 12

Introduction to Coordination Models A taxonomy of coordination models (adapted from [cabri.g2000])

Coordination Model (1) The principle of a publish/subscribe system as implemented in TIB/Rendezvous.

The overall architecture of a wide-area TIB/Rendezvous system. Coordination Model (2) The overall architecture of a wide-area TIB/Rendezvous system.

Attributes of a TIB/Rendezvous message field. Basic Messaging Attribute Type Description Name String The name of the field, possibly NULL ID Integer A message-unique field identifier Size The total size of the field (in bytes) Count The number of elements in the case of an array Constant A constant indicating the type of data Data Any type The actual data stored in a field Attributes of a TIB/Rendezvous message field.

Processing listener events for subscriptions in TIB/Rendezvous.

Processing incoming messages in TIB/Rendezvous. Events (2) Processing incoming messages in TIB/Rendezvous.

Processes Priority scheduling of events through a queue group. A semantically equivalent queue for the queue group with the specific event objects from (a).

Examples of valid and invalid subject names. Naming (1) Example Valid? Books.Computer_systems.Distributed_Systems Yes .ftp.cuss.vu.nil No (starts with a '.') ftp.cuss.vu.nil NEWS.res.com.so Marten..van_Steen No (empty label) Marten.R.van_Steen Examples of valid and invalid subject names.

Examples of using wildcards in subject names. Naming (2) Subject Name Matches *.cuss.vu.nil ftp.cuss.vu.nil www.cuss.vu.nil ni.vu.> nil.vu.cuss.ftp nil.vu.cuss.zephyr nil.vu.few.www NEWS.comp.*.books NEWS.comp.so.books NEWS.comp.ai.books NEWS.comp.se.books NEWS.comp.theory.books Examples of using wildcards in subject names.

Synchronization (1) The organization of transactional messaging as a separate layer in TIB/Rendezvous.

The organization of a transaction in TIB/Rendezvous. Synchronization (2) The organization of a transaction in TIB/Rendezvous.

Reliable Communication The principle of PGM. A message is sent along a multicast tree A router will pass only a single NACK for each message A message is retransmitted only to receivers that have asked for it.

Establishing a secure channel in TIB/Rendezvous. Security Establishing a secure channel in TIB/Rendezvous.

The general organization of a JavaSpace in Jini. Overview of Jini The general organization of a JavaSpace in Jini.

The layered architecture of a Jini System.

Using events in combination with a JavaSpace Communication Events Using events in combination with a JavaSpace

Processes (1) A JavaSpace can be replicated on all machines. The dotted lines show the partitioning of the JavaSpace into subspaces. Tuples are broadcast on WRITE READs are local, but the removing of an instance when calling TAKE must be broadcast

Processes (2) Unreplicated JavaSpace. A WRITE is done locally. A READ or TAKE requires the template tuple to be broadcast in order to find a tuple instance

Processes (3) Partial broadcasting of tuples and template tuples.

The Jini Lookup Service (1) Field Description ServiceID The identifier of the service associated with this item. Service A (possibly remote) reference to the object implementing the service. AttributeSets A set of tuples describing the service. The organization of a service item.

The Jini Lookup Service (2) Tuple Type Attributes ServiceInfo Name, manufacturer, vendor, version, model, serial number Location Floor, room, building Address Street, organization, organizational unit, locality, state or province, postal code, country Examples of predefined tuples for service items.

Synchronization of Transactions The general organization of a transaction in Jini. Thick lines show communication as required by Jini's transaction protocol

Caching and Replication The position of PAM with respect to security services.

Comparison of TIB/Rendezvous and Jini Issue TIB/Rendezvous Jini Major design goal Uncoupling of processes Flexible integration Coordination model Publish/subscribe Generative communication Network communication Multicasting Java RMI Messages Self-describing Process specific Event mechanism For incoming messages As a callback service Processes General purpose Names Character strings Byte strings Naming services None Lookup service Transactions (operations) Method invocations Transactions (scope) Single process (see text) Multiple processes Locking No As JavaSpace operations Caching and replication Reliable communication Yes Process groups Recovery mechanisms No explicit support Security Secure channels Based entirely on Java