Pages:
Author

Topic: Why does there need to be a limit on amount of transactions? - page 2. (Read 3783 times)

donator
Activity: 1218
Merit: 1079
Gerald Davis
That math is valid and the CPU really isn't the bottleneck.  If it ever became a bottleneck the use of OpenCL GPU accleration or even dedicated ASIC processors capable of highspeed ECDSA verification and SHA256 hashing are certainly a possibility (eventually the "easy money" for producing ASIC miners will dry up).  That still may happen anyways to reduce power consumption, heat, and processor load (much like many servers use dedicated ASICS for SSL or TCP offloading).

The bottleneck is more in this order (from most critical to least critical):
bandwidth (for residential connections the upload segment tends to be rather constrained)
memory (to quickly validate txs & blocks the UXTO needs to be kept in memory, sure pulls from disk are possible and ... panfully slow)
storage (as much as people worry about storage it is a free market unlike residential last mile and HDD capacities already have a massive "headstart")
cpu (with moore's law I don't see this ever being a problem but as pointed out non CPU solutions are possible)

sr. member
Activity: 294
Merit: 250
This bull will try to shake you off. Hold tight!

As long as an ordinary personal computer can deal with it, it will remain decentralised. But since ordinary personal computers go up in power exponentially, so can the blocksize limit/amount of transactions go up exponentially, right?

The personal computer's performance did not get any significant gain during recent years and it is already a pain to download the whole blockchain with an average block size less than 256KB. The bitcoin client's setup time is already magnitudes higher than it was 2 years ago but you won't have magnitudes higher harddrive capacity and network bandwidth in 2 years

This article says the inverse, that the amount of transactions can still go up dramatically for a standard home pc:
https://en.bitcoin.it/wiki/Scalability

"As we can see, this means as long as Bitcoin nodes are allowed to max out at least 4 cores of the machines they run on, we will not run out of CPU capacity unless Bitcoin is handling 100 times as much traffic as PayPal"

"Let's assume an average rate of 2000tps, so just VISA. ... That means that you need to keep up with around 8 megabits/second of transaction data. ... This sort of bandwidth is already common for even residential connections today, and is certainly at the low end of what colocation providers would expect to provide you with."

What do you think of the arguments and calculations presented?
legendary
Activity: 3710
Merit: 1586
The average Joe is not running a qt client.

Then what are they using? I think most people google for bitcoin and end up on bitcoin.org where they see this:

Quote
    Bitcoin-Qt is an app you can download for Windows, Mac, and Linux.
    Bitcoin Wallet for Android runs on your phone or tablet.
http://bitcoin.org/en/choose-your-wallet

So yeah they end up using bitcoin-qt. Then they complain that the blockchain download is taking ages Smiley I know that's exactly what happened to me.
hero member
Activity: 772
Merit: 501
Quote from: johnyj
The VISA transaction fee is very expensive, but that won't affect the value of USD. Same for bitcoin, the blocksize limit is there to ensure the value of bitcoin (decentralized to maximum), but if transaction cost is high, people will just stop use it to do small transactions

Bitcoin's transaction fee being low is one of its major advantages over the dollar, which has to use relatively expensive third party payment processors like Visa for digital transactions.

If bitcoin transactions become too expensive for most uses, then bitcoin will be just like fiat currency, where you are forced to use large private third party intermediaries, like Visa, for transaction processing, who can hike up their fees because they are the only processors with large enough private networks to be useful.
legendary
Activity: 1988
Merit: 1012
Beyond Imagination

As long as an ordinary personal computer can deal with it, it will remain decentralised. But since ordinary personal computers go up in power exponentially, so can the blocksize limit/amount of transactions go up exponentially, right?

The personal computer's performance did not get any significant gain during recent years and it is already a pain to download the whole blockchain with an average block size less than 256KB. The bitcoin client's setup time is already magnitudes higher than it was 2 years ago but you won't have magnitudes higher harddrive capacity and network bandwidth in 2 years


I think that is a strong argument against bitcoin that initially came up for me. However this is counterbalanced by people always want to receive sound money in the first place.  Sound money like standardised gold and silver coins, came into widespread usage, not because people insisted on spending those, but because people insisted on receiving those.

An interesting view... I suppose that who have the money decide if they want to spend. Of course merchants will give some discount for bitcoin payment, maybe it will work. Then we back to the already-too-big blockchain problem


Thanks for explaining that scarcity element applied to amount of transactions. I don't follow that reasoning though. Like many others I think the value of the currency goes up thanks to scarcity of amount of bitcoins, but goes down if there is a scarcity of amount of transactions. People will adapt by using another currency for smaller transactions, lowering the value of bitcoin and bitcoins.

The VISA transaction fee is very expensive, but that won't affect the value of USD. Same for bitcoin, the blocksize limit is there to ensure the value of bitcoin (decentralized to maximum), but if transaction cost is high, people will just stop use it to do small transactions


legendary
Activity: 1106
Merit: 1004
This is always a political and economic discussion instead of a technical one. In one word: Scarcity create value, aboundant destroy value, as a currency you want it to have highest value possible, so transaction capacity should be scarce, people will adjust their behavior accordingly

What?? You're mixing the value of the currency with the value (cost) of transacting it.

The scarcity of bitcoin is set on stone: 21M units. No more.

Making Bitcoin transactions more scarce - thus more expensive - is more likely to reduce the value of the currency due to its reduced utility (if it's more expensive to transfer it around, it's certainly less useful).
legendary
Activity: 1106
Merit: 1004
caveden I think you misunderstood I wasn't talking about miners but full nodes.  

Indeed I thought you were talking about miners. I don't view a smaller number of full nodes as a problem. A single honest full node is enough to spot any attempt of fraud. There'll always be more multiple honest full nodes running.

If eventually the network handles 100,000 tps but the demands on a full node are so high that only the largest of the largest of companies operating in massive datacenters can run a full node then you might as well call those "full nodes" .... banks. 

Come on. You know you'll never need a "largest of the largest company operating in massive datacenters" to run a full node.
100k tps? What's that? Visa apparently operates at 4tps according to the scalability page. How could Bitcoin possibly outgrow visa by 25 times in any reasonable time?

The world has ~7 billion people. A day has 86,4k seconds. With 100k tps, that'd be 8,64 billion transactions per day if I'm not mistaken. It's more than 1 transaction per person in the world per day (even if we consider population growth, it'd still be close to one transaction per person per day at least). I mean... Bitcoin would already be the king of currencies if it ever reach such amounts. It'd be something so freaking important in the world, that you can rest assured there would be more than enough honest nodes running. Remember: one single honest node can spot fraud (like breaking the 21M limit for ex.). And also, by that time, we can't even imagine how powerful hardware will be.

The idea that miners would soft fork blocks which are "too big" is equally disturbing.

Why disturbing? Btw, that's not something that can be prevented by the protocol.

 First of all it is unlikely it would work.  Nobody is going to make a block larger than what all but the tiniest fraction of miners says it "too big".  If 10% of miners say they will soft fork blocks over 5MB only an idiot miner would make a block larger than 5MB.  You are taking a 10% orphan chance by making the block even a few bytes over the limit.

Yes, the blocksize would only be increased if there's a large consensus, or if the monetary incentives to take more transactions outcome the risks/losses from eventual "orphanage". In this last case, that's supply adapting to strong demand.
See, market coordination. Wink

 Another element is that Bitcoin works on the concept (at least in theory) that miners are independent actors.  If various miners will soft fork at various levels you have created a disincentive to remain independent.  You NEED to know what all your peer miners are doing.  We shouldn't be building a system where independent miners (the desired state) is at a disadvantage to miners in coordination.

It depends how you see it. Today there's a protocol rule imposing a 1Mb rule. That's 100% coordination, everybody follows the same rule. By dropping it, you allow a bit more of "independence". Some miners may try a limit slightly larger.

It's unavoidable: there must some planning concerning what's a "too big block", because otherwise the network is vulnerable to flooding. I personally prefer the "planning by the many", and that's miners coordinating what's reasonable and what's not. They will tend to adapt to actual demand. Attempts of "central planning" (elaborating some formula etc) might not produce ideal results, and, as noted yourself, are difficult and error-prone.

 Lastly if various miners do have differing soft for levels than an attacker can exploit that to degrade the effective hashrate of the network.  This would open the network to a 51% style attack with less than 51% of hashpower.  What matters is effective haspower (i.e. hashpower applied to the longest chain).  If miner X has a soft fork level of x MB and miner y has a soft fork level of y then by planting various blocks of differing size the attacker could fragment the good miners into working on competing chains.  Anytime miners are on multiple chains the network is only as strong as the hashpower on the chain with the most hashpower.  Note miner in this case is the entity (pool for most hashers) that is making the strategic decision of what chain to extend and what tx to include.  Hash processors aren't truly miners in that they are already following an authority (the pool server).

If I understand it correctly you're talking about a race attack with the intention to double-spend some payments, not a total overtake. Because an overtake wouldn't work out this way in the long run. It might give some higher chances of a race attack, but I doubt it'd be anything meaningful. By the way, I'm not sure I get how this attack would take place...
Say, I generate a block that I know somehow it will hit the soft limits of 50% of the network (in hashpower). That means I break the network, half of it is mining on top of my block, the other on the previous. Now if I have >25% of the network's hashpower (a lot!) I can outpace any of the competing chains. But the thing is that, whatever chain I choose not to mine on will likely outpace the other. Even if it's the chain with the large block, eventually it will be accepted by those who initially refused it. It would still be very difficult to get any double-spend on anything with a meaningful number of confirmations. High value transactions always should always wait for significant amount of confirmations. And double-spending small transactions is not worth the investment.
sr. member
Activity: 294
Merit: 250
This bull will try to shake you off. Hold tight!

Why the wink? Smiley Yes I saw that but there is a strong argument against this. As long as an ordinary personal computer can deal with it, it will remain decentralised. But since ordinary personal computers go up in power exponentially, so can the blocksize limit/amount of transactions go up exponentially, right?


VISA is transferring inflative fiat money for the purpose of spending, people will always spend inflative currency at the first place, so even bitcoin's network are capable of handle huge amount of transaction per second, it still will seldom be used to buy milk everyday

I think that is a strong argument against bitcoin that initially came up for me. However this is counterbalanced by people always want to receive sound money in the first place.  Sound money like standardised gold and silver coins, came into widespread usage, not because people insisted on spending those, but because people insisted on receiving those.


This is always a political and economic discussion instead of a technical one. In one word: Scarcity create value, aboundant destroy value, as a currency you want it to have highest value possible, so transaction capacity should be scarce, people will adjust their behavior accordingly

Thanks for explaining that scarcity element applied to amount of transactions. I don't follow that reasoning though. Like many others I think the value of the currency goes up thanks to scarcity of amount of bitcoins, but goes down if there is a scarcity of amount of transactions. People will adapt by using another currency for smaller transactions, lowering the value of bitcoin and bitcoins.
hero member
Activity: 727
Merit: 500
Minimum Effort/Maximum effect

Scarcity only matters to the extent that it contributes to value. The value of the currency comes from the demand to supply ratio. Demand will be limited if transactions are limited. The supply is 21 million BTC regardless of how many transactions are allowed, so more transactions = more demand for each unit of BTC.


Will you change a bank just because one bank opens 24/7 and another bank open only 4 days a week? I guess the priority should be based on the security and the interest that banks provide. Currently bitcoin bank pay you an interest of 1000%+ per year, and you still complain that you have to wait in line to withdraw Wink

The value of a currency comes from trust and consensus, not supply and demand, this is the most significant difference between money's valuation and anything else's valuation. The demand for money is always endless, given enough trust for that money



Very true we have conceded to value this currency... could it be that the exchanges are hijacking it's value? we have had speculators flooding the market this year, but wow! have you seen how steady the price has been across all the exchanges lately?

so how do we concede to value Bitcoin then, rationally and backed by science? instead of scarcity?

The fees as well, their is a market on fees... but more importantly it seems to be guided by luck. Maybe your lucky and you get a ASIC miner to take care of your transaction instead of a efficient FPGA miner.

and what about the ecosystem from the other alt coins? how does that change it's valuation?

the factors for Bitcoin are complex and deep, but very entertaining to discuss. Smiley

I don't have answered just questions. Grin
legendary
Activity: 1988
Merit: 1012
Beyond Imagination

Scarcity only matters to the extent that it contributes to value. The value of the currency comes from the demand to supply ratio. Demand will be limited if transactions are limited. The supply is 21 million BTC regardless of how many transactions are allowed, so more transactions = more demand for each unit of BTC.


Will you change a bank just because one bank opens 24/7 and another bank open only 4 days a week? I guess the priority should be based on the security and the interest that banks provide. Currently bitcoin bank pay you an interest of 1000%+ per year, and you still complain that you have to wait in line to withdraw Wink

The value of a currency comes from trust and consensus, not supply and demand, this is the most significant difference between money's valuation and anything else's valuation. The demand for money is always endless, given enough trust for that money

donator
Activity: 1466
Merit: 1048
I outlived my lifetime membership:)
Can the client not be updated now (or soon) to handle more TPS and larger block sizes but not yet create them?  Leave this change in place until needed - 1 or 2 years.  Then when miners actually implement larger block sizes most people will already have a client that can deal with it.

Yes...that's more or less what satoshi suggested.
donator
Activity: 1466
Merit: 1048
I outlived my lifetime membership:)
If Bitcoin is to achieve mass adoption, the protocol will need to be handle way more than 7 tps. This change would be better performed sooner rather than later. The userbase is growing, and it will only become increasingly difficult to get everyone to update to the latest client with time.

You can't simply change the client.  The existing protocol is incompatible with a larger blocksize.  Period.  You can't force that protocol to cease to exist.  Today we call that protocol Bitcoin.  The only option is a hard fork, an incompatible version of the protocol but that means the existing protocol still exists as well.  Essentially two incompatible Bitcoins.   The only viable solution is before making a hard fork you have such overwhelming support that a super super super majority of all users (not just miners but merchants, exchanges, service providers, full nodes, and active users) switch that the old fork dies off.  If you don't one of two things will happen:
a) most people won't leave and your forked Bitcoin will just die off
OR
b) both forks gain significant backing and people end up with differing wealth of both chains.  Both "camps" have a vested interest in their chain surviving so you end up with chaos.  Two Bitcoins both calling themselves Bitcoin but completely incompatible to each other.  (Yes this is the bad news scenario which is why hard forks should never be considered trivial changes).

We did just hard fork a few days ago...not sure many noticed Smiley  It _can_ be done relatively seamlessly.
legendary
Activity: 1400
Merit: 1013
I just thought of another reason to keep the block size limited.

Perhaps it's true that without a protocol limit the blockchain would grow to the point that even the most well funded datacenters would find that keeping the entire history all the way back to the Genesis Block was unfeasible.

That by itself wouldn't be a problem for Bitcoin - the only essential data in the blockchain is the UTXO set, plus enough recent history to handle a reorg event. If the blockchain got too large too quickly it would grow to a point at which pruning becomes essential and nobody is able to keep a permanent record of every transaction that has ever happened since 2009.

That would be wonderful for privacy and could be implemented with a negligible reduction in network security. I can understand why some people would be opposed to that.
hero member
Activity: 772
Merit: 501
Have OP watched this: http://www.youtube.com/watch?v=cZp7UGgBR0I  Wink

This is always a political and economic discussion instead of a technical one. In one word: Scarcity create value, aboundant destroy value, as a currency you want it to have highest value possible, so transaction capacity should be scarce, people will adjust their behavior accordingly

VISA is transferring inflative fiat money for the purpose of spending, people will always spend inflative currency at the first place, so even bitcoin's network are capable of handle huge amount of transaction per second, it still will seldom be used to buy milk everyday

Scarcity only matters to the extent that it contributes to value. The value of the currency comes from the demand to supply ratio. Demand will be limited if transactions are limited. The supply is 21 million BTC regardless of how many transactions are allowed, so more transactions = more demand for each unit of BTC.

And that there will continue to be a difference in security between SPV and "full" nodes.

Exactly.
hero member
Activity: 727
Merit: 500
Minimum Effort/Maximum effect
so in the end the 1mb limit is a factor in the evolution of the Bitcoin ecosystem.

We want as many people as possible to participate as possible with as little access as they have, so little bandwidth needed for a node to be run on a cell phone or a computer with a dial up connection, even making it effective to run over TOR or a mesh network effectively.

Maybe this limit creates better compression protocols for the transactions in the future? making them smaller squeezing more transactions into a block: Turning the average T from .36kb to .10 kb much easier for the network to send and increasing over all speed as well.

It can also bring the issue forward about the status of the network, giving it time for high speed mesh networks to be built or vpn corridors to be assembled, targeting nodes with high speed internet offers, etc. have you guys heard of hyperboria? that can be a solution as well free internet access to bypass the cost of running a node.

The economic aspects of the Bitcoin experiment could be enhanced by the limit as people begin to saturate not only the block chain limit but the 24 hour cycle so that no one without a fee can squeeze in, transaction acceptance by market decision, that aspect of the experiment is still left to be truly observed. The limit after all is 400,000 transaction per day, or 144,000 if we consider all the bloat from dust transactions. I do like satoshi dice by the way, that may be another target for optimisation Tongue

who knows how else a discussed and debated limit can create change.

What other limits does Bitcoin have?

legendary
Activity: 1988
Merit: 1012
Beyond Imagination
Have OP watched this: http://www.youtube.com/watch?v=cZp7UGgBR0I  Wink

This is always a political and economic discussion instead of a technical one. In one word: Scarcity create value, aboundant destroy value, as a currency you want it to have highest value possible, so transaction capacity should be scarce, people will adjust their behavior accordingly

VISA is transferring inflative fiat money for the purpose of spending, people will always spend inflative currency at the first place, so even bitcoin's network are capable of handle huge amount of transaction per second, it still will seldom be used to buy milk everyday
legendary
Activity: 1834
Merit: 1019
You'd think with all this processing power we could harness it a -bit- more efficiently
legendary
Activity: 1400
Merit: 1013
This assumes 16 peers, where I think the average is now 8, bandwidth not getting cheaper, and SPV clients not paying full nodes microamounts for transaction data.
And that there will continue to be a difference in security between SPV and "full" nodes.
hero member
Activity: 772
Merit: 501
Small companies can afford that. This assumes 16 peers, where I think the average is now 8, bandwidth not getting cheaper, and SPV clients not paying full nodes microamounts for transaction data.
legendary
Activity: 1806
Merit: 1003
Yes, but the longer we wait, the harder it's going to become to gather overwhelming support. You think the average joe is going to care about this?

The average Joe will just see "There is a update available for your Bitcoin Wallet" and just install it. I would rather worry that this will make nefarious changes easier.

The average Joe is not running a qt client.
Pages:
Jump to: