Что такое Stratum-прокси?
Stratum-прокси — это программный посредник, который располагается между ASIC-устройствами фермы и сервером пула для майнинга. Вместо того чтобы каждый майнер открывал собственное Stratum-соединение напрямую с пулом, майнеры подключаются к локальному прокси, который, в свою очередь, поддерживает восходящее соединение (или несколько соединений) с пулом и пересылает задания и отправку шар в обоих направлениях.
В спецификации Stratum V2 майнинг-прокси прямо описывается как опциональная роль: он может агрегировать нисходящие соединения ради эффективности и предоставлять мониторинг или иные сервисы для операции, однако ничто в архитектуре протокола не требует от фермы обязательно запускать такой прокси (Обзор протокола Stratum V2). Эта опциональность — правильная отправная точка для любой фермы, оценивающей необходимость добавления данного уровня.
Краткий ответ: разворачивайте прокси для решения конкретной проблемы
Майнинг-ферме не нужен Stratum-прокси просто потому, что на ней работает много ASIC-устройств. Прямые соединения майнер–пул остаются уместными, если у фермы надёжное интернет-подключение, управляемый объём трафика и корректно настроенные основной и резервный адреса пула на каждом устройстве.
Прокси стоит рассматривать тогда, когда прямые соединения создают измеримую операционную проблему: ограниченную или дорогостоящую пропускную способность канала, сложности с управлением маршрутизацией пулов на большом парке оборудования, несовместимость протоколов между устаревшей прошивкой и более новым эндпоинтом пула, либо потребность в централизованной видимости поведения соединений. Решение должно следовать из выявленной проблемы, а не из общего предположения, что более крупным фермам требуется больше уровней инфраструктуры.
Четыре ситуации, в которых стоит рассмотреть прокси
1. Ограниченная по пропускной способности или дорогая WAN-связь
Когда множество ASIC-устройств используют общий ограниченный или дорогой канал глобальной сети — например, удалённая площадка с подключением через сотовую связь или спутниковый канал, — каждое устройство, открывающее собственную постоянную Stratum-сессию и независимо отправляющее шары, может создавать значительный совокупный трафик. Прокси для агрегации вычислительной мощности объединяет нескольких майнеров за меньшим числом восходящих соединений, что может снизить объём трафика между фермой и пулом.
Braiins заявляет, что их Farm Proxy способен сократить объём передаваемых данных между фермой и пулом до 95%, при этом явно отмечая, что фактическое сокращение зависит от количества майнеров и используемой конфигурации (Braiins Proxy). Это заявленный производителем максимум для конкретного продукта, а не общий отраслевой ориентир, и воспринимать его следует именно так. Актуальный вопрос для оператора заключается не в том, может ли агрегация теоретически помочь, а в том, оправдывают ли текущее использование WAN-канала фермой и его стоимость добавление этого программного уровня.
2. Централизованная маршрутизация пулов и резервирование (failover)
Прокси может служить единой локальной точкой входа для группы майнеров, направляя их трафик вверх по заранее настроенным один раз правилам, вместо настройки на каждом отдельном устройстве. Для парка из нескольких сотен или нескольких тысяч ASIC-устройств это может снизить операционные затраты на изменение адресов пула, настройку воркеров или переназначение резервных маршрутов.
В документации Braiins Farm Proxy описаны настраиваемые уровни маршрутизации и рекомендуется задавать резервную восходящую цель на случай недоступности основного маршрута (Настройка Braiins Farm Proxy). Централизация маршрутизации таким образом снижает объём настройки на уровне отдельных устройств, но при этом сам прокси становится зависимостью, за которой необходимо следить, — к этому вопросу мы вернёмся ниже.
3. Соединение Stratum V1 и Stratum V2
В некоторых операциях используется прошивка ASIC, поддерживающая только Stratum V1, в то время как рассматривается переход на эндпоинт пула с поддержкой Stratum V2. Прокси-транслятор в принципе способен устранить этот разрыв, но только в том случае, если пул, реализация прокси и прошивка майнера совместно поддерживают конкретную требуемую конфигурацию.
Пока это ещё не является стандартом для отрасли в целом. Опубликованные в настоящее время адреса подключения ViaBTC для майнинга Bitcoin используют синтаксис подключения 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 и отдельный резервный порт в своём руководстве по настройке майнинга, что позволяет майнеру переключиться на альтернативную точку подключения, если основная становится недоступной (Настройка майнинга BTC в ViaBTC).
Там, где подключение фермы надёжно, объём её трафика ничем не примечателен относительно пропускной способности канала, а базовые резервные записи корректно настроены на каждом устройстве, добавление прокси вносит операционную сложность, не решая при этом никакой существующей проблемы. Правильный критерий — не теоретическая способность прокси добавить ценность, а то, перестают ли прямые подключения в данный момент удовлетворять конкретную, чётко определённую потребность.
Что прокси не исправляет
Stratum-прокси работает на уровне сетевого взаимодействия между майнерами и пулом. Он не изменяет вычислительную кремниевую логику ASIC и не может компенсировать условия, возникающие в самом оборудовании. В частности, прокси не увеличивает:
- локальный хешрейт устройства, как он отображается собственной прошивкой;
- эффективность оборудования, измеряемую в J/TH;
- физическое состояние хешбордов, блоков питания, вентиляторов или сетевого интерфейсного оборудования.
Если основная проблема фермы заключается в деградировавших чипах, тепловом троттлинге, нестабильном источнике питания или неисправном коммутаторе, прокси её не устранит, поскольку неисправность находится выше по цепочке относительно точки вмешательства прокси. Устойчивые расхождения между показателем локального хешрейта устройства и оценкой хешрейта пулом следует исследовать с использованием сопоставимых, достаточно продолжительных окон наблюдения, а также данных об отклонённых шарах и диагностики прошивки/оборудования — а не считать их проблемой подключения, решаемой добавлением прокси.
Оценка необходимости: контрольный список измерений
Прежде чем разворачивать прокси, оператор может собрать небольшой набор конкретных измерений, чтобы подтвердить, существует ли реальная проблема:
- Объём и стоимость WAN-трафика между фермой и пулом за репрезентативный период — чтобы установить, принесёт ли его сокращение практическую пользу.
- Количество одновременных подключений к пулу относительно числа активных майнеров — чтобы понять, испытывает ли нагрузку WAN-канал или система обработки соединений пула.
- Стабильность соединений, включая переподключения, тайм-ауты, сбои DNS и события переключения на резервный канал — чтобы определить, поможет ли централизованная маршрутизация или дополнительные конечные точки.
- Паттерны отклонённых шар (rejected shares), при этом устаревшие (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 — всё это веские причины рассмотреть использование прокси. Если ни одно из этих условий не применимо, корректно настроенные прямые подключения с валидными резервными записями пула остаются более простым и зачастую достаточным выбором. В любом случае прокси решает задачи уровня связи между майнерами и пулом — он не является заменой диагностике аппаратных неисправностей, проблем с прошивкой или локальной сети.
FAQ
Увеличивает ли добавление Stratum-прокси хешрейт фермы?
Нет. Прокси управляет соединениями и маршрутизацией шар между майнерами и пулом; он никак не влияет на кремний ASIC, локальный хешрейт или эффективность в J/TH.
Может ли прокси устранить высокий процент отклонённых шар?
Только если причина связана с подключением, например нестабильной маршрутизацией или избыточной задержкой до пула. Устаревшие (stale), недействительные (invalid) и дублирующиеся (duplicate) шары — это отдельные подкатегории отклонённых шар, и их следует диагностировать индивидуально, прежде чем предполагать, что решением является прокси.
Обязателен ли прокси для использования Stratum V2?
Нет. Многие пулы и ASIC подключаются к конечным точкам V2 напрямую там, где это поддерживается. Прокси становится актуальным главным образом при соединении прошивок, поддерживающих только V1, с вышестоящим узлом V2, либо при агрегации большого числа устройств, поддерживающих V2.
Даёт ли установка прокси ферме контроль над шаблонами блоков?
Нет. Эта возможность относится к отдельной функции Job Declaration протокола Stratum V2, которая требует дополнительных компонентов сверх стандартного майнинг-прокси и соответствующей поддержки со стороны пула.
В чём главный риск развёртывания прокси?
Он создаёт единую точку отказа: если прокси становится недоступен, все майнеры, маршрутизируемые через него, могут одновременно потерять соединение с пулом, поэтому сохранение резервной конфигурации пула непосредственно на ASIC является разумной мерой предосторожности.
Источники
- Braiins. «Braiins Proxy». https://braiins.com/braiins-proxy
- Braiins Academy. «Настройка прокси для фермы». https://academy.braiins.com/farm-proxy/configuration
- Stratum V2 Reference Implementation. «Обзор протокола». https://stratumprotocol.org/specification/03-protocol-overview/
- Stratum V2 Reference Implementation. «Безопасность протокола». https://stratumprotocol.org/specification/04-protocol-security/
- ViaBTC Support. «Майнинг BTC». https://support.viabtc.com/hc/en-us/articles/7207401012879-BTC-Mining


