Мемпул Биткоина: блокчейн, блоки, размер, транзакции и как он работает
Блок Мемпул – что это?
Bitcoin Mempool - это список неподтвержденных биткойн-транзакций в сети криптовалюты.
Как только транзакция Биткойна готовится для блока, она не сразу в него добавляется; вместо этого, она попадает в этот пул транзакций.
Говоря проще, Mempool - это «зал ожидания» для биткойн-транзакций, который поддерживает каждая полный нода.
После того, как транзакция проверена нодой, она ожидает внутри Mempool, до тех пор, пока она не будет подхвачена майнером Bitcoin и вставлена в блок.
Включено в блок мемпул - что это значит?
Это означает, что транзакция помещена в общую группу и ожидает подтверждения майнерами.
График количества транзакций мемпула
- По оси X - время
- По оси Y - количество неподтвержденных транзакций
Стоимость транзакции здесь определена разными цветами (Синим – самые дешевые). Вы можете видеть, что мемпул постоянно меняется. Пять минут стоимость увеличивается, затем уменьшается, а затем снова.
Комиссии в сети Bitcoin высчитывается в Сатоши за байт. Иными словами, у каждой транзакции есть свое место в мемпуле. И зависит это место не от суммы перевода, а от комиссии и от количества входов / выходов в транзакции.
Именно поэтому майнеры сначала подтверждают наиболее «дорогие» с точки зрения комиссии транзакции. И не важно сколько вы отправили средств – 1 BTC или 10 000 BTC. Майнер всегда возьмет ту транзакцию, в которой выше показатель комиссии (Сатоши за байт транзакции).
График Pending Transaction Fee in BTC – неподтвержденные транзакции
Этот график показывает те транзакции, которые сейчас на утверждении в сети.
Иными словами, те транзакции, которые сейчас проходят верификацию.
Каждая работающая полная нода в сети Биткойн подключена к Mempool, особенно майнеры. Майнеры, работающие на своих соответствующих нодах, собирают массу транзакций из этого Mempool, а затем пытаются решить энергоемкую математическую задачу. Именно так работает майнинг (если говорить упрощенно).
Коллекция этих транзакций называется «блоком», и какой бы майнер ни решал математическую задачу первым, он добавляет этот блок в блокчейн. Это первое подтверждение блока.
Но подождите! Это еще не все...
Хотя мемпул может выглядеть очень простой для понимания концепцией, он имеет очень сложное применение.
Вопрос в том, как одни транзакции выбираются из мемпула раньше других?
Позиция в мемпуле
Время нахождения блока Биткойна составляет 10 минут, но все мы время от времени испытываем крайние задержки в подтверждении наших транзакций.
Это происходит потому, что майнеры не выбирают именно наши транзакции из Mempool.
Как мы уже рассказывали вам в статье о хэше биткойнов, майнеры получают 6,25 BTC каждый раз, когда они успешно добывают биткойн-блок. Но помимо этой фиксированной суммы в 6,25 BTC, майнеры также получают бонусное количество биткойнов. Этот бонус называется «комиссия за майнинг биткойнов».
Поэтому, когда майнер успешно добывает блок, он получает 6,25 BTC плюс X сумму комиссии за транзакции, что представляет собой совокупную сумму всех комиссий за транзакции в этом блоке.
Посмотрите на это изображение блоков в реальном времени, добавляемых в блокчейн:
Как вы можете видеть на изображении выше, майнеры или пулы майнинга (F2Pool, Poolin, AntPool и т. д.) Получают дополнительное вознаграждение в дополнение к стандартному вознаграждению за блок в 6,25 BTC.
И именно поэтому логично, что майнер выберет для майнинга блоки в Mempool с более высокой комиссией за транзакции.
И это причина того, что наши биткойн-транзакции иногда «застревают» в Mempool и не принимаются через несколько часов (возможно, даже дней) спустя.
Как получить более быструю транзакцию?
Чтобы избежать задержки подтверждения транзакции в Mempool, вы можете сделать несколько шагов:
1. Наиболее очевидная вещь - отправлять транзакции с высокой комиссией. Вы можете найти последние тренды комиссий, используя некоторые из обозревателей блокчейна, таких как BTC.Com или Blockchain.info.
2. Вы можете посмотреть количество неподтвержденных транзакций в мемпуле (или здесь), чтобы приблизительно рассчитать, позицию в мемпуле от вершины и сколько времени потребуется для выполнения вашей транзакции.
3. Вы можете отложить и не делать никаких других транзакций и посмотреть здесь, чтобы проанализировать текущий размер Mempool, чтобы решить, является ли выполнение транзакции BTC прямо сейчас хорошей идеей.
4. Если ваша транзакция «застряла», вы можете использовать «толкатель» транзакции или службу ускорения транзакций, такую как эта или эта. Сторонние сайты (повторно) отправляют в сеть необработанную подписанную транзакцию; иногда эти сервисы упоминаются как «pushtx»
*** 5. Используйте кошельки с поддержкой SegWit, потому что они помогают быстрее получать подтверждения из Mempool.
Вывод
Mempool подвержен колебаниям в размере, в зависимости от того, сколько ожидающих транзакций ожидает подтверждения от майнера.
Известно, что невыполнение транзакций является частой проблемой для криптовалюты, испытывающей большой объем транзакций в своей сети.
Задержки, как правило, возникают, поскольку существует ограничение на количество транзакций, которые могут быть включены в блок, однако нет ограничения на количество транзакций, которые могут происходить в любой момент времени.
Mempool по сути становится узким местом в сети. Это причина, по которой Биткойн разделился на Bitcoin и Bitcoin Cash в августе 2017 года. Bitcoin Cash увеличил размер блока, чтобы предотвратить потенциальные задержки в сети.
Мониторинг Мемпула имеет потенциальное применение в ряде областей крипто-валют, от торговли до безопасности.