AOを無限シャーディング、無限スケーリングのネットワークとして理解することができます。各プロセスは1つのシャーディングです。
書き込み:0xmiddle
レビュー:サンディ
出典:コンテンツギルド - 投資調査
AOは伝統的なブロックチェーンではありません。非常識で非常識なデザインであり、AOを理解し始めた研究者が特定の部分で混乱に陥ることが容易です、特に研究者が伝統的なブロックチェーンのアーキテクチャでAOを定義しようとする場合です。
PoSでもPoWでもない、AOが言う「ホログラムコンセンサス」とはどのようなコンセンサスメカニズムですか?
ハッシュチェーンもブロックもないため、AO はデータの不変性をどのように保証していますか?
3.協調センターがない場合、AOはグローバルな状態の一貫性をどのように保証しますか?
4.冗長な計算機構がないため、計算の信頼性をどのように保証しますか?計算エラーが発生した場合の対処方法はありますか?
5.共有されたセキュリティがないため、プロセス間の相互運用性をどのように保証しますか?
私は3つの視点を通じて、既知から未知へ進み、未知を既知に変えるために、ブロックチェーンの既に知られている概念を使ってAOを感性的なレベルで理解するのをお手伝いします。
以太坊 2.0、ポカ、Nearなどの公開鎖の教育を受けた後、誰もが「シャーディング」に馴染んでいるはずです。
**シャーディング的概念:**在区块链中,シャーディングはネットワークの拡張性を向上させるための解決策であり、ネットワークを複数のシャーディングに分割し、それぞれのシャーディングが独自に取引を検証および処理し、自身のブロックを生成することで、全体的なネットワーク効率を向上させます。シャーディング内での同期的な相互運用が可能であり、シャーディング間は特定の通信プロトコルを使用して非同期の相互運用が実現されます。
Polkadotは最も典型的なシャーディングアーキテクチャです。Polkadotでは、各パラレルチェーンがシャーディングとなり、パラレルチェーンは独自のブロックチェーンを収集しパックし、リレーチェーンによってランダムに割り当てられたバリデータグループによって検証されます。パラレルチェーン間では統一されたXCMメッセージ形式で通信し、相互運用性を実現します。
AOの極端なシャーディング
シャーディングの視点から見ると、AOは究極の「シャーディング」と言えます。各プロセスは個別のシャーディングです。イーサリアム上のすべてのスマートコントラクトが個別のシャーディングで実行されると想像してみてください。そう、それがAOです。各プロセスは独立しており、プロセス間の呼び出しはメッセージによって駆動され、完全に非同期で行われます。
しかし、私たちは、Polkadot の設計には、「リレーチェーン」が存在し、ETH2.0 には「ビーコンチェーン」が存在することに気付きました。彼らの役割は、統一されたコンセンサスレイヤーとして、共有セキュリティを提供することです。統一コンセンサスレイヤーは、すべてのシャーディングおよびシャーディング間のメッセージの直接または間接の検証サービスを提供する責任があります。一方、AO にはこのコンポーネントがないようです。では、AO のコンセンサスレイヤーはどのように設計されていますか?
AOのコンセンサスレイヤーは実際にはArweaveです。モジュラーアプローチで理解すると、AOはArweaveのL2として理解できます。ArweaveをL1としたRollupとして、AOネットワークの運用中に生成されたすべてのメッセージログはArweaveに永続的に保存されます。つまり、ArweaveにはAOネットワークの運用に関する不変の記録があります。では、おそらく疑問に思うかもしれませんが、Arweaveは分散型ストレージプラットフォームであり、あまり多くの計算能力を持っていません。ArweaveはどのようにAOネットワークからのデータを検証するのでしょうか?
答えは:Arweaveは検証しません、AOネットワーク自体には楽観的な調停メカニズムがあります。AOネットワークによってアップロードされたメッセージデータは、Arweaveは受け入れます。各メッセージには、送信者のプロセスIDとそれを実行するCU(計算ユニット)の署名、およびソートユニット(SU)の署名でソートされたメッセージが含まれています。紛争が発生した場合、不変のメッセージレコードをArweaveに依存し、より多くのノードを導入して再計算を行い、正しいフォークを作成し、誤ったフォークを破棄し、間違ったCUまたはSUのデポジットを正しいフォークで没収することができます。ここで注意が必要なのは、MUはプロセスの送信待ちメッセージを収集し、SUに渡すだけであり、信頼を置かないためデポジットは必要なく、没収も関与しません。
AOは、ArweaveをL1とするOptimistic Rollupに非常に似ていますが、検証チャレンジのプロセスはL1で行われず、AOネットワーク内で行われます。
ただ、ここには問題があります。すべてのトランザクションがArweaveに収録されるのを待ってから確認するわけにはいきません。実際、Arweaveの最終的な確定性を形成するには30分以上かかります。ですので、AOにはソフトコンセンサスレイヤーがあります。これはイーサリアムのロールアップと同様のもので、ほとんどの取引はL1の確認を待たずに処理されます。
AOのプロセスは実際には自律的です。
メッセージ受信側の Process は、Arweave が確認されるのを待ってからメッセージを処理するか、ソフトコンセンサス層で確認された後に即座に処理するかを決定する必要があります。ソフトコンセンサス層で確認された後でも、Process は柔軟な戦略を採用することができ、単一のCUが確認されると即座に処理することもできますし、複数のCUが冗長に確認し、交差検証した後に処理することもできます。冗長性もProcessが決定します。
実際のアプリケーションでは、検証の強度は通常、取引の金額に関連しています。例えば
これはAOが言及している「ホログラフィックコンセンサス」+「弾力性検証」のモデルであり、AOは「検証可能性」と「検証」の行動を切り離すことにより、伝統的なブロックチェーンアプローチとはまったく異なる方法でコンセンサスの問題に取り組んでいます。メッセージの検証責任はネットワーク自体ではなく、受信側のプロセス自体、またはアプリケーション開発者にあります。
このような共通モデルを採用することで、AOは「究極のシャーディング」の中継点なし、無限の拡張モデルを採用できる可能性があります。
もちろん、柔軟な検証は異なるプロセスの検証の強さが異なることを意味します。複雑な相互運用では、信頼チェーンの断裂が生じる可能性があります。長い呼び出しチェーンの個々のステップの失敗が全体のトランザクションの失敗やエラーにつながる可能性があります。実際には、AOテストネットの段階で、このような問題が既に露呈しています。私は、AOがすべての検証タスクに最低検証強度の基準を設定するべきだと考えています。AOが正式なネットワークに到達することによってどのような新しい設計がもたらされるか、私たちは注目しています。
従来のブロックチェーンシステムでは、リソースは「ブロックスペース」という抽象的な概念で表されます。ブロックスペースは、ノードが提供するストレージ、計算、および転送リソースの集合体であり、チェーン上のブロックと組み合わさり、チェーン上のアプリケーションの実行を提供します。ブロックスペースは有限なリソースであり、従来のブロックチェーンでは、異なるアプリケーションがブロックスペースを競い合い、支払いを行い、ノードはこの支払いによって利益を上げます。
AOにはブロックの概念がなく、「ブロックスペース」の概念もありません。ただし、他のチェーン上のスマートコントラクトと同様に、AO上の各プロセスは実行時にリソースを消費する必要があり、ノードがトランザクションと状態データを一時的に保存し、ノードが計算リソースを消費して計算タスクを実行する必要があります。プロセスが発信したメッセージは、MUとSUが目標のプロセスに伝送する必要があります。
AOでは、ノードはCU(計算ユニット)、MU(メッセージユニット)、SU(ソートユニット)の3つのタイプに分類されます。CUは計算タスクを担当するコアです。MUとSUは通信タスクを担当します。プロセスが他のプロセスと対話する必要がある場合、メッセージが生成され、出力キューに格納されます。メッセージを署名するのはCUです。MUは出力キューからメッセージを取り出し、SUに提出します。SUはメッセージに一意のシーケンス番号を付けて、Arweaveに永久的に保存します。その後、MUはメッセージをターゲットプロセスの入力キューに渡します。メッセージの配信が完了します。MUはメッセージの収集と配信を担当するもの、SUはメッセージの並べ替えとアップロードを担当するものと理解することができます。
ストレージリソースに関して、AOネットワーク内のMUは、計算に必要な一時データのみを保存し、計算が完了すると破棄されます。永続的なストレージはArweaveが担当しており、Arweaveは水平にスケーリングすることはできませんが、そのストレージパフォーマンスの天井は非常に高いです。AOネットワークのストレージ需要は、予測可能な将来においてもArweaveの天井には達しないでしょう。
AOネットワーク内の計算リソース、転送リソース、ストレージリソースはすべて切り離されていることがわかりました。Arweaveが提供する統一ストレージリソース以外に、計算リソースと転送リソースはそれぞれ水平に拡張でき、制限はありません。
より多くの、より高性能のCUノードがネットワークに参加すると、ネットワークはより高い算力を持ち、より多くのプロセスの実行をサポートできるようになる。同様に、より多くの、より高性能のMU、SUノードがネットワークに参加すると、ネットワークの転送効率が向上する。つまり、AOの「ブロックスペース」は継続的に作成されることができる。アプリケーションは、公開市場でCU、MU、SUノードサービスを購入することも、独自のノードを実行して自分のアプリケーションにサービスを提供することもできる。アプリケーションのビジネスが拡大する場合は、ノードを拡張してパフォーマンスを向上させることもできる。これはWeb2アプリケーションが行っていることと同様です。これは従来のブロックチェーンでは考えられませんでした。
リソースの価格設定レベルでは、AOは供給と需要を柔軟に調整することができ、そのためリソースの供給は需要に応じて伸縮することができます。この調整は非常に敏感であり、ノードの参加と退出は非常に迅速に行われます。そして、イーサリアムを見直すと、リソースの需要が急激に増加する場合、ガス料金の高さを我慢する以外に方法はありません。なぜなら、イーサリアムはノード数を増やしてパフォーマンスを向上させることができないからです。
以上、私たちは多くの暗号研究者によく知られている概念、例えば「シャーディング」、「モジュール化」、「Rollup」、「ブロックスペース」などを経由して、AOの原理とメカニズムに入り、AOがいかに破壊的革新を通じてほぼ無制限のスケーリングを実現しているかを理解するのを支援しました。
最初のいくつかの問題について考え直してみると、それらを理解しているかどうかがわかりますか?
AOのコンセンサスメカニズムは、実際にはOp Rollupに近い設計です。ハードウェアレベルでArweaveに依存し、ソフトウェアレベルでは、各プロセスは検証強度を自己決定し、どのくらいのCUノードが冗長計算を行うかを自己決定します。
2.ハッシュチェーンもブロックすらないAOはどのようにデータの不変性を保証していますか?
Arweave 上の DA データは不変であり、AO 上のすべての計算および転送プロセスに検証可能性を提供します。 AO 自体は時間単位あたりの処理容量を制限する必要がないため、ブロックを設定する必要はありません。「ハッシュチェーン」と「ブロック」というデータの不変性を保証するための構造は、Arweave チェーンに存在します。
3.調整センターがないと、AOはグローバル状態の整合性をどのように保証しますか?
それぞれのProcessは独立した「シャーディング」であり、それぞれが取引と状態を独自に管理し、プロセスはメッセージ駆動型の方法で相互作用します。したがって、グローバルな状態の一貫性は必要ありません。Arweaveの永続的なストレージは、グローバルな検証可能性と履歴の追跡能力を提供し、楽観的なチャレンジメカニズムと組み合わせて、紛争解決に利用できます。
4.冗長なコンピューターメカニズムがないため、計算の信頼性は誰が保証しますか? 計算にエラーがあった場合、どうすればよいですか?
AOにはグローバルな強制的な冗長コンピューティングメカニズムはありません。各プロセスは、送られてきた各メッセージの信頼性をどのように検証するかを独自に決定することができます。計算に誤りがある場合、楽観的な挑戦の形で発見および修正することができます。
Processは、相互運用する各プロセスの信用を自己で管理する必要があり、異なるセキュリティレベルのプロセスに対して異なる検証強度を使用できます。呼び出しチェーンが複雑な相互運用の場合、信頼チェーンの断裂による高いエラーコストを回避するため、AOには最低限の検証強度が必要な場合があります。