Some thoughts on this from the perspective of a validator. Please note that I am quite jet lagged at the moment and these aren’t really fully formed ideas at the moment. Just wanted to get some of my thoughts down to kick off the discussion.
First, I want to establish my position on what a validator should expect from the ICON network. I’m not sure if this is still the case, but when we first deployed nodes, the recommended spec was a fairly high-end server on AWS. Following the migration from ICON 1.0 to ICON 2.0, the blockchain database format was changed to a format that requires more storage space. Currently, the blockchain database is ~1.2 TB in size. At RHIZOME, we’re currently running the recommended spec and pay ~$1,000/month.
Despite the $1,000/month hard cost of running a node, I think it’s important for validators to have some additional compensation for other node-related maintenance work such as keeping up with software updates, monitoring and scaling disk usage over time, and essentially being always on call for network emergencies. Thus, from my perspective, the minimum cost to run an ideal node operation is $2,000/month.
I use the word “ideal” because it’s really what I consider to be ideal. Over the past year, we’ve seen a number of public discussions from validators that are openly discussing how to reduce node costs. Frankly speaking, these sorts of discussions make me cringe. For example, validators have talked about moving their nodes to lower-tier hosting providers like Hetzner where it’s possible to set up a node for $200/month or even less. In fact, my $1,000/month figure has even been called out by one validator as a disingenuous way to justify more node income – which is just stupid IMO.
This sort of stuff makes me cringe because validators should not be bragging about who has the lowest node costs, and validators who shell out the big bucks for a high-quality providers should not have to feel like they’re overpaying – this is bad for ICON both internally and externally. Internally, it suggests that some validators have little knowledge about server providers, networking, redundancy configuration, etc. Externally, it doesn’t match up with the “enterprise-ready” narrative, which seems to be one of ICON’s general focuses. For example, if I were an enterprise looking to deploy my application on a public blockchain, why would I choose the network where validators are openly talking about who can run a node for the lowest cost possible? I would want to choose the network where I know validators are running on high-quality providers like AWS, GCP, Azure, etc. This is especially true for a network like ICON where blocks are produced by the top 25 validators. In summary, I think block-producing validators should be paid at least $2,000/month for running a high-quality node operation.
With ICX at $0.35, the #25 team is making $1,575/month which is less than the $2,000/month figure. So from my perspective, the network is already underpaying validators and something should be done in the short to medium term to reduce the chance of validators scaling down to lower specs or closing up shop altogether.
Now the question is what should be done… and that’s a tricky question.
I don’t think a minimum wage for validators is feasible because the consequences of the answers to the questions below are murky at best:
- Do all validators receive the minimum wage, or only #1-25 (block producers)?
- Do validators making more than $2,000/month (let’s assume that is the break-even cost that the network agrees upon) also receive the minimum wage?
- Do validators need a minimum delegation amount to receive a minimum wage?
- Do validators have to post a full bond in order to receive the minimum wage?
Do all validators receive the minimum wage, or only #1-25 (block producers)?
Restricting minimum wage to validators ranked #1-25 would probably piss #26-100 off because people are emotional. Realistically, #26-100 do not need the production spec because their nodes don’t produce blocks – they only sync. Despite that, they would probably still try to come up with some justification as to why they also deserve the minimum wage because everyone loves money.
Do validators making more than $2,000/month (let’s assume that is the break-even cost that the network agrees upon) also receive the minimum wage?
In modern society, the concept of a minimum wage exists to protect people at the bottom of the economic ladder. In other words, it’s not something that is given as an additional perk to every employed person. I’m not too read up on how minimum wage is determined in society, but it’s probably a number that is agreed upon by government representatives who don’t really receive a direct economic benefit from the minimum wage. In a decentralized network like ICON, economic parameters like ICX inflation and something like minimum wage would be agreed upon by validators. Unlike minimum wage in the “real world”, a minimum wage on ICON could ALSO directly benefit the validators. So in order to make the most profit possible, validators would be incentivized to set as high a minimum wage as possible. For example, instead of $2,000/month, validators may agree that $5,000 is a “better figure” for X,Y, Z reasons.
Do validators need a minimum delegation amount to receive a minimum wage?
Without a minimum delegation amount, a single entity could simply pay 2,000 ICX multiple times to set up multiple nodes to farm the minimum wage. With a reasonable minimum delegation amount, new validator teams (some of which may end up being quality contributors to the ecosystem) would be put at a disadvantage.
Do validators have to post a full bond in order to receive the minimum wage?
Same issue as above.
For these reasons, I don’t think a minimum wage would necessarily work.
Looking at the current validator rankings, I think the more pressing issue is distribution of votes rather than the amount of votes each validator has. Validators #58-151 have not posted a bond (literally 0%), yet they still have ICX delegated to them. Some of these are probably self-delegated teams, but most are not. Before exploring something like a minimum wage, I think it may be better to address the ICX delegated to unproductive teams. I call them unproductive because they literally serve no purpose beyond taking up votes that could be allocated to a productive team. By not posting a bond, these teams have also signaled that they don’t intend to contribute to the ICON ecosystem. Like @minhx said, this is a broader DPoC problem.
I’d be interested to see if we can come up with some mechanisms to increase vote allocation to productive validators (those that have at least 0%) bond.
Maybe something like a staking reward decay for ICX that is delegated to validators that do not post a bond – meaning at some point, reward for delegation to validators with 0% bond drifts to zero over time. Even though this might frustrate some voters, I think it’s very reasonable. At the end of the day, the network is maintained by validators, and validators are put into power by voters. Thus, voters need to do their job and select validators that are interested in participating in the game. If voters don’t do their job well, reducing staking reward is reasonable.
Another idea is adding an additional inflation bucket for productive validators. Right now there’s I_prep, I_cps, I_voter, I_relay. Maybe add an I_something, which can be used to reward validators that participate in additional responsibilities beyond just being a registered node. For example, maybe part of the inflation to I_something goes to validators that participate in the CPS. I think this could be the “minimum wage” we are looking for because it’s a fair trade – validators give additional time to the ecosystem in exchange for money.
Getting sleepy so will leave it at that for now…