リスク警告:「仮想通貨」「ブロックチェーン」の名のもとでの違法な資金調達のリスクに注意してください。—銀行保険監督管理委員会など5部門
検索
ログイン
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
View Market
Breakpoint で待望の Firedancer を理解するための 1 つの記事
Foresight News
特邀专栏作者
2024-09-24 11:00
この記事は約1693文字で、全文を読むには約3分かかります
Solana バリデータ クライアント Firedancer はどのように動作しますか?どのように機能するのでしょうか?

原作者:かれん、フォーサイトニュース

先週開催されたソラナ ブレイクポイント カンファレンスでは、雰囲気は活気に満ち、環境に配慮した製品が次々とリリースされ、さまざまなカラフルな周辺アクティビティが華を添えました。この祝賀会で特に目を引くのは、Solana バリデータ クライアント Firedancer の初期バージョンがメイン ネットワークに正式に導入されたことであり、このマイルストーンの成果は特別な注目を集め、Solana ネットワークが達成するであろうパフォーマンスを示すものでした。 Solana 上の単一クライアントのクラッシュによって引き起こされるネットワーク ダウンタイムのリスクを回避しながら、飛躍します。

Firedancer の開発プロセスは 2021 年から 2022 年まで遡ることができます。Jump Trading Group によって開発された Solana の 2 番目のバリデーター クライアント (元のクライアント Agave は Anza によって開発されました) として、その元の設計は、単一ポイントの隠れた危険性を排除することです。ネットワーク全体の堅牢性と回復力を強化します。オリジナルの Rust ベースのバリデータとは異なり、Firedancer は C 言語で書かれており、Rust コードが含まれていません。この選択により、ネットワーク全体に対する潜在的な脆弱性の影響が大幅に軽減され、Solana のセキュリティにもう 1 つの強固な防御線が追加されます。

ファイアダンサーのパフォーマンスはどうですか?

Solana Breakpoint カンファレンスでの Jump Crypto 最高科学責任者の Kevin Bowers 氏のデモンストレーションによると、Firedancer は 1 秒あたり 100 万件を超えるトランザクションを処理する能力を実証しました。これは、Solana の現在の理論上の制限である数万 TPS をはるかに超える数です。 Kevin Bowers 氏はまた、この成果を「田舎道」を「州間高速道路」に拡張することに例え、ネットワークのコストと容量の二重の最適化を予告しました。

Jump Trading のコア エンジニアである Liam Heeger 氏は、クライアントが 20,000 ブロックを超えるブロックを生成し、1% のプレッジ率を達成したことについて、Firedancer の進捗状況を共有しました。

別のエンジニア Aryaman Jain によるデモンストレーションでは、特定の条件下での Firedancer のパフォーマンスがさらに明らかになりました。たとえば、10 個のバリデーター環境では、その TPS は 100 万レベルに達し、コンピューティング ユニットを 1 秒あたり 12 億回以上処理し、3.5 Gbps のブロックスペース機能と VM の実行を実証しました。 500,000 TPSの効率。

ファイアダンサーはどのように機能しますか?

Firedancer は、ハイパフォーマンス コンピューティング スタックとネットワーク スタック、ランタイム、コンセンサス メカニズムという 3 つの主要コンポーネントを中心に構築されています。 Solana ネットワークのパフォーマンスを 100 万 TPS まで向上させる Firedancer の能力の鍵は、その革新的なアーキテクチャ設計とデータ フローの最適化にあります (現在のプロトコル レベルの制限により、パフォーマンスは約 81,000 TPS に制限されています)。

バリデーターは、少数のスレッドを通じて多様なタスクを実行する同時実行モデルを採用しており、各スレッドはネットワーク パケット処理、トランザクション検証、ブロック パッケージ化などの特定のタスクに重点を置いています。この設計により、リソースの使用率が最大化され、トランザクション処理速度が大幅に向上します。

具体的には、各スレッドは 11 の異なるジョブの 1 つを実行します。ジョブによっては、完了するのに 1 つのスレッドだけが必要な場合もありますが、同じ作業を並行して実行するために多くのスレッドが必要な場合もあります。さらに、各スレッドには実行する CPU コアがあり、スレッドはそのコアの所有権を取得します。スレッドがスリープしたり、オペレーティング システムが他の目的でそのコアを使用したりすることはできません。

Firedancer では、「タイル」と呼ばれるアーキテクチャも導入されています。各タイルはジョブとその実行中のスレッド、および割り当てられた CPU コアを表します。この組み合わせにより、パフォーマンスのチューニングが柔軟かつ効率的になります。たとえば、net および quic はタイルあたり 100 万を超える TPS を処理できますが、verify および Bank タイルはトランザクションの検証とブロックの実行に重点を置いていますが、処理速度は比較的遅いですが、高同時実行シナリオのニーズを満たすには十分です。

Firedancer の公式ドキュメントには、次の 11 種類のタイルがリストされています。

  • net: ネットワーク デバイスからネットワーク パケットを送受信します (タイルあたり 100 万 TPS を超える処理が可能)。

  • quic: クライアントからトランザクションを受信し、すべての接続管理とパケット処理を実行して、QUIC プロトコルを管理および強制します (タイルあたり 100 万を超える TPS を処理できます)。

  • verify: 受信トランザクションの暗号化された署名を検証し、無効なトランザクションをフィルタリングします (各タイルは 200,000 ~ 40,000 TPS を処理できます)。

  • dedup: 重複した受信トランザクションをチェックして除外します。

  • パック: リーダーになると、受信トランザクションをパックし、その実行をインテリジェントにスケジュールします。

  • 銀行: 取り決められたトランザクションを実行します (各タイルは 200,000 ~ 40,000 TPS を処理できます)。

  • poh: はバックグラウンドでハッシュ演算を継続的に実行し、生成されたハッシュ値と実行されたトランザクションを混合することで順序とタイミングを証明するメカニズムです。

  • シュレッド: リーダーになると、ブロック データをネットワークに配布します。リーダーでない場合は、ブロック データを受信して再送信します (スループットは主にクラスター サイズに依存します。ベンチマーク テストでは、クラスター サイズが小さい場合、1 タイルで処理できます) 100万TPS);

  • ストア: リーダーになった場合はブロック データを受信し、他のノードがリーダーになった場合は他のノードからブロック データを受信し、ローカル ディスク上のデータベースに保存します。

  • メトリック: 他のタイルに関する監視情報を収集し、それを HTTP エンドポイントに提供します。

  • 署名: 検証者の秘密鍵を保持し、他のタイルからの署名要求を受信して応答します。

Firedancer が成熟する前に、その移行バージョン Frankendancer が最初に Solana メインネットに参入したことは注目に値します。 Frankendancer は Firedancer と Agave の一部をハイブリッドしたもので、Agave の実行機能とコンセンサス機能を保持しながら、ネットワーク スタックとブロック生成における Firedancer の強みを組み合わせています。 Firedancer は完全にゼロから構築されており、Agave コードは含まれていません。

ファイアダンサーの影響は何ですか?

間違いなく、Firedancer のリリースは Solana エコシステムに重大な影響を及ぼします。これにより、バリデーターの多様性が大幅に強化され、ネットワークの安定性に対する単一障害点の影響がさらに弱まり、Solana ネットワークの信頼性のためのより強力な要塞が構築されます。

さらに、Firedancer は既存のプロトコルとの下位互換性を維持しており、DApp 開発者やユーザーが大幅な調整を行うことなく、エコシステムのスムーズな移行を保証します。

Firedancer はまだ非投票モードにあり、継続的な最適化とレビューを受ける必要がありますが、これは Solana ネットワークの将来の発展にとってより有望な青写真を描きます。

参照:

1. https://www.youtube.com/watch?v=InGI7BDUeX4&list=PLilwLeBwGuK4eY3nT0vvvJ4GmcJLImcQE&index=14

2. https://firedancer-io.github.io/firedancer/guide/tuning.html

3. https://solanacompass.com/learn/Validated/firedancer-w-kevin-bowers


Solana
Odaily公式コミュニティへの参加を歓迎します
購読グループ
https://t.me/Odaily_News
チャットグループ
https://t.me/Odaily_CryptoPunk
公式アカウント
https://twitter.com/OdailyChina
チャットグループ
https://t.me/Odaily_CryptoPunk