Symbol ブロックチェーンプラットフォームは ノードのネットワーク によって構築されています。これらのノードはスマートアセットのトランザクションを実行、検索し、速やかにブロックチェーン台帳へ記録する、強力で、安定した、安全なプラットフォームを提供します。
Symbol のパフォーマンス優位性: 4層アーキテクチャ
4層アーキテクチャ により、開発者に他の層への影響を避けたアップデートを可能にし、セキュリティを向上させることができます。
リポジトリ: Catapult Server
Peer ノードコミュニケーション
Peer ノードは、単一のエンティティを排除してもシャットダウンできない、堅牢なネットワークであるブロックチェーンのバックボーンを構成します。ノードの役割は トランザクション と ブロック を検証すること、コンセンサスアルゴリズムの実行、新しいブロックの生成、ネットワークへの変更の伝播を実行することです。
API ノードが新しいトランザクションを P2P ネットワークにプッシュすると、それらは ブロックに含まれる かまたは廃棄されます。ノードはブロックが処理された後にそれを保存します:
Peer ノードは RocksDB へチェーンの状態を保存します。このキャッシュされたデータ構造はシリアライズされ、対応するキーに値として保存されます。例えば、データベース上のある列は公開鍵をアドレスにマップします。他には、対応するアドレスをキーの値とした、アカウント状態のエントリです。
RocksDB を使用するよりも状態をメモリに保存しておくことのほうがより高速になります。しかし状態の情報を RocksDB に保存しておくことで、ネットワークのノードが必要とするメモリを少なくできます。
注釈
RocksDB 上の状態を保持することは、大量のアカウントが存在するネットワークにおいて都合が良いです。
パブリックネットワークでは誰でもノードを実行できます。これらのノードの中には無効な情報を共有したり、ネットワークを妨害しようとするものがあります。
誤解の機会を減らすために、ノードは先行する通信の結果を追跡します。P2P 機能を持つすべてのノードはそれが対話した他のすべての Peer ノードについて成功および失敗カウンタを保持します。
ノードは要求されたデータの処理をした後に、それに応じてカウンタを更新します。ノードがリモートピアへの接続に成功すると、最初にリモートピアに対しての成功カウンタをインクリメントします。通信の試行が失敗した場合、ノードはリモートピアの失敗カウンタを増やします。同様にノードは共有データの処理後にピアカウンタを適宜更新します。
これらのスコアから推定して、ノードは到達したすべてのピアに500〜10000の重みを割り当てます。
データを読み取るリモートノードを選択する確率はその重みに比例します。4回のノード選択ごとに条件が変更され Sybil attacks が防止されます。
リポジトリ: Catapult Server
Peer + API (Dual) ノードコミュニケーション
API ノードの主な役割は、データを MongoDB に読み取り可能な形式で保存することです。 catapult-server ソフトウェアを使用すると、スタンドアロン API ノードまたは Peer 機能 (Dual) を構成できます。
データを MongoDB に直接書き込む代わりに、ノードはそれを spool
と呼ばれるファイルベースのキューに書き込みます。ブローカーサービスはスプールからのデータを消費し、それに応じて MongoDB を更新します。ブロックが処理されると、ブローカーサービスは ZMQ を使用して Catapult REST インスタンスへの変更を通知します。
API ノードは アグリゲートボンドトランザクション の連署名を集める役割も果たし、それが完成したときにだけ処理されます。
リポジトリ: Catapult REST
REST ゲートウェイコミュニケーション
Catapult REST ゲートウェイは JSON API クライアントリクエストを処理します。ゲートウェイは MongoDB から読み取り、レスポンスをフォーマットして、それをクライアントに返却します。このコンポーネントは WebSockets でクライアントにイベントを返却する役割も果たします。
各 REST ゲートウェイは1つの API インスタンスに接続して、クライアントサイドからトリガーされた新しいトランザクション要求を送信し、ソケットを使用してリアルタイムで更新を受信します。
Creating private test networks
This guide will walk you through the process of setting up your own private network using Symbol.
This guide walks you through the process of setting up a node to join Symbol’s public test network.
There is a large number of network-related settings that can be customized in Symbol.
There is a large number of node-related settings that can be customized in Symbol.
あなたの API ノード MongoDB インスタンスへ接続する方法を学習する。
This guide explains the concepts behind Symbol Bootstrap, a package which contains the necessary setup scripts to help developers quickly configure and run their own network or node.
お探しのものは見つかりましたか? フィードバックをください。