
出典:Geek Web3
まとめ:
でEIP-4844以来、Ethereum Networkのデータスループットとストレージ圧力が増加し、保管需要の増加はイーサリアムノードに大きな課題をもたらしました。ストレージ圧力を下げるために、一部のイーサリアムクライアントは、ローカルエリアに保存されている履歴データを削除し、ストレージ動作における異なるノードの一貫性が徐々に崩壊します。
ですべてのイーサリアムクライアントが行動に関する合意に達することを保証するために、EIP-4444そしてEIP-4844は、履歴データ削減行動を実行しました標準化、将来的にはイーサリアムノードの標準になります。
でしたがって、履歴データを置き換えて最新のlayer1またはlayer2ステータスを復元する場合、それはイーサリアム契約の外側の集中化されたイーサリアムプロトコルに依存します。イーサリアム
・Ethereum Portal Networkこれは、軽量で分散型P2Pネットワークであり、履歴データを含むあらゆるタイプのイーサリアムデータに適しています。限られたリソース用に設計されており、Ethereum JSON-RPCサービスを提供しています。歴史的なネットワークとレターチェーンネットワークの準備はほぼ準備ができています。
・Ethstorageは、EIP-4844 BLOBSデータのインセンティブモジュラーストレージネットワークですエッセンスBLOBを保存するために、ユーザーはL1のストレージ契約を呼び出し、ETHをストレージ料金として使用し、チェーン上のBLOBのハッシュ値を記録できます。時間が経つにつれて、保管コストは、チェーンの下のブロブストレージ証明書によって提供されるストレージサービスプロバイダーに徐々に配布されます。
で現在、Ethstorage Test Networkは、Ethereum Sepolia Testinging Onlineでオンラインで実行されており、多くのコミュニティ参加者が地元の保管条件を成功裏に証明しています。将来の計画には、分散型Ethereum State Networkの開発が含まれ、動的サイズのデータのストレージ証明書を実現し、ブラウザからEthstorageネットワークに直接アクセスできます。
ありがとう:イーサリウム財団のPiper Merriam、ポリカインのKarthik Raju、およびこの記事に関するEthstorageのQiang Zhuのフィードバックに感謝します。
背景:
2023年10月22日、有名なGo-Ethereum(Geth)開発の長であるPéterSzilágyiは、TwitterでEthereum Data Storageソリューションに関する懸念を表明しました。Gethクライアントはすべての履歴データを保持していますが、NethermindやBESUなどの他のタイプのイーサリアムクライアントを、いくつかのEthereum履歴データ(履歴ブロックなど)を削除するように構成できることを指摘しました。これにより、一部のクライアントノードの動作は、GETHクライアントオペレーターにとって不公平な他のクライアントと矛盾します。上記のトピックは、イーサリアムロードマップのストレージスキームに関する激しい議論をすぐに引き起こしました。
チャレンジを店舗
NethermindとBESUがクライアントオペレーターがローカルの履歴データを削減できるのはなぜですか?この決定に反映されている問題は何ですか?
私たちの観点から、2つの主な理由があります。
-
Ethereumクライアントのストレージ要件はますます高くなりますエッセンス
-
イーサリアムの歴史的データの保存には、合意の範囲内でインセンティブや罰がありませんエッセンス
最初の理由は、Ethereumクライアントの上昇するストレージニーズに由来しました。次のケーキマップは、2023年12月13日現在の18,779,761の新しいGethノードのストレージ配布を示しています。
図に示されているように:
-
総ストレージサイズ:925.39 GB
-
履歴データ(ブロック/トランザクション領収書):約628.69 GB
-
マークルパトリシアトリー(MPT)のステータスデータ:約269.74 GB
2番目の理由は、イーサリアムノードには、歴史的ブロックを保存する契約にインセンティブまたは罰がないことです。契約はノードのすべての履歴データを提唱していますが、違反の保管または罰を促進するメカニズムを提供することに失敗しています。ノードは、インセンティブのためではなく、利他主義のためのより多くの履歴データ抽出許可を保存して提供することをいとわない。
もちろん、クライアントオペレーターは、罰なくすべての履歴データを自由に削除または変更できます。対照的に、バリデーターノードは、完全な状態をローカルに維持および更新して、スラッシュごとに無効なブロックをサポートするために提案/投票を防ぐ必要があります。
したがって、ストレージコストがノードの大きな負担になると、一部のノードオペレーターが履歴データを削除することを選択することは驚くことではありません。履歴データがない場合、ノードクライアントはストレージコストを大幅に削減し、占有されたストレージスペースを約1TBから約300GBに減らすことができます。
図:Nethermineの構成履歴ブロックなしでノードを実行しているノードを実行しています。
今後のEthereum Data Usability(DA)アップグレードにより、ストレージチャレンジが増加します。Ethereum DAの包括的な拡張の道は、DencunによってアップグレードされたEIP-4844から始まりました。各BLOBは、EIP-4844が実装された後、128kbに設定されています。データスループットを拡張するために、Ethereumは1D Reed-Solomon削除コードを使用することを計画しています。これは、最初に各ブロックを許可し、完全な拡張中にブロックあたり256ブロブの大きさに達しました。
Ethereum DAがフル容量で実行されている場合(ブロックあたり256 BLOB)、Ethereum DAネットワークは1年で約80 TBのDAデータを受け取ると予想されます。エッセンス
Ethereum Storageロードマップとその結果
Vitalikが発行したEthereum Route Pushは、Purgeには主にストレージコンテンツが含まれると述べました。
上昇するストレージコストは、イーサリアムの生態学的研究者の注目を集めました。この問題を解決し、すべてのクライアントの一貫性を確保するために、研究者は、Ethereumクライアントの履歴データを明確に削除するためのいくつかの提案を開発しています。2つの主な提案は次のとおりです。
でEIP-4444:実行クライアントの履歴データの制限:この提案により、クライアントは1年以上過去のブロックを削除できます。平均ブロックサイズが100kであると仮定すると、履歴ブロックデータの上限は約250 GB(100K *(3600 * 24 * 365) / 12であり、ブロック時間= 12秒)です。
でEIP-4844:Faber Blobトランザクション:18日以上にわたってBLOBデータを破棄します。EIP-4444と比較して、これは歴史的塊のサイズを約100 GB((18 * 3600 * 24) * 128K * 6/12に制限するより根本的な方法であり、ブロック時間= 12秒)。
すべてのクライアントの履歴データを削除する結果は何ですか?主な問題は、新しいノードが「完全に同期」モードを介して最新の状態に同期できないことです。それに応じて、イーサリアムノードを直接同期するには、「SNAP SNC」または「状態同期」の最新の状態を採用する必要があります。この方法はGETHで実装されており、デフォルトの同期として使用されています。
ノードから削除されるEthereum Main Networkの履歴データも、Ethereum L2の問題を引き起こしますつまり、新しく追加されたlayer2ノードは、layer2のすべての履歴データをリロードすることにより、現在の最新状態に同期することはできません。さらに、L1ノードはL2ステータスを維持していないため、L2の「SNAP同期」メソッドは、layer1ブロックに従って最新のLayer2状態を直接生成できません。
予想されるソリューションは、Infura / Etherscan / L2プロジェクトの3番目のパーティサービスに依存して、Layer2の履歴データまたはステータスコピーを保存します。
私たちが探求したい中核的な質問は次のとおりです。
-
ストレージとアクセスにおいて、より良い分散型ソリューションを見つけることができますか?
-
ノードに直接インセンティブを与えるソリューションを見つけて、Ethereumネットワーク自体を取得するソリューションを見つけることは可能ですか(例えば、L1契約に依存しています)。
-
これらすべてで、イーサリアムストレージルートに完全に分散化された直接的なインセンティブソリューションを提供できますか?
解決
ソリューション1:Ethereum Portal Network
Ethereum Portal Networkは、イーサリアムプロトコルに接続するための軽量で分散型ネットワークです。ETH_CALL、ETH_GETBLOCKBYNUMBER、およびその他のEthereum JSON-RPCインターフェイスを提供します。データ型を許可し、ジャンクデータの影響を容易にするIPFとは異なり、ポータルP2Pネットワークは、ポータルネットワーク上に構築されたライトクライアント検証テクノロジーを通じて達成される履歴ブロックヘッドやトランザクションデータなど、イーサリアムデータを専門としています。
ポータルネットワークの重要な機能は次のとおりです。その軽量操作の設計と限られた機器との互換性。いくつかのMBストレージスペースと低メモリを備えたノードで実行され、それにより地方分権化を促進できます。携帯電話やRaspberry PIデバイスでさえ、ネットワークに参加して、Ethereum DAの問題に貢献する場合があります。
ポータルネットワークの開発は、クライアントの多様性の概念と一致しています。ベンチマークネットワークと履歴ネットワークが利用可能であり、ステータスネットワークが積極的に開発されています。ポータルネットワークがデータストレージに直接インセンティブを提供していないことは注目に値します。
図:100MBのストレージ制限(TRIN)を備えたポータルネットワークRUSTクライアント(TRIN)が実行されています
ソリューション2:Ethstorage Network
Ethstorage Networkは、EIP-4844 BLOBを保存し、ESPプロジェクトから資金を受け取るために特別に使用される分散型インセンティブストレージネットワークです。
で小さな信頼:集中化されたデータブリッジを必要とする既存のソリューションとは異なり、Ethstorageは、Ethereumによってライセンスを取得する必要のないEthstorageノードの1/mトラストモデルに依存しています。BLOBを保存するプロセスは、ユーザーがBLOBを運ぶトランザクションに署名し、ストレージ契約のPut(key、blob_idx)方法を呼び出すことです。次に、ストレージ契約はチェーンにBlobハッシュを記録します。その後、ストレージプロバイダーは、Ethereum DAネットワークから直接Blobをダウンロードして保存し、データブリッジをバイパスします。
でストレージコストはインセンティブと一致しています。put()メソッドが呼び出されると、トランザクションは契約にストレージ料金(msg.valueを介して)を送信する必要があります。ストレージノードが提出され、成功したチェーンの下でストレージ証明書を検証した後、ストレージ料金は徐々にストレージノードに時間の経過とともに分配されます。既存の提案者(提案者)のイーサリウムストレージ料金モデルと比較して、1回のストレージ料金があり、時間の経過とともに、ストレージ料金に支払われるストレージ料金は割引キャッシュフローモデルに続きます – 時間の経過とともに、ストレージストレージはストレージであることを控える、ストレージ、ストレージ、ストレージ、ストレージ、ストレージ、ストレージ、ストレージ、ストレージ、ストレージ、ストレージはETH価格に比べて削減されます。Ethstorageによって導入されたこの主要な革新は、ストレージノード内のストレージノードの寄与と一致しています。
でストレージ証明:ストレージプルーフは、データの可用性サンプリングに触発されており、Ethstorageのサンプリングは一定期間保存されています。チェーンのサンプルを効果的に検証するために、Ethstorageはスマートコントラクトと最新のSnarkテクノロジー開発を最大限に活用しています。
で操作なし:Ethstorageのストレージノードは、ストレージデータが保存され、ストレージ証明書がチェーンに定期的に提出されている限り、支払うことができます。
モジュラーブロックチェーンの観点から見ると、EthstorageはEthereum Storage L2として機能しますが、取引料ではなくストレージ料金を請求します。チェーン上のBLOBハッシュをインデックス化することにより、EthStorageはStorage Scalabilityを改善し、コストを削減するためのEthereum Modular Storageレイヤーです(ターゲットは約1000倍です)。
開発の観点から、EthstorageはEthereum Sepolia Testing NetworkにEIP-4844を統合しています。EthstorageおよびEthereum Sepoliaテストネットワークの圧力テストを実施しました。100人以上のコミュニティ参加者がインターネットに参加し、地元のストレージを正常に証明しました。
Ethstorage Networkの主な利点は、現在の知識に関する限り、イーサリアムよりも分散型の直接的なインセンティブを提供することです。これは先駆的な機能です。ただし、ネットワークの制限は、固定サイズのブロブ向けに設計されています。
Ethereum Sepolia Testing NetworkのEthstorage
未来を楽しみにしています
Ethereum Storageは主な注目を集めていませんが、Ethereumエコシステムでは非常に重要です。Ethereumネットワークの急速な成長に伴い、イーサリアムデータのストレージとアクセシビリティが重要な課題になりました。ポータルネットワークとEthstorageネットワークはまだ初期段階にあり、注意を払うために多くの重要な長期開発の方向性があります。
壊死した低遅延アクセスイーサリアムステータスデータネットワーク:分散型で検証可能な方法でイーサリアムステータスにアクセスすることは、重要なが挑戦的な作業です。従来のDHTネットワークモデルを使用すると、クエリアカウント情報には通常、異なるP2Pノードに保存されている内部トライノードの複数のクエリが必要です。これは、多くの場合、長期間の遅延につながります。状態ツリーの構造を使用してアクセスを加速する方法が重要です。ポータルネットワークがまもなく起動されるという州ネットワークは、まさにこの問題を解決する目的です。
ポータルネットワークとエスストレージネットワークの統合:ポータルネットワークは、BLOBデータをサポートするためにシームレスに拡張できます。Ethstorageチームは、この機能を部分的に実装しています。次の進捗は、これらのネットワークを統合し、契約を通じてプログラミングをプログラムできる分散型JSON-RPCネットワークを提供することです。契約のアプリケーションロジックをEthStorageが提供する大規模なブロブストレージと組み合わせることにより、動的な分散型Webサイト(分散型Twitter/YouTube/Wikipediaなど)など、Ethereumの新しいDappsを有効にすることができます。
ブラウザの分散訪問:IPFSと同様に、IPFSネットワークのデータのプロトコルと同様に、Web3業界は、Ethereumを直接サポートするためのイーサリアムのネイティブアクセスプロトコルを必要とし、Ethereum Richデータの大きな可能性をリリースします。これらのデータは、トークンやアカウント残高からNFT画像、および動的な分散型Webサイトまで、すべての領域をカバーしています。この分野では、ERC-4804/6860によって定義されたWeb3://プロトコルは現在、この目標を達成するために積極的に開発および促進しています。
ダイナミックサイズデータの高度なストレージ証明書:固定BLOBに加えて、動的なサイズのデータ(履歴ブロックやステータスオブジェクトなどなど)を解くには、高度なストレージ証明書の探索も不可欠です。複雑なアルゴリズムを開発すると、ストレージソリューションの適応性が向上します。
私たちの追求において、これらの努力を通じて、イーサリアムルートチャートに貢献し、将来のイーサリアムエコシステムの分散型ストレージソリューションの基礎を築くことを願っています。