Coda File System

Re: Ubik and PTS issues

From: Michael Callahan <>
Date: Mon, 16 Feb 1998 01:42:28 -0500 (EST)
This is a good summary of the kind of primitives Ensemble provides.  One
thing, however, to bear in mind: Ensemble is written as a framework in
Objective Caml, a dialect of ML from INRIA in France.  So one has to think
through the implementation consequences of incorporating it (which are
more significant than those raised by starting to exploit a C library).


On Mon, 16 Feb 1998, Brian Bartholomew wrote:

> > What does "distributed simultaneous group broadcast code" mean?  It
> > sounds like it means "multicast".  I assume, though, it provides
> > some facilities beyond simple IP multicast.
> Oops, sorry, one more time in English.  Mark and others, feel free to
> jump in and correct me.  Ensemble is based on IP multicast.  However,
> under the covers it is a multi-phase commit protocol.  It gives you
> primitives like the following:
> 	Message A is guaranteed to be delivered to every recipient, or
> 	none of them.  You know which happened.
> 	All recipients can find out who all the other recipients are,
> 	with no race conditions relative to sent messages.
> 	Messages A, B, and C are guaranteed to be delivered in ABC
> 	order, no matter how the network reorders or drops them.
> 	It is multicast, so applications that want to be multicast are
> 	efficient.  Wouldn't you like to have redundant Coda servers
> 	on your LAN, in a self-correcting/voting arrangement?  Or
> 	distributed not across the LAN, but around the world?
> 	(I believe this is true) Recipients listen to the protocol
> 	details of a sender.  If the sender makes a mistake (because
> 	that machine is crashing), one or more of the recipients takes
> 	over, declares the sender to be busted, kicks it out of the
> 	group, and finishes the protocol to a consistant state.
> Another member of the League for Programming Freedom (LPF)
> -------------------------------------------------------------------------------
> Brian Bartholomew - - - Working Version, Cambridge, MA
Received on 1998-02-16 01:44:47