229 / 691JNP

Job Negotiation

Negociación de trabajo de minería propio

Job Negotiation separa la selección de transacciones de la contabilidad de minería compartida. Su efecto depende de los protocolos, el modo de revelar datos y la respuesta al rechazo; conectarse mediante Stratum V2 no basta.

Job Negotiation es la coordinación de trabajo de minería propio entre minero y pool. La especificación Stratum V2 lo describe mediante Job Declaration Protocol junto con la distribución de plantillas y tareas de minería.

Mining Protocol puede funcionar sin Job Declaration ni Template Distribution. En ese caso, el pool sigue distribuyendo trabajo unilateralmente. La selección propia requiere cliente, proveedor de plantillas y pool compatibles, no solo otro protocolo de transporte. [Stratum V2 — Mining Protocol and Custom Jobs] [SRI — Pool and miner application roles]

Mediante CoinbaseOutputConstraints, Template Provider recibe requisitos de salidas coinbase adicionales y sigops. JDC debe averiguarlos para los pools utilizados. Sin reservas correctas, añadir salidas de pago podría superar los límites del bloque; seleccionar transacciones está ligado a construirlo. [Stratum V2 — Template Distribution Protocol]

En Full-Template, JDC envía DeclareMiningJob a JDS. El servidor puede solicitar transacciones faltantes mediante ProvideMissingTransactions. Confirmar la declaración y que el pool acepte posteriormente el trabajo propio son dos pasos separados, no un único mensaje. [Stratum V2 — Job Declaration Protocol]

Coinbase-only no usa DeclareMiningJob y JDC no revela el conjunto de transacciones. El pool evalúa los ingresos mediante coinbase. La privacidad del conjunto no prueba su validez ni las comisiones declaradas; la especificación describe expresamente ese riesgo. [Stratum V2 — Job Declaration Protocol]

SetCustomMiningJob referencia un mining_job_token de JDS. Al aceptar, el pool devuelve SetCustomMiningJob.Success con su propio job_id. Estos identificadores cumplen funciones distintas; los resultados se envían para el trabajo confirmado con el job_id correspondiente. [Stratum V2 — Mining Protocol and Custom Jobs]

Con los datos necesarios, la minería optimista puede empezar antes de SetCustomMiningJob.Success. Las shares encontradas se guardan hasta la confirmación. Calcular hashes no significa que el pool ya haya aceptado el trabajo o abonado su recompensa. [Stratum V2 — Mining Protocol and Custom Jobs]

Ante SetCustomMiningJob.Error o un timeout, la especificación recomienda cambiar a otro pool o a minería en solitario. La resistencia depende de un fallback funcional. Seguir silenciosamente con la plantilla del pool que rechaza no conservaría la selección original. [Stratum V2 — Mining Protocol and Custom Jobs] [SRI — Pool and miner application roles]

JDC debe asignar valor a la salida designada del pool para optar a sus recompensas. Desviar parte del ingreso a otras salidas puede reducir proporcionalmente la recompensa. Job Declaration no convierte la contabilidad compartida en un pago directo automático al minero. [Stratum V2 — Job Declaration Protocol]

Para obtener la imagen más completa, lee esta entrada junto con Stratum V2, getblocktemplate, Mining Pool, Block Template. También enlazan con esta entrada Stratum V2, Mining Pool Centralization.

DOC · 001Stratum V2 — Mining Protocol and Custom JobsEspecificaciónDOC · 002Stratum V2 — Job Declaration ProtocolEspecificaciónDOC · 003Stratum V2 — Template Distribution ProtocolEspecificaciónDOC · 004SRI — Pool and miner application rolesFuente primaria
Fuentes primero · No es asesoramiento financiero