2013-03-04 16 views
20

Próbowałem zrozumieć technologię magnesów torrentowych, ale nie potrafię wymyślić, w jaki sposób łączysz się z pierwszym graczem podczas otwierania połączenia magnetycznego.Jak uzyskać pierwszego peera z łącza torrent-magnet?

Gdy otrzymasz link magnetyczny, jak poniżej, nie zawiera on początkowego peera - tylko skrót informacji BitTorrent (btih) i nazwa pliku.

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

Według BitTorrent & Magnets: How Do They Work? (MakeUseOf)

Jeśli klikniesz link magnet że nie określono trackera (tr) pierwszy wzajemnej zostaną znalezione za pomocą DHT. Kiedy masz rówieśnika, kopie wymiany również się pojawiają.

DHT article on Wikipedia nie precyzuje, jak znaleźć sobie równych, ale w Kademlia article (na której BitTorrent DHT jest oparty), to mówi

węzeł, który chciałby przyłączyć się do sieci musi najpierw przejść poprzez proces ładowania początkowego. W tej fazie, , węzeł łączący musi znać adres IP i port innego węzła,, czyli węzeł ładowania początkowego (uzyskany od użytkownika lub z zapisanej listy), który już uczestniczy w sieci Kademlia.

Ale skąd on wie, że węzeł z? Nie widzę adresu ani niczego, co jest obecne w łączu magnetycznym. Ponieważ jest zdecentralizowany (bez trackera), nie spodziewałbym się, że będzie on z góry gotowy. A może DHT jest zdecentralizowany?

Odpowiedz

18

W przeważającej części, po uruchomieniu klienta bittorrent, bootstrap off:

  1. węzły z ostatniej sesji, które zostały zapisane na dysku
  2. innych rówieśników, że masz na którymś z rojów jesteś na

Istnieje kilka dobrze znanych węzłów bootstrap, których klienci mogą używać, jeśli nie mają innego sposobu na znalezienie. Zasadniczo jedyny taki przypadek ma miejsce, gdy instalujesz klienta po raz pierwszy, a pierwszy pobierany torrent jest łączem magnetycznym bez trackera.

Następnie można nacisnąć przycisk router.utorrent.com:6881. Uważam, że transmisja, azureus i bitcomet działają z podobnymi routerami, a być może także z innymi klientami.

Przez "router" mam na myśli węzeł, który wydaje się zachowywać jak każdy inny węzeł w DHT, ale prawdopodobnie ma inny mechanizm określania, które węzły przekazać, i prawdopodobnie jest zoptymalizowany specjalnie do przypadku użycia wprowadzenie węzłów dht do siebie.

AKTUALIZACJA: można uruchomić własną maszynę ładującą DHT, here's kod źródłowy.

+0

Czy węzeł rozruchowy, np. Dht.transmission.com, nie powinien być po prostu trackerem? Sposób, w jaki to rozumiem, polega na tym, że musi śledzić listę rówieśników na hasz informacji - czyli dokładnie to, co robi tracker. – Kar

+5

węzły bootstrap różnią się od trackerów bittorrent.Nie przechowują list uczestników na hasza informacji, przechowują listę pojedynczych węzłów. Protokół DHT różni się także od protokołu trackera. – Arvid

Powiązane problemy