Askemos Forum

Re: Is it possible to save one round in byzantine agreement?21. March 2005

It's not safe, at least not with the current implementation.

byzantine agreement protocol could probably save one round under the

> synchrony conditions in Askemos:
> 
> The preconditions (which is always true):
> All locations, which support a particular place
> process all messages which an agent sends from that place
> at the same time.
> (Since the agent sends them at the same time.)
> 
> Therefore the receiver could,
> instead of echoing the message to the other supporters
> save the '''echo''' round and proceed immediately
> with the announcement of the proposed transaction
> ('''ready'''-message).

The current implementation encodes the current version number and the digest of the last process step in the echo and ready messages and if a lost message is determined that way, appropriate action is taken.

This detection works like this: once we've seen enough echos we know that the agreement process should have started. If it then runs into a timeout, that timeout is recorded as late timeout and the digest is recorded as proposal.

When we skip the echo messages, all timeouts are understood as late and proposals are recorded. This can lead to the situation where most locations are commited to all different proposal.

From this situation no location can advance. This situation is not handled. (See also the todays fault in the accuracy test.)

/Jörg

Re: Is it possible to save one round in byzantine agreement?21. March 2005

Rather easily fixed.

Post replies via login host.

Intro - slides
Askemos Wiki
Publikationen