Cluster Mempool dzieli mempool na połączone komponenty transakcji nadrzędnych i potomnych, tworzy dla nich topologicznie poprawną linearyzację i spójnie wykorzystuje ją w wydobyciu, usuwaniu, relay oraz zasadach zastępowania.
Klaster jest spójną składową grafu niepotwierdzonych transakcji połączonych relacjami rodzic–potomek. Niezależne klastry można oceniać osobno, więc zmiana w jednym nie wymaga ponownego przeliczenia reszty mempoola. [2]
Dla każdego klastra węzeł tworzy topologicznie poprawną linearyzację i dzieli ją na chunki o stawce opłaty malejącej od najbardziej opłacalnego. Do bloku wybiera najlepsze chunki z początku, a przy usuwaniu odrzuca najmniej opłacalne z końca. [2]
Dawne limity przodków i potomków oraz różne przybliżenia używane przy wydobyciu i usuwaniu nie zawsze oddawały rzeczywistą wartość złożonego pakietu. Ograniczony klaster pozwala szukać lepszej kolejności przy przewidywalnie ograniczonym nakładzie pracy. [5]
To lokalna polityka mempoola i wydobycia, a nie nowa reguła konsensusu. Węzły mogą otrzymać inne transakcje, używać innej wersji lub konfiguracji i mieć różne mempoole; ważność transakcji potwierdzonej w bloku pozostaje bez zmian. [2]
Bitcoin Core 31.0 zastąpił wcześniejszą implementację mempoola modelem Cluster Mempool. Dodał też RPC getmempoolcluster i getmempoolfeeratediagram, które pozwalają badać klaster, jego linearyzację i diagram stawek opłat. [1]
Domyślna polityka ogranicza jeden klaster do 64 transakcji i 101 kB rozmiaru wirtualnego. Argumenty węzła pozwalają zmienić te limity, lecz akceptacja lub relay przez własny węzeł nie gwarantuje takiej samej polityki u sąsiadów i górników. [1]
Model ujednolica wybór do wydobycia, usuwanie, ogłaszanie transakcji i RBF. Zastąpienie musi utworzyć diagram stawek co najmniej równie dobry w każdym punkcie i ściśle lepszy gdzieś, a zarazem spełnić pozostałe reguły; dawny CPFP carve-out usunięto na rzecz TRUC i sibling eviction. [3]
Przed stwierdzeniem, jak zachowa się konkretna transakcja, trzeba sprawdzić wersję i konfigurację węzła, cały klaster i jego chunki, diagram stawek oraz pozostałe warunki RBF. Portfel nie może zakładać, że cała sieć stosuje tę samą lokalną politykę. [4]
Pełniejszy obraz uzyskasz, czytając to hasło razem z Mempool, Package Relay, CPFP (Child Pays for Parent), Replace-by-Fee (RBF), Transaction Fees, Block Template.
01Czy Cluster Mempool jest zmianą konsensusu?+
Nie. Bitcoin Core 31.0 zmienił lokalny mempool, wybór do wydobycia i politykę relay; konsensusowa ważność transakcji w bloku pozostała bez zmian.
02Co zmieniło się przy podbijaniu opłaty?+
Węzeł ocenia zależne transakcje w chunkach, a przy RBF wymaga ściśle lepszego diagramu stawek wraz z innymi warunkami zastąpienia. Wynik nadal zależy od polityki konkretnego węzła.