Bitcoin Forum
April 24, 2024, 11:44:45 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Transactions per block  (Read 5859 times)
epii (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 106



View Profile
April 13, 2011, 12:44:59 AM
 #1

I've seen this question answered before, but I can't recall where.  What is the maximum number of transactions per block?

Will/can the average number of transactions per block increase with time?  (Right now it seems to be about 10 or 15.)  If so, what mechanism will cause miners to start including more transactions in their blocks?

Is there a maximum amount of time any given transaction will stay unprocessed?  If so, what mechanism is responsible for that?
1713959085
Hero Member
*
Offline Offline

Posts: 1713959085

View Profile Personal Message (Offline)

Ignore
1713959085
Reply with quote  #2

1713959085
Report to moderator
1713959085
Hero Member
*
Offline Offline

Posts: 1713959085

View Profile Personal Message (Offline)

Ignore
1713959085
Reply with quote  #2

1713959085
Report to moderator
The grue lurks in the darkest places of the earth. Its favorite diet is adventurers, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of day, and few have survived its fearsome jaws to tell the tale.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
MoonShadow
Legendary
*
Offline Offline

Activity: 1708
Merit: 1007



View Profile
April 13, 2011, 12:51:20 AM
 #2

I've seen this question answered before, but I can't recall where.  What is the maximum number of transactions per block?

It's not limited by number of transactions, but by individual and collective size in kilobytes.  I can't remember the exact details, but I'm pretty sure that the total free transactions are limited to 25 KB and then fee paying transactions increase the minimum required fee to a maximum hard blocksize limit of one Mb.

Quote
Will/can the average number of transactions per block increase with time? 


Up to the artificial scarcity limits mentioned above, yes.

Quote
(Right now it seems to be about 10 or 15.)  If so, what mechanism will cause miners to start including more transactions in their blocks?

Increasing fees attached to the transactions.

Quote

Is there a maximum amount of time any given transaction will stay unprocessed? 

No.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
epii (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 106



View Profile
April 13, 2011, 03:07:39 AM
 #3

Quote
Is there a maximum amount of time any given transaction will stay unprocessed? 

No.
Is there any mechanism then to at least make it unlikely that a transaction will "fall through the cracks" and never get processed?  Or is the idea that that's simply a risk you're taking if you skimp on transaction fees?
bitlotto
Hero Member
*****
Offline Offline

Activity: 672
Merit: 500


BitLotto - best odds + best payouts + cheat-proof


View Profile WWW
April 13, 2011, 03:17:48 AM
 #4

Quote
Is there a maximum amount of time any given transaction will stay unprocessed? 

No.
Is there any mechanism then to at least make it unlikely that a transaction will "fall through the cracks" and never get processed?  Or is the idea that that's simply a risk you're taking if you skimp on transaction fees?

I'm sure some mining group somewhere will always make blocks to process those fee-less transactions. Perhaps a charity group sometime in the far future. Fee's will be for speed. If it's never processed I believe the person that sent it could re-send it somewhere else. But if the old transaction is ever processed, it won't go through.

*Next Draw Feb 1*  BitLotto: monthly raffle (0.25 BTC per ticket) Completely transparent and impossible to manipulate who wins. TOR
TOR2WEB
Donations to: 1JQdiQsjhV2uJ4Y8HFtdqteJsZhv835a8J are appreciated.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
April 13, 2011, 03:18:47 AM
 #5

Is there any mechanism then to at least make it unlikely that a transaction will "fall through the cracks" and never get processed?  Or is the idea that that's simply a risk you're taking if you skimp on transaction fees?

You'll keep resending it forever until it gets in a block.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
epii (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 106



View Profile
April 13, 2011, 03:38:38 AM
 #6

Is there any mechanism then to at least make it unlikely that a transaction will "fall through the cracks" and never get processed?  Or is the idea that that's simply a risk you're taking if you skimp on transaction fees?

You'll keep resending it forever until it gets in a block.
"You" = the default client?

It needs to be resent?  Does that imply it expires after a certain amount of time?
xf2_org
Member
**
Offline Offline

Activity: 98
Merit: 13


View Profile
April 13, 2011, 03:50:44 AM
 #7

It needs to be resent?  Does that imply it expires after a certain amount of time?

Until your transaction gets into a block, nothing is guaranteed.  This is an untrusted, peer-to-peer network after all.  Bitcoin nodes try to remember your transaction, but the client must resend in case they do not.  New nodes appearing on the network have never seen your TX, and nodes may be restarted or leave the network, also forgetting your TX.

One of my proposals for bitcoin is to introduce a new rule that causes all nodes to forget a transaction, if it does not make it into a block within 24 hours (~150 blocks).

Clients that wish to resend for such transactions will continue to do so, submitting a copy again after 24 hours passes.  This is current behavior.

Clients that wish to cease retransmission, perhaps in order to rewrite the transaction into something more acceptable, are newly permitted to do so with my proposed change.

Thus, transaction lifetime would become deterministic.

epii (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 106



View Profile
April 13, 2011, 03:56:05 AM
 #8

I've seen this question answered before, but I can't recall where.  What is the maximum number of transactions per block?
It's not limited by number of transactions, but by individual and collective size in kilobytes.  I can't remember the exact details, but I'm pretty sure that the total free transactions are limited to 25 KB and then fee paying transactions increase the minimum required fee to a maximum hard blocksize limit of one Mb.
Somehow, this block has 43 KB of free transactions: http://blockexplorer.com/b/118089

Is a limit on free transactions set in the mining client, or is it a condition of a block being valid?

Just some rough math to answer my own question, a 1MB block would contain roughly 3000 typical transactions.  Thus there's an upper limit on the transaction processing rate for the entire economy - I reckon that means that once the transaction rate rises over an average of 18k/hr., there will be a minimum fee for your transaction to even have a chance of being processed, and market forces will drive the minimum fee up with time.  (Concern over "will there be enough miners?" is pretty irrelevant, except for the matter of security, since I don't believe the number of miners can have any positive or negative impact on the actual transaction processing rate.  Correct?)
MoonShadow
Legendary
*
Offline Offline

Activity: 1708
Merit: 1007



View Profile
April 13, 2011, 04:26:49 AM
 #9

I've seen this question answered before, but I can't recall where.  What is the maximum number of transactions per block?
It's not limited by number of transactions, but by individual and collective size in kilobytes.  I can't remember the exact details, but I'm pretty sure that the total free transactions are limited to 25 KB and then fee paying transactions increase the minimum required fee to a maximum hard blocksize limit of one Mb.
Somehow, this block has 43 KB of free transactions: http://blockexplorer.com/b/118089
Then it's probably 50 KB, I know that it's not much.
Quote

Is a limit on free transactions set in the mining client, or is it a condition of a block being valid?
I believe that the fee structure is a condition of validity, but miners are not compelled to include free transactions at all.  In a future that there are enough paying transactions to max out the total blockspace, free transactions are likely to be ignored my profit minded miners.  Although there will likely be some miners that always include free transactions on ideological grounds, there is no way to know if free transactions will continue to be processed on any reasonable timescale.

Quote
Just some rough math to answer my own question, a 1MB block would contain roughly 3000 typical transactions.  Thus there's an upper limit on the transaction processing rate for the entire economy - I reckon that means that once the transaction rate rises over an average of 18k/hr., there will be a minimum fee for your transaction to even have a chance of being processed, and market forces will drive the minimum fee up with time.


Probably, but the 1 meg hard limit was an arbitrary rule included early on as a method to limit harm in the event of a 'transaction flood' spam-type attack.  It was never intended to remain in effect, and to my knowledge, could be removed without effect now that the transaction priority score rules and the minimum transfer fee rule are effective.  As far as I know, we have never even come close to the 1 meg hard limit anyway.   
Quote

  (Concern over "will there be enough miners?" is pretty irrelevant, except for the matter of security, since I don't believe the number of miners can have any positive or negative impact on the actual transaction processing rate.  Correct?)

The number of miners do not affect the block rate in the long term, because the system adjusts to changes in the network's total hashing power every 2016 blocks, or about two weeks.  However, within that two week window, it is expected that increasing transaction fees during peak periods will eventually create an "elastic" processing rate by drawing in miners who are marginal with just the block reward.  The idea being that during the high transaction periods, the accumulation of fees that are seen unprocessed on the network will trigger automatic generation to try to process those fee paying transactions, and the average time between blocks will drop.  The flipside being that on the weekends, and the off periods of the major Bitcoin trading areas, will end up having an average time between blocks longer than 10 minutes to compensate.

In short, "will there be enough miners?" is not an irrelevant question, even outside of the context of security.  However, the answer is always "yes" because the ebb and flow of the transactions and their average fees will create a fast moving market that will adapt to the conditions consistently.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5180
Merit: 12884


View Profile
April 13, 2011, 04:39:15 AM
 #10

Somehow, this block has 43 KB of free transactions: http://blockexplorer.com/b/118089

Is a limit on free transactions set in the mining client, or is it a condition of a block being valid?

It's chosen by miners. Miners could fill blocks to 1MB with free transactions if they wanted.

That block was probably solved by an old client. The current free limit is 27 kB. It was originally 200 kB, and there were some intermediate adjustments between those.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
epii (OP)
Full Member
***
Offline Offline

Activity: 210
Merit: 106



View Profile
April 13, 2011, 05:33:23 AM
 #11

Quote
 (Concern over "will there be enough miners?" is pretty irrelevant, except for the matter of security, since I don't believe the number of miners can have any positive or negative impact on the actual transaction processing rate.  Correct?)

The number of miners do not affect the block rate in the long term, because the system adjusts to changes in the network's total hashing power every 2016 blocks, or about two weeks.  However, within that two week window, it is expected that increasing transaction fees during peak periods will eventually create an "elastic" processing rate by drawing in miners who are marginal with just the block reward.  The idea being that during the high transaction periods, the accumulation of fees that are seen unprocessed on the network will trigger automatic generation to try to process those fee paying transactions, and the average time between blocks will drop.  The flipside being that on the weekends, and the off periods of the major Bitcoin trading areas, will end up having an average time between blocks longer than 10 minutes to compensate.

In short, "will there be enough miners?" is not an irrelevant question, even outside of the context of security.  However, the answer is always "yes" because the ebb and flow of the transactions and their average fees will create a fast moving market that will adapt to the conditions consistently.
IMHO that's brilliant.  Thanks for explaining!
Pages: [1]
  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!