Benefits of increasing committee size and answers to FAQ

This topic is about reducing fixed node dominance by increasing committee size. It will address some questions and (hopefully) further clarify the response detailed here: Incognito 2022: Technical Roadmap

Seasoned validators will be familiar with a lot of this info, but i’ll include some details here for general readers too.

General context

Incognito is a Proof of Stake network that needs at least 68.75% committee votes for a newly created block to be added to the blockchain. The committee size is currently 32. The core team has 22 fixed nodes to keep the network stable at this early stage. This is not decentralized; in other words, a new proposed block will be created and verified by these 22 fixed nodes with or without community nodes.

After a rough start when slashing was implemented and non-functioning community nodes plummeted, all nodes are performing much better, and so should have more voting power.

1. Why is increasing committee size better for decentralization and security than reducing fixed slots?

Both options result in the same % reduction of fixed nodes dominance. However, in the option where committee size remains the same, fixed nodes just need to collude with 7 community nodes to produce a malicious block. If committee size is increased, they will need to collude with 11 community nodes to do so (11 and 22 respectively for phase 2).

2. Why is increasing committee size important groundwork?

Increasing committee size is a thing that needs to happen at some point anyway. When fixed node dominance is less, we need as many healthy nodes as possible to ensure stability. The more healthy nodes in the committee, the better. We have outlined this in past proposals and roadmaps ([Shipped] Dynamic committee size).

Quick summary of the dynamic committee size project: max committee size will be increased to 48 and 64 slots in 2 phases to reduce fixed node dominance to 46% and 34% respectively. Please note that these are max committee sizes; the actual size may dynamically increase or decrease depending on network stability.

TLDR for points 1 and 2: Reducing fixed nodes vs. increasing committee size may result in the same percentage of dominance, but the second is a more secure way to increase decentralization, and is a better decision for the long term.

3. What does this mean for processing power needed?

CPU usage is only high if a node has to re-sync data of a new shard from scratch. As long as it’s not slashed to be randomly reassigned to a new shard, it can continue syncing data of the same shard. This is very lightweight. In a PoS network, the CPU cost for participating in consensus is not significant.

4. How does increasing committee size not dilute earnings?

Increasing committee size means a node will stay in a committee longer; the reward per block may be divided among more nodes, but the earning period will be extended. Additionally, expanding committee size also means community nodes on the whole will increasingly take the majority of earnings.

Currently, in a committee, fixed nodes earn about 68.75% of block rewards for shard committees since they occupy 22 out of 32 slots. When fixed node dominance is decreased to 46% (22 out of 48 slots in a committee), community nodes will earn about 54% of block rewards for shard committees and fixed nodes will earn 46%.

Similarly, when we decrease fixed node dominance to 34% (22 out of 64 slots in a committee) community nodes will earn about 66% of block rewards for shard committees and fixed nodes will earn 34%.

These 2 phases are just the start. The long term goal is still to continue working to reduce fixed slots to as small an amount as possible.

Ideally, only a few block proposers will be needed for fault tolerance.

5. What is a block proposer?

A proposer is a validator that proposes a new block; other nodes then verify the proposed block.

I hope this helps. Please let me know if you have any further questions or concerns, and we’ll do our best to answer them.

9 Likes

Quick question for my silly brain.

For a current validators then we earn 31.25% of block rewards right now. This will increase to 54% in phase one.

If that was done today would that mean our current earnings for node operators would increase by ~75%? (I.e. 54/31.25). Or I’m completely off track…

Errrrr in short. Good for validators.

PRV Nodes go BRRRRRRRRRRR

2 Likes

you’re not! haha. Yes - that’s the earning percentage for all community nodes (assuming the max committee size stated). Per node in practice would of course depend on random selection etc.

2 Likes

all validators

Well I guess we gotta buy more nodes

:stuck_out_tongue::stuck_out_tongue::stuck_out_tongue:

3 Likes

Thank you for the detailed answers! As I understand it, we basically want more validators in each epoch for stability and security reasons. :+1:

Can any validator node be a block proposer or is there something special with the fixed nodes? If you turn off the fixed nodes, will the role be filled by others?

2 Likes

Block rewards are split among all validators, fixed and community validators alike.

With the increase in slots, the validator block reward per epoch (1 epoch = 350 blocks) will decrease quite a bit.

From the whitepaper:

The current validator block reward is ~9.042 PRV


Moving to 48 and then 64 slots in 8 shards would look like this:


For each shard in each epoch, the combined fixed validators would earn ~132.6116 PRV (22 * 6.0278) in Phase 1 (48 slots per shard) down from the current ~198.924 (22 * 9.042).

For each shard in each epoch, the combined community slots would earn ~156.7228 PRV (26 * 6.0278) in Phase 1 (48 slots per shard) up from ~90.42 PRV (10 * 9.042).

While the overall amount will go up for all combined slots per fixed/validator type, the individual earnings will drop quite a bit. More frequent earning will make up some of that difference. However as more validators come online, that frequency will continue to increase, eroding those differences.

4 Likes

Well, the PRV/day, on average, is directly dependent on the total number of validators, no matter how many shards or how big the committee sizes are.

Larger committee = more validators per epoch = shorter pending queue.

Out of a security and decentralization point of view, we want as many validators as possible. That would of course mean that for the individual node operator, the PRV reward will be less, but hopefully, the added global investment in nodes would drive the PRV market price up.

If we should try to keep the reward of around 9 PRV per epoch, shards and committee slots must stay the same. Imagine if the number of validators increases by only 10x, that would mean the pending queue increases from the 50 epochs we have today to 500 epochs. That’s a long wait for staking/unstaking. The pain if you for some temporary reason get your node slashed! :grimacing:

Theoretically, you would like as big a committee size as possible, like every single validator at once. But there is a trade-off regarding the transaction throughput when it comes to the overhead of big committee sizes. I trust the Incognito team has done the math on this already.

2 Likes

I’m not arguing against increasing the number of slots or decentralizing the network. I just want to be sure people understand the drop in the block rewards this will entail.

The first year, then second year annual block reduction caused quite an alarm, and that was only 10% each time. Phase 1 will be a 33% reduction per epoch. There will be angry and confused postings despite monthly earnings increasing. Sometimes people can’t see past the immediate earnings to see the bigger picture.

4 Likes

My bad, I misunderstood the tone of your post a bit. Good point! :relaxed:

Interesting. I was going to wind down a bunch of nodes and move to provide since at the current moment i am not earning much more than 40% anyway.

But if earnings are going to increase…

Lol I can see Jared getting a lot of very annoying posts when it happens.

1 Like

It always depends on the number of validators in the network.

Assuming the number stays the same – at least for Phase 1 – a validator can expect to earn ~12.056 PRV per week, up from ~9.0418 PRV now.

3000 validators would increase the interval between committee sessions to ~34 epochs (~5.5 days) on average. At that interval, a validator would earn about ~72 PRV per month, about the same as now.

What about for Phase 2 assuming nodes are constant?

Phase 2 (assuming the same 2100 validators and same 1.1232 block reward starting point) would have an interval between earning sessions of just ~2 days: 2100 validators / (21 community slots * 8 shards) = 12.5 epochs. 12.5 epochs is just over two days (12.5 epochs / 6.1714 epochs/day). Every two days each validator would earn ~9.0416 PRV (2 epochs per session, avg * 4.5208 PRV) for ~135.6 PRV per month.

However with those kind of returns there is zero chance the network will still have just 2100 validators. Assume 3000 validators: interval of ~2.89 days, ~9.0416 PRV per session, and ~90 PRV per month.

4000 validators: ~3.85 days, ~9.0416 PRV per session and ~72 PRV per month.

8000 validators: ~ 7.7 days, ~9.0416 PRV per session and ~36 PRV per month.

If the transition from current earning to Phase 1 or transition from Phase 1 to Phase 2 occurs after 10/29/2022, then the 10% annual block reward reduction will change all of the above maths.

5 Likes

Really appreciate you outlining all of this. Thank you!

hey fredlee, in the current design, proposers would be fixed (and be the only fixed nodes), but validation is trustless. some other major networks are heading in this direction, but the industry changes very quickly. we’re trying to stay a step ahead as much as we can, so for incognito, we’re continuing to study PoA and other similar protocols to see if we can also decentralize block production.

we’ll also make a note of this in a new ‘status of decentralization’ post so we can keep everything tidy.

3 Likes