[Spread-users] Ordering
P. Krishna
pkrishna at revasystems.com
Fri Jun 25 10:12:29 EDT 2004
On Tue, 2004-06-22 at 18:58, John Schultz wrote:
> P. Krishna wrote:
> > So, is it correct that even if a group is not using Agreed or Safe
> > delivery but using a simple basic/fifo delivery method, those pkts for
> > the group still have to traverse the "logical" ring and incur the
> > similar latencies of Agreed/Safe messages?
> >
> > Krishna
> >
>
> I think you have a slight misunderstanding of how Spread 3 works. The
> token only contains control information (SEQ#, ARU, etc.), it does not
> contain messages inside it. Messages are sent when a daemon holds the
> token and they are sent directly to the other daemons: multicast in the
> local segment and unicast to the representatives of the other segments,
> who then multicast it immediately in their segment.
>
> In Spread 3 every message must wait for the token to get to its
> originating daemon before it is sent on the Spread network. However,
> the lower levels of service do not have to satisfy the same delivery
> requirements as the higher ones. Meaning, for example, that a RELIABLE
> message can be delivered as soon as it is received regardless of the
> state of other messages.
>
> In Spread 3, RELIABLE msgs are delivered immediately; FIFO, CAUSAL and
> AGREED use the AGREED order rule (deliver by sequence # with no holes);
> and SAFE msgs are delivered when all daemons in the view have the message.
>
> There are stubs in Spread 3 to optimize FIFO delivery to only require
> receiving all other messages from an originating server with no holes,
> but that is not currently implemented.
Then what is RELIABLE doing? I thought RELIABLE should ensure per-source
ordering?
Thank you,
/Krishna
More information about the Spread-users
mailing list