SlideShare a Scribd company logo
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.
Coordination Model (2)
The overall architecture of a wide-area
TIB/Rendezvous system.
Basic Messaging
Attributes of a TIB/Rendezvous message field.
Attribute Type Description
Name String The name of the field, possibly NULL
ID Integer A message-unique field identifier
Size Integer The total size of the field (in bytes)
Count Integer The number of elements in the case of an array
Type Constant A constant indicating the type of data
Data Any type The actual data stored in a field
Events (1)
Processing listener events for
subscriptions in TIB/Rendezvous.
Events (2)
Processing incoming messages in TIB/Rendezvous.
Processes
a) Priority scheduling of events through a queue group.
b) A semantically equivalent queue for the queue group with the
specific event objects from (a).
Naming (1)
Examples of valid and invalid subject names.
Example Valid?
Books.Computer_systems.Distributed_Systems Yes
.ftp.cuss.vu.nil No (starts with a '.')
ftp.cuss.vu.nil Yes
NEWS.res.com.so Yes
Marten..van_Steen No (empty label)
Marten.R.van_Steen Yes
Naming (2)
Examples of using wildcards in subject names.
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
Synchronization (1)
The organization of transactional messaging
as a separate layer in TIB/Rendezvous.
Synchronization (2)
The organization of a transaction in TIB/Rendezvous.
Reliable Communication
The principle of PGM.
a) A message is sent along a multicast tree
b) A router will pass only a single NACK for each message
c) A message is retransmitted only to receivers that have asked for it.
Security
Establishing a secure channel
in TIB/Rendezvous.
Overview of Jini
The general organization of a JavaSpace in Jini.
Architecture
The layered architecture of a Jini System.
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.
a) Tuples are broadcast on WRITE
b) READs are local, but the removing of an instance when calling
TAKE must be broadcast
Processes (2)
Unreplicated JavaSpace.
a) A WRITE is done locally.
b) 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)
The organization of a service item.
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 Jini Lookup Service (2)
Examples of predefined tuples for service items.
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
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 General purpose
Names Character strings Byte strings
Naming services None Lookup service
Transactions (operations) Messages Method invocations
Transactions (scope) Single process (see text) Multiple processes
Locking No As JavaSpace operations
Caching and replication No No
Reliable communication Yes Yes
Process groups Yes No
Recovery mechanisms No explicit support No explicit support
Security Secure channels Based entirely on Java

More Related Content

PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PDF
CS6601 DISTRIBUTED SYSTEMS
PPT
Conventional Encryption NS2
PPT
Distributed Hash Table
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
CS6601 DISTRIBUTED SYSTEMS
Conventional Encryption NS2
Distributed Hash Table

What's hot (20)

PDF
Realizing Fine-Grained and Flexible Access Control to Outsourced Data with At...
PDF
ENKI: Access Control for Encrypted Query Processing
PPTX
Access to non local names
PPT
Group Communication (Distributed computing)
PPTX
Whats new in .net framework 4
PPTX
10. tcp ip and do d model
PPTX
distributed depth-first search
PDF
PPTX
ML2014_Poster_ TextClusteringDemo
PDF
Novel Algorithm For Encryption:Hybrid of Transposition and Substitution Method
PDF
Analysis of a hybrid cipher algorithm
DOCX
SubNetwork Calculator (Python Project)
PPT
Chapter 6 pc
PDF
Вениамин Гвоздиков: Особенности использования DTrace
PPTX
Introduction to storm
PPTX
Cryptography
PPTX
Unit 3
PPT
Java API: java.net.InetAddress
Realizing Fine-Grained and Flexible Access Control to Outsourced Data with At...
ENKI: Access Control for Encrypted Query Processing
Access to non local names
Group Communication (Distributed computing)
Whats new in .net framework 4
10. tcp ip and do d model
distributed depth-first search
ML2014_Poster_ TextClusteringDemo
Novel Algorithm For Encryption:Hybrid of Transposition and Substitution Method
Analysis of a hybrid cipher algorithm
SubNetwork Calculator (Python Project)
Chapter 6 pc
Вениамин Гвоздиков: Особенности использования DTrace
Introduction to storm
Cryptography
Unit 3
Java API: java.net.InetAddress
Ad

Similar to Distributed System by Pratik Tambekar (20)

PPT
Distributed System by Pratik Tambekar
PPSX
Introduction to c sharp 4.0 and dynamic
PPT
UNIT V - The OMG way-system object model Notes.ppt
PPTX
Windows 8 für .net Entwickler
PPTX
C*ollege Credit: CEP Distribtued Processing on Cassandra with Storm
PPTX
The Philosophy of .Net
PPTX
C# And Data types itrodu ction to C# fucntins
PPT
COM Introduction
PDF
SNMP Project: SNMP-based Network Anomaly Detection Using Clustering
PPTX
Introduction to dot net framework
PPT
Chapter 4 communication2
 
PPTX
Developing Actors in Azure with .net
PDF
Intrebari si raspunsuri CCNA1
PDF
dotnet_remoting
PPT
semantic web service composition for action planning
PPTX
Chapter 6 data types
PDF
Scaling PageRank to 100 Billion Pages
PPT
Tcp
PPT
Building scalable and language-independent Java services using Apache Thrift ...
Distributed System by Pratik Tambekar
Introduction to c sharp 4.0 and dynamic
UNIT V - The OMG way-system object model Notes.ppt
Windows 8 für .net Entwickler
C*ollege Credit: CEP Distribtued Processing on Cassandra with Storm
The Philosophy of .Net
C# And Data types itrodu ction to C# fucntins
COM Introduction
SNMP Project: SNMP-based Network Anomaly Detection Using Clustering
Introduction to dot net framework
Chapter 4 communication2
 
Developing Actors in Azure with .net
Intrebari si raspunsuri CCNA1
dotnet_remoting
semantic web service composition for action planning
Chapter 6 data types
Scaling PageRank to 100 Billion Pages
Tcp
Building scalable and language-independent Java services using Apache Thrift ...
Ad

More from Pratik Tambekar (11)

PPTX
ASP DOT NET
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Distributed System by Pratik Tambekar
PPT
Data Mining Concepts and Techniques
PPT
What Is DATA MINING(INTRODUCTION)
PPT
Distributed Transaction
PPT
World Wide Web(WWW)
PPTX
How To Add System Call In Ubuntu OS
ASP DOT NET
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
Data Mining Concepts and Techniques
What Is DATA MINING(INTRODUCTION)
Distributed Transaction
World Wide Web(WWW)
How To Add System Call In Ubuntu OS

Recently uploaded (20)

PDF
PPT on Performance Review to get promotions
PDF
composite construction of structures.pdf
PPTX
Sustainable Sites - Green Building Construction
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
Lecture Notes Electrical Wiring System Components
PPTX
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
PPTX
Construction Project Organization Group 2.pptx
PDF
Well-logging-methods_new................
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPT
Project quality management in manufacturing
PPTX
Geodesy 1.pptx...............................................
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
OOP with Java - Java Introduction (Basics)
DOCX
573137875-Attendance-Management-System-original
PDF
Structs to JSON How Go Powers REST APIs.pdf
PPT on Performance Review to get promotions
composite construction of structures.pdf
Sustainable Sites - Green Building Construction
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Lecture Notes Electrical Wiring System Components
KTU 2019 -S7-MCN 401 MODULE 2-VINAY.pptx
Construction Project Organization Group 2.pptx
Well-logging-methods_new................
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Foundation to blockchain - A guide to Blockchain Tech
Operating System & Kernel Study Guide-1 - converted.pdf
Project quality management in manufacturing
Geodesy 1.pptx...............................................
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
Strings in CPP - Strings in C++ are sequences of characters used to store and...
OOP with Java - Java Introduction (Basics)
573137875-Attendance-Management-System-original
Structs to JSON How Go Powers REST APIs.pdf

Distributed System by Pratik Tambekar

  • 2. Introduction to Coordination Models A taxonomy of coordination models (adapted from [cabri.g2000])
  • 3. Coordination Model (1) The principle of a publish/subscribe system as implemented in TIB/Rendezvous.
  • 4. Coordination Model (2) The overall architecture of a wide-area TIB/Rendezvous system.
  • 5. Basic Messaging Attributes of a TIB/Rendezvous message field. Attribute Type Description Name String The name of the field, possibly NULL ID Integer A message-unique field identifier Size Integer The total size of the field (in bytes) Count Integer The number of elements in the case of an array Type Constant A constant indicating the type of data Data Any type The actual data stored in a field
  • 6. Events (1) Processing listener events for subscriptions in TIB/Rendezvous.
  • 7. Events (2) Processing incoming messages in TIB/Rendezvous.
  • 8. Processes a) Priority scheduling of events through a queue group. b) A semantically equivalent queue for the queue group with the specific event objects from (a).
  • 9. Naming (1) Examples of valid and invalid subject names. Example Valid? Books.Computer_systems.Distributed_Systems Yes .ftp.cuss.vu.nil No (starts with a '.') ftp.cuss.vu.nil Yes NEWS.res.com.so Yes Marten..van_Steen No (empty label) Marten.R.van_Steen Yes
  • 10. Naming (2) Examples of using wildcards in subject names. 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
  • 11. Synchronization (1) The organization of transactional messaging as a separate layer in TIB/Rendezvous.
  • 12. Synchronization (2) The organization of a transaction in TIB/Rendezvous.
  • 13. Reliable Communication The principle of PGM. a) A message is sent along a multicast tree b) A router will pass only a single NACK for each message c) A message is retransmitted only to receivers that have asked for it.
  • 14. Security Establishing a secure channel in TIB/Rendezvous.
  • 15. Overview of Jini The general organization of a JavaSpace in Jini.
  • 17. Communication Events Using events in combination with a JavaSpace
  • 18. Processes (1) A JavaSpace can be replicated on all machines. The dotted lines show the partitioning of the JavaSpace into subspaces. a) Tuples are broadcast on WRITE b) READs are local, but the removing of an instance when calling TAKE must be broadcast
  • 19. Processes (2) Unreplicated JavaSpace. a) A WRITE is done locally. b) A READ or TAKE requires the template tuple to be broadcast in order to find a tuple instance
  • 20. Processes (3) Partial broadcasting of tuples and template tuples.
  • 21. The Jini Lookup Service (1) The organization of a service item. 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.
  • 22. The Jini Lookup Service (2) Examples of predefined tuples for service items. 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
  • 23. Synchronization of Transactions The general organization of a transaction in Jini. Thick lines show communication as required by Jini's transaction protocol
  • 24. Caching and Replication The position of PAM with respect to security services.
  • 25. 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 General purpose Names Character strings Byte strings Naming services None Lookup service Transactions (operations) Messages Method invocations Transactions (scope) Single process (see text) Multiple processes Locking No As JavaSpace operations Caching and replication No No Reliable communication Yes Yes Process groups Yes No Recovery mechanisms No explicit support No explicit support Security Secure channels Based entirely on Java