ステートレス クライアント: Ethereum 1.x の新機能
編集者注: この記事は以下から引用しましたイーサリアム愛好家 (ID: ethfans)編集者注: この記事は以下から引用しました
イーサリアム愛好家 (ID: ethfans)
イーサリアム愛好家 (ID: ethfans)
、著者:Piper Merriam、翻訳:A Jian、Odailyによる許可を得て転載。
すべてのコモンズと同様に、イーサリアム ネットワークにも多くのメンテナンス上の問題があります。状態データの継続的な拡大、同期時間のますます長期化、フル ノードの人気の低下などです。これらの問題を放置しておくと、イーサリアム 1.x の将来に重大な脅威をもたらすことになります。

これらの問題は、Devcon4 で初めてコア開発者とコミュニティ開発者によって真剣に受け止められ、イーサリアム プロトコルの現在のアップグレードの方向性に関する研究は「イーサリアム 1.x」と呼ばれました。しかし、最近では、ますます多くの人々がイーサリアム 2.0 に興味を移しているため、1.x の研究は停滞しています。これも当然であり、結局のところ、イーサリアム 2.0 の方が魅力的です。
ただし、イーサリアム 2.0 (Serenity Tranquility) は 2 ~ 3 年後まで完全に実現されず、そのうちフェーズ 0 とフェーズ 1 は 1 ~ 2 年で実現され、フェーズ 2 は 2022 年まで実現しない可能性があります。
同時に、状態データの拡大、同期時間の延長、ネットワークの健全性の低下などの問題はすべて緊急です。さらに、現在のイーサリアムチェーンを Eth2.0 の実行環境に移行する明確な計画はまだありません。
今年、大阪で何人かのクライアント開発者と会った後、私はこれらの問題について他の開発者と徹底的に話し合いましたが、例外なく全員が 1.x の研究とアップグレードが合理的であることに同意しました。
私たちは一緒に新しい方向性と計画を定義し、イーサリアム 1.0 チェーンを生き生きと健全に保ちながら静けさに向かって走り続けたいと考えています。
準備する:
イーサリアムネットワークのクライアントの多様性をさらに強化
2.0 の実行環境へのスムーズな移行のための強固な基盤を築く
これは複雑な取り組みであり、間違いなく多くのチームの協力が必要になります。しかし、今週のアイスブレイクのビデオカンファレンスの後、私たちは勇敢にもイーサリアム 1.x 研究の新たな章を開きました。
副題
原因
物語は、2018 年初めの Trinity クライアントの最初のリリースから始まります。 Trinity は、Python で書かれた Ethereum クライアントです。 Python はインタープリタ型言語であるため、Go や Rust などの競合言語とパフォーマンスで競合することは不可能ですが、いくつかの優れた機能があります。
最初のベータ版のリリース後、私たちはブロックチェーン データの高速同期を実現するために懸命に努力しましたが、もどかしい結論に達しました。このクライアントのパフォーマンスでは、人々を手放すことはできないようです。それを使用する人は誰もいません。ノードが同期するようにします。
「クイック同期」が機能しなくなった後、私たちは新しいことを探し始めました。次の 9 か月間、私たちは「この問題を完全に回避できるか?」という考えを繰り返しました。この問題を本当に回避できれば、クライアントをすぐにオンラインで作業させることができますが、以前は同期完了やオンライン作業のアクティビティが完了するまでに数時間、場合によっては数日かかっていました。
2019年9月のある日、私たちは「ビームシンク」と呼ぶプロトタイプを作りました。
ビーム同期は「ステートレス クライアント」の概念からインスピレーションを得ています。「ブロック監視 (ブロック監視)」と呼ばれるデータの一部を使用し、ビーム同期は同期時に「高速同期」のように完全な状態をダウンロードせず、データを渡すだけです。状態遷移を完了するために必要です。徐々に、同期プロセスがより多くの状態に触れると、クライアントは完全なブロックチェーン状態を再構築し、完全同期モードに切り替えることができます。
ブロックの実行に必要なデータのみがフェッチされて即座に実行されるため、メインビーム同期を使用するノードはほぼ瞬時に起動して実行できます (最適とは程遠いですが、非公式のテストでは以下のことが証明されています: ダウンロード後 実行を開始するまでにわずか約 5 分しかかかりません)すべてのブロックヘッダー)。
ビーム同期の背後にある概念が最も完全に証明されたため、Trinity チームは静かな研究から、使用可能なベータ バージョンの実験に移行しました。 2020 年第 2 四半期にベータ版をリリースする予定です。
副題
アレクセイ・アクノフは、国家爆発問題の解決に多くの時間を費やしています。最近では、州の家賃のような物議を醸す方向から離れ、無国籍の顧客が最も実行可能なアプローチであると結論付けた。 (編集者注: 記事の最後にあるハイパーリンクを参照してください)
また、ビーム同期は基本的にステートレス モードから開始され、ブロックがローカル データベースに徐々にダウンロードされるにつれて、徐々にリッチ ステート モードに移行します。 Beam sync online を使用すると、ステートレス クライアントに必要な要素を提供することに優れたネットワークへの明確なパスを間もなく概説できるようになります。
さらに、ステートレス クライアントは理論的には現在のクライアント モデルと互換性があります。これは、Alexey の研究が役立つ可能性があり、ネットワークに漸進的な改善をもたらすだけであり、物議を醸す大規模なプロトコル層の改善は必要ないことを意味します。
副題
1.x から 2.0 へ
このため、ステートレス クライアント上で確実に実行できることが、Ethereum 1.x ネットワークを 2.0 のシャードに移行するための前提条件となる可能性があります。
したがって、私たちはイーサリアム 1.x のステートレス実行スキームに取り組んでおり、1.x のスムーズな移行のために必要な準備も行っています。
言い換えれば、今日は無国籍でも、明日は平穏になるということです。
副題
1.x リサーチの形式化
Devcon の最終日、私は 1.x の研究作業を再開する方法について議論していました。その場にいた全員が問題があることを認識しており、その解決に関心を示していました。これが私にとって最後に嬉しいことです。
Trinity と残りのクライアント チームがクライアントのネットワーク要素を改善し、ビーム同期をサポートできれば、イーサリアム ネットワークを完全にステートレスにすることができます。イーサリアム 1.x のステートレス クライアントは、ブドウが熟したときにイーサリアム 2.0 上の実行環境に移行するためのプロトコルを準備します。
イーサリアム 2.0 クライアントを開発した 9 チーム (またはそれ以上) からインスピレーションを得て、私たちはさまざまなチーム間での綿密な協力を実現し、具体的な結果ビジョンに分割できる明確で崇高な Eth1.x ビジョンを形成したいと考えています。


