29

私はトレントマグネットテクノロジーを理解しようとしてきましたが、マグネットリンクを開いたときに最初のピアに接続する方法がわからないようです。

以下のようなマグネットリンクを取得すると、最初のピアは含まれず、BitTorrent Info Hash(btih)とファイル名のみが含まれます。

magnet:?xt=urn:btih:bbb6db69965af769f664b6636e7914f8735141b3&dn=ubuntu-12.04-desktop-i386.iso

BitTorrent&Magnetsによると:それらはどのように機能しますか?(MakeUseOf)

trトラッカー( )を指定していないマグネットリンクをクリックすると、DHTを使用して最初のピアが検出されます。ピアを取得すると、ピア交換も開始されます。

ウィキペディアのDHTの記事では、ピアを見つける方法は指定されていませんが、Kademliaの記事(BitTorrent DHTのベースとなっている)では、次のように述べています。

ネットに参加したいノードは、最初にブートストラッププロセスを経る必要があります。このフェーズでは、参加ノードは、すでにKademliaネットワークに参加している別のノード(ブートストラップノード(ユーザーまたは保存されたリストから取得))のIPアドレスとポートを知っている必要があります。

しかし、どこからそのノードを知っているのでしょうか?マグネットリンクにアドレスなどが表示されません。分散型(トラッカーレス)なので、事前にノードを知っているとは思いません。それとも、DHTは実際には分散化されていませんか?

4

1 に答える 1

23

ほとんどの場合、bittorrent クライアントを起動するときは、次のものからブートストラップします。

  1. ディスクに保存された最後のセッションのノード
  2. あなたがいるスウォームのいずれかにあなたが持っている他のピア

他に見つける手段がない場合にクライアントが使用できる、よく知られたブートストラップ ノードがいくつかあります。基本的にこれが起こる唯一のケースは、初めてクライアントをインストールしたときで、最初にダウンロードした torrent はトラッカーのないマグネット リンクです。

次に、router.utorrent.com:6881 にアクセスします。Transmission、azureus、bitcomet は同様のルーターを実行し、おそらく他のクライアントも実行していると思います。

「ルーター」とは、DHT の他のノードと同じように動作するように見えるノードを意味しますが、おそらくどのノードを配布するかを決定するための異なるメカニズムを持ち、おそらく dht ノードを導入するだけのユースケース向けに最適化されていますお互い。

更新:独自の DHT ブートストラップ マシンを実行できます。ソース コードは次のとおりです。

于 2013-03-17T20:48:49.523 に答える