The Dawn Network - Byzantine Fault Tolerance - Broadcasting Transactions

The little text boxes really explain everything, followed from top to bottom. This pattern of validation is part of research work being done by Eric Freeman https://brage.bibsys.no/xmlui/bitstream/handle/11250/2413908/Freeman_Eric.pdf?sequence=1&isAllowed=y

Basically, the group of validators in the network all must agree whether a transaction was properly transmitted (including whether different messages were sent to different validators), what the proper transaction should be, and then distributing it.

The blue arrow part of the process requires a selected group of 'replicators' must all receive the same message from everyone else and to discard whatever is erroneous, and if possible select the clearly correct message. All read-only nodes that provide services based on the databases subscribe to these broadcasts as well as the agreement messages, and can also request arbitrtary segments of the log or to have a database update from when a node goes offline and is resynchronising.

I'm going to call the witness/miner/validator type of node 'Replicator'. They are the ones that govern the replication of the database and what its canonical contents are. The agora routing payout process will be performed also by the validators as an additional function, involving the proof of service certificate being broadcast to the whole set of replicators, and rebroadcast until everyone sees 3/5ths have received the identical message, and then the payout is calculated and made in a competitive process by all nodes and again verified and then locked into the ledger.

There is a log in the Dawn Network system, but it is in gRPC format and can be parsed by any application with the prototype file, and it is pruned after some period (thinking of 7 years) and the actual live database is reliably replicated between the validators and then out to other nodes that use the database for their services (eg search, exchange, marketplace). Furthermore, each chain is isolated, meaning the basic elements, the directory, the messaging system and the ledger are all very compact - it is possible to not store the complete log but only the current state and an arbitrary amount of log data related to the user's needs.

I hope you like this pretty diagram, I had a lot of fun making it.

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now