Bitcoin Forum
April 25, 2024, 01:28:06 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 »  All
  Print  
Author Topic: Why does there need to be a limit on amount of transactions?  (Read 3736 times)
RationalSpeculator (OP)
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250

This bull will try to shake you off. Hold tight!


View Profile
May 24, 2013, 01:07:22 PM
 #1

I know this subject has been beaten to death but I still don't understand the technicals.

I would think that amount of transactions can go up with personal computer power. Since personal computer power grows exponentially, can amount of transactions also not increase exponentially?  

I also don't understand this expression:
"The block size is an intentionally limited economic resource, just like the 21,000,000-bitcoin limit. Changing that vastly degrades the economics surrounding bitcoin, creating many negative incentives. - Jeff Garzik"

Any help is appreciated.
1714008486
Hero Member
*
Offline Offline

Posts: 1714008486

View Profile Personal Message (Offline)

Ignore
1714008486
Reply with quote  #2

1714008486
Report to moderator
1714008486
Hero Member
*
Offline Offline

Posts: 1714008486

View Profile Personal Message (Offline)

Ignore
1714008486
Reply with quote  #2

1714008486
Report to moderator
1714008486
Hero Member
*
Offline Offline

Posts: 1714008486

View Profile Personal Message (Offline)

Ignore
1714008486
Reply with quote  #2

1714008486
Report to moderator
"If you don't want people to know you're a scumbag then don't be a scumbag." -- margaritahuyan
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714008486
Hero Member
*
Offline Offline

Posts: 1714008486

View Profile Personal Message (Offline)

Ignore
1714008486
Reply with quote  #2

1714008486
Report to moderator
Akka
Legendary
*
Offline Offline

Activity: 1232
Merit: 1001



View Profile
May 24, 2013, 01:32:41 PM
 #2

I know this subject has been beaten to death but I still don't understand the technicals.

I would think that amount of transactions can go up with personal computer power. Since personal computer power grows exponentially, can amount of transactions also not increase exponentially?

There is a hard limit in the protocol that doesn't allow for blocks bigger than 1 MB.

Nodes would not accept Blocks that are bigger than 1 Mb and reject it. Changing this would require a hard fork, meaning all current version would not accept blocks of the new version as valid and therefore forking the network between a old version Blockchain and a new version Blockchain.

I also don't understand this expression:
"The block size is an intentionally limited economic resource, just like the 21,000,000-bitcoin limit. Changing that vastly degrades the economics surrounding bitcoin, creating many negative incentives. - Jeff Garzik"

Any help is appreciated.

Meaning that changing that limit would affect Bitcoin in the same way as changing the 21 Mil Coin limit.

Jeff seems to have the opinion that "there will never be more than ~7 transactions per second" is as much a core principle of Bitcoin as "there will never be more then 21 Mil bitcoins" and changing either on of this numbers would destabilize Bitcoin and have people to loose confidence in it and maybe have some other negative effects.

All previous versions of currency will no longer be supported as of this update
vokain
Legendary
*
Offline Offline

Activity: 1834
Merit: 1019



View Profile WWW
May 24, 2013, 01:43:07 PM
 #3

I know this subject has been beaten to death but I still don't understand the technicals.

I would think that amount of transactions can go up with personal computer power. Since personal computer power grows exponentially, can amount of transactions also not increase exponentially?

There is a hard limit in the protocol that doesn't allow for blocks bigger than 1 MB.

Nodes would not accept Blocks that are bigger than 1 Mb and reject it. Changing this would require a hard fork, meaning all current version would not accept blocks of the new version as valid and therefore forking the network between a old version Blockchain and a new version Blockchain.

I also don't understand this expression:
"The block size is an intentionally limited economic resource, just like the 21,000,000-bitcoin limit. Changing that vastly degrades the economics surrounding bitcoin, creating many negative incentives. - Jeff Garzik"

Any help is appreciated.

Meaning that changing that limit would affect Bitcoin in the same way as changing the 21 Mil Coin limit.

Jeff seems to have the opinion that "there will never be more than ~7 transactions per second" is as much a core principle of Bitcoin as "there will never be more then 21 Mil bitcoins" and changing either on of this numbers would destabilize Bitcoin and have people to loose confidence in it and maybe have some other negative effects.

This is per client?
herzmeister
Legendary
*
Offline Offline

Activity: 1764
Merit: 1007



View Profile WWW
May 24, 2013, 01:50:30 PM
 #4

just leaving this here

We can phase in a change later if we get closer to needing it.


https://localbitcoins.com/?ch=80k | BTC: 1LJvmd1iLi199eY7EVKtNQRW3LqZi8ZmmB
Akka
Legendary
*
Offline Offline

Activity: 1232
Merit: 1001



View Profile
May 24, 2013, 01:53:36 PM
 #5

This is per client?

Sorry, I don't know what you mean?

1. Is this a hard cap in the client?

Yes, the current client would not acceppt blocks > 1 MB as valid and reject them.

2. Are the ~7 Transactions per second per client.

No, that's the (rough) total number of transactions that can be included in a block. If there would be more some would never be confirmed, no matter what fee they would pay.

But this topic has really beaten to death. Read this thread if you want more information about this: https://bitcointalk.org/index.php?topic=140233.0

All previous versions of currency will no longer be supported as of this update
lexxus
Sr. Member
****
Offline Offline

Activity: 309
Merit: 250


View Profile
May 24, 2013, 01:57:26 PM
 #6

2. Are the ~7 Transactions per second per client.

No, that's the (rough) total number of transactions that can be included in a block. If there would be more some would never be confirmed, no matter what fee they would pay.


Bitcoins for payments? You disapoint Visa guys. VisaNet processed an average of almost 11,000 transactions a second during the busiest minute of the year.
bg002h
Donator
Legendary
*
Offline Offline

Activity: 1463
Merit: 1047


I outlived my lifetime membership:)


View Profile WWW
May 24, 2013, 02:23:12 PM
 #7

I'm still vetting the history on this, but, I believe the 1 MB limit was originally set arbitrarily as a way of protecting the block chain from attack. It was never intended to be a limit on real economic activity.

That said, from a technical perspective, it's easier for the network to deal with 7 tps (transactions per second) than 7000 tps. With the way the block chain is stored now, 7000 tps would make for some rather big blocks and rapid block chain growth. I'm uncertain how much magic can be invented by our mostly unpaid devs to implement the technically challenging pruning and compression that's oft written about (but it's a boat load of work and would cost a fortune in the real world).  

Anyhow, I view Bitcoin's value as paralleling the total # of tps. It's a relationship that's held generally true. Those who have bitcoins stand more to gain than those who don't by raising the max block size, IMHO. Those with no or few Bitcoins can make more money by devaluing Bitcoin by limiting the max block size and creating their own Bitcoin-like network for off chain transactions.

To me, it's just a question of what do you want to be more valuable, Bitcoin or off-chain-processors. I also believe the limited resource argument is FUD. Miners set the real limit no matter what the max block size is (well, not above it!).

Hardforks aren't that hard. It’s getting others to use them that's hard.
1GCDzqmX2Cf513E8NeThNHxiYEivU1Chhe
Yuusha
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
May 24, 2013, 02:26:11 PM
 #8

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.
franky1
Legendary
*
Offline Offline

Activity: 4200
Merit: 4441



View Profile
May 24, 2013, 02:32:05 PM
 #9

and now reveals why bitcoin mainstreaming wont happen anytime soon.

1. starbucks does more then 7 transactions a second.. add on the transactions of walmart.. instantly with just 2 major retailers bitcoin cannot cope.

2. buying a $1 loaf of bread with a visa card would cost the customer $1 and the retailer would get 99c. with bitcoin he would only get 93c.. why?
well the transaction fee of 0.0005 just to get a fast confirm would cost 6c then add bitpay 1% fee to convert to fiat.

3. as bitcoins fiat value increases gavin andressens ignore dust feature will also add more costs onto small transactions.

so if you want to buy a drink, sandwich or coffee at a vending machine. don't look at bitcoin for your solution.

I DO NOT TRADE OR ACT AS ESCROW ON THIS FORUM EVER.
Please do your own research & respect what is written here as both opinion & information gleaned from experience. many people replying with insults but no on-topic content substance, automatically are 'facepalmed' and yawned at
oakpacific
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1000


View Profile
May 24, 2013, 02:37:07 PM
 #10

I think the blocksize limit is the ultimate hard proof that Bitcoin is not a Ponzi scheme-when you buy bitcoins, you actually invest on the infrastructure of the network, because a decentralized payment network and a permanent, always available tamper-proof database is useful to people, people are willing to pay miners to run it, if the upkeep is not enough to provide unlimited access to blockchain for everyone, the resource will then have to be rationed, which gives us the 7tps limit-my 2 cents on Jeff's words.

A lot of people are complaining that the Bitcoin network cannot scale to high processing capability, but you can't have it both ways, a system cannot be low-cost, highly-decentralized, and have high-availability all at the same time.

https://tlsnotary.org/ Fraud proofing decentralized fiat-Bitcoin trading.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
May 24, 2013, 02:42:15 PM
 #11

and now reveals why bitcoin mainstreaming wont happen anytime soon.

1. starbucks does more then 7 transactions a second.. add on the transactions of walmart.. instantly with just 2 major retailers bitcoin cannot cope.

The federal wire network processes about $1.6 quadrillion USD worth of transactions annually and it works out to roughly 7tps.  Not saying the cap can't be raised but the idea that all economic transactions must be on blockchain or bitcoin "fails" is a dubious binary distinction.  It is also possible the limit will be raised but there still will be a limit (as opposed to unlimited block size).

Quote
2. buying a $1 loaf of bread with a visa card would cost the customer $1 and the retailer would get 99c. with bitcoin he would only get 93c.. why?

Actually VISA routinely charges $0.30 PLUS 2% so that retailer selling a loaf of bread (not sure what bread is only $1) would get ~$0.68.  The 0.0001 (it was lowered in 0.8.2) min tx fee is just to avoid spam.  The market will decide the price of fast confirmations.  Also low value tx could be processed off blockchain so the merchant potentially could end up more.

Quote
3. as bitcoins fiat value increases gavin andressens ignore dust feature will also add more costs onto small transactions.

There is no ignore dust rule, there is a DON'T ALLOW CREATION OF NEW DUST.  Of course the "rule" has a default value one that smart miners will decrease over time.  Newever versions of the client will almost certainly adjust the default value for nodes which don't override the default as well.  I would point out the min tx fee (for low priority txs) was initially 0.01 BTC that was lowered to 0.001 BTC, 0.0005, and now finally 0.0001 as the value of a BTC has risen. 

Quote
so if you want to buy a drink, sandwich or coffee at a vending machine. don't look at bitcoin for your solution.

Maybe?  Bitcoin is an experiment in progress.  It may be that:
a) you can use on blockchain tx for these transactions but merchants would prefer (and thus offer a discount) if you use off-blockchain txs for.
b) you end up using an alt-coin backed by Bitcoin specifically designed for high volume low value transactions.  Bitcoin remains used for larger transfers of value.
c) you can't economically use a crypto-currency for these types of transactions and Bitcoin still becomes the worlds largest value transfer network in the history of the human race.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
May 24, 2013, 02:46:26 PM
 #12

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).
oakpacific
Hero Member
*****
Offline Offline

Activity: 784
Merit: 1000


View Profile
May 24, 2013, 02:49:30 PM
 #13

and now reveals why bitcoin mainstreaming wont happen anytime soon.

1. starbucks does more then 7 transactions a second.. add on the transactions of walmart.. instantly with just 2 major retailers bitcoin cannot cope.

2. buying a $1 loaf of bread with a visa card would cost the customer $1 and the retailer would get 99c. with bitcoin he would only get 93c.. why?
well the transaction fee of 0.0005 just to get a fast confirm would cost 6c then add bitpay 1% fee to convert to fiat.

3. as bitcoins fiat value increases gavin andressens ignore dust feature will also add more costs onto small transactions.

so if you want to buy a drink, sandwich or coffee at a vending machine. don't look at bitcoin for your solution.

Who do you think are paying the multi-billion dollar Visa makes every year then? And if Bitcoin really becomes that valuable, do you think the miners would not  just get off their lazy ass to change one or two lines of code(assuming devs won't do) to accept small-amount transactions?(Yes, it's that easy)

https://tlsnotary.org/ Fraud proofing decentralized fiat-Bitcoin trading.
Yuusha
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
May 24, 2013, 02:50:04 PM
 #14

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).
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?
justusranvier
Legendary
*
Offline Offline

Activity: 1400
Merit: 1009



View Profile
May 24, 2013, 02:50:51 PM
 #15

Bitcoin was always intended to scale to high transaction rates. Satoshi talked about it frequently, and in the very early days of Bitcoin every time somebody brought up the block size limit they were always told it would be raised when needed.

Originally there was no specific limit on block size except for a 32 MB message limit that applied to all node communications.

The block size was lowered to 1 MB in late 2010 because of a concern that an attacker could fill up everybody's hard drive with spam. Again this change was noted to be temporary by Satoshi, who posted about it on this forum.

Somewhere along the line some people decided they want the limit to stay at 1 MB forever. The reasons for this vary from person to person and appear to include: a desire to make alternate currencies artificially viable, they invented some type of off-blockchain transaction that nobody wants to use and so need some extra incentive to make people adopt it, hostility to Bitcoin's potential as a payment system that anyone in the world can use directly, a desire to see Bitcoin fail, or they invested in mining hardware and never want to be forced to upgrade or change their business model in order to remain profitable.

Frequently those who are in favor of keeping the block size at 1 MB will resort to lies of omission, misrepresentation, and fallacious economic arguments to make their case.
Akka
Legendary
*
Offline Offline

Activity: 1232
Merit: 1001



View Profile
May 24, 2013, 02:57:31 PM
 #16

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.

All previous versions of currency will no longer be supported as of this update
TangibleCryptography
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Tangible Cryptography LLC


View Profile WWW
May 24, 2013, 03:06:29 PM
 #17

I think it is important to distinguish between A limit and the current limit.

So there are a couple scenarios:
a) limit totally removed from code. unlimited block size. Tomorrow a miner could produce a 80GB block if they desired to
b) limit remains but is raised to another limited value say 20MB.
c) limit remains but protocol is enhanced to provide a rising limit based on deterministic factors.
d) limit remains and is now and always shall be exactly 1 MB.

Personally I think a is impossible and has a lot of unintended consequences.  It would allow centralization through bloat.  Eventually a handful of companies would be the only ones with enough resources to run a full node.  This can be done by intentionally mining massive amounts of data to push the full node requirements (think TB per day of storage, the need for 24/7 high bandwidth low latency links, and 128GB of RAM) to kill off existing full nodes.  Eventually this cartel of full nodes could gain enough power to require governmental approval to add new full nodes (we will call this a charter) and the ability to charge users for access through their node.  Many users will deposit their coins directly at these full nodes.  Congratulations you just invented banking.

The last scenario (d) is the status quo.  I don't think it will remain "forever" as forever is a long time.  It is important to consider that the change is non-trivial.  Anyone thinking the solution is "easy" likely hasn't thought about it enough. 

The new fixed limit (b) gives Bitcoin some breathing room.  PayPal for example does about 50 tps so a 32MB block size would allow ~224 tps (or 5x PayPal).  At peak usage it would make Bitcoin one of the largest transfer networks in the world.  No it wouldn't be the one system for all transactions but I doubt anyone but the purists would consider Bitcoin a "failure".  It has the ugliness of a new larger "magic number".

The dynamic scenario (c) is the most complex and as such the one with the most potential for creating hard to troubleshoot scenarios that could cripple the network either through lack of understanding or by introducing a new attack vector that entities who wish to see Bitcoin destroyed could exploit.

Personally if this was a dictatorship I would go with something like:
* Announce unlimited blockchain is not viable and won't be attempted
* Keep 1MB limit until the next block halving at which point the limit would be raised to 32MB.
* Fund research into an optimal way to have block size expand deterministically.

Of course this isn't a dictatorship and Bitcoin requires consensus which makes things even more challenging.
RoadToHell
Sr. Member
****
Offline Offline

Activity: 260
Merit: 250



View Profile
May 24, 2013, 03:07:08 PM
 #18

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.

Sam Spade: We were talking about a lot more money than this.
Kasper Gutman: Yes, sir, we were, but this is genuine coin of the realm. With a dollar of this, you can buy ten dollars of talk.
TangibleCryptography
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Tangible Cryptography LLC


View Profile WWW
May 24, 2013, 03:14:49 PM
 #19

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 isn't going to run a full node so his options are limited to what those running a full node do.

Even at 1MB limit sustain the blockchain will grow by 87GB annually.  That puts a limit on blockchain at >300GB by the time of the next subsidy halving.  A well connected nodes (say 24 peers) would need ~192Mbps of upload speed to share the block in a timely manner (~1 second).  The CPU load for synced nodes would be minimal but for bootstrapping nodes the number of tx to validate annually would be ~220 million.  So a new node around the time of the blokchain halving would need to download and validate roughly 1 billion transactions to get synced.  Even at 1MB sustained the requirements become a decent server (storage, memory, cpu) that has high speed, low latency links running 24/7.  Not impossible for an enthusiast or business but your average Joe isn't going to run a full node.

justusranvier
Legendary
*
Offline Offline

Activity: 1400
Merit: 1009



View Profile
May 24, 2013, 03:19:17 PM
 #20

So there are a couple scenarios:
a) limit totally removed from code. unlimited block size. Tomorrow a miner could produce a 80GB block if they desired to
Really? If the 1 MB limit was lifted right now via a simultaneous upgrade of the entire network, what would actually happen if a miner tried to produce a 80 GB block 10 minutes from now?
Pages: [1] 2 3 4 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!