Bitcoin Forum

Economy => Economics => Topic started by: hippich on May 05, 2011, 06:01:53 PM



Title: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 05, 2011, 06:01:53 PM
I sent some bitcents to btcJack site few hours ago and transaction still not included in block chain.. Are we at the point where most transactions will require fee to be included into chain? If so - we definitely need to work on smaller divisibility, since 0.01 current smallest fee is to big for certain transactions.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Garrett Burgwardt on May 05, 2011, 06:15:51 PM
Your transaction is just very low priority due to size and newness. Give it a little bit.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 05, 2011, 06:17:10 PM
I know it. It's just a point. Before all your transfers almost always were included into first generated block. Now you need to wait way more. And with more trading happening, this will happen more often.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: SgtSpike on May 05, 2011, 06:23:41 PM
I don't understand... are transactions really increasing faster than the GPU power available?  It seems like 1THash would be enough to keep up with all the transactions you ever wanted to make... but I guess I just don't know enough about it all.

How many MH/s of computational power does a single transaction take to complete?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Garrett Burgwardt on May 05, 2011, 06:27:29 PM
SgtSpike- it doesn't matter how much hashing power there is, it's a matter of how many transactions fit in a block. Currently the limit is at 1MB per block or so, and that's about 1000 transactions.

Might want to brush up on how the blockchain works Sgt ;)  https://en.bitcoin.it/wiki/Blocks


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 05, 2011, 06:30:44 PM
SgtSpike- it doesn't matter how much hashing power there is, it's a matter of how many transactions fit in a block. Currently the limit is at 1MB per block or so, and that's about 1000 transactions.

Might want to brush up on how the blockchain works Sgt ;)  https://en.bitcoin.it/wiki/Blocks

Hm. This means that either big pools ignore "free" transactions or that my client do not have connection to network.. I see 8 connections available to daemon. So it definitely connected to network but for some reason - very slow. And I had similar reports from people trying to deposit money to my room - getting 1st confirmation takes hours sometimes.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: SgtSpike on May 05, 2011, 06:33:16 PM
Thanks Garrett.

So increases in the difficulty level also increases the amount of time it takes to compute a block?  Why don't we compute blocks as quickly as possible, then use a lottery system to award the 50 BTC "prize" to the first hasher of a random block in a 10 minute time period?  Seems like we're just wasting computing power that could be put to better use...

Unless the goal is to artificially limit the number of transactions that can take place in 10 minutes, to force people to eventually pay transaction fees.

But if that's the goal, what happens when adoption of bitcoins is 100x what it is at now?  If there can still only be X # of transactions per block, and the difficulty adjusts itself to where only one block is computed every 10 minutes, how in the world will the system be able to handle an increase in usage?  Transaction fees would have to increase to the point of fewer people wanting to use the system, which would be the opposite of what we all want, right?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: BitterTea on May 05, 2011, 06:35:39 PM
Is your transaction in the unconfirmed transactions list? There are currently 612 of them, which is much higher than I've seen before...

http://bitcoincharts.com/bitcoin/


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: BitterTea on May 05, 2011, 06:38:42 PM
Thanks Garrett.

So increases in the difficulty level also increases the amount of time it takes to compute a block?  Why don't we compute blocks as quickly as possible, then use a lottery system to award the 50 BTC "prize" to the first hasher of a random block in a 10 minute time period?  Seems like we're just wasting computing power that could be put to better use...

Unless the goal is to artificially limit the number of transactions that can take place in 10 minutes, to force people to eventually pay transaction fees.

But if that's the goal, what happens when adoption of bitcoins is 100x what it is at now?  If there can still only be X # of transactions per block, and the difficulty adjusts itself to where only one block is computed every 10 minutes, how in the world will the system be able to handle an increase in usage?  Transaction fees would have to increase to the point of fewer people wanting to use the system, which would be the opposite of what we all want, right?

The point is for a block to "equal" ~10 minutes of computing time at a power equal to the size of the network. If blocks were found more quickly, an attacker could generate more blocks quickly, but they would represent the same amount of computer power. Additionally, network propagation must be taken into account. I think 10 minutes was chosen in part because it's more time than is necessary for a message to propagate to the entire network. This helps prevent constant forking of the block chain.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 05, 2011, 06:39:59 PM
Is your transaction in the unconfirmed transactions list? There are currently 612 of them, which is much higher than I've seen before...

http://bitcoincharts.com/bitcoin/

Yeah. I can see my transaction in this list.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: SgtSpike on May 05, 2011, 06:47:15 PM
Thanks Garrett.

So increases in the difficulty level also increases the amount of time it takes to compute a block?  Why don't we compute blocks as quickly as possible, then use a lottery system to award the 50 BTC "prize" to the first hasher of a random block in a 10 minute time period?  Seems like we're just wasting computing power that could be put to better use...

Unless the goal is to artificially limit the number of transactions that can take place in 10 minutes, to force people to eventually pay transaction fees.

But if that's the goal, what happens when adoption of bitcoins is 100x what it is at now?  If there can still only be X # of transactions per block, and the difficulty adjusts itself to where only one block is computed every 10 minutes, how in the world will the system be able to handle an increase in usage?  Transaction fees would have to increase to the point of fewer people wanting to use the system, which would be the opposite of what we all want, right?

The point is for a block to "equal" ~10 minutes of computing time at a power equal to the size of the network. If blocks were found more quickly, an attacker could generate more blocks quickly, but they would represent the same amount of computer power. Additionally, network propagation must be taken into account. I think 10 minutes was chosen in part because it's more time than is necessary for a message to propagate to the entire network. This helps prevent constant forking of the block chain.
I understand that, but what happens when we have, say, 2000 transaction requests every 10 minutes, but the system can only process 1000 transactions every 10 minutes because of the block limitations?  And say that that number of transaction requests is consistent for a week straight. Then you have tens of thousands of transactions backlogged, that may never be processed.

Am I wrong?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: BitterTea on May 05, 2011, 06:59:20 PM
I understand that, but what happens when we have, say, 2000 transaction requests every 10 minutes, but the system can only process 1000 transactions every 10 minutes because of the block limitations?  And say that that number of transaction requests is consistent for a week straight. Then you have tens of thousands of transactions backlogged, that may never be processed.

Am I wrong?

A few things...

I believe the maximum block size can be increased, so more transactions can fit into a block. The max size is low(ish) right now to prevent malicious entities filling up people's hard disks with huge numbers of small transactions.

As Bitcoin becomes more popular and there are more transactions, fees will become more prominent, so you'll have a way to prioritize your transaction if its necessary.

There could be alternate block chains for more localized or specialized spending, with large processors/banks/merchants settling out via the block chain periodically. Perhaps the use of services like MyBitcoin will become more widespread. When sending transactions internally, no data is written to the block chain. They could also settle debts between each other outside of the block chain, through some other communications channel.

Basically, there are lots of options for growth of network usage.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: SgtSpike on May 05, 2011, 08:01:38 PM
I understand that, but what happens when we have, say, 2000 transaction requests every 10 minutes, but the system can only process 1000 transactions every 10 minutes because of the block limitations?  And say that that number of transaction requests is consistent for a week straight. Then you have tens of thousands of transactions backlogged, that may never be processed.

Am I wrong?

A few things...

I believe the maximum block size can be increased, so more transactions can fit into a block. The max size is low(ish) right now to prevent malicious entities filling up people's hard disks with huge numbers of small transactions.

As Bitcoin becomes more popular and there are more transactions, fees will become more prominent, so you'll have a way to prioritize your transaction if its necessary.

There could be alternate block chains for more localized or specialized spending, with large processors/banks/merchants settling out via the block chain periodically. Perhaps the use of services like MyBitcoin will become more widespread. When sending transactions internally, no data is written to the block chain. They could also settle debts between each other outside of the block chain, through some other communications channel.

Basically, there are lots of options for growth of network usage.
Interesting.  I did not know we could adjust the block size.  Is that something we should be looking in to now, since free transactions are often taking several hours to complete?  I've noticed the same thing as the OP in my recent transactions...

Also, since the entire block chain must be downloaded to a local machine before that machine can acquire a bitcoin address and utilize a wallet, it seems that some sort of "practical maximum" of the block chain should be defined, or at least thought about.

I mean, will new users of bitcoins really want to download a 20GB file just to start using bitcoins as a currency?

So say we pick an arbitrary number - 10GB - as a practical maximum for the block chain.  Currently, there are 290,000 blocks?  So 290MB?  Can we really expect this transaction model to last as long as is projected, for as many people as is projected, without some sort of problem?  If we've already "used up" 2.9% of the total available transaction history, what happens when the project is 10 times as popular as it is now?  How can it possibly support 10 times as many users for longer than a couple of years?

What am I missing here?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Garrett Burgwardt on May 05, 2011, 08:08:00 PM
Thanks Garrett.

So increases in the difficulty level also increases the amount of time it takes to compute a block?  Why don't we compute blocks as quickly as possible, then use a lottery system to award the 50 BTC "prize" to the first hasher of a random block in a 10 minute time period?  Seems like we're just wasting computing power that could be put to better use...

Unless the goal is to artificially limit the number of transactions that can take place in 10 minutes, to force people to eventually pay transaction fees.

But if that's the goal, what happens when adoption of bitcoins is 100x what it is at now?  If there can still only be X # of transactions per block, and the difficulty adjusts itself to where only one block is computed every 10 minutes, how in the world will the system be able to handle an increase in usage?  Transaction fees would have to increase to the point of fewer people wanting to use the system, which would be the opposite of what we all want, right?

Difficulty only increases when we're finding blocks, on average, more than every 10 minutes. The 10 minute goal was just a best guess by Satoshi for how long it would take transactions to properly propagate, and to give people with slower connections a chance to help, and at the same time avoid chain splits.

Like was mentioned above, block size can be increased, it's only this small to avoid spam, etc. Already there has been an increase in the number of transactions lately, even with the pools now using sendmany rather than just send.

The blocks are created with the transactions because of the proof of work that the block is - it's hard to compute that stuff, look at how much computing power we're throwing at hashing out a sufficiently small number, and we get one every 7 minutes or so (difficulty is gonna go way up!). So if we just made a block every 10 minutes or every 10 seconds, there'd be no proof of work there, and double spending would be possible.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 05, 2011, 08:08:49 PM
The questions is - one block can contain 1k transactions, why last blocks contain only dozens of transactions when there is 600+ unconfirmed transactions in the queue?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: error on May 05, 2011, 08:11:34 PM
The questions is - one block can contain 1k transactions, why last blocks contain only dozens of transactions when there is 600+ unconfirmed transactions in the queue?

Indeed. Shouldn't we just accept free transactions if there's leftover space in the block?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: byronbb on May 05, 2011, 08:52:55 PM
What would happen if someone spammed the network with millions of transactions?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: sutekh on May 05, 2011, 09:36:26 PM
What would happen if someone spammed the network with millions of transactions?

Reminds me of a similar question I'm mesmerizing about:

Who sets the price of transactions? The network or the miners?

If it's the miner, could an entity set up a massive supercomputer, mine most blocks and then set the transaction fees to 99%?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: marxcoin on May 05, 2011, 09:52:30 PM
sorry what does mean unconfirmed transactions, means that there are double payment or lost, i am new.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: grue on May 05, 2011, 10:35:24 PM
sorry what does mean unconfirmed transactions, means that there are double payment or lost, i am new.
no it doesn't.

confirmations pretty much mean that it's "protected", because it's in a block.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: wolciph on May 05, 2011, 10:36:03 PM
What would happen if someone spammed the network with millions of transactions?

Reminds me of a similar question I'm mesmerizing about:

Who sets the price of transactions? The network or the miners?

If it's the miner, could an entity set up a massive supercomputer, mine most blocks and then set the transaction fees to 99%?
The prices are not set, they are "decided" by the market composed of miners and people who need the miners to make their transactions. There is a limit of one MB of transaction data per block which has been arbitrarily decided for now. It may be increased or not in the future.
At least that is what I understood.

For the time being, if you go on blockexplorer.com, you will see that blocks don't often exceed 5KB. So there should be 995KB of transactions more still possible per 10 minutes. Hence, I have no idea why there are so many pending transactions. Maybe they are invalid?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: theymos on May 06, 2011, 03:21:16 AM
Only 27kB of free transactions will be included by miners using the official client (only 4kB for low-priority transactions). Individual miners can change this policy (by changing the code). It would be valid for miners to fill the entire 1 MB with free transactions.

The point of this is to prevent the block size from growing too fast from transaction spam. It might be increased once client mode is implemented and the size of the block chain doesn't matter as much.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 06, 2011, 03:30:33 AM
thank you. now this makes more sense =) So... we are at the point where we need to have higher divisibility of coins to make sure we can send 0.01 without paying 0.01 in fees.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: error on May 06, 2011, 03:36:56 AM
thank you. now this makes more sense =) So... we are at the point where we need to have higher divisibility of coins to make sure we can send 0.01 without paying 0.01 in fees.

It's my opinion that we passed this point some time ago.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Meni Rosenfeld on May 06, 2011, 05:05:28 AM
Also, since the entire block chain must be downloaded to a local machine before that machine can acquire a bitcoin address and utilize a wallet, it seems that some sort of "practical maximum" of the block chain should be defined, or at least thought about.
...
What am I missing here?
Lightweight clients can utilize a wallet without having the block chain.

If it's the miner, could an entity set up a massive supercomputer, mine most blocks and then set the transaction fees to 99%?
Yes. Note that they won't make it 99% because then people will stop using Bitcoin, their price will collapse and the miner will not have any revenues.
This has been discussed before, and IMO it is a vulnerability that will need to be patched.
(But as others said the miner doesn't "set" the fee, they just exclude all transaction that don't give the fee they want.)


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: FreeMoney on May 06, 2011, 05:12:11 AM
What would happen if someone spammed the network with millions of transactions?

Reminds me of a similar question I'm mesmerizing about:

Who sets the price of transactions? The network or the miners?

If it's the miner, could an entity set up a massive supercomputer, mine most blocks and then set the transaction fees to 99%?

When you send a tx you can add a fee, it's in the options on the newest version. Miners can then put the tx in a block and take the fee, or not, up to them.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: hippich on May 06, 2011, 02:29:41 PM
Just to let everybody know - after roughly 24 hours transaction is still unconfirmed =)

http://bitcoincharts.com/bitcoin/ - 1Hu65a4f13rWcK8fs2hmwq9FPEXQ6ZYBnu

BTW, can someone explain in layman words where from priority is defined?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: caveden on May 06, 2011, 02:55:05 PM
This raises the importance of a resend feature.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Gavin Andresen on May 06, 2011, 04:13:04 PM
BTW, can someone explain in layman words where from priority is defined?

Priority is a function of how many bitcoins are involved in the transaction (more is higher priority), the size (in bytes) of the transaction (smaller is higher priority), and the age of the transaction's previous transactions (older is higher priority).

Your transaction is taking a long time because it involved only 0.14 BTC which you got from a transaction that happened earlier today.  If you were running bitcoin version 0.3.21, it would have required that you add a 0.01BTC fee to send it.



Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: Jaime Frontero on May 07, 2011, 04:04:11 AM
seems to me that the way it's set up now makes perfect sense.

the network has to stay strong - which means it must grow.  moore's law will take care of the hardware.

...and the eventual point will be to mine for transaction fees.  no?


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: mp420 on May 07, 2011, 06:11:16 AM
The minimum transaction fee of 0.01 BTC does feel a tad high at the current exchange rates, though. I think fees should be more commonplace and the minimum fee should be smaller. I'd be happy to pay a 0.001 BTC fee to get my transaction processed quicker, but 0.01 is a lot of money.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: BitterTea on May 07, 2011, 06:15:41 AM
It depends... since the size of the transaction isn't directly related to the amount transferred, the required fee can be quite small. Consider a 100 or 1000 BTC tx that has few inputs and will be accepted with a .01 BTC fee. That's only 0.01% or 0.001% fee, not too shabby.


Title: Re: Are we at the point where we HAVE to pay tx fee?
Post by: error on May 07, 2011, 07:17:26 AM
It depends... since the size of the transaction isn't directly related to the amount transferred, the required fee can be quite small. Consider a 100 or 1000 BTC tx that has few inputs and will be accepted with a .01 BTC fee. That's only 0.01% or 0.001% fee, not too shabby.

At the moment, the transactions being queued for lack of fees ARE the ones with small amounts.