Stale shares ethereum что это значит

Что такое Stale Shares для майнеров

«Тише едешь, дальше будешь», или: «Что такое Stale Shares?».

Дословный перевод звучит как «запоздалая шара», который является рабочим сленгом как для опытных, так и не для опытных майнеров.

Чтобы понять суть, укажем, что Stale Shares — это такая шара, которая пришла слишком поздно от участника системы, когда соответствующий блок был кем-то подписан.

Содержание:

Признаки появления запоздалых шар

В системе пула может быть такое, система не отправляет команду «отбой» или рабочая клиент-программа, по каким-то причинам, не понимает действие возникновения причины, то есть, не понимает команду «отбой» и тогда примерно 0,5-1,5% шар будут признаны устаревшими.

Сам принцип отбоя реализован через программу long polling.

Иногда большое количество устаревших шар в сети, например ethermine stale shares, если параметры мощности пула очень высокие, а ваш пинг ниже средних показателей.

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

Читайте также:

Как можно решить проблему

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

В большинстве случаев, Stale Shares не воспринимается системой как ошибка, просто компьютер не успевает вовремя передать шару в пул.

Естественно, появление устаревших шар в конечном итоге оказывает влияние на «фонд оплаты майнеров».

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

Если требуется, то уменьшайте показатели разгона, в частности цифры для MH/S. Пусть показатели будут меньше для разгона, зато вы добьётесь бесперебойной работы вашей аппаратуры, и тогда не будете знать проблем с появлением запоздалых шар.

Самое худшее для опытного майнера, это погоня за хорошими показателями MH/S, в результате чего страдает техническая база фермы, а, следовательно, вы теряете свои заработанные деньги.

Источник

Orphan, Stale и Uncle-блоки в майнинге Биткоина и Эфириума. Что такое, чем отличаются и сколько приносят

Случается так, что ваше вознаграждение за найденный криптовалютный блок либо меньше обычного, либо же отсутствует совсем. Интересно разобраться в майнинге и понять, почему так происходит? Отлично, данная статья именно об этом, только сначала обязательно прочитайте эту публикацию.

PS: а если вы просто хотите настроить свою ферму и получать доход без лишних подробностей, идите на майнинг-пул 2Miners. Там всё понятно и просто.

Блокчейн — цепочка блоков

Кто-то скажет “это всем ясно” и будет прав, однако давайте подробнее посмотрим на суть цепочки. В среднем каждые 10 минут в сети Биткоина появляется новый блок, а у Эфириума на это уходит 14 секунд. В каждом блоке есть информация о том, какой блок был перед ним. Благодаря этому и выстраивается цепочка блоков — индекс. Можно сравнить его с нумерованным списком или Excel-таблицей. Пропусков не бывает. За номером 1 всегда идёт номер 2, а за 3 будет 4.

Каждая нода=узел=компьютер в сети криптовалюты связан с другими и постоянно обменивается с ними информацией. Подробнее про работу криптовалютных нод и возможные проблемы читайте здесь. Допустим, последний блок в сети криптовалюты имеет номер 100. Все майнеры мира решают одну и ту же задачу и ищут решение блока 101. Как только его найдут, майнер (или майнинг-пул) отправляет через свою ноду решение в сеть. В течение нескольких секунд, а обычно даже миллисекунд, все узлы сети получают информацию о новом блоке 101. Проверяют, что блок честный, в нём нет никакого обмана, после чего дальше ждут блока 102.

Читайте также:  Как приготовить смузи с чиа

Вопрос следующий: что произойдёт, если 2 майнера нашли решение блока 101 в одно и то же время? Например, в сети 100 узлов. Майнер А нашел решение блока чуть раньше и успел передать информацию о блоке на 60 узлов. Майнер Б сделал работу позже и успел сказать о найденном решении блока только на 40 узлов. Значит ли это, что А — молодец, а Б — нет? Не факт. Рассмотрим эти тонкости подробнее на примере монет BTC и ETH.

Важный момент. Взять и присвоить себе чужое решение блока не получится. Сети криптовалют защищены от такого рода воровства. Решение блока от майнера А не подойдёт майнеру Б, он не сможет выдать его за своё.

Какие бывают виды блоков в блокчейне Биткоина

Если что, 10 минут на блок — это среднее время, по факту может быть как несколько секунд, так даже и несколько часов. Допустим, блоки идут быстро, или же ноды общаются между собой не очень быстро.

Майнеры А и Б нашли решение блока 101 примерно в одно и то же время. 60 процентов нод получили новый блок от майнера А, 40 процентов — от майнера Б. На данный момент оба этих блока абсолютно честные, легальные, валидные, как угодно. Сразу после этого майнеры, которые послушали А, нашли еще 2 блока, а майнеры, которые послушали Б, нашли ещё 3 блока.

Как же решить, чья цепь окажется правильной? Решение простое. У последователей майнера Б цепочка длиннее, поэтому она верная. Последователи майнера А, к сожалению, работали напрасно. За свои блоки они ничего не получат.

Помните, что у нас есть индекс, нумерованный список? Так вот, в итоге в него попадает блок 101, который нашёл майнер Б, а дальше — следующие 3 блока, найденные его последователями под номерами 102, 103 и 104. Блок, который нашел майнер А, в индекс не попал. Он остался без отца, его “отрезали”, поэтому такой блок называют сиротой — Orphan. Хорошая новость: у него осталось 2 ребенка, блоки которые были найдены за ним. Плохая новость: смысла в этих блоках нет, они называются Stale, в переводе на русский “протухшие”. Такие вот дочки-матери.

По факту, конечно, вряд ли ноды будут ждать так долго. Уже при наличии следующего блока 102 после спорного блока 101 вся криптовалютная сеть переключится на эту ветку и отбросит другую.

Orphan и Stale-блоки часто путают. С точки зрения майнера Биткоина смысла нет ни в том, ни в другом, за них майнер ничего не получает. Ещё эти блоки называют отклонёнными или Reject/Rejected.

Подытожим, у Биткоина бывают следующие блоки:

  • нормальный (валидный) — блок, который включён в цепочку блоков Биткоина. Нашедший его майнер получает вознаграждение.
  • Orphan (сирота) — блок, у которого в цепочке блоков Биткоина нет предшественника (родителя). За Orphan-блок майнер ничего не получает.
  • Stale (потомок сироты) — блок, который не включён в цепочку блоков Биткоина, потому что предшественником является Orphan-блок. Иными словами, цепочка начинается с блока сироты. За Stale-блок майнер ничего не получает.

Какие бывают виды блоков в блокчейне Эфириума

Среднее время блока в сети Ethereum намного меньше, чем у Bitcoin: 14 секунд против 10 минут. Очевидно, что проблема Orphan и Stale-блоков должна встречаться намного чаще, а значит холостая работа майнеров в теории должна быть велика. К счастью, на практике всё иначе. Разработчики этой криптовалюты внедрили так называемый GHOST-протокол (Greedy Heaviest Observed Subtree).

Читайте также:  Оценить эффективность инвестиций рассчитайте показатели эффективности

Смысл GHOST простой — майнеры, которые находят Orphan и Stale-блоки тоже получают вознаграждение, хотя их размер и меньше суммы за нормальные блоки. Такие блоки в сети Ethereum и всех других Dagger-Hashimoto криптовалютах стали называть Uncle. По-русски это звучит как “дядя”.

Uncle-блоки также решают проблему централизации сети. Если бы их не было, ситуация была бы странной. При таком маленьком времени блока крупный пул работал бы намного эффективнее и просто убивал маленьких конкурентов, до которых бы долго доходила информация о новых блоках. В свою очередь, они бы штамповали бесполезные Orphan/Stale-блоки без конца.

У Эфириума бывают следующие блоки:

  • нормальный (валидный) — блок, который включён в цепочку блоков Биткоина. Нашедший его майнер получает вознаграждение.
  • Uncle — блок, который бы в сети Биткона назывался Orphan или Stale. Данный блок не включается в основную ветку. При этом майнер получает за него более скромное вознаграждение в сравнении с обычным блоком.

Вознаграждение за Uncle-блоки в сети Ethereum

Всего у Эфира может быть 7 “вложенностей” анклов, если так можно сказать. В Биткоине это был бы 1 Orphan и 6 Stale блоков за ним. В Эфириуме вознаграждение за Uncle рассчитывается по следующей формуле:

([Номер Uncle блока] + 8 — [Номер нормального блока]) * [Вознаграждение в сети эфира] / 8

Простыми словами, если вознаграждение за обычный блок — 3 ETH, Uncle будет получать на 1/8 меньше.

Самый первый Uncle получит 2,625 ETH, следующий 2,25 ETH, затем 1,87 ETH и так далее до 0,375 ETH. Однако как правило, Uncle-ветка редко идёт далеко. Уже к первому-второму Uncle блоку нода майнера понимает, что ушла не туда, и переключается на майнинг основной цепочки.

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

Источник

Как уменьшить количество stale shares при майнинге

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

Такая ситуация довольно часто возникает при майнинге Ethereum и других монет, у которых малое время нахождения блоков. Найденные решения являются верными, но запоздалыми – на английском их называют stale shares.

Проверить количество stale shares можно на странице статистки пула и в майнере. Например, в Клейморе и Фениксе это можно сделать, нажав в консоли майнера на букву S.

Пример статистического отображения количества запоздалых решений в программе Phoenix Miner:

Обычно количество стейл-шар исчисляется единицами и не превышает одного процента от всех найденных шар. Так как обычно эти shares не оплачиваются, то нужно снизить их количество до минимума.

Не стоит путать stale shares с режектами, которые обычно вызваны некорректной работой майнеров, неправильным выбором алгоритма, переразгоном памяти и т.д. Стейлы связаны с задержками при обмене данными о вычислениях между программой майнером и пулом.

Что можно сделать для уменьшения количества stale shares?

Для уменьшения процента stale shares при майнинге нужно обеспечить выполнение следующих условий:

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

Настройка интернет соединения

Для уменьшения задержек при прохождении сигнала нужно по возможности использовать оптические/проводные соединения ригов с роутером.

wi-fi соединения ригов с роутером работают с большими задержками, что увеличивает количество «стальных шар».

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

Беспроводные соединения не могут обеспечить приемлемое время прохождения сигнала и ухудшают параметр «miner-to-pool latency», который приводит к появлению запоздалых решений.

При этом не нужно путать скорость подключения и время задержек. Высокую скорость соединения с интернетом можно обеспечить увеличением объема пакетов с данными. При этом время между ними может быть достаточно большим, что приведет к возрастанию задержек и увеличению времени пинга при соединении с хостами интернета/пулами.

Кроме того, стоит, по возможности, отказаться от использования различных прокси, VPN-сервисов, антивирусов, которые могут привносить дополнительные задержки в прохождение сигнала/данных.

Подробнее о настройке интернета для майнинга можно прочитать в статье «Решение проблем с подключением ригов к интернету».

В случае, когда не удается обеспечить соединение с интернетом с малым пингом к серверам пула, стоит задуматься о смене монеты для майнинга, перейти на криптовалюты с большим временем между соседними блоками. Например, в сети Ethereum время между блоками составляет 14-15 секунд, в сети Ravencoin – 60 секунд, Monero — 120 секунд, Bitcoin -600 секунд . Соответственно уменьшается и количество потерянных шар, которых практически не бывает при майнинге XMR и BTC.

Проверка пинга к пулу для майнинга

Для проверки пинга к пулам в косоли Windows можно использовать команду:

ping pool address, например, для пингования европейского сервера eu1 пула ethermine используют команду:

Пример выполнения команды ping к пулу eu1.ethermine.org:

В данном случае пинг к пулу равен 1 мсек, что является очень хорошим значением, при котором практически нет stale shares из-за неверного подбора сервера пула. Тем не менее, они все равно есть (1%):

Если бы майнинг производился на пул f2pool, который находится в Азии, то задержка составляла бы 275 мс, что в разы увеличило бы количество «стальных решений» и, соответственно, уменьшило бы доход майнера:

Настройка времени получения заданий на проведение вычислений от пула

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

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

По умолчанию майнеры отсылают запрос на пул для майнинга с определенным интервалом (обычно это 200 миллисекунд). Изменить время запроса заданий от пула в майнерах можно специальными командами, которые добавляются в батник/скрипт:

  • Phoenix miner — gwtime;
  • Claymore miner — etht;
  • Nanominer, ethminer – farmRecheck.

Синтаксис батника Phoenix Miner для управления значением Recheck period:

Синтаксис батника Claymore Miner для управления временем requests for new job:

Источник

Оцените статью