問題タブ [dht]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Monotorrents DHT を機能させるには?
monotorrent の dht 実装を機能させようとしていますが、ピアが見つからないようです。
testclient や dhttest のように、ネット上で入手可能なサンプル コード コードのほとんどを試してみました。
いくつかの異なる情報ハッシュを試しました。
ここで誰かがそれを機能させましたか?または、どこで開発者を見つけることができるか知っていますか?
これは私のコードがどのように見えるかです:
}
java - DHT を使用して検索します。SHA-1。コードプロトコル
小さなネットワークでいくつかのノードとキーをすばやく検索するために、Chord プロトコルを実装しようとしています。私が理解できないのは... Chordは、ノードとキーを円の上に配置するように考慮しています。また、それらの配置は、SHA-1 ハッシュ関数を適用して取得したハッシュ値によって決定されます。これらの値をどのように操作すればよいですか? それらを文字列として作成し、de9f2c7f d25e1b3a fad3e85a 0bd17d9b 100db4b3
それを考慮して比較し"a" < "b" is true
ますか?またはどのように?キーが別のキーの前か後かを知るにはどうすればよいですか?
p2p - Kademlia への新しいノードの追加、Kademlia ルーティング テーブルの構築
Kademlia DHT の結合プロセスについて頭を悩ませることはできません。オンラインでいくつかのチュートリアルとプレゼンテーションを見てきましたが、それらはすべて同じように言っているようで、すべての疑似コードなどはほとんど同じです (実際のコピー/貼り付け)。
誰かがこれについて高レベルのウォークスルーを提供できますか?
java - java.rmi.ConnectIOException & java.net.SocketException: 非ソケットでのソケット操作: 接続
私はイタリア人なので、英語が下手で申し訳ありません。
Java で RMI プログラムを作成しています。これは、RMI サーバーに接続するためのノードのコードのセクションです。
ただし、プログラムで次の例外が発生することがあります。
そして、これは RMI サーバーに接続するためのクライアントのコードです。
そして、この場合の例外(上記で投稿したノード例外と必ずしも一緒に発生するとは限りません)
この例外を引き起こす理由が見つかりません。
以前に投稿したコードが少なくて申し訳ありませんが、これは大きなプロジェクトのほんの一部なので、すべてのコードを貼り付けることはできません :D
ただし、必要な場合は、それに関するいくつかの情報を提供できます。
これは DHT プロジェクトであり、Bootstrap サーバー (実際には RMI サーバー) に接続しようとしているときのノード コードです。
RMI サーバー メソッドは、多数のノード (上記のコード) および/または多数のクライアントから同時に呼び出すことができます。
- ノードやクライアントによって呼び出されるサーバー メソッドは、サーバーにインストールされたモニターを管理するために作成されます。
- このモニターを通じて、ノードとクライアントは「ライターとリーダー」のモデル (相互排除など) に従ってハッシュ テーブルを変更します。
この問題で私を助けてくれるすべての人に感謝します。また、私の下手な英語で申し訳ありません!
c++ - C/C++ の分散キー/値ストアとプラグ可能なストレージ
独自のメモリ内ストレージ エンジンをプラグインできるように十分にクリーンな設計の C/C++ ベースの分散キー/値ストアを探しています。それを行うためにコードを変更しなければならない場合でも問題ありません。
誰かお勧めはありますか?または、これを行う際の同様の経験はありますか?Java ベースのプロジェクト Voldemort ( http://www.project-voldemort.com/voldemort/ ) は良い例ですが、Java で書かれており、C++ または C で何かを探しています。
networking - コード DHT 応答方法
Go で Chord DHT を作成しています (ただし、言語部分は重要ではありません)。
そして、ノード間の応答動作を理解しようとしています。ノード C にサクセサ要求メッセージを送信したいが、最初にノード A -> ノード B に移動し、次にノード C に到達する必要がある場合。ノード C が元のノードに応答するための最良の方法は何ですか?
私は明確な方法を考え出しましたが、どれがDHTにとってより偶像的であるかはわかりません.
- 各ノードが要求を行うと、元の TCP 接続で応答を待ちます。これにより、応答が最初に取った逆の経路を取るようになります。
- ノード C が要求を受信すると、要求メッセージの送信者 (IPAddress) フィールドで示される応答を元のノードに直接送信します。
- 他のメッセージと同じように、応答を送信者 NodeID に送信して、Chord リングを迂回してルーティングします。
どの方法を使用するのが最適なのかわかりません。
database - 分散 p2p ネットワークでの識別
シナリオ: ユーザーが DHT で接続する P2P 分散ネットワーク。これらは、16 進数の 76 文字の文字列で識別されます。
問題: ユーザーは、非常に長くてランダムな ID を割り当てられるのではなく、独自の ID を選択する必要があります。また、セキュリティを考慮して、ネットワークは 100% 分散されたままにする必要があるため、pubkey:username を持つサーバーは使用できません。
考えられる解決策: 分散データベース。しかし、どうすればユーザー名の一意性を保証できるでしょうか? ギガバイト単位のデータをダウンロードすることもユーザーフレンドリーではなく、動的コンテンツにも役立たないため、ビットコイン風のブロックチェーンはあり得ません。
考えられる解決策: Tahoe-LAFS などの分散ファイル システム。非常に複雑でやり過ぎであり、簡単に、またはきれいに実装することはできません。
したがって、問題はユーザーフレンドリーとセキュリティ/配布を同時に実現することです。
何か案は?
bittorrent - 個別の DHT タブを持つことは可能ですか?
私は慣れてきておりDHT
、それがどのように機能するかをほとんど理解しています。DHT
ただし、それぞれに異なるエントリタイプを持つ個別の s が必要な場合にどうなるかはよくわかりません。これは可能ですか?
私が人気のあるDHT
ライブラリを使用している場合、それは私put
とget
エントリがそのライブラリDHT
のすべてのユーザーと同じものを使用していることを意味しますか? それともDHT
誰にとっても普遍的なものですか?の をどのように定義しますかowner
、DHT
または別の含まれる をどのように定義しますDHT
か?