Bitcoin Forum
November 20, 2017, 07:55:19 PM *
News: Latest stable version of Bitcoin Core: 0.15.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: What's relay fee !  (Read 6599 times)
Farghaly
Jr. Member
*
Offline Offline

Activity: 38


View Profile
April 21, 2014, 10:55:02 PM
 #1

From Bitcoin 0.8.2 release notes
https://bitcointalk.org/index.php?topic=219504.0

Quote
Payments (transaction outputs) of 0.543 times the minimum relay fee
(0.00005430 BTC) are now considered 'non-standard'

I've read a lot about transaction fee, and i think i've wrapped my mind around it.
What's relay fee ? Is it different from transaction fee ?
 

Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1511207719
Hero Member
*
Offline Offline

Posts: 1511207719

View Profile Personal Message (Offline)

Ignore
1511207719
Reply with quote  #2

1511207719
Report to moderator
1511207719
Hero Member
*
Offline Offline

Posts: 1511207719

View Profile Personal Message (Offline)

Ignore
1511207719
Reply with quote  #2

1511207719
Report to moderator
DannyHamilton
Legendary
*
Online Online

Activity: 1974



View Profile
April 21, 2014, 11:18:32 PM
 #2

From Bitcoin 0.8.2 release notes
https://bitcointalk.org/index.php?topic=219504.0

Quote
Payments (transaction outputs) of 0.543 times the minimum relay fee
(0.00005430 BTC) are now considered 'non-standard'

I've read a lot about transaction fee, and i think i've wrapped my mind around it.
What's relay fee ? Is it different from transaction fee ?

The transaction fee is a voluntary payment.

However, there are various limitations built into various common functionality.  If you don't pay an appropriate transaction fee, you can encounter problems with some of these limitations.

Under some circumstances, the Bitcoin Core wallet won't broadcast its own transaction unless it has a large enough fee.  This could be referred to as a minimum broadcast fee.

Under some circumstances, peer nodes running code based on BitcoinCore won't relay a transaction unless it has a large enough fee.  This could be referred to as a minimum relay fee.

Under some circumstances, some mining pools won't confirm a transaction unless it has a large enough fee.  This could be referred to as a minimum confirmation fee.

The point is, they are all just ways of talking about a minimum fee that a transaction must include if it is going to make it past a particular limitation.

If your wallet won't broadcast the transaction, then nobody will ever know about it.

If your peers won't relay your transaction, then your recipient might not see the transaction until it is confirmed, and it might not be confirmed for a very long time since many miners (and mining pools) won't hear about it from their peers.

If many of the miners (and mining pools) won't confirm it, then it may remain with 0 confirmations for a very long time.  Depending on the wallet you are using, the transaction may expire if it isn't confirmed, and the bitcoins could end up back in your wallet.

deepceleron
Legendary
*
Offline Offline

Activity: 1512



View Profile WWW
April 22, 2014, 05:35:01 AM
 #3

The relay fee is also the transaction fee, but it refers to a different use than what you may know. A transaction fee is included with a transaction to encourage and reward miners for including the transaction in the blockchain.

"Relay fee" refers to the minimum fee amount that other clients on the peer-to-peer network require in order to forward transactions to other peers. This fee is in place in order to prevent the broadcast and propogation of DDoS-like spam transactions.

The relay fee is coded in a different place than the transaction fee in Bitcoin. In the past, it has also been set at a different amount than the transaction fee. For a good portion of recent Bitcoin history, the minimum transaction fee used by the Bitcoin client and by most miners was 0.0005 BTC per kB, but the minimum relay fee was coded at 0.0001 BTC. The transaction fee was then lowered, bringing them in sync.

Farghaly
Jr. Member
*
Offline Offline

Activity: 38


View Profile
April 22, 2014, 07:10:44 PM
 #4

Thank you guys it's clear now.

A final thing that i don't understand is how different versions of Bitcoin nodes agree on Fee/Kb. Bitcoin 0.8.0 require 0.0005 btc/kb, Bitcoin 0.8.2 require 0.0001 btc/kb, and recently Bitcoin 0.9.0 requires 0.00001 btc/kb.

DannyHamilton
Legendary
*
Online Online

Activity: 1974



View Profile
April 22, 2014, 07:17:37 PM
 #5

Thank you guys it's clear now.

A final thing that i don't understand is how different versions of Bitcoin nodes agree on Fee/Kb. Bitcoin 0.8.0 require 0.0005 btc/kb, Bitcoin 0.8.2 require 0.0001 btc/kb, and recently Bitcoin 0.9.0 requires 0.00001 btc/kb.

They don't agree.

Bitcoin is a voluntary system.

If the transaction fee is too low, it will be very unlikely that any peers will relay it or that any miners will confirm it.

If you pay a fee a bit higher, you'll find some peers that will relay it, and some miners that will confirm it, but it may take a bit longer for the transaction to get to the miners since some peers may reject it.

Pay an even higher fee and then nearly all peers will relay it and nearly all miners will work to confirm it.  It will spread throughout the network and reach the miners very quickly.

Over time, more and more users will run more recent versions of the software, so older fee requirements will become less prevalent.


DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218


Gerald Davis


View Profile
April 22, 2014, 11:42:20 PM
 #6

Thank you guys it's clear now.

A final thing that i don't understand is how different versions of Bitcoin nodes agree on Fee/Kb. Bitcoin 0.8.0 require 0.0005 btc/kb, Bitcoin 0.8.2 require 0.0001 btc/kb, and recently Bitcoin 0.9.0 requires 0.00001 btc/kb.

They don't agree.

Bitcoin is a voluntary system.

This.  To the OP, it helps if you stop thinking about "bitcoin" as this abstract tightly coupled unified network running a single official "standard".  In reality it is a very loose protocol made up of hundreds of thousands of independent nodes and at no point in time are all the nodes in agreement on anything. 

If I wanted to I could change my node to not relay any transaction unless it has a fee of 0.1 BTC or more.  There wouldn't be much point in doing that (tx would just route "around" my node) but I could and so could anyone else.  If your tx has a fee of x and priority of y then each individual node acting totally independent of any other node will determine if they will relay it and just because a node relays a transaction doesn't mean that other nodes won't refuse to relay it further based on their own completely independent determination.  For any given transaction is is probable that at least one node on the network will refuse to relay it due to double spend, insufficient fee and/or priority, inability to verify, tx not meeting "IsStandard" requirements, outputs below the spam threshold, etc.
Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!