Cluster-Mempool1 ist eine komplette Überarbeitung der Art und Weise, wie der Mempool Transaktionen organisiert und sortiert, konzipiert und implementiert von Suhas Daftuar und Pieter Wuille. Das Design zielt darauf ab, die Gesamtarchitektur zu vereinfachen, die Transaktionssortierungslogik besser an die Anreize der Miner anzupassen und die Sicherheit für Protokolle der zweiten Schicht zu verbessern. Es wurde in PR #33629 mit Bitcoin Core verschmolzen2 am 25. November 2025.
Der Mempool ist ein riesiger Satz ausstehender Transaktionen, die Ihr Knoten aus verschiedenen Gründen im Auge behalten muss: Gebührenschätzung, Validierung der Transaktionsersetzung und Blockkonstruktion, wenn Sie ein Miner sind.
Dabei handelt es sich um viele verschiedene Ziele, die eine einzelne Funktion Ihres Knotens bedienen soll. Bis Version 30.0 organisiert Bitcoin Core den Mempool auf zwei verschiedene Arten, um diese Funktionen zu unterstützen, und zwar sowohl aus der relativen Sicht einer bestimmten Transaktion: kombinierte Feerate, die vorwärts auf die Transaktion und ihre untergeordneten Elemente blickt (descendant feerate), und kombinierte feerate, die rückwärts auf die Transaktion und ihre Eltern blickt (ancestor feerate).
Diese werden verwendet, um zu entscheiden, welche Transaktionen aus Ihrem Mempool entfernt werden sollen, wenn dieser voll ist, und welche zuerst beim Erstellen einer neuen Blockvorlage einbezogen werden sollen.
Wie wird mein Mempool verwaltet?
Wenn ein Miner entscheidet, ob eine Transaktion in seinen Block aufgenommen werden soll, prüft sein Knoten diese Transaktion und alle Vorgänger, die zuerst bestätigt werden müssen, damit sie in einem Block gültig sind, und betrachtet die durchschnittliche Feerate pro Byte für alle zusammen unter Berücksichtigung der von ihnen insgesamt gezahlten Einzelgebühren. Wenn diese Gruppe von Transaktionen innerhalb der Blockgrößenbeschränkung liegt und andere bei den Gebühren übertrifft, wird sie in den nächsten Block aufgenommen. Dies erfolgt für jede Transaktion.
Wenn Ihr Knoten entscheidet, welche Transaktionen aus seinem Mempool entfernt werden sollen, wenn dieser voll ist, prüft er jede Transaktion und alle untergeordneten Elemente und entfernt die Transaktion und alle ihre untergeordneten Elemente, wenn der Mempool bereits mit Transaktionen (und deren Nachkommen) voll ist, für die eine höhere Gebühr gezahlt wird.
Schauen Sie sich das obige Beispieldiagramm der Transaktionen an. Die Feersätze werden als solche in Klammern angezeigt (Vorfahren-Feersatz, Nachkommen-Feersatz). Ein Miner, der sich Transaktion E ansieht, würde sie wahrscheinlich in den nächsten Block aufnehmen, eine kleine Transaktion, die eine sehr hohe Gebühr mit einem einzigen kleinen Vorfahren zahlt. Wenn sich jedoch der Mempool eines Knotens füllte, würde er sich die Transaktion A ansehen, bei der zwei große untergeordnete Knoten eine geringe relative Gebühr zahlen, und sie wahrscheinlich entfernen oder sie nicht akzeptieren und behalten, wenn sie gerade erst empfangen wurde.
Diese beiden Rangfolgen bzw. Reihenfolgen stehen völlig im Widerspruch zueinander. Der Mempool sollte zuverlässig verbreiten, was die Miner abbauen werden, und Benutzer sollten darauf vertrauen können, dass ihr lokaler Mempool genau vorhersagt, was die Miner abbauen werden.
Der auf diese Weise funktionierende Mempool ist wichtig für:
- Dezentralisierung des Bergbaus: Erhalten alle Bergleuten die profitabelste Reihe von Transaktionen
- Benutzerzuverlässigkeit: genaue und zuverlässige Gebührenschätzung und Transaktionsbestätigungszeiten
- Sicherheit der zweiten Schicht: Zuverlässige und genaue Ausführung der On-Chain-Durchsetzungstransaktionen der Protokolle der zweiten Schicht
Das aktuelle Verhalten des Mempools stimmt nicht vollständig mit der Realität der Mining-Anreize überein, wodurch blinde Flecken entstehen, die für die Sicherheit der zweiten Ebene problematisch sein können, indem sie Unsicherheit darüber erzeugen, ob eine Transaktion an einen Miner gelangt, sowie Druck für nicht-öffentliche Rundfunkkanäle an Miner erzeugen, was das erste Problem möglicherweise verschlimmert.
Dies ist besonders problematisch, wenn es darum geht, unbestätigte Transaktionen zu ersetzen, sei es einfach, um Minern einen Anreiz zu geben, früher einen Ersatz einzubinden, oder als Teil eines Second-Layer-Protokolls, das in der Kette durchgesetzt wird.
Der Ersatz aufgrund des bestehenden Verhaltens wird unvorhersehbar, abhängig von der Form und Größe des Transaktionsnetzes, in dem Sie gefangen sind. In einer einfachen Situation, in der die Gebühren anfallen, kann dies dazu führen, dass eine Transaktion nicht verbreitet und ersetzt wird, selbst wenn das Mining des Ersatzes für einen Miner besser wäre.
Im Zusammenhang mit Protokollen der zweiten Schicht ermöglicht die aktuelle Logik den Teilnehmern, möglicherweise erforderliche Vorfahrentransaktionen aus dem Mempool zu entfernen oder es einem anderen Teilnehmer aufgrund der vom böswilligen Teilnehmer erstellten untergeordneten Transaktionen oder der Entfernung notwendiger Vorfahrentransaktionen nicht möglich zu machen, eine erforderliche untergeordnete Transaktion an den Mempool gemäß den aktuellen Regeln zu übermitteln.
Alle diese Probleme sind das Ergebnis dieser inkonsistenten Inklusions- und Räumungsrankings und der dadurch verursachten Fehlausrichtungen der Anreize. Ein einziges globales Ranking würde diese Probleme beheben, aber eine globale Neuordnung des gesamten Mempools für jede neue Transaktion ist unpraktisch.
Es ist alles nur eine Grafik

Transaktionen, die voneinander abhängen, sind ein Diagramm oder eine gerichtete Reihe von „Pfaden“. Wenn eine Transaktion in der Vergangenheit von einer anderen Transaktion erstellte Ausgaben ausgibt, wird sie mit dieser vergangenen Transaktion verknüpft. Wenn es zusätzlich Ausgaben ausgibt, die durch eine zweitvergangene Transaktion erzeugt wurden, verknüpft es beide historischen Transaktionen miteinander.
Wenn sie nicht bestätigt sind, können solche Transaktionsketten auftreten muss Lassen Sie die früheren Transaktionen zunächst bestätigen, damit die späteren gültig sind. Schließlich können Sie Ausgaben, die noch nicht erstellt wurden, nicht ausgeben.
Dies ist ein wichtiges Konzept zum Verständnis des Mempools. Er ist explizit direktional geordnet.
Es ist alles nur eine Grafik.
Chunks ergeben Cluster und bilden Mempools

Im Cluster-Mempool ist das Konzept von a Cluster ist eine Gruppe unbestätigter Transaktionen, die in direktem Zusammenhang miteinander stehen, d. h. Ausgaben, die von anderen im Cluster erstellt wurden oder umgekehrt. Dies wird zu einer grundlegenden Einheit der neuen Mempool-Architektur. Das Analysieren und Ordnen des gesamten Mempools ist eine unpraktische Aufgabe, das Analysieren und Ordnen von Clustern ist jedoch viel einfacher zu bewältigen.
Jeder Cluster ist unterteilt in Brockenkleine Sätze von Transaktionen aus dem Cluster, die dann in der Reihenfolge von der höchsten bis zur niedrigsten Feerate pro Byte unter Berücksichtigung der Richtungsabhängigkeiten sortiert werden. Nehmen wir zum Beispiel an, dass die Blöcke in Cluster (A) vom höchsten zum niedrigsten Wert sind: [A,D], [B,E], [C,F], [G, J]und zuletzt [I, H].
Dies ermöglicht eine Vorsortierung aller dieser Chunks und Cluster und eine effizientere Sortierung des gesamten Mempools im Prozess.
Miner können jetzt einfach die höchsten Feer-Blöcke aus jedem Cluster nehmen und sie in ihre Vorlage einfügen. Wenn noch Platz ist, können sie zu den nächsthöheren Feer-Blöcken gehen und so weitermachen, bis der Block ungefähr voll ist und nur noch die letzten paar Transaktionen herausfinden muss, die hineinpassen. Dies ist ungefähr die optimale Methode zum Erstellen von Blockvorlagen, sofern Zugriff auf alle verfügbaren Transaktionen vorausgesetzt wird.
Wenn die Mempools der Knoten voll sind, können sie sich einfach die Blöcke mit der niedrigsten Fee-Rate aus jedem Cluster schnappen und damit beginnen, diese aus ihrem Mempool zu entfernen, bis der konfigurierte Grenzwert nicht überschritten wird. Wenn das nicht ausreicht, geht es weiter zu den nächstniedrigeren Feerate-Blöcken und so weiter, bis es innerhalb seiner Mempool-Grenzen liegt. Auf diese Weise werden seltsame Randfälle beseitigt, die nicht mit den Mining-Anreizen in Einklang stehen.
Auch die Ersetzungslogik wird drastisch vereinfacht. Vergleichen Sie Cluster (A) mit Cluster (B), in dem Transaktion K G, I, J und H ersetzt hat. Das einzige Kriterium, das erfüllt werden muss, ist der neue Block [K] muss eine höhere Chunk-Ferate haben als [G, J] Und [I, H], [K] muss insgesamt mehr Gebühren zahlen als [G, J, I, H]und K kann eine Obergrenze für die Anzahl der ersetzten Transaktionen nicht überschreiten.
In einem Cluster-Paradigma stehen alle diese unterschiedlichen Nutzungen im Einklang miteinander.
Der neue Mempool
Diese neue Architektur ermöglicht es uns, die Grenzwerte für Transaktionsgruppen zu vereinfachen, indem wir bisherige Beschränkungen hinsichtlich der Anzahl unbestätigter Vorfahren einer Transaktion im Mempool aufheben und diese durch ein globales Cluster-Limit von 64 Transaktionen und 101 kvB pro Cluster ersetzen.
Diese Grenze ist erforderlich, um den Rechenaufwand für die Vorsortierung der Cluster und ihrer Blöcke niedrig genug zu halten, damit Knoten eine konstante Leistung erbringen können.
Dies ist die eigentliche Schlüsselerkenntnis des Cluster-Mempools. Indem Sie die Blöcke und Cluster relativ klein halten, machen Sie gleichzeitig die Erstellung einer optimalen Blockvorlage kostengünstig, vereinfachen die Transaktionsersetzungslogik (Fee-Bumping) und verbessern so die Sicherheit der zweiten Ebene und korrigieren gleichzeitig die Räumungslogik.
Keine teureren und langsameren On-the-fly-Berechnungen für die Vorlagenerstellung oder unvorhersehbares Verhalten bei Gebührenerhöhungen mehr. Durch die Behebung der Fehlausrichtung der Anreize bei der Art und Weise, wie der Mempool die Transaktionsorganisation in verschiedenen Situationen verwaltete, funktioniert der Mempool für alle besser.
Cluster Mempool ist ein Projekt, an dem seit Jahren gearbeitet wird und das einen wesentlichen Einfluss darauf haben wird, sicherzustellen, dass profitable Blockvorlagen allen Minern offen stehen, dass Second-Layer-Protokolle über solide und vorhersehbare Mempool-Verhaltensweisen verfügen, auf denen sie aufbauen können, und dass Bitcoin weiterhin als dezentrales Währungssystem funktionieren kann.
Für diejenigen, die tiefer in die Einzelheiten der Implementierung und Funktionsweise von Cluster-Mempool eintauchen möchten, können Sie hier zwei Delving-Bitcoin-Threads lesen:
Übersicht über die Implementierung auf hoher Ebene (mit Designbegründung): https://delvingbitcoin.org/t/an-overview-of-the-cluster-mempool-proposal/393
So funktionieren Cluster-Mempool-Feerate-Diagramme: https://delvingbitcoin.org/t/mempool-incentive-compatibility/553

Verpassen Sie nicht Ihre Chance, es zu besitzen Das Kernproblem – mit Artikeln, die von vielen Kernentwicklern geschrieben wurden und die Projekte erläutern, an denen sie selbst arbeiten!
Bei diesem Stück handelt es sich um den Brief des Herausgebers, der in der neuesten Ausgabe vorgestellt wird Drucken Ausgabe des Bitcoin Magazine, The Core Issue. Wir teilen es hier als ersten Einblick in die Ideen, die in der gesamten Ausgabe untersucht wurden.

