[Spread-users] Re: partition detection

Yair Amir yairamir at cnds.jhu.edu
Thu Apr 25 08:14:05 EDT 2002


Answers in the body.

Weinsberg Yaron wrote:

> Hi again,
> Regarding your reply I was wondering:
> 1.Suppose I received a Transitional message and a corresponding membership
> message (with the VS set, If I understand correctly they are consecutive
> messages). What should happen if a new partition occurs before receiving the
> next Regular Membership message ? (i.e., can i get a sequence of
> Transitional+Membership until a regular configuration is received ?)

The transitional signal message and the next regular membership message (that comes
with the VS set) are not necessarily consecutive. The whole point is that if
messages will be delivered between them, then you understand that Spread
only guarantee delivery of those in-between messages to the VS set.

The important thing to understand is that the delivery of the transitional
signal, the in-between messages, and the next regular membership - all of
this is atomic as far as you are concerned. This means, Spread start to deliver
all of them only after figuring out what they will all be.
Therefore, relating to your last sentence above, the "Membership" IS the regular
configuration (i.e. your last sentence in "()" has no meaning).

There are some more nuances.
This is part of the EVS semantics. For complete understanding you can
either look at that chapter in my PhD. Or even better, read John Schultz
thesis off our web site.

> 2. Regarding the open group semantics and spread's token ring protocol. What
> is the difference between FIFO/CAUSAL/TOTAL if spread daemon only broadcast
> while possessing the token ? (and assigns a unique sequence number for each
> message). If there is a different, do you have any performance comparison
> between them ?
> (I know there is a difference when talking about WAN using the HOP protocol)

There can be a difference if messages are lost for FIFO (although I am not
sure this implementation make use of this). CAUSAl and TOTAL
are the same in this implementation. I have still to find a useful application
that really requires exactly causal.
It is correct to assume that there will be very small difference (if at all)
between Reliable, Fifo, Causal and Total (but not Safe) in a Spread 3.xx
configuration that runs on a network without loses.

>  3. If a group outsider sends a TOTAL message to a group on which all
> messages are sent CAUSAL. Does the
> TOTAL message arrives at the same order (in the group's message flow) at all
> members ? (the answer for this depends on your answer for 2...:-)

Excellent question. Again, one really needs to look at the specification
of the EVS model to see this. The TOTAL message arrives at the same order
at all members even if the causal order messages are not in the same order.
This actually DOES NOT depends on the answer to question 2 because this
is a semantics question and it has no dependency on the actual implementation.
That is the beauty of having a strict semantics. We can change the protocol
tomorrow but the semantics will still stand.

> 4. Does the current spread includes the support for WAN ? (i didn't see any
> file that contains code to handle the lamport time stamp when sending a
> message out from a site).

Yes, the current open-source Spread always had support for WAN. That support
however is limited both in terms of scalability and performance.
We used it a few months ago between sites in Baltimore, Korea and Irvine California.

(that was to benchmark secure spread).


	:) Yair.	http://www.cs.jhu.edu/~yairamir

More information about the Spread-users mailing list