I’m bumping this because this is an important question. How can we ever add non-Dfinity-approved nodes if we don’t have a guarantee of protocol disincentives?
Add badlands to the roadmap!!!
@Mr_Burkes @plasmex these are very important questions indeed. we can automatically check some elements in advance (see also this other forum post: Proposal for Node Provider Self-declaration) but there is of course still to potential for violating the protocol. There are two features we are discussing and preparing internally, work in progress: an automated reward system in the NNS that includes penalty for policy violation, and observability/monitoring of NP performance. Both are on the roadmap and being worked on.
Hi @jzxchiang thanks for the detailed feedback. To respond to each of your items
correct, we have taken a conservative estimate, taking into account that we want to stimulate NPs in new geographies to join.
Yes there would be incentive to inflate the numbers but we have a good view on the operating expenses based on the existing NPs and the operation of the Dfinity nodes. And yes, node provider performance can to some extend be monitored automatically as well; this is a feature we are planning to implement in the future as well.
it is very difficult to compare with other blockchains as the business model for validators and miners is completely different. For the IC, a NP does not get rewards for number of transactions run on a node or subnet, but for performance/availability of the node. The intention indeed is to have the reward system automated inside the NNS and be updated automatically. To be continued and posted in the forum once we have suggestions for this.
Yes will correct this.
To add, the above are future features we are planning to add. Note that in the current implementation, we need consensus of at least 2/3 of the nodes in a subnet to continue. A node that is deviating is not removed automatically and collects rewards, but it should be eventually removed.
Thanks for the response. Regarding (1), I wonder if the profit margin should be enough to incentivize NPs. I’m not sure the inflation rate is a parameter that should be tuned for anything other than accuracy based on official projections.
What does eventually removed mean?
@Mr_Burkes , the nodes on every subnet are monitored, and the status of each node is visible in the public dashboard (e.g. NNS subnet status). If a node is down or unhealthy, it is eventually swapped for another, healthy node. This process is done through an NNS proposal, as you can also find in the dashboard under governance (see here an example of a proposal for a node replacement: Proposal: 93959) that the community votes upon and is eventually executed.
@SvenF I think the rewards overall are too generous and reward rate for Gen 2 are too close to Gen 1. ICP should have plenty of willing NP’s to come in at a rate under ~1.9x (proposed Gen 2 USA renumeration) regardless of geography. I don’t think there will be significant or any drop off from Gen-2 NP interest if we reduce to proposed renumeration to something more reasonable, perhaps ~1.5x.
I don’t know why the process to on-board a new node must be so convoluted and difficult. This seems to me to be in contradiction to the claim that “The IC is designed for anyone to be able to become a node provider (NP).”
I am an individual with the resources to invest immediately in one or a few nodes to start with, and in at least two geographical regions (datacentres in cities not yet served/in the list) and I would have hoped to expand the operation in the future, but the process seems impossible. For example, elsewhere it is recommended that the proposal contains details of my github (or similar) page and my business website. Well:
- I do not have a github page because I am not a programmer (but I do have sufficient experience to run a node);
- I have not formed a legal entity to own and run the nodes, and therefore do not have a business registration or business website. I would want to do this (spend time and money on creating the business structure) after having my proposal approved.
So I am supposed to stake x ICP for the slim chance of the proposal being approved in the circumstances described? Obviously it (the minimum stake which appears to be ICP 10.00) is not a lot of money right now, but it seems almost certain that I would be simply throwing that money away.
I wanted to approach this in good faith and be rewarded for my non-statistically-deviating node(s), but the barriers are too high. I suppose I have to look at opportunities elsewhere, which is a shame, as I can see that IC has amazing potential and it is disappointing that it seems I cannot contribute to its future in one of the few ways I can. The rules/processes, it seems to me, aren’t doing much for IC’s resilience/decentralisation. Disappointing!
@SvenF would you consider simplifying the rules to help out this fine gentleman / lady? Onboarding new NPs should be straightforward.
The node setup is still quite tech-savy and it will take some time in order for the setup to be done without any technical knowledge, but that is definitely something for the long term roadmap.
But the onboarding process can of course be further simplified to include non business entities. That’s why the proposal for the onboarding process was posted on the Forum. Eventually, it should of course be for the community to decide what would be the onboarding rules for a new NP. For a person that is not a business entity, the community should have some way to identify the authenticity of the person. Since that person does not have a github account or chamber of commerce number, some other document or way of identification might be required. Any suggestions is very much welcome and I am happy to pick this up together with you.
It is better to be safe than sorry!
SvenF and dfisher, thanks for your replies.
I am an IC beginner, but I have read the articles about nodes meeting the correct specification and so on and I don’t really understand why it is a concern; after all, if the node is not meeting the required distribution then why not just slash it? I accept that I might be missing some technical or theoretical understanding here and don’t spend time replying as this is more rhetorical but I have talked to others who have similar questions.
Also, I have read in other places comments like:
“You need Dfinity’s permission to run a node!”
“It’s not decentralised, Dfinity runs the network!”
“It’s highly centralised, there are only 8 node providers!”
“It’s a scam because [some variation of the above, or comment about early investors]!”
and I think that this difficulty of adding a node really does contribute to this bad press. Therefore I do hope that a great reassessment and simplification of the process can be made because, now, people like me who have good intentions are shut out.
At the moment, the barriers are too high for me (and I understand that sufficient nodes are lined up going into 2023 anyway), so I am going to sit this out until the process is a bit easier.
Thanks again for the quick replies.
Thanks @SS88, completely agree with your observations getting a node up should be much simpler and the team is working hard on this, as well as to get it further decentralised. As you can see from previous updates there has been progress to decentralise the node infrastructure, and this will be focus for 2023 as well. If you are still up for it now, I am happy to help you out of course. In the meantime I will continue to post updates on how we are doing with the decentralisation.
Hi @shayaaa, thanks for this observation! We have looked at the rates and also had feedback from some smaller (potential new) Node Providers. For smaller Node Providers, the remuneration might be on the low side even with a multiplier as their Opex expenses (ISP and data center costs) are relatively high for them with only a few nodes. Whereas this is not the case for Node Providers with a large number of nodes. This is something that might need to be taken into account (and voted of course by the community) for the future.
Due to the community decentralization benefits of having more node providers instead of always larger node providers, I think it makes sense to offer a discount to smaller node providers to offset the centralization incentive from economies of scale - not a complete offset, of course, but at least somewhat.
@SvenF I appreciate the reply and it made me think of something… I’ve heard that on Solana you need about $2MM to run a profitable validator yet they are able to have “smaller wallet” people join validators because of their design - - other PoS chains are able to do similar things with pooling resources. I know this isn’t exactly possible on ICP but would there be a possibility for something like “Parent NP’s" that establish the nodes to the network and then “decentralize” themselves by selling interests in their node? If there is enough community interest, could something like a “NodeDAO” that pools money together and operates nodes as a community be another possibility?
What purpose would that really serve to “decentralize” anything? Everyone has heard of the “$5 wrench attack” to steal someone’s crypto by physical threat or force. For NPs, I would call a similar attack on decentralization the “5 cent paper attack”. If a sniveling little bureaucrat from one of a dozen three-letter U.S. agencies threatened to slap economic sanctions, no-fly-list sanctions, terror watch list sanctions, indefinite detention without trial, etc. on a node provider (use your imagination for more examples based on prior U.S. precedents), would all those “decentralized” nodes of his get shut down from that one piece of paper too? My guess is yes, they would.