Today after an in-depth talk with Troi from @eoscafe on ways to help small block producers bundle their forces inspired by the concept of mining pools as shown by the following drawing.
This would allow for efficient cooperation, as different small block producers can join forces. A set of non-high availability infrastructures can propose valid blocks to the EOS Block Emitter which selects one of the proposed blocks using a predefined strategy. For example "the first delivered" strategy, this strategy keeps block latency as low as possible. The image below shows the blocks selected to be emitted in green and ignored ones - greyed out. In block-1 the first block producer (#1) missed a block in the "production window" which is not a problem in this scenario. A nice example of intrinsic failover.
The block emitter software would keep a detailed log of events to base metrics on. All block producers in the pool would receive an even share of the reward even when their blocks are not selected for propagation.
Advantages
- the set of EOS block producers choosing to work together are bundling their forces on a technical level, and focusing their efforts on a marketing level.
- no need to setup and maintain a redundant setup
- as long as the block emitter is operational, the setup is highly available
- ....
Disadvantages
- we introduce a single point of failure for all block producers in the pool
- somewhat higher latency as all block producers on different locations will have to go through the EOS Block Emitter
- there is shared infrastructure to be managed
- introduce complexity in administration and sharing the rewards
- introduce complexity in governance
- ....
DAC Block Producer Approach
The logical next step is, of course, to structure this cooperation in an EOS dApp, describing the rules to work together as a team of individual block producers. The EOS Block Emitter is sending metrics to the dApp and based on these metrics the different connected block producers are rewarded.
This dApp has its own constitution, arbitration, governance and would pay for the infrastructure needed to develop, operate and maintain the EOS Block Emitter infrastructure. All connected blockproducers have their vote in the governance of this dApp.
Shoutout
This is described as a very high-level concept, all the different aspects should be defined, discussed and explored in great detail.
We are looking for coders who can help our community make these crucial components a reality! Starting with the EOS Block Emitter. Email me at [email protected]. Or join the @eosamsterdam discord channel: https://discord.gg/6scXfhY to work out the details!
Very exciting stuff! I've done a bit of coding in the past but have been out of the game for many years. This looks fascinating, however. The possibilities for blockchain and especially EOS seem practically endless! Thanks for sharing this. At the very least I can try to stay current with the high level concepts.
Like said, you might introduce a single point of failure. How about for instance the censorship resistance? What would the future look like in terms of number of block producers when groups bundle? Is there a minimum number of block producers and is concentration limited in numbers? Or are these the questions that we need to answer the coming months?
There is concern about whales owning more than one block producer, and the fact a group of 66.7% of block producers could get a consensus for nullifying the account of a whale. Also, the arbitration process is unclear, who wants to be the arbitrator of a big-whale, as this could have big consequences for the arbitrator. Pareto principles work against the stake model, especially when all the little fish are not aware and not unite. These are very interesting conversations to have, and the governance channel of the EOS go channel is very busy at the moment. As the constitution and details on governance and arbitration touch all vested members ...
I am so glad that you jumped on this adventure. Also I am thankful that you teach me a lot the back end of the blockchain.
Great success!
Artakush programmed a mega app in the bush...!
@artakush, you have everything your need in the bush! It's all about the people surrounding your bush ... jump out my friend. Booom!
BAM!
This is a great idea.
I'm ready to support / join such an effort