Bitcoind
池伺服器是否與 bitcoind 進行通信,以及以什麼容量?
我試圖了解整個過程是如何流動的。這是我目前理解它的工作方式。
挖礦客戶端 -> 礦池伺服器 -> Bitcoind
getwork
:
getwork
從 Pool 伺服器探勘客戶端呼叫,然後getwork
從 Bitcoind 呼叫(或其他什麼?)。
stratum
:
- 挖礦客戶端使用地層協議接入礦池伺服器,礦池伺服器
getwork
從 Bitcoind 呼叫(或其他什麼?)。
getblocktemplate
:
- 挖礦客戶端呼叫,以及來自 Bitcoind
getblocktemplate
的礦池伺服器呼叫。getblocktemplate
而且我知道池伺服器不僅僅是中繼資訊,但我想保持簡單。我只是想了解它是如何一起流動的,以及它的名稱。
任何幫助是極大的讚賞!
getwork
出於所有意圖,由於效率低下而完全棄用。此時,單個 ASIC 設備可以完全淹沒bitcoind
請求,因為它們能夠在幾分之一秒內耗盡 32 位隨機數。情況非常嚴重,以至於像 BTC Guild 這樣的礦池對使用getwork
的客戶收取非常高的 (6%+) 費用,以便讓他們改用更有效的方法。在內部,像Eloipool這樣的池用於
getblocktemplate
為客戶端生成工作,然後根據它們發出的請求類型使用stratum
或與工作人員進行通信。不參與任何階段。事實上,它目前已被固定在某個時候完全刪除。getblocktemplate``getwork