Start
Start

Der Begriff „Mempool“ ist eine Kontraktion der englischen Wörter „Memory“ und „Pool“, die ins Französische mit „Erinnerung“ und „Becken“ übersetzt werden können. Ein Mempool ist also ein temporärer Bereich, der Bitcoin-Transaktionen enthält, die darauf warten, in einen Block integriert zu werden. Dieser Raum wird von jedem Knoten im Netzwerk verwaltet.
In diesem Artikel betrachten wir den technischen Charakter von Mempools auf Bitcoin sowie ihre Rolle bei der Funktionsweise des Protokolls.
Wenn Sie eine Transaktion mit Bitcoin tätigen möchten, müssen Sie sie zunächst mit den in einer Brieftasche enthaltenen privaten Schlüsseln signieren. Nach der Unterzeichnung wird die Transaktion an einen Netzwerkknoten übertragen, der die Einhaltung der festgelegten Regeln gewährleistet. Wenn die Transaktion alle Gültigkeitskriterien erfüllt, leitet dieser Knoten sie an andere Knoten im Netzwerk weiter, mit dem er verbunden ist. Dieser Streaming-Prozess wird fortgesetzt, und schnell sollte die Transaktion die meisten Knoten im Bitcoin-Netzwerk erreicht haben.

Wenn für die Transaktion genügend Gebühren anfallen, wird sie von einem Miner ausgewählt, um sie in einen Block zu integrieren. Sobald es einem Miner gelingt, einen gültigen Block zu generieren, der die Transaktion enthält, wird dies durch die Verteilung des neuen Blocks im Netzwerk bestätigt.
Der „Mempool“ bezieht sich auf den temporären Speicherplatz, der Transaktionen hostet, die von den Knoten validiert, aber noch nicht in einem Block enthalten sind. Solange eine Transaktion auf ihre Bestätigung wartet, befindet sie sich in den Knoten-Mempools.
Obwohl der Begriff „Mempool“ oft so verwendet wird, als ob er etwas Einzigartiges wäre, wäre es zutreffender, im Plural von „Mempools“ zu sprechen. Tatsächlich verwaltet jeder Knoten im Bitcoin-Netzwerk seinen eigenen Mempool, und es kann Unterschiede zwischen den Mempools jedes Knotens geben.
.png)
Der Mempool eines Knotens entwickelt sich daher ständig entsprechend den neuen Informationen, die er erhält. Wenn neue Transaktionen von Benutzern ausgegeben werden, speichert der Knoten sie in seinem Mempool. Umgekehrt betrachtet der Knoten, wenn ein Miner einen Block findet, den er der Blockchain hinzufügen kann, die in diesem Block bestätigten Transaktionen und entfernt sie aus seinem Mempool.
.png)
Da Mempools Speicherplatz für Transaktionen darstellen, die auf eine Bestätigung warten, sind sie zwangsläufig in ihrer Größe begrenzt. Tatsächlich steht es jedem Knoten frei, ein Höchstlimit für seinen persönlichen Mempool zu definieren.
Standardmäßig ist bei Bitcoin Core (der Hauptimplementierung des Bitcoin-Protokolls) das Höchstlimit auf 300 MB festgelegt. Das bedeutet, dass ein Knoten ausstehende Transaktionen akzeptiert, bis er diese Obergrenze erreicht. Darüber hinaus wird er einen Prozess der Priorisierung auf der Grundlage der Kosten einleiten. Transaktionen mit den niedrigsten Gebühren können dann aus dem Mempool des Knotens ausgeschlossen werden. Konkret führt dies dazu, dass diese Transaktionen aus seinem Speicher gelöscht werden.
Jeder Knoten kann die Größe seines Mempools ändern, indem er den Parameter anpasst Max Mempool in der Konfigurationsdatei bitcoin.conf. Die meisten Knoten behalten jedoch das Standardlimit von 300 MB bei. Es besteht daher eine gewisse Homogenität, was die Kapazität der Mempools auf Bitcoin angeht.
.png)
Diese Einheitlichkeit hat eine Konsequenz: Wenn eine Transaktion aus 300-MB-Mempools abgelehnt wird, wird sie tatsächlich aus dem Bitcoin-Netzwerk entfernt, als ob sie storniert worden wäre. Um dieses Szenario zu verhindern, gibt es einen Indikator namens“ Geschwindigkeit der Säuberung “ informiert uns über die Mindesttransaktionsgebühren, die erforderlich sind, um zu verhindern, dass sie von den Node-Mempools vergessen werden.
Wenn beispielsweise die kumulierte Anzahl ausstehender Transaktionen mit mehr als 2 SATs/VB 300 MB erreicht, wird die Löschrate auf 2 SATs/VB festgelegt. Transaktionen, bei denen Gebühren unter diesem Schwellenwert liegen, werden dann von den Mempools ausgeschlossen. Natürlich schwankt diese Rate je nach Platzbedarf in den Blöcken und dem Angebot, das durch die Bergbautätigkeit entsteht.
.png)
➤ Entdecken Sie die Rolle von Knoten in Bitcoin.
Wie im vorherigen Teil erklärt, muss der Mempool bestimmte Regeln einhalten, damit ein Knoten dem Hinzufügen einer neuen unbestätigten Transaktion zu seinem Mempool zustimmt. Diese Standards sind in zwei Typen unterteilt:
Konsensregeln sind ein bisschen wie die grundlegenden Gesetze des Bitcoin-Protokolls. Sie gewährleisten die Konsistenz und Integrität des gesamten Systems, indem sie die Kriterien definieren, anhand derer Transaktionen und Blöcke validiert werden. Eine Transaktion, die gegen Konsensregeln verstößt, kann nicht in einen gültigen Block aufgenommen werden. Beispielsweise konnte eine Transaktion mit einer ungültigen Signatur nicht in der Blockchain gemint werden. Diese Konsensregeln sind für alle Bitcoin-Nutzer gleich und werden gemeinsam angewendet.
Standardisierungsregeln werden dagegen von jedem Bitcoin-Knoten unabhängig festgelegt. Sie definieren zusätzliche Kriterien für die Struktur unbestätigter Transaktionen, die der Knoten bereit ist, in seinen Mempool aufzunehmen und an seine Peers zu verteilen. Diese Regeln werden lokal von jedem Knoten konfiguriert und ausgeführt. Sie können von Knoten zu Knoten variieren und gelten nur für unbestätigte Transaktionen. Daher akzeptiert ein Knoten nur dann eine Transaktion, die er für nicht standardisiert hält, wenn sie bereits in einem gültigen Block enthalten ist.
Obwohl diese Regeln von Knoten zu Knoten unterschiedlich sein können, behalten die meisten die in Bitcoin Core festgelegten Standardeinstellungen bei. Da diese Implementierung mehr als 98% des Bitcoin-Netzwerks ausmacht, gibt es tatsächlich eine Homogenität der Standardisierungsregeln über die Knoten hinweg.
Eine Transaktion, die zwar den Konsensregeln entspricht, diese Standardisierungsregeln jedoch nicht einhält, wird daher Schwierigkeiten haben, sich im Netzwerk zu verbreiten. Es kann jedoch in einen gültigen Block aufgenommen werden, falls es jemals einen Minderjährigen erreicht. In der Praxis werden diese Transaktionen, die als nicht standardisiert beschrieben werden, im Allgemeinen über Kanäle außerhalb des Bitcoin-Peer-to-Peer-Netzwerks direkt an einen Miner übertragen. Dies ist oft die einzige Möglichkeit, diese Art von Transaktion zu bestätigen.
Um den Unterschied zwischen diesen beiden Arten von Regeln zu veranschaulichen, nehmen wir als Beispiel Transaktionsgebühren. Aus Konsensperspektive gibt es keine Gebührenanforderungen. Für eine Transaktion fallen daher möglicherweise keine Gebühren an und sie kann dennoch in einen Block integriert werden, der den Konsensregeln entspricht. Der Block wird vom Knotennetzwerk akzeptiert. Hier ist zum Beispiel eine Mining-Transaktion ohne Gebühren: fd456524104a6674693c2994693c29946543f8a0befccce5a352bda55ec8559fc630f5f3
Andererseits verlangen die Standardisierungsregeln standardmäßig, dass Transaktionen mindestens 1 Sat/VB an Gebühren zuweisen. Wenn also ein Knoten eine unbestätigte Transaktion ohne Gebühren erhält, weigert er sich, sie in seinen Mempool zu integrieren und sendet sie nicht an die anderen Knoten.
Eine gebührenfreie Transaktion ist daher sowohl nach Konsensregeln gültig als auch nach Mempool-Regeln nicht standardisiert, da die Standardrichtlinie von Bitcoin Core für den Parameter MinRelayTX Gebühr Ist von 0,00001 (in BTC/KB).
➤ Erfahren Sie mehr über Bitcoin-Transaktionsgebühren.
Der Mempool stellt ein temporäres Reservoir innerhalb der Knoten für Bitcoin-Transaktionen dar, die auf eine Bestätigung warten. Jeder Netzwerkknoten hat seinen eigenen Mempool.
Die Kapazität von Mempools ist gemäß der Standardkonfiguration von Bitcoin Core in der Regel auf 300 MB begrenzt. Daher können sie nur ein begrenztes Transaktionsvolumen enthalten, das nach ihren Gebührensätzen priorisiert ist. In Zeiten der Überlastung wird eine „Säuberungsrate“ festgelegt, um die Mindestgebühr anzugeben, die erforderlich ist, um zu verhindern, dass eine Transaktion aus dem Mempool ausgeschlossen wird.
Um in einen Block integriert zu werden, müssen Bitcoin-Transaktionen die Konsensregeln einhalten. Eine zweite Ebene restriktiverer Regeln, die als Standardisierungs- oder Mempool-Regeln bezeichnet werden, wird von jedem Knoten einzeln angewendet. Transaktionen, die diese zusätzlichen Regeln nicht erfüllen, werden nicht zum Mempool des Knotens hinzugefügt und daher nicht im Netzwerk verbreitet.

