
Solana共同創設者が新論文を発表:Solanaの並行処理リーダーシップメカニズムがMEVを解決し、グローバル価格発見エンジンを構築
TechFlow厳選深潮セレクト

Solana共同創設者が新論文を発表:Solanaの並行処理リーダーシップメカニズムがMEVを解決し、グローバル価格発見エンジンを構築
Solanaのより大きなビジョンは、どの中央集権取引所(CEX)の最高レベルのパフォーマンスにも競り合える、グローバルな無許可価格発見エンジンを構築することです。
翻訳:TechFlow

概要
MEVは、無許可ブロックチェーンにおける根本的な問題である。多くの無許可ブロックチェーンと同様に、Solanaの目標は、チェーン運営者がユーザーから引き出すMEVを最小限に抑えることにある。
Solanaが採用するアプローチは、リーダー(つまりブロック生成者)間の競争を最大化することでMEVを削減することである。これは、スロット時間を短縮し、単一のリーダーが連続して割り当てられるスロット数を減らし、各スロットあたりの並列リーダー数を増やすことを意味する。
一般的に、1秒あたりのリーダー数が多いほど、ユーザーはT秒待った後に将来のリーダーから最も好ましい価格提示を選択できる選択肢が多くなる。より多くのリーダーはまた、優れたリーダーがブロックスペースを提供するコストを下げ、ユーザーが容易に優良リーダーとのみ取引を行い、悪質なリーダーの取引を除外できることを意味する。市場が何が良くて何が悪いのかを決めるべきである。
Solanaのより大きなビジョンは、あらゆる中央集権取引所(CEX)の最良パフォーマンスと競合可能な、グローバルな無許可価格発見エンジンを構築することである。
もしシンガポールで市場に影響を与える出来事が起きた場合、その情報は依然として光ファイバーを通じて光速でニューヨークのCEXまで伝達される必要がある。その情報がニューヨークに到達する前には、Solanaネットワーク内のリーダーはすでにその情報をブロック内でブロードキャストしているべきである。物理的なインターネット分断が同時に発生しない限り、情報がニューヨークに到達した時点で、Solanaの状態はすでにその情報を反映しているはずである。したがって、ニューヨークのCEXとSolanaの間に裁定機会が存在すべきではない。
この目標を完全に実現するためには、Solanaは多数の並列リーダーと、非常に楽観的な確定保証を必要とする。
複数リーダーの設定
現在のリーダースケジュールと同様に、システムは各スロットを1人のリーダーではなく、2人のリーダーに割り当てる。この2人のリーダーを区別するために、一方をチャンネルA、もう一方をチャンネルBとラベル付けする。AとBは独立してローテーションできる。この計画を実現するには以下の問いに答える必要がある:
-
ブロックAとBが異なるタイミングで到着したり、あるいは失敗した場合はどうなるか?
-
ブロックAとB内のトランザクション順序をどのように統合するか?
-
AとBの間でブロック容量をどのように分配するか?
並列ブロックの伝送
具体的なプロセスを理解するには、まずTurbineについて簡単に知る必要がある。
リーダーはブロックを構築する際にそれをフラグメントに分割する。32個のフラグメントのバッチは、32個のパリティフラグメントを持つ消散符号(erasure code)である。64個のフラグメントバッチはマークル化され、ルートに署名され、前のバッチとリンクされる。
各フラグメントは独立した決定論的ランダムパスを通じて送信される。最後のバッチの各リトランスミッターはルートに署名する。
受信者の観点からは、各受信者は検証済みリトランスミッターから32個のフラグメントを受信する必要がある。欠落しているフラグメントはランダムに修復される。
この数字は増減可能であり、遅延への影響はほとんどない。
リトランスミッターのフラグメント経路サンプリングが十分にランダムかつ株式量に応じて重み付けされていれば、協調的にネットワークを分断するために必要な株式量は、到達時間やデータのいずれにおいてもε株式をはるかに超えるだろう。受信者がT時間内に各バッチの32/64(設定可能)のフラグメントが到着したことを検出すれば、おそらくすべてのノードでも同様である。なぜなら、32個のランダムなノードは十分に大きく、偶然すべて同じ分断に属することはほとんどないからである。
分断が発生した場合、コンセンサスがこれを解決する必要がある。これは安全性に影響しないが、比較的遅い。
複数ブロック生成
単一ブロックを伝送する場合、各受信者(次のリーダーを含む)は各ブロックのフラグメントバッチの到着を観察する。Tミリ秒以内にブロックが不完全であれば、現在のリーダーはそのブロックをスキップし、それを含まないフォークを構築する。リーダーが誤っている場合、他のすべてのノードはそのブロックに対して投票し、リーダーのブロックはスキップされる。故障していないリーダーは直ちに投票によって示された最も重いフォークに切り替える。
複数ブロック伝送の場合、各ノードは最大Tミリ秒待ってから、観測されたブロックの分割状況に対して投票する必要がある。2人の並列リーダーの場合、可能性のある状況はA、B、またはAとBの両方である。ブロックが遅延した場合にのみ、追加の遅延が発生する。通常の運用下では、すべてのブロックは同時に到着すべきであり、各バリデータは両方が到着した後すぐに投票できる。したがって、実際にはTはゼロに近くなる可能性がある。
特に防御が必要な攻撃とは、極めて少量のステークを持つリーダーが、スロット境界でわずかに遅れてブロックを送信することで、確実にネットワークを分断させ、ネットワークがコンセンサスメカニズムを通じて問題を解決するために大量の時間を費やすように強いることができるかどうかという点である。ネットワークの一部はAに投票し、別の部分はBに投票し、さらに別の部分はAとBの両方に投票する。この3種類の分断状態はすべてコンセンサスメカニズムによって解決される必要がある。
具体的には、ゼロ近傍の目標は、ノードが同時にブロックを復元することを保証することである。攻撃者がゼロ近傍に協調ノードを持っている場合、正常に31/64のフラグメントを送信し、攻撃者が最後のフラグメントを選択的に送信することで分断を作ろうとするかもしれない。正直なノードはどのリトランスミッターが遅延しているかを検出し、任意の正直なノードがブロックを復元した直後に、欠落しているフラグメントをそれらにプッシュできる。リトランスミッターはどこかからフラグメントを受け取ったり復元したりすれば、継続できる。したがって、ある正直なノードがブロックを復元した後は、まもなくすべてのノードがブロックを復元すべきである。テストを通じて、待機時間の長さ、それが絶対値なのか、各フラグメントの到着時間に重み付けされたものなのか、株式ノードの評判を使用すべきかを決定する必要がある。
各ブロック内で協調するリーダーやリトランスミッターの確率はおよそP_リーダー株式 × (64P_リトランスミッター株式)である。1%の株式があれば、攻撃者はリーダーとしてスケジュールされた半分のフラグメントバッチで攻撃を試みることができる。したがって、検出と緩和は十分に強力である必要がある。
このような攻撃が次のリーダーに与える影響は小さい。非同期実行により未使用の容量が繰り越せるためである。したがって、現在のリーダーが次のリーダーにスロットをスキップさせたとしても、次のリーダーが4つの連続スロットを持っている場合、スキップされたスロットの未使用容量は繰り越され、リーダーはスキップされたスロットのトランザクションを再包含できる。
並列ブロックの統合
ユーザーが包含の確率を高めたり、ブロック内で最初の位置を得るために、同じトランザクションをリーダーAとBの両方に同時送信した場合、リソースの浪費が生じる。このような状況が頻発すれば、並列リーダーの数を増やしても性能向上の効果は非常に限定的となり、単に同じゴミトランザクションを2倍処理するだけになる。
重複トランザクションを回避するため、手数料支払者の上位Nビットがどのリーダーチャンネルで有効になるかを決定する。この例では、最上位ビットがAまたはBを選択する。手数料支払者は排他的なチャンネルに割り当てられなければならない。これにより、リーダーは手数料支払者が有効であることを確認でき、他のリーダーでlamports(Solanaブロックチェーンの最小通貨単位)を使い切っていないことが保証される。
これにより、スパム送信者は論理的に同一のトランザクションに対して少なくとも2回の手数料を支払う必要があるが、最初のトランザクションになる確率を高めるために、依然として論理的に同一のトランザクションを送信する可能性がある。
こうした行動を阻止するため、ユーザーはリーダーの優先手数料に加えて、100%破棄される注文手数料を追加で含めることができる。最も高い注文手数料が最初に実行される。そうでなければFIFO(先入れ先出し)順に並べる。同点の場合は、決定論的ランダム順序で順序を決める。そのため、スパム送信者にとって、包含手数料を2回支払うよりも、注文手数料を上げて最初に実行されるほうがコスト効率が良い。
バンドルや再順序付けされたトランザクションシーケンスを処理するためには、システムがバンドルトランザクションをサポートし、その注文手数料が全体のシーケンスの順序付けコストをカバーできるようにする必要がある。手数料支払者は予定されたチャンネルでのみ有効であるため、バンドル操作は独自のチャンネル内でのみ可能となる。
あるいは、注文手数料が不要な場合もある。FIFO順序を使用し、スパム送信者がすべてのチャンネルで常に優先手数料を課せられるのであれば、N人のリーダーに支払って包含確率を高めるコストと、最も早くトランザクションを包含する可能性が高い最近のリーダーに支払うコストのどちらを選ぶかを、市場に任せることもできる。
ブロックリソースの管理
ブロックチェーンネットワークでは、2人の並列リーダーがいる場合、システム全体のブロック容量制限は平均分配される必要がある。具体的には、総容量だけでなく、書き込みロック制限など各具体的制限も同様である。すなわち、どのアカウントも600万計算単位(CUs)を超えて書き込みできない一方、各リーダーは最大2400万CUsのトランザクションしかスケジュールできない。これにより、最悪の場合でも統合されたブロックがシステムの総容量制限を超えないことが保証される。
このメカニズムは、手数料の変動やリソースの未使用を引き起こす可能性がある。なぜなら、優先度付きスケジューリングの手数料は各リーダーの容量によって決まり、各リーダーは他の並列リーダーのスケジュール状態についてほとんど知らないからである。
リソース利用不足とそれに伴う手数料の急騰を緩和するため、未使用のブロック容量は将来のブロックに繰り越されるべきである。つまり、現在の統合ブロックが書き込みロック、総バイト数、または総計算単位(CUs)においてXだけ使用されていない場合、K*X(0 < K < 1)を次のブロックに追加し、ある最大値まで繰り返す。非同期実行はチェーンの先端から最大1エポック遅れることができるので、容量の繰越はかなり積極的に行える。
最近のブロックデータによると、ほとんどのブロックは通常80%埋まっており、書き込みロック制限ははるかに50%を下回っている。一般に、将来のブロックには常にいくらかの予備容量があるべきである。ブロックが一時的に容量制限を超える可能性があるため、実行はコンセンサスプロセスと非同期である必要がある。非同期実行提案の詳細については、APE記事を参照のこと。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














