User: Password:
|
|
Subscribe / Log in / New account

How does this scale?

How does this scale?

Posted Nov 11, 2010 18:52 UTC (Thu) by droundy (subscriber, #4559)
Parent article: Bitcoin: Virtual money created by CPU cycles

What I fail to understand from this article is how this scales with number of clients and number of transactions. Since *every* new transaction worldwide has to go into each new block, and blocks are purely serial, it's hard to imagine how this could scale to anything close to "real money".

Just think about the number of transactions per second we read about NASDAQ handling, and then consider how often you buy stock versus how often you buy... anything. And then consider that BTC is touted as being more useful for micropayments, since smaller values are allowed, which would mean that even *more* transactions are needed.


(Log in to post comments)

How does this scale?

Posted Nov 11, 2010 19:05 UTC (Thu) by n8willis (subscriber, #43041) [Link]

Believe me, I would have addressed that if there was an explanation from the Bitcoin project about how it plans to handle scaling. The documentation is pretty spread out on the wiki, and even after reading the forums, the potential for a scaling problem *seems* to be just another one of the areas in which the system would benefit from a thorough third-party review from domain experts.

I do know that clients relay what amount to transaction-id-hashes to each other to propagate messages, rather than full transaction logs, which is presumably one way they attempt to reduce overhead in the protocol.

The "network" wiki page is a pretty good starting point for digging in to this stuff, but like I said above, the overall picture of how the network works is kinda scattered out.

Nate
PS - I guess it's also plausible that users would not regard it as mandatory that the *entire* network validate a transaction before they consider it a done deal; as time goes on you accumulate more and more "confirmation" messages for each transaction you've conducted. But it's technically valid as soon as a block that includes it is solved and becomes part of the block chain.

How does this scale?

Posted Nov 12, 2010 0:28 UTC (Fri) by jgarzik (subscriber, #8364) [Link]

Currently the block size limit is 1MB, which limits us to 463 transactions/minute. See http://www.bitcoin.org/smf/index.php?topic=1314.0 and http://www.bitcoin.org/smf/index.php?topic=1347.msg15366#...

This limit can be raised in the future; it currently exists to avoid DoS.

As block size increases, transaction fees increase.

It is presumed that the system will scale up with dedicated P2P nodes processing blocks, and the vast majority of bitcoin users using a website or lightweight client that simply sends and receives transactions into the network.

How does this scale?

Posted Nov 12, 2010 5:22 UTC (Fri) by JohnLenz (subscriber, #42089) [Link]

I don't think you understand how far you must scale. From here, it looks like Visa handled an average of 8,442 transactions per second in 2008 and built a new datacenter to handle up to 10,000 transactions per second. Also from the article, Visa handles only about 33% of all transactions.

So using your numbers, 1 MB block gives about 7.71 transactions per second. Scaling from 7.71 transactions per second to 8,000 per second? So just to handle the volume visa saw in 2008, each block must be over one gigabyte? And this is only the US. By its nature, there is only a single bitcon currency for the whole world so 8,000 transactions per second is on the far low end.

How does this scale?

Posted Nov 12, 2010 8:31 UTC (Fri) by jgarzik (subscriber, #8364) [Link]

The bitcoin community is well aware of Visa and Paypal transaction rates.

A gigabyte every ten minutes is quite doable for modern machines and networks, and even more so in an imaginary future where bitcoin transaction rates equal Visa transaction rates.

At those rates, it's not hobbyists running the P2P network anymore; from the transaction fees alone, you're looking at competition among professional players with major investments in the network.

How does this scale?

Posted Nov 12, 2010 21:30 UTC (Fri) by droundy (subscriber, #4559) [Link]

I'm a bit skeptical. You're talking about 1.7M per second that needs to be sent to every client on the network, right? Since as I understand, each client needs to examine all the blocks to verify the integrity of the chain. And can clients really afford to compute the hash of a couple of megabytes per second? Or would most clients just trust someone else to verify the integrity of the bitcoin system?

How does this scale?

Posted Nov 13, 2010 0:34 UTC (Sat) by jgarzik (subscriber, #8364) [Link]

Drawing an analogy to the Gnutella network...

At Visa/Paypal transaction rates, most bitcoin clients will be leaf nodes, that send and receive transactions, but don't bother with the block chain.

Beefy ultrapeer nodes would be the ones storing transactions, building blocks, monitoring and verifying the block chain, etc. They are incentivized to do this with transaction fees, which non-generating leaf nodes would not receive.

How does this scale?

Posted Nov 19, 2010 22:26 UTC (Fri) by creighto (guest, #71377) [Link]

If the Bitcoin network ever reaches a level even close to that of Visa, then there will be numerable finacial institutions with a clear, vested interest in the security of the system; who are very likely to run dedicated servers (if not entire server farms) to keep the system secure and competing institutions honest. It will still be possible for an individual to dedicate his own resources to set up such a server, but most users will not need to participate.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds