Pages:
Author

Topic: Incentivizing Bitcoin Nodes - page 3. (Read 15188 times)

full member
Activity: 219
Merit: 102
August 04, 2016, 03:00:25 AM
#81
And the school pf thought seems to be that we need to pay people so they keep their making their throne bigger rather than keeping the system small enough to still run on a mobile phone.

You're in denial.

A mobile phone is the wrong use-case for a full node. Mobile phones run on batteries and need to sleep as much as possible. A bitcoin node needs to actively process transactions 24/7. A mobile phone is a good place to run a SPV node. My SPV node uses 15 MB. It does everything it needs to.

There is no use case for a full node. It is a required part of the infrastructure. If  it cannot run on a mobile phone then just use a web wallet and let the miners - who actually do need them and have lots of hardware - run the full nodes. If you come back and say "but, but, but...decentralization". That boat sailed long ago with mining.
legendary
Activity: 4424
Merit: 4794
August 04, 2016, 02:42:15 AM
#80
funny thing is..

those wanting 2mb want a total of 2mb of real data per block
CORE however want 1mb main (base) block and 3mb signature(witness) block.. ill do the maths for you.. thats 4mb of real data per (serialized) block..

in cores case.. it still only offers 1mb to traditional transactions while giving the bloat to offchain solutions like LN (multisig users)
thus frustrating traditional ONCHAIN users in favour of offchain solutions that dont require full nodes or mining to operate.

core even intends to patch their client to allow people to opt out of being a full node by activating no witness mode and pruned mode..
if you have not grasped it yet. core care less about traditional users who want real onchain capacity growth and to be true full nodes.

but i will presume anyone replying to my post will ignore the content. and just talk about how core devs are gods and they created bitcoin..
(even if the devs of today are not the devs of 2009)

but in summary..
for $100 you can get a hard drive(2tb) that can store either:
20+ years of 1mb traditional data ($0.014c a day)
10+ years of 2mb traditional data($0.028c a day)
5+ years of segwit data($0.056c a day)

under 6cents a day(40cents a week).. well thats affordable, you could even find that checking under your sofa cushions once a week and saving it in a far for 5 years
legendary
Activity: 2828
Merit: 2472
https://JetCash.com
August 04, 2016, 12:21:39 AM
#79
I run a full node, but not 24/7. I'm happy to continue to do this because I believe in Bitcoin. If you want to give me an incentive to continue, then just allow me to send transactions with a lower fee than those who don't run full nodes.
legendary
Activity: 3878
Merit: 1193
August 03, 2016, 05:51:18 PM
#78
And the school pf thought seems to be that we need to pay people so they keep their making their throne bigger rather than keeping the system small enough to still run on a mobile phone.

You're in denial.

A mobile phone is the wrong use-case for a full node. Mobile phones run on batteries and need to sleep as much as possible. A bitcoin node needs to actively process transactions 24/7. A mobile phone is a good place to run a SPV node. My SPV node uses 15 MB. It does everything it needs to.
full member
Activity: 219
Merit: 102
August 03, 2016, 04:49:35 PM
#77
This is what annoys me with the dismissal "hard-disks are cheap". Eventually it's going to be consolidated into data centers again.

With 1MB blocks, the chain can grow up to 50GB per year. A 500GB HD good for 10 years worth of bitcoin data costs $30. That's $.01 per day. Yes, that is cheap and it keeps getting cheaper.


I'm saying we already have this (at least we did a couple of years ago).



And you are saying in 10 years this will be cheaper.



And the school pf thought seems to be that we need to pay people so they keep their making their throne bigger rather than keeping the system small enough to still run on a mobile phone.

You're in denial.
legendary
Activity: 3878
Merit: 1193
August 03, 2016, 01:57:08 PM
#76
This is what annoys me with the dismissal "hard-disks are cheap". Eventually it's going to be consolidated into data centers again.

With 1MB blocks, the chain can grow up to 50GB per year. A 500GB HD good for 10 years worth of bitcoin data costs $30. That's $.01 per day. Yes, that is cheap and it keeps getting cheaper.
full member
Activity: 219
Merit: 102
August 03, 2016, 11:19:00 AM
#75
I honestly have always run my own Full-Node out of fear that it would get insecure/unbalanced in the future. More people do need to run their own nodes, but I have only ever done it out of altruism. However I don't regularly keep my Node Running 24/7, I can attest that giving even a tiny bit of BTC as incentive would definitely give me the interest to maintain my node 24/7.

Ok, OK. I give in   Roll Eyes

You have a distributed block chain in the cloud and you pay people to cache the blocks. When a client bootstraps or requires blocks, it has to pay for them. Full nodes have all the blocks and therefore are able to supply anyone whereas an SPV might cache only a few so will naturally be making less coin because they have less customers they can service. The incentive is to hold as many blocks in cache to maximise the number of "customers" buying blocks off of you. So the trade-off is earning power vs disk space allocated with a full block chain being the maximum. This also rewards the fastest nodes too because even a full nodes will need to get the latest block from somewhere.

That incentivises people to run full nodes. It also inentivises the miners to run 1000 full nodes in their data centers and not ask your little laptop node for anything. Undecided It does give me me my distributed block chain, so there is that..

Take a look at the BitSwap section of IPFS.(https://github.com/ipfs/ipfs/blob/master/papers/ipfs-cap2pfs/ipfs-p2p-file-system.pdf?raw=true) section 3.4  wher ethey say that they would require a crypto currency. How convenient Bitcoin already is, eh?

Quote
BitSwap operates as a persistent marketplace where node can acquire the
blocks they need, regardless of what files those blocks are
part of. The blocks could come from completely unrelated
files in the filesystem. Nodes come together to barter in the
marketplace.
While the notion of a barter system implies a virtual cur-
rency could be created, this would require a global ledger to
track ownership and transfer of the currency
legendary
Activity: 1386
Merit: 1123
August 03, 2016, 10:17:12 AM
#74
I honestly have always run my own Full-Node out of fear that it would get insecure/unbalanced in the future. More people do need to run their own nodes, but I have only ever done it out of altruism. However I don't regularly keep my Node Running 24/7, I can attest that giving even a tiny bit of BTC as incentive would definitely give me the interest to maintain my node 24/7.
newbie
Activity: 74
Merit: 0
August 03, 2016, 06:01:31 AM
#73
full member
Activity: 219
Merit: 102
August 03, 2016, 05:39:32 AM
#72

So the blockchain now takes around 91GB, with logs, and Index etc. etc. 93GB. Bitcoind takes about 1 core and 1,5GB of memory.

Right now, I'm going to increase /dev/vdb to 200GB and after that, I have not yet decided if I increase it to 400GB or broadcast a big "Fuck You" to the network.  Wink


Rico


This is what annoys me with the dismissal "hard-disks are cheap". Eventually it's going to be consolidated into data centers again.

We've got all this cloud technology and secure, distributed file-systems so there is no need for a mega copy on very machine. There is no need to maintain the whole history on every single node and if every node is using something like IPFS, Tahoe, Hadoop or similar then every full node will be even lighter than an SPV.
hero member
Activity: 854
Merit: 1009
JAYCE DESIGNS - http://bit.ly/1tmgIwK
August 02, 2016, 10:33:55 PM
#71

So the blockchain now takes around 91GB, with logs, and Index etc. etc. 93GB. Bitcoind takes about 1 core and 1,5GB of memory.

Right now, I'm going to increase /dev/vdb to 200GB and after that, I have not yet decided if I increase it to 400GB or broadcast a big "Fuck You" to the network.  Wink


Rico


And crazy people still want a 2 mb hardfork. What a bunch of low-lifes.

They are against the centralization of Core, but they would not mind if only 5 corporation datacenters would remain as active nodes.

Don't worry cheaper PC and HDD will come out, but the 1 MB must be kept as it is, to not burden nodes more.
legendary
Activity: 1120
Merit: 1037
฿ → ∞
August 02, 2016, 12:20:52 PM
#70
Meanwhile in "pillar node land"...

Code:
# df
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        15G  7.1G  6.9G  51% /
devtmpfs         10M     0   10M   0% /dev
tmpfs           355M  248K  355M   1% /run
shm             1.8G     0  1.8G   0% /dev/shm
/dev/vdb         99G   93G  6.3G  94% /scrap

# ps aux | grep bitcoin
bitcoin  14447 66.3 31.7 1403148 1154408 ?     SNsl Jul26 6580:16 /usr/bin/bitcoind -pid=/var/run/bitcoind/bitcoind.pid -conf=/etc/bitcoin/bitcoin.conf -datadir=/scrap/bitcoind -daemon -disablewallet -txindex=1 -maxconnections=500 -timeout=15000

So the blockchain now takes around 91GB, with logs, and Index etc. etc. 93GB. Bitcoind takes about 1 core and 1,5GB of memory.

Right now, I'm going to increase /dev/vdb to 200GB and after that, I have not yet decided if I increase it to 400GB or broadcast a big "Fuck You" to the network.  Wink


Rico
full member
Activity: 219
Merit: 102
August 01, 2016, 02:14:51 AM
#69

Your argument is circular. It basically says if we don't change anything in a system that requires financial incentive we must have financial incentives (for anything). I'm saying we change the system so that participation is the incentive by enforcing a requirement that clients can only be full nodes. It will be 100% running full nodes because that's the only way you can send and receive Bitcoins if you aren't a miner.

I dont understand what you are trying to say there. The participation is voluntary now ,and will be. It's just that with incentives more people would voluntarly join.
I don't think I can say it any clearer. I keep saying "change the system so we don't need a financial incentive" and you keep replying by saying "if we keep everything the same, we need a financial incentive."


SPVs are not full nodes so cannot be used (they were a lazy solution to the blockchain ballooning anyway). Online wallets are fine because the provider is running one or more full nodes. People can't be lazy because if they want to transact with Bitcoin they have to run a full node. If they don't have the resources to run one then finally the devs will have to do something about it instead of hand-waving and saying "disks are cheap".

No, SPV is better than online wallet. In online wallet you have 1 full node and 100,000 users who connect to it, and have to trust the node 100% to not scam him or run away with their money.

In SPV you control your own bitcoins and have a reasonable degree of confidence that the blockchain is valid. Plus they still partially verify the blockchain from multiple SPV servers.


A SPV is better than an online wallet but worse than a full node? I'm not sure what argument you are making here. I'm saying that an SPV is a poor mans full node that only exists to reduce the storage requirement-get rid of them. Solve the storage requirement properly, if you must, so that  everyone runs a network supporting full node if they have a wallet rather than a wallet that only verifies the database for the wallet owner (which is what a SPV is).
hero member
Activity: 854
Merit: 1009
JAYCE DESIGNS - http://bit.ly/1tmgIwK
July 31, 2016, 04:39:57 PM
#68

Your argument is circular. It basically says if we don't change anything in a system that requires financial incentive we must have financial incentives (for anything). I'm saying we change the system so that participation is the incentive by enforcing a requirement that clients can only be full nodes. It will be 100% running full nodes because that's the only way you can send and receive Bitcoins if you aren't a miner.

I dont understand what you are trying to say there. The participation is voluntary now ,and will be. It's just that with incentives more people would voluntarly join.



SPVs are not full nodes so cannot be used (they were a lazy solution to the blockchain ballooning anyway). Online wallets are fine because the provider is running one or more full nodes. People can't be lazy because if they want to transact with Bitcoin they have to run a full node. If they don't have the resources to run one then finally the devs will have to do something about it instead of hand-waving and saying "disks are cheap".

No, SPV is better than online wallet. In online wallet you have 1 full node and 100,000 users who connect to it, and have to trust the node 100% to not scam him or run away with their money.

In SPV you control your own bitcoins and have a reasonable degree of confidence that the blockchain is valid. Plus they still partially verify the blockchain from multiple SPV servers.




A full node on every laptop, PC, mobile phone and kiosk that wants to transact with Bitcoin. No financial incentive required.

That wont happen. There is no 100% consensus.

full member
Activity: 219
Merit: 102
July 31, 2016, 11:08:54 AM
#67
Uh there are lightweight wallets and online wallets (or mobile).

I bet >90% of people dont run their own full nodes, and there is no incentive to change this percent.

Of course some people cannot run a node because of resource limitation, but most people dont run full node because of lazyness.

So you need to pay them in order to join, they are not altruistic.

Your argument is circular. It basically says if we don't change anything in a system that requires financial incentive we must have financial incentives (for anything). I'm saying we change the system so that participation is the incentive by enforcing a requirement that clients can only be full nodes. It will be 100% running full nodes because that's the only way you can send and receive Bitcoins if you aren't a miner.

SPVs are not full nodes so cannot be used (they were a lazy solution to the blockchain ballooning anyway). Online wallets are fine because the provider is running one or more full nodes. People can't be lazy because if they want to transact with Bitcoin they have to run a full node. If they don't have the resources to run one then finally the devs will have to do something about it instead of hand-waving and saying "disks are cheap".

A full node on every laptop, PC, mobile phone and kiosk that wants to transact with Bitcoin. No financial incentive required.
newbie
Activity: 7
Merit: 0
July 30, 2016, 02:40:32 AM
#66
You think  is a good idea. Tongue Roll Eyes
hero member
Activity: 854
Merit: 1009
JAYCE DESIGNS - http://bit.ly/1tmgIwK
July 29, 2016, 06:28:41 AM
#65

Still it has to have some kind of incentive, if not monetary then what?

How do you incentivize full nodes to be created, by individuals, and limit it to 1 / person?

 That is the real question.

Incentive is participation. If one doesn't run a full node; one cannot participate in the network. If one has a wallet; one is running a full node...period. Today it has implications for the blockchain size which everyone is in denial about but that is a different issue.

This also means that it doesn't matter how many nodes one runs but there is no real incentive to run more than one so a limit is moot. Every wallet is a full node and that means millions of them on every platform rather than a few altruistic hard-core fanatics or greedy, infrastructure rich parasites.

Uh there are lightweight wallets and online wallets (or mobile).

I bet >90% of people dont run their own full nodes, and there is no incentive to change this percent.

Of course some people cannot run a node because of resource limitation, but most people dont run full node because of lazyness.

So you need to pay them in order to join, they are not altruistic.

Great, and do you have any idea how many IPv6 addresses are possible?

For each new IP you need a new internet subscription. An ISP only gives you 1 IP at a time / subscription.


Uh... I got a /48 IPv6 net for every account with our ISP. If I am not entirely mistaken, this is 280 addresses...

Even if you stayed in IPv4 land, then you have HP, IBM, the US military and what not with their Class-A networks.

And even if you somehow could/would reduce it to a node per IP, it's quite discriminatory in almost any NAT environment.

=> I do not think that is a viable solution.


Rico

I' m not entirely sure how the internet works, but it's obvious that it's not decentralized. I wish that would change.

On the other hand some kind of node ID system could be introduced, but that would invade privacy, so there has to be some other way to do it.
legendary
Activity: 1762
Merit: 1011
July 28, 2016, 03:54:44 PM
#64
As far as my added words, and your points about bandwidth, no, a p2p solution for the miners is still feasible from what I've read. It needs to be solved, if it's possible. We don't need miners requiring centralized methods, if possible. Maybe someone has made an argument elsewhere that a centralized solution for this particular issue will always be more economically preferable/efficient than a p2p one, and, thus, any p2p solutions to it should not be developed? Such a conclusion (not saying it's yours) doesn't seem to follow, at least in my mind. We still need more efficient p2p options to fall back on *even* if centralized options for certain aspects of the network will remain economically superior.

Please say where you've read that. I think it might be wrong, because this short talk has data which shows miners today would not be even remotely competitive if they used the p2p network: https://www.youtube.com/watch?v=Y6kibPzbrIc

I get the impression, from what luke-jr has said, that it could be done, or at least needs to be tried. He could be wrong, of course. Some relevant comments of his:

https://www.reddit.com/r/Bitcoin/comments/4r2mah/why_a_1mb_block_size_may_be_right_for_todays/d4y6iqi

Quote
Yes, propagation time across the entire network needs to be well under 30 seconds for the p2p network to compete with centralised networks. For this, the average node needs to be capable of downloading, verifying, and uploading the block to 8 peers in maybe 4 or 5 seconds. Typical upload speeds are simply not good enough for this today.

Compact block relay in 0.13 will hopefully improve it by using the local memory pool as a cache for transactions in blocks. So instead of downloading/uploading the full block, you can get away with only a few transactions the receiving node didn't cache (the rest cached during non-time-critical periods preceding the block being found). Essentially this brings the time constraint from 5 seconds to 8 or 9 minutes on average.

https://www.reddit.com/r/Bitcoin/comments/4u38yt/bitcoins_nervous_system_gets_an_upgrade_with/d5my5pe
(also make sure to read the replies from TheBlueMatt and klondike_barz)
Quote
We should be working toward killing off centralised block relay networks, not improving them so miners are even more biased against using only the decentralised p2p network.

In other words, these improvements should be used on the p2p network, not designed for use in a centralised backbone.
legendary
Activity: 1120
Merit: 1037
฿ → ∞
July 28, 2016, 10:21:36 AM
#63
There's no change. Non-mining full nodes will always be virtually free to run.

I have several hypotheses

  • you're talking about a very special definition of "full node"
  • or you're talking about a very special definition of "virtually free"
  • or you have not operated a "pillar node" (see above in the thread) in the past year
  • or you're a mining stakeholder not interested in sharing tx fees

I have several more, but these could be interpreted as "ad hominem" (which I believe
they aren't, but we would have to dig into your knowledge of the bitcoin network and might reveal a lack of).

Am I correct, that you offer VM hosting "virtually for free"?

Rico
legendary
Activity: 1120
Merit: 1037
฿ → ∞
July 28, 2016, 09:41:18 AM
#62
In what way is that an "outright lie"? Running a full node protects your privacy. It also makes your wallet more secure, which it does talk about as well. The article does not just talk about privacy.

No, running a full node does not protect your privacy. Contrary to a lightweight that connects to supernodes (e.g. Mycelium) where you lose privacy to some entity (i.e. the operator of the supernode), With a full node you lose privacy globally as today the network sees the originating IP for a transaction. Because statistically the "Relayed by IP" information is now unmasked to the world.

However, I am NOT advocating the lightweight/supernode concept. Just debunking the privacy claims.

Quote
How are those not full nodes anymore? None of those things (pruning, limiting connects, limiting bandwidth) are part of the definition of a full node (https://en.bitcoin.it/wiki/Full_node#What_makes_a_full_node.3F). The only thing that makes a full node "full" is that it has to download, verify, and validate every single block and transaction. Pruning still does that, it downloads every block and transaction.

 Cheesy

So... if all nodes out there were "full nodes" according to your definition (and probably according to the bitcoin.it wiki, which currently shows only a Error 524 cloudflare) - where would the "every block" come from? If all nodes today turned on pruning, bitcoin could never ever add a new full node again.

Quote
After it checks them, the data is deleted because it isn't necessary to store all of that. It simply won't be able to bootstrap another node, but that behavior is not part of what defines a full node.

Oh. So now we are in the "define that word" game. What will we call nodes "that are able to bootstrap full nodes"? Hypernodes?
I'm fine with that. Let's incentivize only those.

Quote
So again, how are they not full nodes?

See above. Apparently we are talking about some other name now. Because there clearly is a difference between "full nodes" and "more full nodes". And if you - just for a second - forgot about nitpicking and remembered the true reason why we have this discussion in the 1st place (ensuring a robust network), you would probably start to see value in the "more full nodes".

Quote
Actually they could be used in a sybil attack against one node, where those fake nodes take up all of the connections of a node and serve that node an alternate blockchain.

True. How is that different from the situation today? Does "incentive" make a difference there?

Quote
Furthermore, there could be fake nodes that relay, but don't check. They could just be extra bandwidth that sends blocks and transactions around, but it isn't helpful if those fake nodes are not checking the blocks and transactions to make sure that they are valid. So they pretend to be a full node, but aren't actually doing the job a full node is supposed to.

Actually those nodes would do more harm than good, because without dropping invalid tx they could cause kind of epileptic brainstorm to the bitcoin network, where a malevolent attacker would feed invalid tx and rely on these nodes to amplify his spam.

How about this:

I will call the nodes that IMHO would deserve an incentive "pillar nodes". These are nodes, that

a) can bootstrap any other node, i.e. carry all blocks
b) do validate transactions
c) maybe some more requirements about throughput/latency...
d) are available 24/7 (or sufficiently close to it)


Let me compare the situation to the electric grid. A blackout is a bad thing. Even more so, because there can be a cascade of events leading to a blackout in some geographically extensive area. Some power plants and/or grid lines go down, causing overload, causing shutdowns, causing more shutdowns. Nearly ALL modern power plants cannot start without power.

There are some, that can. I know of a hydroelectric power plant that is designated to be able to start up a nuclear power plant in case everything else (grid, generators, ...) went black. Because hydroelectric power plants can start delivering power "into the night".

I hope it is clear where I am heading with this.

In the early days of Bitcoin, a "full node" actually meant a node containing ALL blocks. It meant validating transactions. It even meant mining. The only thing it never meant was 24/7.

People did run full nodes, because it was not a big deal (I had a 200GB HDD in 2010 and the blockchain was like 1 GB in 2012) and there was an incentive: mining This incentive is now gone, the blockchain today is 85GB and I have purged my wallet to my home server, because I will certainly not let it occupy my quite expensive 512GB NVMe SSD.

Running a node similar to what it used to be back then (= not crippled) has become a PITA nowadays. You basically have one core constantly busy, around 750GB of monthly traffic, and 85GB of disk space, constantly rising.

How long do you expect this will go on with people running "nodes like that" for free?

If your answer to this problem is "then don't run nodes like that" (which at the moment I'm afraid is just what you're saying), then unfortunately you're advocating Bitcoins demise in the long term.

Quote
There is a deanonymization because there is a list of nodes that have relayed the transaction. The issue comes in with the node that created the transaction. That node would be the first node to attach its fingerprint to the list. Thus all of its peers, when they receive the transaction, can see that only one node has relayed that transaction. It will also know which peer relayed that transaction with one node on its list so it knows the ip address of the person sending the Bitcoin in that transaction.

Ok. I see that now. Even though the fingerprint does not contain the IP, it can be derived from the connection info. If you see above the lightweight/supernode concept that is e.g. with Mycelium - that is actually something that would ensure the senders anonymity in this case. Again, I'm not advocating this. You have to trust someone, which is not quite the concept we would like to have.

How about this:

A "pillar node" is a node that

a) has all blocks - can bootstrap anyone
b) verifies transactions
c) maybe some more requirements about throughput/latency...
d) is available "24/7" (say - at least 99% of the week)
e) is purely altruistic: does not have a wallet

A corollary to e) would be "full nodes containing a wallet cannot add any info to the tx" - for their own good.

Now if some "pillar node" got a tx without a fingerprint, it could be from the originating IP, but effectively all it knows is that the originating IP does have a wallet or (because that should be optional) simply forfeits any potential incentive or just relayed the tx from another wallet-node that did the transaction. The deanonymization problem should be gone with that.



Rico
Pages:
Jump to: