メンプール: それは何で、どのように機能するのですか?

メンプール: それは何で、どのように機能するのですか?

メモリ プール」または「トランザクション プール」の略称である mempool は、ブロックチェーンへのゲートウェイとして機能し、特にビットコインのような暗号通貨の世界では、そのインフラストラクチャの重要なコンポーネントです。この概念は、実稼働環境にリリースする前にテストと品質管理が行われる従来のソフトウェア開発における「ステージング」環境に似ています。ただし、集中ステージング環境とは異なり、ブロックチェーン ネットワーク内の各ノードには、管理する独自のメモリプールがあります。

ブロックチェーン内のトランザクションは、ブロックチェーン上のブロックにコミットされる前にノードからの検証を待つ保留中のトランザクションのリストであるメモリプールで始まります。 mempool の役割は見落とされがちですが、トランザクションがオンチェーンでどのように処理され確認されるかを理解するためには非常に重要です。メモリプールを分析することで、ブロックチェーンの仕組みと実行中のトランザクションのステータスについてより深い洞察を得ることができます。

メンプールとは何ですか?

mempool (メモリ プール) はブロックチェーン テクノロジー内の基本的なメカニズムであり、最初はビットコインによって普及し、その後イーサリアムやその他のブロックチェーン ネットワークに採用されました。これは、未確認のトランザクションの動的なステージングエリアまたは「待機室」として機能し、ブロックチェーンの台帳へのトランザクションの順序と包含を決定する際に重要な役割を果たします。

ブロックチェーン ネットワーク内の各ノードは独自のメモリプールを維持し、未確認のトランザクションに関連する情報を保存します。この分散型アプローチは、ノードと同数のメモリプールがあり、各ノードが異なるタイミングでトランザクションを受信および保存し、そのハードウェアに基づいて容量が異なることを意味します。その結果、ノードごとに、常に異なる保留中のトランザクションのセットが存在する可能性があり、その結果、ネットワーク全体でメモリプールのサイズとトランザクション数が変動することになります。

ビットコイン ネットワークでは、ユーザーがトランザクションを送信すると、そのトランザクションはネットワークにブロードキャストされ、マイナーがトランザクションをブロックに含めるまで、個々のノードのメモリプールに保存されます。このプロセスは、ネットワークのトランザクション処理および検証システムに不可欠です。同様に、Ethereum エコシステムでは、mempool は、マイニングされる前に候補トランザクションを保存するノード内のメモリ内データ構造を指します。 GethParityなどの Ethereum ノードは、これをそれぞれ「トランザクション プール」または「トランザクション キュー」と呼びます。

mempool は単なる単一のエンティティではなく、ノード全体にわたる個々の mempool の集合であり、それぞれがネットワーク上で他の mempool と同期しようとします。ネットワーク通信に固有の信頼性の低さと遅延により、各ノードのメモリプールが異なる場合があり、場合によっては大幅に異なります。ノードには、最低ガス価格やメモリプールのサイズ制限など、トランザクションを受け入れるためのさまざまな基準もあります。

メンプール

トランザクションは通常、ブロックに含まれる場合、ノードのメモリプールから残りますが、ノードのメモリプール構成が原因で置換、キャンセル、または削除された場合には削除されることもあります。この分散型の動的なシステムにより、ビットコインやイーサリアムなどのブロックチェーン ネットワークの堅牢な機能に不可欠なトランザクションの順序付け、手数料の優先順位付け、効率的なブロック構築が保証されます。

メンプールはどのように機能しますか?

トランザクションが開始されるたびに、トランザクションはネットワーク内の 1 つのノードから他のノードにブロードキャストされることによって開始されます。ノードは、署名の検証、支出者がコインを所有していることの確認、出力が入力を超えていないことの確認など、いくつかの基準に基づいてこれらのトランザクションを評価します。トランザクションがこれらのチェックに合格すると、ネットワーク全体で共有され、最終的にはマイナーがブロックに含めるトランザクションを選択するまでの保持領域であるメモリプールに到達します。

メンプールに関する重要なポイント

ユニバーサルな共有メモリプールの概念は誤解です。実際には、各ノードは独自のメモリプールを操作し、異なる時間にトランザクションを受信して処理します。ノードのメモリプールの容量は、そのリソースに応じて異なります。メモリが限られているノードでは、トランザクション ログに割り当てられるスペースが小さくなりますが、より強力なノードでは、より大量のトランザクション データを処理できます。

利益を追求するマイナーは、より高い手数料の取引を優先する傾向があります。この力関係により、特に需要が高くブロックスペースが限られている場合には、料金の見積りが困難になります。ユーザーは、現在の未確認トランザクションのプール内の手数料の範囲を観察することで手数料の傾向を把握できるため、ネットワークアクティビティが少ないときに過剰な支払いをしたり、緊急のトランザクションに対して過小な支払いをしたりすることを回避できます。

トランザクション処理における Mempool のダイナミクス

mempool を介したトランザクションの過程には、いくつかの手順が含まれます。

  1. トランザクションは、別のウォレットまたはスマート コントラクトを対象としたウォレットから開始されます。
  2. ユーザーのウォレットはトランザクションにデジタル署名します。
  3. 署名されたトランザクションは、ブロックチェーン ネットワーク (イーサリアムやビットコインなど) 上のゲートウェイ ノードに送信されます。
  4. このノードはトランザクションを検証し、トランザクションをそのメモリプールに追加します。
  5. 次に、トランザクションは他のノードにブロードキャストされ、他のノードもトランザクションを検証してメモリプールに追加し、ネットワーク全体にさらに伝播します。
  6. マイナーはメモリプールからトランザクションを取得し、それをブロックチェーン上の新しいブロックに組み込みます。
  7. トランザクションを含むこのブロックはブロードキャストされ、受信ノードはそのトランザクションをメモリプールから削除します。

Mempool の取引手数料への影響

mempool のサイズは、ブロックチェーン ネットワークにおけるトランザクションの速度と手数料に大きな影響を与えます。これらの手数料は新しいブロックのマイニングに対する報酬の一部を形成するため、マイナーはより高い手数料のトランザクションを優先します。その結果、メモリプールが混雑すると競争環境が生じ、取引手数料が上昇し、確認時間が長くなります。逆に、ネットワーク アクティビティが低い期間中は、メモリプールの混雑が緩和され、トランザクション手数料が減少し、確認時間が短縮されます。このメモリプールのアクティビティレベルの満潮と衰退は、ブロックチェーンの運用ダイナミクスにおける重要な要素です。

Mempool を監視する方法

ビットコインなどのさまざまな暗号通貨にわたるメモリプールを追跡するために多数のツールやサービスが利用可能であり、ネットワークアクティビティやトランザクションダイナミクスについての洞察を提供します。

  • Mempool監視用のブロックチェーンエクスプローラー

BlockstreamBlockchairBlockchainなどのブロックチェーン エクスプローラーは、mempool の現在のステータスを観察するための貴重なリソースとして機能します。これらは、未確認のトランザクションの数、mempool の合計サイズ、一般的な平均トランザクション手数料などのデータを提供します。

  • 特化した Mempool 監視サービス

より詳細な情報については、mempool.observer や mempool.space などのサービスが役立ちます。彼らは mempool 分析をさらに深く掘り下げ、手数料率別のトランザクションの分布、mempool 内の最も古いトランザクションの期間、およびさまざまな手数料率の確認時間の予測に関する詳細を提供します。

  • カスタム Mempool データ アクセス用の API

BitqueryCoinmetricsなどのブロックチェーン データ プロバイダーは、プログラムによるメモリプール データの取得を可能にする API を提供します。この機能はカスタム アプリケーションまたはスクリプトに統合でき、メモリプール情報のカスタマイズされた分析と使用が可能になります。

mempool を監視する価値は、トランザクションのタイミングと手数料率に関する意思決定をガイドし、より迅速な確認を最適化できることにあります。さらに、混雑レベルや全体的なアクティビティなど、より広範なネットワークの状態を把握できる窓を提供し、ユーザーと開発者が仮想通貨の状況をより効果的にナビゲートできるように支援します。

Mempool トランザクション: ロールバックする方法

仮想バイト (sat/vb) あたり約 10 サトシの手数料でビットコイン トランザクションを開始したとします。それをビットコインネットワークに送信した後、現在のブロックの確認に必要な手数料の高騰により、確認されていない状態で停止していることがわかります。通常、次の 2 つの選択肢に直面します。

料金の引き下げを辛抱強く待つ: 選択肢の 1 つは、料金が下がることを期待して待つことです。この期間は数日から数週間、場合によっては数か月にわたる場合があり、その間、トランザクションはメモリプール内で未処理のままになります。

RBF による手数料強化を選択する: あるいは、 手数料による置換( RBF ) やその他の手数料バンピング戦略などの方法を使用して取引手数料を引き上げ、ブロックに含められる可能性を高めることもできます。

しかし、mempool からトランザクションを完全に抽出するなど、別のアプローチが必要な場合はどうすればよいでしょうか?理論的には、低料金のトランザクションはパージを受けながら、時間の経過とともにメモリプールから追放される必要があります。

ただし、ビットコインネットワークの分散型の性質により、この結果は当然のことではありません。世界中の各ノードは独立して動作し、独自のメモリプールを維持します。あなたのノードは一定期間後にトランザクションを削除するかもしれませんが、他のノードはそれを保持し、メモリプール内に漂流したままにする可能性があります。取引量が少ない時期には、そのような取引が予期せず承認される場合もあります。

トランザクションがすべてのメモリプールから完全にパージされることはないということを受け入れることが重要です。誰かがそれをアーカイブし、後でネットワークに再導入する可能性が常にあります。トランザクションが行き詰まっていることがわかった場合、最も現実的な解決策は、処理を促進するために手数料を上方調整するか、同じ未使用トランザクション出力 (UTXO) を自分に送信する新しいトランザクションを作成することです。この後者の方法は、元のトランザクションを効果的に無効にし、膠着状態を解決します。さらに、このようなトランザクションについて情報に基づいた意思決定を行うには、さまざまなノードにわたるメモリプール管理のダイナミクスを理解することが重要です。

Mempool と Bitcoin: スケーラビリティの課題と将来の戦略

Mempool の継続的な進化とビットコインのスケーラビリティは、暗号通貨分野における研究とイノベーションの焦点です。スケーラビリティの課題に対処することは、ビットコインやその他の暗号通貨がより広く受け入れられ、使いやすくなるために非常に重要です。

主要な戦略には、Segregated Witness ( SegWit ) のさらなる導入と Lightning Network の展開が含まれます。 SegWit は、トランザクション データから署名データを分離することでトランザクション処理を強化し、より多くのトランザクションを各ブロック内に収めることが可能になります。第 2 層ソリューションとしてのLightning Network は、メイン ブロックチェーンからのトランザクションを容易にし、それによってメモリプールの輻輳を軽減します。

Schnorr 署名の統合も検討されています。これらのシグネチャにより、トランザクション データ サイズが大幅に圧縮され、スケーラビリティの向上に貢献すると期待されています。 Schnorr 署名を使用すると、複数の署名を 1 つに組み合わせて、トランザクションのフットプリントを効果的に縮小できます。

さらに、ブロックサイズ制限を拡大する提案も検討中です。これにより、トランザクション処理が高速化され、効率が向上する可能性があります。ただし、ブロック サイズが大きくなると集中化のリスクが増大し、ネットワーク セキュリティが侵害される可能性があるという懸念から、このアプローチはコミュニティ内で論争を巻き起こしています。

Plisio では以下のサービスも提供しています。

2 クリックで暗号化請求書を作成 and 暗号通貨の寄付を受け入れる

12 統合

6 最も人気のあるプログラミング言語のライブラリ

19 暗号通貨と 12 ブロックチェーン