3 ms·
> Furthermore ~400GB per year is not particularly insane, you can get a 6TB drive for less than $200 and that'll be enough to store more than 15 years worth of
by flashdance 9y ago
> Furthermore ~400GB per year is not particularly insane, you can get a 6TB drive for less than $200 and that'll be enough to store more than 15 years worth of blockchain.
> As for bandwidth it amounts to less than 14kB/s on average.
Fourteen kilobytes a second is quite an understatement of the bandwidth needed to operate a bitcoin full node. Remember, nodes don't just download the chain: they also relay unconfirmed transactions and blocks to other nodes, which increases bandwidth requirements by a few orders of magnitude.
When I ran a full node a while back it was eating a couple of TB a month. Nowadays that blocks are full I suspect that it's quite a bit more than that.
- simias 9y agoYou don't need to do any of this to secure the network though, it's all about "witnessing" what is the valid blockchain. You could write a dumb node that doesn't deal with unconfirmed transactions and only receive new blocks without relaying them at all. You'd still be able to detect a fork. You could even save some storage by only keeping unspent outputs from old blocks once verified. Anyway, that's not even my main point. I just thing that I think this particular problem is overblown and used as a bogeyman by the opposing party. Not that "big blockers" are without blame, there are insane conspiracy theories on both side and even in between. Hacker news is basically one of the only places where I've seen people being able to discuss these issues on a technical level without going full "the illuminati freemason bankers are trying to destroy bitcoin".
- flashdance 9y ago> You don't need to do any of this to secure the network though. Not doing those things actually weakens the network. If most users operated a node like the one you described, there would be several negative effects on the overall network's health: * It would take longer to relay transactions: full nodes would be less interconnected and there will be more "hops" between any two nodes. This in itself can cause many problems: it gives miners an incentive to centralize geographically (latency increases orphan rate) and can make a 51% attack slightly easier. * The network will become more vulnerable to DoS attacks, because only nodes that relay transactions need to be targeted. * Full nodes will have even higher bandwith requirements, because they will have to relay transactions to more nodes (that don't relay in turn), like a torrent with many leechers. It's kind of like how the development of popcorn time is bad for the health of torrent networks (not the same though, different reasons). > Anyway, that's not even my main point. I just thing that I think this particular problem is overblown and used as a bogeyman by the opposing party. Not that "big blockers" are without blame, there are insane conspiracy theories on both side and even in between. I get it, but I don't think this problem is overblown.
- simias 9y ago>Not doing those things actually weakens the network. It's true but it's not exactly in the same category. I was mainly considering attacks that would attempt to mess with the ledger, not a denial of service. DoSes are a problem of course, but it's transient and can be fixed "in hindsight" if it actually becomes an issue. Successfully tampering with the blockchain on the other hand would be a massive shitfest and non-trivial to fix. I'm not really worried about the number of nodes becoming insufficient to relay the transactions because clearly people who are invested in bitcoin have all kinds of incentives to keep it running. That means that big exchanges and "whales" could easily invest a few dollars a month to run a full node on a high bandwidth VPS. Keeping Bitcoin usable would actually be a good incentive to run full nodes if that ever became a problem. If Bitcoin really keeps growing eventually banks, big companies and governments will want to run nodes and I presume they won't host them on a raspberry pi connected to a 56k landline. On the other hand if your internet connection is too crappy to support 8MB blocks (14kB/s, remember?), I can't really imagine that it'll do a lot of good as a backbone for the bitcoin network. If anything you'll end up eating up bandwidth from external nodes as they forward you the blocks and transactions while not really contributing much yourself.