A little while ago, my last few posts found their way onto #hyperboria over on hyperIRC. Saying that I sparked some controversy would be an understatement. For that reason, I figure I should step back, and re-evaluate why it makes sense to have payment associated with cjdns traffic.
Two “Schools of thought”
As far as I can tell, we currently have two schools of thought on why cjdns needs a payment mechanism or why a payment mechanism would be useful: one from cjd, and one from myself. These are not mutually exclusive, and probably should both be taken into consideration when designing a pay-for-usage system.
I cannot fully speak for cjd, but this is what I understand of his reasoning behind our ideas. As the network grows, some nodes will likely become over-used, and need to start dropping packets to actually get everything else through. Now, they could either randomly drop packets, or selectively drop them based on source or destination. Randomly dropping packets would hardly be a good idea, so the nodes need to find a way to decide whose traffic to route. The easiest way to do this would be payment: the more you pay me, the higher your priority is. Of course, the node operators should then take whatever profit they make from this and use it to upgrade their node, before somebody else comes along, builds a better node, and starts taking all their traffic as well as payments. This also ties in nicely to the next point:
Bentley’s (my) reasoning
My thoughts are that payment would offset the physical price of running a node. For some reason, some people do not seem to think the cost of running a node would be significant. This may be true if you are running a local wireless-based node, but is completely unrealistic if you wanted to run, for example, a cross country fiber connection. These kinds of connections would require time and manpower to keep running, and the money for that needs to come from somewhere. Our current brainstorming into payment systems provide methods for keeping these large links running. In addition, payment would provide an incentive for link operators to maintain their systems, or else somebody else might come along, build something better, and start taking their traffic as well as their payments.
I want to take a moment to address another misconception about Project Meshnet. Some people think that our network should/will be protected from government censorship. Try as we might, there is no way to make a network immune from government tampering. If they wanted to, they could always find a way to cut the lines, or jam the signal, or kill the courier pidgin. What we can do, however, is implement a network that protects users from government spying, and promotes free speech and the free flow of information, as the internet should do.
Luckily, I was able to keep this post much shorter than some of my previous posts. Please direct any comments to bentley on efnet or hypeIRC, or /u/matteotom on reddit. If you like my new theme, please let me know! If you see any areas for improvement, also please let me know! Please direct any nonconstructive criticism to a special new address, located at /dev/null.