カルダノの三つの分散化のうちの二つ目に当たる「P2Pネットワーク」の分散化が進んでいます。現在ステークプールは手動により、P2P接続行っていますが、これによりステークプールが自動化されたP2P接続を行うことができるようになります。
この記事ではP2P展開の第一段階として、先月、プライベートP2Pテストネットが開設され、このテストネットでは、各コンポーネントの基本的な機能をテストを実施、これについての評価と結果を振り返っています。
以下はIOGブログに掲載された記事「Cardano decentralization continues: insights into our P2P deployment」を翻訳したものです。
カルダノの非中央集権化は続く:P2Pの展開についての洞察
ステークプールが自動化されたP2P接続をテストできるようになります。
2021年5月11日 Marcin Szamotulski 5 mins read
カルダノネットワークの分散化は、その長期的な持続可能性、回復力、そして中央集権的な管理団体からの独立性を確保するための鍵となります。ブロック生成が完全に分散化された今、私たちが次に注力しているのは、分散したノード間の信頼性の高い効果的な接続を構築するための、分散型ステークプールオペレーター(SPO)エコシステムの開発です。
ブロックやトランザクションを検証する権限をステークプールオペレーターに与えるためには、ネットワークソフトウェアの強化が必要です。ピア・ツー・ピア(P2P)ガバナの有効化とコネクション・マネージャの導入により、4月下旬にプライベートP2Pテストネットをリリースすることができました。現在、このエンジニアリングテストネットの評価を行った後、招待したSPOのグループにセミパブリックP2Pテストネットを展開し、テストとチューニングに協力してもらっています。
P2Pガバナの記事では、ネットワークのアーキテクチャ、ミニプロトコルとノード間の直接かつ自動の通信を可能にするコンポーネントとの相互作用について説明しました。ここでは、自動化されたピア接続を可能にする接続モデルがどのように成熟してきたかを評価し、プライベートテストネットの立ち上げの結果を振り返ります。
ネットワーク接続性の進化
カルダノの立ち上げ時、Byronのネットワーク接続モデルは、フェデレーション状態で運用されていました。その際、IOHKはコアノードとリレーノードを維持し、他の約200のリレーに接続していました(図1)。
昨年のシェリーの登場により、カルダノはハイブリッドな環境で機能するようになりました。これにより、ステークプールはコアノードやリレーノード、さらにはこの過渡期にネットワークの維持に貢献した7つのフェデレートリレーに接続することで、手動でP2Pネットワークを構築することができるようになりました(図2)。
3月以降、ブロック生産は完全に分散化され、ステークプールはP2P接続のための手動トポロジーに従っています。つまり、SPOは世界中に登録されているリレーノードのリストを使って、他のピアとの接続のための設定を行っています。より効率的な接続を実現するためには、IOランの中継ノードに頼らず、ノード間の自動通信を可能にすることが不可欠です。そこで、ネットワーキングチームは現在、自動P2Pコードの導入を進めています。これにより、プールの運営者は、より分散化されたネットワークを構築・運営できるようになります。
このようにして、P2Pメインネットが展開されると、カルダノはコミュニティが運営するノードのみで維持されることになります(図3)。
P2Pテストネットとノード通信
P2P展開の第一段階として、先月、プライベートP2Pテストネットが開設されました。このテストネットでは、各コンポーネントの基本的な機能をテストしました。
- P2Pガバナ:ホットセット、ウォームセット、コールドセットのピアを管理し、ノードが各タイプのピアの目標数を満たすようにします。
- 接続マネージャー:アウトバウンド接続の作成やインバウンド接続の登録、状態の追跡、全二重TCP接続の再利用を可能にする。
- サーバー:接続を受け付け、動的な速度制限を行う。
- インバウンドプロトコルガバナ:インバウンド接続側の実行と状態の追跡を担当する。これには、各リモートピアの状態(コールド、ウォーム、ホット)と、各インバウンドミニプロトコルの状態の追跡が含まれる。
P2Pシステムはプライベートな環境で展開され、メインネットに接続してアクティブなSPOリレーノードとの通信を確立した8つのノード間でテストされました。これらのノードはさらに他のリレーやブロック生成ノードに接続しました。このシステムでは、各リレーのDNS名またはIPアドレスを含むオンチェーンのステークプール・レジストリを使用して、ノードがステークプール・リレーを発見することができました。
テスト結果によると、ノードはメインネットからのものも含めて、通信のためのピアを任意に選択することができました。アップストリーム」メトリックを使用することで、パフォーマンスが最も悪いピアを破棄し、新しいピアをランダムに選択して接続することが可能になりました。このポリシーは、大規模なシミュレーション(10,000ノード)で実証され、ほぼ最適な結果が得られました。実機テストでは、最適化手順が何度も繰り返されました。また、8台のノードが世界各地で稼働していることに起因して、様々な場所から近くのピアと遠くのピアが接続されていることも確認されました。
現在、ネットワーキングチームとDevOpsチームは、セミパブリックテストネットに招待されたすべてのSPOが直接ピア接続を確立できるよう、テストネットの環境を改善するために協力しています。これには、最も効率的な結果をもたらすための機能拡張やテストプロセスの作業も含まれます。