Author

Topic: How does "pooling" work? (Read 1895 times)

sr. member
Activity: 406
Merit: 250
March 21, 2011, 08:27:44 PM
#7
Pool mining works like this:

Each miner connected to the pool will repeatedly ask for a chunk of work from the server. The work provided is a much less difficult piece of work, which results in the miner being able to submit "shares" at a relatively quick pace (in comparison to the time it would take to solve a block solo).

Each share could potentially be the answer for the block the pool is working on, and if it is, the pool solves the block and each user gets paid based on the method the pool is using to value shares. Less any required fees or donation rates.
thanks for the detailed reply. i got one question though, what is preventing a miner in a pool from not reporting a "winning" block to the server? this could easily be implemented, with a connection to bitcoind. if the block is above the target, it is submitted to the server, if it's below the target, submit it to the client, and claim the block for itself. could this attack be feasible?

That is not feasible because the block that you are solving for the pool includes the transaction that pays the 50BTC to the pool's account, not yours.
legendary
Activity: 2058
Merit: 1462
March 21, 2011, 08:10:38 PM
#6
Pool mining works like this:

Each miner connected to the pool will repeatedly ask for a chunk of work from the server. The work provided is a much less difficult piece of work, which results in the miner being able to submit "shares" at a relatively quick pace (in comparison to the time it would take to solve a block solo).

Each share could potentially be the answer for the block the pool is working on, and if it is, the pool solves the block and each user gets paid based on the method the pool is using to value shares. Less any required fees or donation rates.
thanks for the detailed reply. i got one question though, what is preventing a miner in a pool from not reporting a "winning" block to the server? this could easily be implemented, with a connection to bitcoind. if the block is above the target, it is submitted to the server, if it's below the target, submit it to the client, and claim the block for itself. could this attack be feasible?
sr. member
Activity: 406
Merit: 256
March 21, 2011, 08:06:41 PM
#5
If you participate in a pool that solves a block once per day, and you receive a 2BTC payout per block solved, in the same 4 week period of time, you would get 56BTC, but it would come in much smaller daily payouts.

All correct but this. Pools peg you to the average, with some variance, and so you are likely to get expected payout (50/averagehashtime for your card) in smaller payments over time, less fees.
sr. member
Activity: 258
Merit: 250
March 21, 2011, 08:03:25 PM
#4
Pool mining works like this:

Each miner connected to the pool will repeatedly ask for a chunk of work from the server. The work provided is a much less difficult piece of work, which results in the miner being able to submit "shares" at a relatively quick pace (in comparison to the time it would take to solve a block solo).

Each share could potentially be the answer for the block the pool is working on, and if it is, the pool solves the block and each user gets paid based on the method the pool is using to value shares. Less any required fees or donation rates.

Using bitcoinpool.com as an example, each share is paid as a proportional amount in regard to the whole. For example, if 100 shares are submitted before the block is solved, and you submitted 1 of those, you would get paid ((1 / 100) * 100) / 2. Or, 0.50 BTC.

Essentially, multiple users are working together to solve a block at a faster rate, but for less payout per block than they would receive while mining solo.

If it takes your card 4 weeks to solve a block solo, you would receive 50BTC for solving it, but only solve 1 block per month.

If you participate in a pool that solves a block once per day, and you receive a 2BTC payout per block solved, in the same 4 week period of time, you would get 56BTC, but it would come in much smaller daily payouts.

Essentially, you're trading singular high-payouts, for multiple small payouts in much quicker succession.

I hope that helps!
full member
Activity: 126
Merit: 101
March 21, 2011, 07:42:59 PM
#3
A share does not help does not help the pool unless it is also a valid block what it does do is prove you where trying to find the solution.
jr. member
Activity: 52
Merit: 1
March 21, 2011, 07:24:45 PM
#2
I'm not an expert, so someone correct me if I'm wrong.

We are trying to find a hash that is below the current target. The pool server reports a higher target to our miners, and they start working on that. When we find a nonce that generates a lower hash than the reported target, we submit. That's a share. Eventually somebody will generate a hash below the real target and we will have found a new block.

I can't cheat and use the same nonce to generate a block for myself because my block has at least one different transaction, which carries the amount I transfer to my address.
legendary
Activity: 2058
Merit: 1462
March 21, 2011, 06:15:47 PM
#1
i don't understand how a pool combines the effort of multiple computers toward  finding one block. How does each "share" help the server solve a block?
Jump to: