Pages:
Author

Topic: Long term Scalability of Bitcoin and the 1 MB block size limit (Read 8994 times)

sr. member
Activity: 336
Merit: 250
Consensus is the block size limit will have to rise.

Us geeks were/will/are arguing over how and when, not if...


3 years later, and we're still arguing how, when and even IF it should be raised.

we actually gone BACKWARDS in our reasoning.

Pretty amazing how the landscape of the Core Devs has changed since Gavin responded to this. That said, I think that Gavin's statement still applies.
legendary
Activity: 1106
Merit: 1005
Consensus is the block size limit will have to rise.

Us geeks were/will/are arguing over how and when, not if...


3 years later, and we're still arguing how, when and even IF it should be raised.

we actually gone BACKWARDS in our reasoning.
sr. member
Activity: 359
Merit: 251
Following.

It looks like the last jump was about 5x ... so another jump like that and... I wouldn't be surprised if it happens by end of 2014

Bumping an old topic due to the recent rise to 13.7% of the XT "devaluation" core and drop of BTC price vs Fiat. This is a good read with the argument against forking BTC in favor of XT is pretty strong.

The main question is - how decentralized do you want to be? Freedom or ruled by XT? Brahm Cohen foretold the takeover of BTC by outside forces with malicious intent, saying they would prophesy the doom of BTC and instill false panic in the miners. Once the miners change to a "new, better core" then you effectively own the bitcoin network.

I'm not saying there isn't a 1mb problem, I'm just saying it isn't soon and XT definitely isn't the answer. Let the limit be touched more often than once in a blue moon and the limit will likely be raised in Core, just as other fixes have been implemented as they have popped up.

Personally I think the whole "reindex for 3 days every time you lose power" problem is much more pressing than the 1mb limit.
legendary
Activity: 1666
Merit: 1010
he who has the gold makes the rules
Following.

It looks like the last jump was about 5x ... so another jump like that and... I wouldn't be surprised if it happens by end of 2014
sr. member
Activity: 434
Merit: 250
In Hashrate We Trust!
The original goal of bitcoin was to have a fully decentralized cryptocurrency, if we rely on datacenters the network becomes more centralized, and thereby more vulnerable.

My proposal:
Assume we have 1 million nodes and 5-10 transactions per node and day resulting in a total of 50-100 tps.
Instead of 1 million nodes running the same gigantic blockchain, each node downloads it's own blockchain based on the blocks and transactions from neighboring nodes.
Thousand of nodes will keep track of identical blocks to prevent double-spending, data-loss or data-corruption and that should be enough.
The result will be that you can run bitcoin node even on your mobile phone, instead of downloading a blockchain of 100 GB, you download 100 MB.

The proposed architecture would have been unsecure in the childhood of bitcoin, but with growing number of miners and nodes I think we have a critical mass of users where the network can be secure even though just a fraction of the blockchain is saved by each node.
donator
Activity: 1218
Merit: 1079
Gerald Davis
Price of 1Gb of storage:
1981 $300000
1987 $50000
1990 $10000
1994 $1000
1997 $100
2000 $10
2004 $1
2012 $0.10
(via @scienceporn)

Nice one.  I remember 1995 clearly as I splurged and bought one of the first economical 1GB drives for a little over $300.  It arrived DOA but luckily the RMA worked fine for years.  When most HDD were measured in MB I had a GB.  I bought it to be able to duplicate CD-ROMs faster and more reliably (as blanks cost IIRC something like $15).  There were a lot of burned copies of warcraft floating around the dorm that year. Smiley
hero member
Activity: 743
Merit: 500
Price of 1Gb of storage:
1981 $300000
1987 $50000
1990 $10000
1994 $1000
1997 $100
2000 $10
2004 $1
2012 $0.10
(via @scienceporn)
legendary
Activity: 1680
Merit: 1035
See: Average block size chart

Since implementing the "dust rule", block size has been pretty steady; I would guess we won't hit the 1MB hard limit for another two years, but that is just a guess, we could easily hit it sooner or later than that.


Lol! That's like the "famous last words" in bitcoinland  Grin
donator
Activity: 1218
Merit: 1079
Gerald Davis
Im very skeptic about the scalability of the current architecture.
Imagine 1 billion people using bitcoin 5 times/day = 5 billion transactions / day = 1825 billion transactions per year

Is the bitcoin client able to handle 58,000 transactions per second and a blockchain terrabytes or maybe even petabytes in size?

OH NOES Bitcoin might only someday handle 10% of all tx in the world.

Come on nobody now how large Bitcoin will be.  Maybe Bitcoin never gets to PayPal stages so worrying about will it be able to handle being the single one currency in the world where every man woman and child processes every single tx is kinda silly.  I mean Bitcoin isn't even the single cryptocurreny today and your are invisioning a system where every nation on earth gives up their sovereign currency (something that is almost inconceivable) and the entirety of humanity processes directly on the blockchain for everything from billion dollar (equivelent) intra bank swaps to a cup of coffee.

If Bitcoin can't do that but it can say become the world largest payment network that is open, transparent, and decentralized in a decade or two would you consider it a failure?

Still if you absolutely can't sleep without knowing can Bitcoin scale to "the one coin to rule them all":
1) Will all tx be on the blockchain?  It is highly unlikely given that even today with essentially free txs and a tiny tiny ecosystem all tx aren't on the blockchain.
2) When will this end game occur? Tomorrow, a decade, fifty years?

Today handling that type of volume would require very large and expensive nodes.  It probably could be done but we are talking some serious hardware.  The largest bottleneck is bandwidth and most residential connections don't come close so all full nodes would be in a datacenter.     To avoid near continual swapping one would want a significant fraction of the UXTO in memory and at 50,000 tps we are talking "a lot" (64GB? 128GB?).  Disk is less of an issue but you are talking about ~1 TB per day.  It would require some pretty massive RAIDs.  Possible but hardly hobbyist.  CPU power is almost a non-issue today (quad core can perform roughly 50,000 tps) and will become less of an issue in the future.

The good news is Bitcoin isn't going from <1 tps to 50,000 tps in a year, or a decade.  It may never scale that large for issues beyond tech but even if it did we are talking on a lifetime scale.  Today we have TB scale drives, when I went to college in 1995 I bought one of the first economical 1 GB HDD.  I have do doubt in another 2 decades we will have PB scale storage for $200 or so.  The same will apply to bandwidth and memory.  

It probably makes more sense in looking at "if in the next 5-10 years" Bitcoin reached PayPal scale (tens of million users, 50 tps) what kind of resources are we talking about.  What types of optimizations would pay the largest dividends.   


legendary
Activity: 1652
Merit: 2301
Chief Scientist
Is the bitcoin client able to handle 58,000 transactions per second and a blockchain terrabytes or maybe even petabytes in size?

Which "bitcoin client" ?

The client-side of Multibit and electrum should have no problem handling that transaction volume.  Only the transactions relevant to your wallet are sent to your machine when you are running those clients.

The reference implementation can't handle that transaction volume today, but I 100% guarantee that version 11.11 which I 100% guarantee will be released on November 11'th, 2022 will be able to handle that transaction volume.

I feel obliged to insert my standard disclaimer:  Bitcoin is an experiment in progress.  Only invest time or money that you can afford to lose, there is still a chance the experiment may fail for some reason we don't forsee.  Past results are no guarantee blah blah blah.

That said, I'm more confident than ever that the network will be able to scale up and remain decentralized.
sr. member
Activity: 434
Merit: 250
In Hashrate We Trust!
Im very skeptic about the scalability of the current architecture.
Imagine 1 billion people using bitcoin 5 times/day = 5 billion transactions / day = 1825 billion transactions per year

Is the bitcoin client able to handle 58,000 transactions per second and a blockchain terrabytes or maybe even petabytes in size?
sr. member
Activity: 336
Merit: 250
Consensus is the block size limit will have to rise.

Us geeks were/will/are arguing over how and when, not if...


And despite what Bitcoin cultists (this includes the core dev team) there are massive issues involved in doing so
legendary
Activity: 1722
Merit: 1004

It can be phased in, like:

if (blocknumber > 115000)
    maxblocksize = largerlimit

It can start being in versions way ahead, so by the time it reaches that block number and goes into effect, the older versions that don't have it are already obsolete.

legendary
Activity: 2632
Merit: 1023
doesn't PPC answer all of these mining problems....?
Eri
sr. member
Activity: 264
Merit: 250

As I understand it, bitcoin needs to have exponentially greater number of transactions in just a few years in order to keep miners interested as the block reward continues to halve, particularly as the miner fee gets smaller in the face of a rising price of Bitcoin. However, if there is a 1mb block size hard limit, it would seem that something's got to give.



Ok, So ill try to answer this. It seems like allot of the finer points in bitcoin people have to learn and understand on their own. ive tried explaining this to people before but it seems to be one of those "you either get it or you dont" type of things. None the less.. ill try.

As I understand it, bitcoin needs to have exponentially greater number of transactions in just a few years in order to keep miners interested as the block reward continues to halve.

The whole mining, fees, bitcoins earned, cost of mining hardware etc is all one big multi faceted balancing act. when you tweak one thing there are several things that can happen to balance it out. the theory that you and (last i knew) quite a few people had... was that 'when the mining reward is cut in half the transaction count must increase for them to keep their earnings the same'. There is another possibility, rather then the number of transactions increasing, you can simply account for this with an increase in value for bitcoins.

i guess the simplest way to illustrate this is.. if the block reward is cut in half, then either the value of bitcoin needs to double to make up for it or the number of transactions being processed needs to increase. A quick look on any site that tracks the historical value of bitcoin and assuming you know the dates (i dont know them but i remember tracking it at the time) and youd notice that bitcoins were 15$ each at the time. within a week or a month bitcoins value started to go up on a nice curve... then a boom.. a bust.. an oscillation.. and here we are at.. 240$ each. the value of bitcoin has since more then doubled which more then makes up for the decrease in reward.

(Ex. with simple made up numbers)
lets say the block reward is 50BTC  and that each BTC is worth 1$. (ignoring fees for simplicity) that would be 50$.
50BTC * 1$ each = 50$

If you drop the block reward to 25BTC and your profit stays the same at 50$, then some quick math and you find out that you would need a BTC value of 2$ each to maintain the balance. The value would have to double.
50$ / 25BTC = 2$ each


Anyway... thats about the best i can explain it and dont take offense if its overly simple ^^;

in regards to the blocksize limit, its going to go up and there is nothing wrong with that, though we do need blockchain pruning which will keep the blockchain allot smaller. in regards to mining profitability, the way it works is that its always just bearly profitable while the variables are stable. but as you well know, with ASICs emerging the entire system is anything but stable atm.

I Hope this helped.
legendary
Activity: 1078
Merit: 1003
How would mass adoption of coinjoin type txs further reduce block size needs? Would it at all?

It's a very small, single-digit, improvement, about 9 bytes per transaction.

Heh was hoping for more, I guess we are waiting for Bitcoin 2.0 to emerge which solves this issue then.
legendary
Activity: 1120
Merit: 1152
How would mass adoption of coinjoin type txs further reduce block size needs? Would it at all?

It's a very small, single-digit, improvement, about 9 edit: 6 bytes per transaction.
legendary
Activity: 1078
Merit: 1003
See: Average block size chart

Since implementing the "dust rule", block size has been pretty steady; I would guess we won't hit the 1MB hard limit for another two years, but that is just a guess, we could easily hit it sooner or later than that.


How would mass adoption of coinjoin type txs further reduce block size needs? Would it at all?
legendary
Activity: 1120
Merit: 1152
This is something that came up in a speculation discussion thread I'm involved in, and I was hoping someone with better knowledge of the technical aspects of bitcoin could clear things up for me.

As I understand it, bitcoin needs to have exponentially greater number of transactions in just a few years in order to keep miners interested as the block reward continues to halve, particularly as the miner fee gets smaller in the face of a rising price of Bitcoin. However, if there is a 1mb block size hard limit, it would seem that something's got to give.

Transaction fees aren't fixed - it's a supply and demand auction for a limited resource. Transactions definitely do not have to increase in number to keep miners interested - it'd be just as easy for fees to increase. An oft-quoted possible future scenario is for Bitcoin to have a trillion dollar market cap, and 0.5% of that market cap going to miners every year in the form of transaction fees - $5 billion a year. That leads to roughly $20/tx, similar to wire orders. (obviously the blockchain will be used for settlement and people's savings in such a scenario) Interestingly, this is almost identical to what transactions currently cost, in terms of inflation. IMO this says a lot about how Bitcoin is used primarily as an investment, rather than as a way to pay people over the internet...

What's good about such a scenario is it's guaranteed that nearly all the money going to transaction fees will go directly to the hashing power that keeps the network secure, and it's guaranteed that mining will be something you can do anonymously and Bitcoin stays decentralized, at the core anyway. You'd need a lot of off-chain stuff, or alt-coins or who knows what else, for low-value transactions, but it's not a model that much different than what people do today. (look at how most Bitcoin users trust central services like blockchain.info and coinbase with their funds %100) If markets demand it, you can get pretty good auditing and fraud prevention and punishment. It's a pretty safe option, but it's not particularly sexy. It's also an option that happens by default: inputs.io, coinbase and others have already popped up with their various solutions and it appears that majority of Bitcoin transactions already happen off-chain anyway. (the figures inputs.io gave me alone a few months ago for example was nearly 50:50 by value, and a clear majority in terms of number of transactions)

One problem with off-chain stuff is it's easy for it to become too good: if the market finds the centralized and decentralized ways of doing them prove secure enough, that'll undercut mining income by shifting more and more transactions off the blockchain entirely.

You can also raise that limit. The problem here is that the higher the limit is, the more money goes to infrastructure like internet connections, and even worse it makes highly centralized pools more profitable than more decentralized mining. (smaller pools, solo, etc) At the extreme is the frankly insane suggestions to just remove the limit at all and let miners decide, which inevitably lead to dirt-cheap transactions, where the majority of the cost goes to infrastructure rather than hashing power. On the other hand, no-one wants to be the guy deciding the limit - the best we've got is suggestions to have all Bitcoin owners vote on the limit.

But raising definitely has advantages too, and given the inflation reward we'd probably get away with it for another 10 or so years before the inherent economic problems catch up with us.

It's worth remembering that with clever cryptography and some backwards-compatible changes to the core protocol we can definitely raise the limit and still be able to effectively audit the blockchain, at least as long as miners co-operate. We may even be able to retrofit the ability to mine in a decentralized, low-bandwidth, low infrastructure manner, although while that's technically possible, it probably needs very controversial economic changes to really work properly. Right now the consensus is we need to do something, beyond that though there isn't much agreement. (there is not consensus to raise the blocksize, at least not in the way the general public thinks, and there also is not consensus that even if the limit should be raised, raising it will be politically possible)

Anyway, look at it this way: long-term Bitcoin will probably fail eventually due to poorly designed incentives for mining, if not due to some other reason. But another, better designed, crypto-coin can take it's place. In the meantime we can learn a lot from Bitcoin, lessons that'll help design the next generation of crypto-coins.
donator
Activity: 1464
Merit: 1047
I outlived my lifetime membership:)
i never quite understood why you need the who block chain and not just last part that is large enough to make it hard enough not to duplicate. All unmoved coins beyond this point could just be complied into a continuous space, sort like defraging a HD.....or is that the size of the bloc chain already?

You only need to keep an entire copy of the Blockchain if you want complete trustlessness (For example, if you cannot trust anyone supply you with the last n number of blocks). This doesn't make a lot of sense given the cost for most users.

The only reason there is a block size limit in the first place is to protect the Blockchain from spam. That's how it was set up originally and that limit will eventually increase. That limit isn't truly part of the Bitcoin protocol per se. There are some who wanted to spam the Blockchain considerably and wanted The block size limit to remain fixed in place so as to drastically increase the transaction fees. I don't think anyone holds that opinion anymore. I think we all, more or less, recognize that a Bitcoin is only as valuable as the size of the transaction network behind it.
Pages:
Jump to: