v1-5coordination based systems1 distributed coordination based systems
TRANSCRIPT
![Page 1: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/1.jpg)
v1-5 Coordination Based Systems 1
Distributed Coordination Based Systems
![Page 2: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/2.jpg)
v1-5 Coordination Based Systems 2
Distributed Coordination Based Systems
• Newer generation technology
• Assumes that components are distributed and that coordination of the activities is the problem
![Page 3: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/3.jpg)
v1-5 Coordination Based Systems 3
Key Concepts
• Separation between computation and coordination
• Coordination handles all communication and cooperation between processes
• Classified by temporal and referential coupling
![Page 4: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/4.jpg)
v1-5 Coordination Based Systems 4
Taxonomy of Coordination Models
![Page 5: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/5.jpg)
v1-5 Coordination Based Systems 5
Taxonomy of Coordination Models Examples
Coupled UncoupledCoupled RPC email
Uncoupled chat room Auction
Temporal
Referential
![Page 6: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/6.jpg)
v1-5 Coordination Based Systems 6
Taxonomy of Coordination Models
• Direct – Traditional message passing, both processes active
• Mailbox – used as a temporary store if receive process in not active
• Meeting oriented – messages exchanges by active participants via an intermedatory
• Generative – general exchange of tuples
![Page 7: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/7.jpg)
v1-5 Coordination Based Systems 7
Example Systems
• TIB/Rendezvous (TIBCO)
• Jini/JavaSpaces (Sun Microsystems)
![Page 8: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/8.jpg)
v1-5 Coordination Based Systems 8
TIB/Rendezvous
• Based on the Rendezvous information bus
• Application independent – no specialised protocols– applications have to get involved (see sidebar)
• Messages are self-describing
• Referentially uncoupled
![Page 9: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/9.jpg)
v1-5 Coordination Based Systems 9
Sidebar
• From a communications architectural perspective it is convenient to hide functionality in layers – to simplify apps.
• Applications however often have the knowledge to implement a special feature
• e.g. causal messages delivery, can be more efficiently implemented at the application layer
![Page 10: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/10.jpg)
v1-5 Coordination Based Systems 10
TIB/Rendezvous Coordination Model
• Meeting Oriented– referentially uncoupled– temporally coupled
• Generative Communication also supported
• Subject based addressing – subject name
• Receivers must subscribe to see messages on a specific subject
![Page 11: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/11.jpg)
v1-5 Coordination Based Systems 11
TIB/Rendezvous
![Page 12: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/12.jpg)
v1-5 Coordination Based Systems 12
TIB/RendezvousArchitecture
• Multicast protocol or P2P in available
• Rendezvous Daemon only forwards messages subscribed to
• Local (process, subject) table
• Rendezvous router daemons allow the system to expand over large networks
![Page 13: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/13.jpg)
v1-5 Coordination Based Systems 13
TIB/Rendezvous Routers
![Page 14: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/14.jpg)
v1-5 Coordination Based Systems 14
TIB/RendezvousCommunication (1)
• Self-describing message are sent consisting of:– transports– inbox name– subject– reply subject– multiple fields
![Page 15: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/15.jpg)
v1-5 Coordination Based Systems 15
TIB/RendezvousCommunication (2)
• Transports– Conceptually similar to Berkeley sockets
allowing messages to be sent by broadcast, multicast or to specific ports
• Inbox name– Process specific name– Used for P2P delivery– Performance enhancement
![Page 16: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/16.jpg)
v1-5 Coordination Based Systems 16
TIB/RendezvousCommunication (3)
• Subject– Sent as a character string
• Reply subject– Optional Reply subject– Sender must still subscribe
![Page 17: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/17.jpg)
v1-5 Coordination Based Systems 17
TIB/RendezvousCommunication (4)
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
Attributes of a TIB/Rendezvous Attribute Field
![Page 18: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/18.jpg)
v1-5 Coordination Based Systems 18
TIB/RendezvousCommunication (5)
• Communication Primitives– send non-blocking– sendreply non-blocking– sendrequestblocking (uses inbox)
![Page 19: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/19.jpg)
v1-5 Coordination Based Systems 19
TIB/RendezvousEvents (1)
• Events are used to dispatch messages to subscribers (except for sendrequest responses)
• A listener event is created – Associated with the subject of interest and a
transport– Contains a reference to a callback function that
is used to dispatch an event
![Page 20: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/20.jpg)
v1-5 Coordination Based Systems 20
TIB/RendezvousEvents (2)
![Page 21: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/21.jpg)
v1-5 Coordination Based Systems 21
TIB/Rendezvous Events (3)
![Page 22: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/22.jpg)
v1-5 Coordination Based Systems 22
TIB/Rendezvous Queue Groups
![Page 23: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/23.jpg)
v1-5 Coordination Based Systems 23
TIB/Rendezvous Naming (1)
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
![Page 24: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/24.jpg)
v1-5 Coordination Based Systems 24
TIB/Rendezvous Naming (2)
Subject Name Matches
*.cuss.vu.nil ftp.cuss.vu.nil
www.cuss.vu.nil
nl.vu.> nl.vu.cuss.ftp
nl.vu.cuss.zephyr
nl.vu.few.www
NEWS.comp.*.books NEWS.comp.so.books
NEWS.comp.ai.books
NEWS.comp.se.books
NEWS.comp.theory.books
![Page 25: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/25.jpg)
v1-5 Coordination Based Systems 25
TIB/Rendezvous Transactions (1)
![Page 26: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/26.jpg)
v1-5 Coordination Based Systems 26
TIB/Rendezvous Transactions (2)
![Page 27: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/27.jpg)
v1-5 Coordination Based Systems 27
TIB/RendezvousCaching and Replication
• Dealt with by application
• Replicated processes cause problems (duplicated messages)
• Cache server may cache the last n messages
![Page 28: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/28.jpg)
v1-5 Coordination Based Systems 28
TIB/RendezvousFault Tolerance (1)
• TIB/R assumes unreliable communication
• Each message kept for 60 seconds
• Sequence number attached to message and checked by daemons. WHY??
• Message may still be lost
• Pragmatic General Multicast
![Page 29: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/29.jpg)
v1-5 Coordination Based Systems 29
TIB/RendezvousFault Tolerance (2)
![Page 30: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/30.jpg)
v1-5 Coordination Based Systems 30
JINI
• JINI facilitates the provision and discovery of services especially those that provide simple non-complex services such as printing and activation of home appliances
• Jini extends RMI• Jini services are plug and play – clients can
discover services dynamically and transparently download the classes required to use those services.
![Page 31: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/31.jpg)
v1-5 Coordination Based Systems 31
JavaSpaces
• A Jini service
• Enables Java objects to communicate, share objects and coordinate tasks using an area of shared memory
![Page 32: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/32.jpg)
v1-5 Coordination Based Systems 32
JavaSpaces
![Page 33: V1-5Coordination Based Systems1 Distributed Coordination Based Systems](https://reader036.vdocuments.net/reader036/viewer/2022081603/5697c02b1a28abf838cd8b37/html5/thumbnails/33.jpg)
v1-5 Coordination Based Systems 33
JavaSpaces