New Extension Proposal - Share Mirroring for the Template Provider #204
radikalreems
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
I would like feedback on my new extension proposal that would allow the shares that are being sent from Mining Devices to Pools to be sent to the Template Provider as well.
The reason for this can be explained by another project I'm working on: a company that manages hashrate rentals by locating/bidding for the cheapest hashrate possible for a client. Currently I use DATUM and that allows a client to handle template creation if they would like, but recently with the Knots/BIP110 drama I worry DATUM may have some future hiccups. I view SV2 as likely a better technical solution anyway, as it modularizes the mining protocol. With DATUM, a user would not only handle template creation but also pool and miner connections. As the entity that is sourcing the hashrate, I'd like to have more control over the fleet of miners and even the connection to the pool, as different pools have different tradeoffs. SV2 allows a company to handle all of this while delegating the most important part to the client: the template creation.
This gets into the issue: a user running a template provider alone has no insight into whether or not the templates they are providing are actually being worked on.
I propose simply routing the existing work shares that are moving from Mining Devices to Pools to also be sent to the template provider if they please.
This can be done with a new extension, allowing it to be opt-in for situations like this.
A couple of issues I see:
Extension negotiation (0x0001) is not currently supported through TDP. Specifically on sv2-tp or JDC (when talking to the TP).
Sending every share to the TP that is being sent to the pool would need some bandwidth considerations. I don't believe it would be necessary for a 1:1, but a trust-minimizing approach would go there. The TP simply wants to know that it's their templates being hashed.
I've created a draft for this new extension proposal here:
https://github.com/radikalreems/sv2-extension-share-mirroring/blob/main/README.md
I've also created a draft for supporting extension negotiations via TDP here:
https://github.com/radikalreems/sv2-extension-share-mirroring/blob/main/issue-tdp-extensions-negotiation.md
Thank you for any feedback.
All reactions