Bitcoin Forum

Bitcoin => Pools => Topic started by: RealMalatesta on November 27, 2015, 01:36:22 PM



Title: Latency Question
Post by: RealMalatesta on November 27, 2015, 01:36:22 PM
Hi,

in Wikipedia, I found the following:

Quote
Each miner node works on finding a difficult proof-of-work for its block.
When a node finds a proof-of-work, it broadcasts the block to all nodes.
Nodes accept the block only if all transactions in it are valid and not already spent.

So far, so good. But how does a pool decide to which nodes it will broadcast a block? By the best connection it has to the node, randomly, latency?



Title: Re: Latency Question
Post by: os2sam on November 27, 2015, 03:59:35 PM
Hi,

in Wikipedia, I found the following:

Quote
Each miner node works on finding a difficult proof-of-work for its block.
When a node finds a proof-of-work, it broadcasts the block to all nodes.
Nodes accept the block only if all transactions in it are valid and not already spent.

So far, so good. But how does a pool decide to which nodes it will broadcast a block? By the best connection it has to the node, randomly, latency?



Doesn't it broadcast to all nodes it's connected to?  That does seem to be the nature of the term "broadcast".


Title: Re: Latency Question
Post by: RealMalatesta on November 27, 2015, 04:01:06 PM
Hi,

in Wikipedia, I found the following:

Quote
Each miner node works on finding a difficult proof-of-work for its block.
When a node finds a proof-of-work, it broadcasts the block to all nodes.
Nodes accept the block only if all transactions in it are valid and not already spent.

So far, so good. But how does a pool decide to which nodes it will broadcast a block? By the best connection it has to the node, randomly, latency?



Doesn't it broadcast to all nodes it's connected to?  That does seem to be the nature of the term "broadcast".

Lol, right, my question should be: To which nodes does it connect to?


Title: Re: Latency Question
Post by: os2sam on November 27, 2015, 04:33:36 PM
Hi,

in Wikipedia, I found the following:

Quote
Each miner node works on finding a difficult proof-of-work for its block.
When a node finds a proof-of-work, it broadcasts the block to all nodes.
Nodes accept the block only if all transactions in it are valid and not already spent.

So far, so good. But how does a pool decide to which nodes it will broadcast a block? By the best connection it has to the node, randomly, latency?



Doesn't it broadcast to all nodes it's connected to?  That does seem to be the nature of the term "broadcast".

Lol, right, my question should be: To which nodes does it connect to?

You would probably need to ask each pool operator that.  They statically link to nodes they know to be fast.  And now there is also the relay network that is supposed to help with block propagation.

https://bitcointalk.org/index.php?topic=766190.msg8635670#msg8635670