Post
Topic
Board Altcoin Discussion
Re: Ripple.com - How does consensus work?
by
mr_john
on 07/10/2013, 17:12:09 UTC
hI!

Thanks to JoelKatz for his patience with us and his detailled  explanations. But I still have one open question about the process of "consensus". Please correct me if I got something wrong:


As I understood, new transaction are broadcasted to every server in the network (or read it out load in the room analogy). Each server receives this new transaction and decides for itself if it is valid and if so adds it to its "candidate list" of transactions which could be applied to the last closed ledger (LCL) to form a new LCL. Also each server receives proposals from other servers on its UNL and compares them with its own candidate list.

After the current timer expires (according to the youtube consensus video) the server checks which transactions in the candidate set have passed the approval rate threshold (eg. >50% of server on UNL agree with it) and forms its own new proposal containing these transactions which then will be sent out to other servers on the network. And the next iteration round may begin.

Is this correct until here?


If so, I still do not understand one single point:

My Question:
How can a new transaction in the beginning ever get an approval rate over 50% if each server first needs to see the transaction approved by some other servers in his UNL?

Wouldn't this be a chicken-or-egg problem?
A server only includes a transaction in his own proposals, if he sees the transactions in other server's proposals. But if nobody starts inlcuding it in his porposals, it never will get a 50% approval rate.

What am I missing here?
Can someone point me in the right direction? (documentation, wiki, source code, another posting,...) Any help understanding the consensus concept would be highly appreciated. Smiley