131 / 691PKG

Package Relay

Передавання пакетів транзакцій

Передавання залежних непідтверджених транзакцій, за якого комісія нащадка може допомогти батьківській транзакції пройти політику мемпулу.

Package Relay передає пов’язані непідтверджені транзакції між вузлами й дозволяє спільно оцінити батьківську транзакцію та нащадка для прийняття до мемпулу. Передавання даних, місцева політика прийняття й вибір майнером до блоку — різні кроки; пакет не змінює консенсусну дійсність окремих транзакцій.

Батьківську транзакцію з низькою ставкою можуть відхилити ще до того, як вузол побачить нащадка з більшою комісією. CPFP має економічний сенс лише тоді, коли потрібні транзакції доходять до майнера. Package Relay допомагає подолати цю прогалину передавання; він не замінює підписів чи перевірки входів. [BIP 331 — Ancestor Package Relay]

У прикладі батьківська транзакція має 200 vB і комісію 200 sat, а нащадок — 100 vB і 1300 sat. Разом це 1500 / 300 = 5 sat/vB, а не середнє окремих ставок 1 і 13. Приклад передбачає саме ці дві непідтверджені транзакції без інших предків; фактичне прийняття залежить також від політики вузла та конфліктів. [BIP 331 — Ancestor Package Relay]

Нащадок витрачає вихід батьківської транзакції. У топологічно впорядкованому списку батьківські транзакції передують нащадкам; висока комісія не виправляє відсутніх предків чи конфліктні витрати. Обмеження розміру, кількості й форми пакета захищають ресурси вузла та не є універсальними параметрами консенсусу. [Bitcoin Core 28.0 — submitpackage]

BIP 331 описує узгодження підтримки й окремі повідомлення для відомостей про предків та завантаження транзакцій. Натомість Bitcoin Core 28.0 задокументував обмежене ситуативне поєднання однієї батьківської транзакції з одним нащадком через наявний протокол передавання. Кілька батьків, дозволених локальним RPC, не означають такої самої підтримки P2P; ці відомості описують версію 28.0, а не гарантію для кожної версії чи піра. [BIP 331 — Ancestor Package Relay] [Bitcoin Core 28.0 — release notes]

submitpackage 28.0 перевіряє транзакції та передає їх локальному вузлу. Перевіряйте package_msg і кожен tx-results: операція може прийняти частину пакета, тож помилка не спричиняє атомарного скасування всього. Навіть повний успіх не доводить, що сусіди прийняли пакет або майнер вчасно включить його до блоку. [Bitcoin Core 28.0 — submitpackage]

В окремому тестовому середовищі запишіть версію, налаштування мемпулу, порядок залежностей, розміри та комісії. testmempoolaccept перевіряє без трансляції; його результат не є гарантією submitpackage. Спостерігайте також за прийняттям на іншому вузлі. Термінові транзакції Lightning і далі потребують запасу: сама підтримка пакетів не усуває pinning, перевантаження чи затримки блоків. [Bitcoin Core 28.0 — testmempoolaccept] [Bitcoin Core 28.0 — release notes]

Для повної картини прочитайте також Mempool, CPFP (Child Pays for Parent), Fee Rate, Replace-by-Fee (RBF), Lightning Network. На цю статтю також посилаються CPFP (Child Pays for Parent), Gloria Zhao.

DOC · 001BIP 331 — Ancestor Package RelayСпецифікація ↗DOC · 002Bitcoin Core 28.0 — release notesДокументація ↗DOC · 003Bitcoin Core 28.0 — submitpackageДокументація ↗DOC · 004Bitcoin Core 28.0 — testmempoolacceptДокументація ↗
Спочатку джерела · Не інвестиційна порада