Bitcoin Forum

Bitcoin => Pools => Topic started by: GingerAle on June 02, 2015, 01:09:09 AM



Title: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 02, 2015, 01:09:09 AM
Or maybe it should be called Bloop - for a portmanteau of Block and Co-op. Or flockblock.

The analogy - what makes more sense? Focusing all of your resources and manpower on one hole in the mountain to dig a mine and find the gold? Or dispersing your resources and manpower all over the mountain? Especially when your mountain is made up of random numbers?

The idea is this: wouldn't it be possible to make pool infrastructure that allows multiple individuals to form a mining co-op of full node solo miners?

So instead of the stratum server being the only actual node, and hunting for a solution to a single block and pool members just submitting hashes...

why couldn't the server just function as the manager of the co-op?

So, I find a block, but there are 40 people in the pool, so the block reward is split amongst the 40 people dependent upon their hash contribution.

This could potentially be more efficient as well, due to the fact that the block found event will propagate through 2 networks - the pool co-op and the actual bitcoin network. So if Jack and Jill are in the same co-op and live 3 miles from each other, but the pool server is actually 200 miles away, Jill's node will probably notify Jack's node of the new block before Jill's node notifies the pool server which will then notify Jack's node.

Back to the analogy, you'd have to climb all the way out from the mine to shout the news, whereas with Blockswarm, you just shout to your neighbor.

And on top of that, you know, more full nodes and all that jazz.

Is this possible?


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 02, 2015, 03:30:30 AM
cgminer --load-balance ...


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 02, 2015, 09:45:09 AM
based on my googling of that function, I did not explain the protocol well, or its main benefit of increasing full nodes.

As far as I can tell, you can solo mine with cgminer, but in terms of actually functioning like blockswarm, it ends there. Here's how blockswarm would work:

I'm solo mining with 10 TH
You're solo mining with 10 TH

We're in a co-op together. I find a block, I share half the rewards with you. You find a block, you share half the rewards with me. This sharing is executed via the blockswarm protocol.

We're both running full nodes and mining solo. But we've decreased our variance by agreeing to share our rewards.



Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 02, 2015, 10:09:20 AM
p2pool


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 02, 2015, 12:56:58 PM
p2pool

Yeop! I'm an idiot. I didn't realize p2pool could be run as an independent node. When I used p2pool I would connect to someone elses node.

Why is the p2pool lag an issue then? Last I tried p2pool, I remember reading that there's some lag issue due to the sharechain.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: lovenlifelarge on June 26, 2015, 08:05:52 PM
I think u'll find p2pools blockchain is actually slightly different to bitcoins blockchain...

Someone mentioned a while back something about that

Sort of like bitmains mining pool...


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 26, 2015, 09:09:28 PM
I think u'll find p2pools blockchain is actually slightly different to bitcoins blockchain...

Someone mentioned a while back something about that

Sort of like bitmains mining pool...
The p2pool sharechain is on top of the BTC blockchain.

So - in terms of general understanding, no it's not different.

It's simply a sharechain to track peer 2 peer shares when building blocks on the BTC block chain.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 26, 2015, 09:49:33 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: lovenlifelarge on June 27, 2015, 10:24:09 AM
Thanks Kano, I think when i was referring to someone talking about this ages ago, I think it was u...

I was stabbing in the dark in my explanation, Ur's are always much better as they are right 99.9999% of the time..


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 27, 2015, 12:16:14 PM
Thanks Kano, I think when i was referring to someone talking about this ages ago, I think it was u...

I was stabbing in the dark in my explanation, Ur's are always much better as they are right 99.9999% of the time..
I'll certainly say they are not right 100% of the time :)


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 27, 2015, 12:20:07 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?
Almost.
Yes they do, but the block they create must have the same coinbase payout as everyone else.
So while each node can include whatever transactions they like (and some people on p2pool make p2pool look bad by mining empty blocks) they all have almost the same coinbase transaction.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: jonnybravo0311 on June 27, 2015, 04:34:57 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?
Yes, each p2pool node determines what transactions it will include when constructing a block.  The coinbase transaction is built from the share chain.  If you look at a p2pool share, it will contain the payouts for every active p2pool miner that currently has shares on chain.  So, while the included transactions may differ from node to node, the coinbase transaction that is included as part of the block creation is pretty much the same.

I write "pretty much the same" because my node might find a block before it gets the information about a share from another node.  So, that other node would have an extra share that mine doesn't when the block is created.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 27, 2015, 05:01:29 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?
Yes, each p2pool node determines what transactions it will include when constructing a block.  The coinbase transaction is built from the share chain.  If you look at a p2pool share, it will contain the payouts for every active p2pool miner that currently has shares on chain.  So, while the included transactions may differ from node to node, the coinbase transaction that is included as part of the block creation is pretty much the same.

I write "pretty much the same" because my node might find a block before it gets the information about a share from another node.  So, that other node would have an extra share that mine doesn't when the block is created.

cool, thanks for the clarification. I just want to make sure that mining in P2pool is essentially solo mining. I think this may have been explained to me before, but sometimes the understanding lapses...


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: jonnybravo0311 on June 27, 2015, 05:25:58 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?
Yes, each p2pool node determines what transactions it will include when constructing a block.  The coinbase transaction is built from the share chain.  If you look at a p2pool share, it will contain the payouts for every active p2pool miner that currently has shares on chain.  So, while the included transactions may differ from node to node, the coinbase transaction that is included as part of the block creation is pretty much the same.

I write "pretty much the same" because my node might find a block before it gets the information about a share from another node.  So, that other node would have an extra share that mine doesn't when the block is created.

cool, thanks for the clarification. I just want to make sure that mining in P2pool is essentially solo mining. I think this may have been explained to me before, but sometimes the understanding lapses...
That's an interesting way of describing mining on p2pool.  Sure, if there were no other nodes on the network, then yes, you'd be solo mining.  However, because of the share chain, and every p2pool miner's contributions, you aren't truly solo mining at all.  Every share that you contribute, which satisfies the difficulty of the share chain shares is added to the chain (assuming of course it isn't an orphan or dead share).  Every share you have on the chain that is on the list of shares to be paid out when a block is found will be part of the coinbase transaction of that block.  Basically, every p2pool node says, "hey, here are some number of transactions I'm going to include in my block.  If a miner happens to solve this block, here are all the miners I know of that contributed to the pool and how much they should be paid for their efforts."


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 27, 2015, 05:57:45 PM
but just to clarify, each miner is still working on blocks created from their private node. The share chain is just a way to distribute the block reward?
Yes, each p2pool node determines what transactions it will include when constructing a block.  The coinbase transaction is built from the share chain.  If you look at a p2pool share, it will contain the payouts for every active p2pool miner that currently has shares on chain.  So, while the included transactions may differ from node to node, the coinbase transaction that is included as part of the block creation is pretty much the same.

I write "pretty much the same" because my node might find a block before it gets the information about a share from another node.  So, that other node would have an extra share that mine doesn't when the block is created.

cool, thanks for the clarification. I just want to make sure that mining in P2pool is essentially solo mining. I think this may have been explained to me before, but sometimes the understanding lapses...
That's an interesting way of describing mining on p2pool.  Sure, if there were no other nodes on the network, then yes, you'd be solo mining.  However, because of the share chain, and every p2pool miner's contributions, you aren't truly solo mining at all.  Every share that you contribute, which satisfies the difficulty of the share chain shares is added to the chain (assuming of course it isn't an orphan or dead share).  Every share you have on the chain that is on the list of shares to be paid out when a block is found will be part of the coinbase transaction of that block.  Basically, every p2pool node says, "hey, here are some number of transactions I'm going to include in my block.  If a miner happens to solve this block, here are all the miners I know of that contributed to the pool and how much they should be paid for their efforts."

I mean "solo mining" in the sense that my individual node is determining what goes into the block, not in the sense that I will receive the full block reward.





Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: jonnybravo0311 on June 27, 2015, 06:14:33 PM
I mean "solo mining" in the sense that my individual node is determining what goes into the block, not in the sense that I will receive the full block reward.
Yes, that's a correct interpretation, then.  Your node determines what transactions are included as well as the coinbase payout.  That coinbase is typically very similar for all nodes, with the exceptions listed in my previous posts.  So, while the transactions may be wildly different across nodes, the payouts should be virtually identical :).


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: kano on June 28, 2015, 12:56:56 AM
It's a misunderstanding of the term solo mining.

Solo mining means you are taking on all the variance of block finding.
You are not pooling your mining efforts with anyone else (and thus are not sharing the reward)

p2pool is not in any way solo mining.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: -ck on June 28, 2015, 01:13:52 AM
By the way you can imitate the 50% thing on p2pool simply by setting your p2pool share difficulty to half the current network difficulty if you really wanted to do that...


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 28, 2015, 01:23:03 AM
It's a misunderstanding of the term solo mining.

Solo mining means you are taking on all the variance of block finding.
You are not pooling your mining efforts with anyone else (and thus are not sharing the reward)

p2pool is not in any way solo mining.

yes, I guess the proper phraseology would be "mining on an independent node", as opposed to conventional pool mining, where everyone is submitting shares to solve 1 node's block (the pool operator's node).

but I could have that completely misunderstood as well.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: jonnybravo0311 on June 28, 2015, 03:14:31 AM
It's a misunderstanding of the term solo mining.

Solo mining means you are taking on all the variance of block finding.
You are not pooling your mining efforts with anyone else (and thus are not sharing the reward)

p2pool is not in any way solo mining.

yes, I guess the proper phraseology would be "mining on an independent node", as opposed to conventional pool mining, where everyone is submitting shares to solve 1 node's block (the pool operator's node).

but I could have that completely misunderstood as well.
That's how a conventional pool works.  Everyone on the pool is attempting to solve the same block.


Title: Re: Blockswarm Protocol proposition - solo mining, full node cooperative
Post by: GingerAle on June 28, 2015, 03:18:10 AM
It's a misunderstanding of the term solo mining.

Solo mining means you are taking on all the variance of block finding.
You are not pooling your mining efforts with anyone else (and thus are not sharing the reward)

p2pool is not in any way solo mining.

yes, I guess the proper phraseology would be "mining on an independent node", as opposed to conventional pool mining, where everyone is submitting shares to solve 1 node's block (the pool operator's node).

but I could have that completely misunderstood as well.
That's how a conventional pool works.  Everyone on the pool is attempting to solve the same block.

word, then its all cleared up. Thanks. Once I have a free weekend, i'll switch over my poor little miner from a lottery pool to p2pool.