ジャミのネットワーク

接続性

連邦ネットワークと比較して複数の利点をもたらす [分散型ネットワーク] (教程/Jami-分散型ネットワーク) に依存しています.

  • 失敗は意味がない

  • 検閲に抵抗力がある

  • ユーザ以外の何かに依存しない

  • 結び目間の信頼は必要ありません

ネットワーク・トポ (https://git.jami.net/savoirfairelinux/jami-project/uploads/9b725e440c2705a2a3c4d0a3df092066/ネットワーク・トポ.png)

このネットワークは分散ハッシュテーブル (DHT) を構成する

分散通信システムの核心問題はピア接続性です.ジャミは2つの要素を通じて達成しています.

  • DHTの暗号化発表

  • NAT 穴穴打き用の標準プロトコルを使用する

ジャミは2つのネットワークで構築されています

  • 分散接続の設置とメッセージの配布を目的としたOpenDHT kademliaネットワーク

  • 共有された名前登録を提供するためにJAMINSブロックチェーン

OpenDHTネットワーク

[https://github.com/savoirfairelinux/opendht>]https://github.com/savoirfairelinux/opendht) を参照してください.

OpenDHT ネットワークは,ネットワークに接続されているどのノードについても知ることで接続できます.このノードは,ネットワーク上の他のノードに関する知識を共有します.

ジュミクライアントは,最初のセッション後にネットワークに接続するために,持続的なノードキャッシュを使用します.設定可能,既知の,安定した"起動ストラップ"ノードが最初の接続に使用されます.またはキャッシュされたノードが応答しない場合.

Jami クライアントは現在,bootstrap.jami.net:4222 をデフォルト (設定可能な) bootstrap node とネットワーク ID 0 (デフォルト,公開 OpenDHT ネットワーク) として使用している.

OpenDHTネットワークへの貢献

ネットワークに貢献し,Jamiがスケールできるようにする OpenDHTノードが使われています.

ジャーミユーザーは,独自の安定したOpenDHTノードを実行して,ジャミでブートストラップノードとして設定することで,完全な独立性を獲得し,公共のOpenDHTネットワークのすべてのユーザーにとって安定性,強さ,回復力を向上させることができます.

OpenDHT に付属する [dhtnode ユーティリティ] (https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode) を使ってスタンドアロンノードを実行できます. dhtnode はデータも保存せず,デフォルト内存制限が 8 MiB です.

コミュニティが運営する安定したDHTノードは,より多くのブートストラップノードがより柔軟で独立したネットワークを意味しているため,その所有者の要請によりデフォルトブートストラップリストに追加されます.

ジャーミンスブロックチェーンは

ジャーミンスブロックチェーンは実験的であり,その建築は進化する見通しです.

ジャーミクライアントはブロックチェーンノードを自分で実行するのではなく,REST APIを使用して,名前登録およびクエリのためにHTTPを使用してJAMINSサーバーと通信する.これは,ブロックチェーンノードを実行するのに必要なリソースがほとんどのエンドユーザーにとってあまりにも高いためである.

名前サーバーは,Jamiの副アカウントで設定され,Jamiのクライアントを複数の中心化されたユーザーディレクトリに接続できます.

JamiNSブロックチェーンへの貢献

既定のJami名サービスは,Savoir-faire Linuxが提供する ns.jami.netで,Ethereumブロックチェーンノードに接続されている. 目的は,誰もが (そうであれば) 独自のブロックチェーンノードとHTTPサービスを実行し,Etherを採掘し,Jamiでユーザー名を登録するために必要な取引料金を支払うための可能性を与えるという.

エチアリアム契約コード,ブロックチェーン生成ファイル,NodeJSモジュール (HTTPサーバー) をここで参照してください: 1

ジュミノードを運営する

必須条件:

  1. ゲート 1.8.23+ (ここからダウンロード)

  2. ジュミ・ジェネスファイル (ここからダウンロードする)

ジャミ ネットワーク に 加盟

ジャーミネットワークへの接続プロセスは,通常のイーサリアムネットワークへの接続プロセスに似ているが,データディレクトリを初期化するためにジェネスファイルが使用されているという違いはあります.

  1. Jami github repoからJami genesisファイルをダウンロードする

  2. コンピュータでディレクトリを作成して ジャーミブロックチェーンのデータを保存します

  • MacOS (/ユーザー/ユーザー名/jamichain) の例

  • Linux の例 (/home/username/jamichain)

  • Windows の例 (C:\ユーザー\ユーザー名\ジャミチェイン)

  1. / geth --datadir /home/username/jamichain init genes is.json を実行することで, geth を使って (2) で作成したディレクトリを初期化します.

  2. 命令行オプションでJamiのブートノードを指定します

geth --datadir=/home/username/jamichain --syncmode=full --networkid 1551 --bootnodes "enode://11ba6d3bfdc29a8afb24dcfcf9a08c8008005ead62756eadb363523c2ca8b819efbb264053db3d73949f1375bb3f03090f44cacfb88bade38bb6fc2cb3d890a5@173.231.120.228:30301" console

これはジェミのネットワークと同期している 接続されたコンソールでゲーツデモンを起動します