[Spread-users] Ordering

P. Krishna pkrishna at revasystems.com
Tue Jun 22 11:19:28 EDT 2004

Hello Yair,
Are you using the TOTEM-type (token-passing) algorithm for ensuring
agreed/safe ordering of messages?
Assuming thats true, then I presume you are doing the following:

- For each Spread group, Spread creates a "token ring" and each daemon
basically keeps track of the TOTEM protocol params (seq#, aru etc) for
each of the rings it is part of.
- Each ring has a single seq# which gets incremented upon each message
getting inserted into the ring. This effectively serializes the messages
thru a "global fifo" and hence ensures total ordering.
- the token is the media-access protocol. So, the Token Ring traversal
time is at least the media access time. 
- Either the last node on the ring for a message discards the message
(based on zero TTL detection) or maybe the source itself discards the
message upon getting a match on the src ID.

The question I have is how many messages can be tagged along with the
token? Say, I have ten nodes on the ring and say Node 1 initiates the
token, and then all the nodes along the ring path consume all the
messages in the token and also transmit a message. What is the max pkt
size? Of course, it cannot be more than the ethernet-frame-size - what
if the # of messages being tagged along causes multiple ethernet pkts to
be sent across, how do you ensure the "group of pkts = single
token+messages" relationship?

Do you have results of latencies of agreed ordering w/ respect to
message traffic, number of members/group. I dont understand how the
latencies are not much different between agreed and say basic/fifo

Thanks & Regards,

More information about the Spread-users mailing list