Перейти к содержимому

Шары (Shares): как пулы отслеживают вашу работу

Фундаментальная проблема, которую решают шары

Заголовок раздела «Фундаментальная проблема, которую решают шары»

Представьте: вы и еще 10 000 майнеров объединились в пул. Кто-то в пуле находит блок стоимостью 3,125 BTC плюс комиссии. Отлично — но как пулу решить, кто сколько получит? Майнер, нашедший блок, вычислил последний удачный хеш, но все остальные работали ничуть не меньше. Нельзя же заплатить только тому, кому повезло.

Пулу нужен способ измерить вклад каждого майнера. Для этого и существуют шары (shares). Это квитанции о проделанной работе — доказательство того, что ваш майнер действительно занимался хешированием, а не простаивал в ожидании доли наград.

Без шар пулы были бы невозможны. Не существовало бы справедливого способа распределять вознаграждение.

Шара — это хеш, найденный вашим майнером, который удовлетворяет пороговой сложности пула — значительно более низкой, чем порог сложности сети Биткоина.

Вспомните статью о сложности: сеть Биткоина требует хеш ниже невероятно малого таргета (сложность в десятки триллионов). Один ваш ASIC может найти такой хеш лишь раз в несколько десятилетий. Но пул устанавливает гораздо более легкий таргет для шар.

Вот как это работает на практике:

  1. Пул отправляет вашему майнеру задание (шаблон блока для работы).
  2. Ваш майнер начинает хеширование — перебирает миллиарды вариантов в секунду.
  3. Каждый раз, когда он находит хеш ниже облегченного таргета пула, он отправляет результат пулу в виде шары.
  4. Пул записывает эту шару как доказательство вашей работы.
  5. В редких случаях одна из этих шар оказывается также ниже гораздо более жесткого таргета сети — это валидный блок. Джекпот.

Представьте, что вы моете золото в реке. Пул просит вас показывать каждый найденный самородок, даже крошечный (шары). Чаще всего вы находите мелкие самородки, которые подтверждают, что вы работаете. И очень редко кто-то из пула находит гигантский самородок (блок). Награда делится пропорционально количеству мелких самородков, которые предъявил каждый.

Типы шар: принятые, отклоненные, устаревшие

Заголовок раздела «Типы шар: принятые, отклоненные, устаревшие»

Когда ваш майнер отправляет шару в пул, происходит одно из трех:

Шара соответствует целевой сложности пула и пришла вовремя. Пул записывает ее, и она учитывается в вашем вкладе. Это именно то, что вам нужно — каждая принятая шара приближает вас к выплате.

На панели управления вы хотите видеть стабильный рост принятых шар. Здоровый майнер с хорошим сетевым подключением будет иметь процент приема значительно выше 98%.

Пул посмотрел на шару и сказал “не подходит”. Это может произойти по нескольким причинам:

  • Невалидный хеш — шара на самом деле не соответствует требованию сложности пула. Обычно это указывает на аппаратную проблему (сбойная хеш-плата, перегрев, нестабильный разгон).
  • Дублирующая шара — ваш майнер уже отправлял эту точно такую же шару. Бывает при ошибках прошивки или неправильной конфигурации.
  • Задание не найдено — шара ссылается на задание, которое пул не распознает. Часто вызвано ошибками в настройках ПО или проблемами с подключением.

Отклоненные шары — это потраченная впустую работа. Ваш майнер потратил электричество на их вычисление, но вы не получите за них ничего.

Устаревшие шары — самый распространенный тип потерь, и они заслуживают отдельного внимания. Шара считается “устаревшей”, когда она полностью валидна, но пришла слишком поздно — задание, над которым она работала, уже истекло.

Вот что происходит:

  1. Пул отправляет вашему майнеру Задание A.
  2. Кто-то в сети находит блок, меняя состояние блокчейна.
  3. Пул создает Задание B (на основе нового блока) и отправляет его вашему майнеру.
  4. Но ваш майнер все еще работал над Заданием A и отправляет для него шару.
  5. Пул отвечает: “извините, Задание A закрыто — эта шара устарела”.

Зазор между моментом, когда новое задание доступно, и моментом, когда ваш майнер переключается — вот где рождаются устаревшие шары. Это состояние гонки, и задержка сети — главный фактор.

Помните, что пулы используют собственную сложность, отдельную от сетевой? Сложность пула определяет, насколько “трудно” найти каждую шару и, соответственно, сколько шар ваш майнер будет отправлять за единицу времени.

Низкая сложность шар = много мелких шар в минуту. Каждая подтверждает небольшой объем работы.

Высокая сложность шар = мало крупных шар в минуту. Каждая подтверждает больше работы.

Суть в том, что это не имеет значения. Отправите ли вы 100 шар со сложностью 1 000 или 1 шару со сложностью 100 000 — вы доказали одинаковый объем работы. Пул учитывает сложность шары при расчете вашего вклада.

Большинство современных пулов используют переменную сложность (vardiff). Они автоматически настраивают сложность шар для каждого майнера в зависимости от его хешрейта:

  • Майнеру на 200 TH/s может быть назначена сложность 65 536 — он отправляет шару каждые несколько секунд.
  • Майнеру на 50 TH/s — сложность 16 384 — он тоже отправляет каждые несколько секунд.

Цель — поддерживать стабильную, управляемую частоту отправки шар — не слишком частую (что расходует пропускную способность и ресурсы пула) и не слишком редкую (что снижает точность оценки хешрейта).

Частота отправки шар (шары в минуту или в секунду) зависит от:

  1. Вашего хешрейта — больше мощности означает больше шансов найти шару.
  2. Сложности шар — более высокая сложность = меньше шар, но каждая “стоит” больше.
  3. Удачи — да, даже шары подчиняются вероятности. В любую конкретную минуту вы можете найти больше или меньше шар, чем в среднем.

Ожидаемую частоту можно рассчитать:

Ожидаемое количество шар/сек = Хешрейт / (2^32 x Сложность шары)

Для майнера на 200 TH/s со сложностью шары 65 536:

200 000 000 000 000 / (4 294 967 296 x 65 536) = ~0,71 шары в секунду

То есть примерно одна шара каждые 1,4 секунды. В реальности будут всплески и паузы, потому что это случайный процесс, но со временем все усредняется.

Как уменьшить количество отклоненных и устаревших шар

Заголовок раздела «Как уменьшить количество отклоненных и устаревших шар»

Каждая отклоненная или устаревшая шара — это потраченное электричество и упущенный доход. Вот практические шаги для минимизации потерь:

  1. Выбирайте географически близкий сервер пула. Если вы в Москве, подключайтесь к европейскому серверу, а не к серверу в Сингапуре. Задержка имеет значение — каждая миллисекунда увеличивает долю устаревших шар.

  2. Используйте проводное подключение Ethernet. Wi-Fi добавляет задержку и подвержен потере пакетов. Майнинг всегда должен работать через прямой Ethernet-кабель.

  3. Проверьте качество сети. Запустите пинг до сервера пула. Обратите внимание на высокую задержку (более 100 мс) или потерю пакетов (любой процент выше 0). Любая из этих проблем увеличивает количество устаревших шар.

  4. Рассмотрите использование прокси для пула. Некоторые майнеры запускают локальный прокси (например, Stratum-прокси), который более эффективно управляет подключениями к пулу, особенно при нескольких ASIC-ах.

  5. Включите AsicBoost, если поддерживается. Это не уменьшает устаревшие шары напрямую, но увеличивает эффективный хешрейт, улучшая соотношение полезной работы.

  1. Не перегибайте с разгоном. Агрессивный оверклокинг вызывает ошибки хеширования, которые приводят к невалидным шарам. Если процент отклонений подскочил после разгона — сбавьте обороты.

  2. Следите за температурой. Перегрев вызывает ошибки хеш-плат. Держите майнеры в пределах рекомендованного производителем температурного диапазона.

  3. Проверьте блок питания. Недостаточно мощный или выходящий из строя БП может вызывать периодические ошибки хеширования. Убедитесь, что БП обеспечивает стабильное питание с достаточным запасом.

  4. Обновите прошивку. Обновления прошивки от производителя иногда исправляют ошибки, приводящие к дублирующим или невалидным шарам.

  5. Проверьте настройки пула. Убедитесь, что вы используете правильный URL Stratum, порт и учетные данные воркера. Неправильные настройки могут приводить к отклонению заданий.

Шары — единственная основа, по которой пулы рассчитывают вашу выплату. Каждый метод выплат (PPS, FPPS, PPLNS — подробнее в отдельной статье) использует шары как входные данные:

  • В PPS/FPPS: каждая принятая шара имеет фиксированную стоимость в BTC. Вы получаете оплату за каждую шару независимо от того, находит ли пул блоки.
  • В PPLNS: когда пул находит блок, он смотрит на последние N отправленных шар и распределяет награду пропорционально тому, кто их отправил.

В любом случае: больше принятых шар = больше денег. Каждая устаревшая или отклоненная шара — это деньги прямо из вашего кармана.

”Хешрейт” на панели управления рассчитывается из шар

Заголовок раздела «”Хешрейт” на панели управления рассчитывается из шар»

Вот важный момент: “хешрейт”, который показывает панель управления вашего пула, — это не прямое измерение. Это оценка, основанная на количестве и сложности отправляемых вами шар:

Оценочный хешрейт = (Шары x Сложность шары x 2^32) / Временной период

Вот почему хешрейт на панели управления колеблется. За короткое окно (5 минут) случайность в отправке шар заставляет оценочный хешрейт скакать. За более длительное окно (24 часа) он сходится к вашему реальному хешрейту.

Если среднее за 24 часа стабильно ниже заявленного хешрейта вашего майнера — возможно, есть аппаратная проблема. Если стабильно выше — пул, вероятно, назначает более низкую сложность, чем оптимально (нетипично, но бывает).

  • Шары — это квитанции о проделанной работе, которые пулы используют для отслеживания вклада каждого майнера.
  • Шара — это хеш, удовлетворяющий порогу сложности пула (значительно легче сложности сети).
  • Принятые шары учитываются в выплате. Отклоненные — потраченная впустую работа. Устаревшие — пришли слишком поздно.
  • Сложность шар корректируется пулом (vardiff) — более высокая сложность означает меньше, но более “весомых” шар. Заработок одинаковый.
  • Устаревшие шары в основном вызваны задержкой сети. Используйте ближайший сервер пула и проводное подключение.
  • Отклоненные шары часто указывают на аппаратные проблемы — перегрев, чрезмерный разгон или проблемы с блоком питания.
  • Хешрейт на панели управления пула — это оценка, рассчитанная из частоты отправки шар.
  • Стремитесь к 99%+ уровню приема. Ниже 98% — повод для расследования.

Далее: Nonce и extraNonce — скрытый механизм, позволяющий майнерам перебирать достаточное количество вариантов для нахождения валидных хешей.