礦場何時需要部署Stratum代理?
2026-11-09 09:10

什麼是 Stratum 代理?

Stratum 代理是一種軟件中介,置於礦場的 ASIC 與礦池伺服器之間。礦機不再各自直接與礦池建立 Stratum 連接,而是連接到本地代理,再由代理維護與礦池的上游連接,並雙向轉發工作任務及份額提交。

在 Stratum V2 規範中,挖礦代理被明確描述為一項可選角色:它可以整合下游連接以提高效率,並可能為營運提供監控或其他服務,但協議設計本身並未要求礦場必須運行代理(Stratum V2 協議概覽)。對於任何正在評估是否要加入這一層的礦場而言,這種「可選性」正是正確的出發點。

簡短回答:為解決特定問題而部署

礦場並不會僅僅因為運行大量 ASIC 就需要 Stratum 代理。當礦場擁有穩定的網絡連接、可管理的流量,並在每台設備上正確配置了主用及備用礦池地址時,礦機直連礦池的方式仍然適用。

當直連方式帶來可量化的營運問題時,代理才值得評估考慮:例如頻寬受限或成本高昂、在大規模機群中難以管理礦池路由、舊版韌體與較新礦池端點之間的協議不匹配,或是需要集中掌握連接狀態的可見性。這項決策應該源於已識別的具體問題,而非出於「規模越大的礦場就需要越多基礎設施層」的籠統假設。

值得考慮使用代理的四種情況

1. 頻寬受限或成本高昂的廣域網連接

當大量 ASIC 共用有限或昂貴的廣域網連接時——例如依賴蜂窩網絡或衛星回程的偏遠站點——每台設備各自建立持久的 Stratum 連接並獨立提交份額,可能會造成相當可觀的總流量。算力聚合代理可將多台礦機整合在較少的上游連接之後,從而降低礦場與礦池之間的流量。

Braiins 表示,其 Farm Proxy 最多可將礦場與礦池之間的數據傳輸量降低 95%,同時明確指出實際降幅取決於礦機數量及所採用的配置(Braiins Proxy)。這是廠商針對特定產品給出的最大值,而非普遍的行業基準,應以此角度理解。對於營運者而言,關鍵問題並非聚合在理論上能否帶來幫助,而是礦場目前的廣域網使用量及成本是否真的足以證明增加這層軟件的合理性。

2. 集中式礦池路由與故障轉移

代理可作為一組礦機的單一本地端點,依照僅需配置一次的規則將其流量轉發至上游,而不必在每台設備上逐一設定。對於擁有數百甚至數千台 ASIC 的機群而言,這可以減少更改礦池端點、調整礦工設定或重新分配備用路由所需的營運工作量。

Braiins 的 Farm Proxy 文件描述了可配置的路由層級,並建議設定備用上游目標,以防主路由不可用(Braiins Farm Proxy configuration)。以這種方式集中路由能減少每台設備的配置工作,但同時也意味著代理本身會成為一個需要被監控的依賴環節——這一點將在下文進一步討論。

3. 橋接 Stratum V1 與 Stratum V2

部分營運場景中,ASIC 韌體僅支援 Stratum V1,而營運方同時在評估支援 Stratum V2 的礦池端點。轉換代理原則上可以彌合這一差距,但前提是礦池、代理實現以及礦機韌體三者都必須支援所需的特定配置。

這在業內目前尚未成為預設情況。ViaBTC 目前公佈的比特幣挖礦節點地址使用 stratum+tcp 連接語法,與 Stratum V1 一致,而該礦池也指出,Stratum V2 在業界的採用情況仍參差不齊。考慮採用 V1 轉 V2 轉換代理的礦場,應將其視為一項需要獨立相容性測試的分階段遷移計劃,而非認為代理可自動實現此功能。

4. 進階 Stratum V2 架構,包括任務聲明(Job Declaration)

Stratum V2 將若干角色進行了分離,而挖礦代理只是其中之一。諸如任務聲明(Job Declaration)等功能——與礦工或礦池影響區塊範本構建的能力有關——屬於協議中涉及額外組件的另一獨立部分,包括任務聲明者(Job Declarator),以及視架構而定的範本提供者(Template Provider)(Stratum V2 協議概覽)。僅安裝一個普通的挖礦代理,本身並不會為礦場提供交易選擇能力。對此功能感興趣的操作者,應將其視為一項獨立且更為複雜的部署來評估,而非假設這是添加任何代理後自然產生的附帶效果。

何時直接的 ASIC 對礦池連接已足夠

對許多礦場而言,最簡單的方案往往也是正確的方案:每台 ASIC 直接連接至礦池,並在韌體中設定一個有效的主要節點地址,以及一個或多個備用項目。例如,ViaBTC 在其挖礦設定指南中記錄了一個主要的 BTC 節點地址,以及一個獨立的故障轉移端口,讓礦工在主要連接點無法連通時可切換至替代連接點(ViaBTC BTC 挖礦設定)。

當礦場的連接可靠、其流量對於其鏈路容量而言並無異常,且每台設備上均已正確設定基本的備用項目時,加入代理只會增加操作複雜度,卻無法解決任何現存問題。恰當的判斷標準在於:直接連接目前是否未能滿足某項具體、可識別的需求——而非代理在理論上是否具備增值能力。

代理無法解決的問題

Stratum 代理運作於礦工與礦池之間的網絡通訊層面。它不會改變 ASIC 的算力晶片,也無法彌補源自硬件本身的狀況。具體而言,代理不會提高:

  • 設備自身韌體所回報的本地算力;
  • 以 J/TH 為單位衡量的硬件效率;
  • 算力板、電源供應器、風扇或網絡介面硬件的物理狀況。

如果礦場的根本問題在於晶片性能劣化、熱降頻、電源供應不穩定,或交換機故障,代理並不能解決這些問題,因為故障發生在代理介入點的上游。若設備的本地算力讀數與礦池的算力估算值之間持續出現差異,應使用對應且足夠長的觀察時間窗口,連同拒絕份額(rejected-share)數據以及韌體/硬件診斷進行調查——而不應假定這是可透過添加代理解決的連接問題。

評估需求:一份量度清單

在部署代理之前,營運者可以先蒐集一小組具體量度數據,以確認是否真的存在問題:

  • 礦場與礦池之間的 WAN 流量及成本,以具代表性的時間段計算,藉此確立減少流量是否具有實際價值。
  • 併發礦池連線數量相對於活躍礦機數量的比例,以觀察 WAN 端或礦池的連線處理是否正承受壓力。
  • 連線穩定性,包括重連、逾時、DNS 失敗及故障切換事件,以判斷集中式路由或增設端點是否有所幫助。
  • 拒絕份額的模式,將過期(stale)、無效(invalid)及重複(duplicate)份額識別為「拒絕份額」這個大類別下各自獨立的子類別,以便診斷出拒絕率偏高的真正原因,而非單憑假設。
  • 全系統的韌體與協議相容性,確認哪些 ASIC 僅支援 Stratum V1,以及有哪些礦池端點可供使用,然後才考慮任何 V1 轉 V2 的轉換方案。
  • 配置負擔,即整個礦機群組中,礦池端點、礦工名稱或備用路由需要變更的頻率,這能顯示集中式路由是否能有效減少營運工作量。

這些量度數據可以指出相關問題究竟是頻寬、路由複雜度、協議相容性,還是與連線完全無關的因素——例如硬件狀況。

部署考量與風險

引入代理會改變礦場的架構,而這種改變本身也帶有需要與其所要解決的問題相權衡的取捨。

首先,代理會成為額外的單點故障:若其離線,所有經由它路由的礦機都可能同時失去連線,而非個別裝置各自獨立出現故障。因此,在 ASIC 上直接保留一組與代理分開的備用礦池設定,是一項合理的預防措施,部分代理供應商本身亦建議這樣做(Braiins Farm Proxy 配置)。

第二,運行代理軟件會增加持續性的營運工作:部署、版本更新、日誌檢視及配置管理,全部都需要投入關注,而直連設定則無需如此。

第三,不同礦池在所支援的協議版本、端點格式及路由行為上各有差異,因此在某個礦池上驗證有效的代理配置,不能假設在另一個礦池上也能同樣運作,仍需經過測試。

第四,在安全方面,Stratum V2 規定與遠端上游伺服器之間的連線須採用具驗證機制的加密,而本地挖礦裝置與本地代理之間的連線,則可能採用較輕量、屬選用性質的交握安排(Stratum V2 協議安全性)。因此,在 Stratum V2 下,代理可以提升礦場至礦池連線的安全狀態,但它並不會自動令原本未受保護的 Stratum V1 部署變得安全,而礦場本身的本地網絡安全,仍需獨立於代理之外另行處理。

結論

是否部署 Stratum 代理,應由具體且已獲證實的營運需求來決定,而非單憑礦機群組規模。頻寬限制、在眾多裝置間管理礦池路由所帶來的行政負擔、計劃中由 Stratum V1 遷移至 V2,或是對進階 V2 功能的需求,皆屬於評估部署代理的正當理由。若上述情況皆不適用,配置正確且備有有效備用礦池項目的直連方式,仍是較簡單且往往已足夠的選擇。無論在哪種情況下,代理所處理的都是礦機與礦池之間的通訊層——它並不能替代對硬件故障、韌體問題或本地網絡問題的診斷。

常見問題

加裝 Stratum 代理會提升礦場的算力嗎?

不會。代理只負責管理礦機與礦池之間的連線及份額(share)路由,對 ASIC 的挖礦晶片、本地算力或 J/TH 能效並無任何影響。

代理能否解決較高的拒絕份額(rejected share)比率問題?

只有在成因屬於連線相關問題時才有效,例如路由不穩定或與礦池之間延遲過高。過期(stale)、無效(invalid)及重複(duplicate)份額屬於拒絕份額下不同的子類別,應逐一診斷,不應貿然假設代理就是解決方案。

使用 Stratum V2 是否一定需要代理?

不一定。許多礦池及 ASIC 在支援的情況下可直接連接至 V2 端點。代理主要在以下情況才顯得重要:將僅支援 V1 的韌體橋接至 V2 上游,或需整合大量支援 V2 的設備時。

安裝代理是否能讓礦場掌控區塊模板?

不能。該功能屬於 Stratum V2 獨立的任務宣告(Job Declaration)功能,除標準挖礦代理外,還需要額外的組件及相應的礦池支援才能實現。

部署代理的主要風險是什麼?

它會引入單點故障(single point of failure):一旦代理失效,所有經由其路由的礦機都可能同時失去與礦池的連線,因此在 ASIC 上直接保留備用礦池設定是合理的預防措施。

參考資料