Come fanno i client torrent come Utorrent a lavorare dietro le quinte? [chiuso]


-1

Sto cercando di scrivere il mio client torrent su piccola scala, simile a Utorrent. Tuttavia non sono sicuro di come iniziare a stabilire una connessione con i diversi seminatori. Una volta che ho un file torrent contenente tutti i dati, come posso decodificarlo e interpretarlo?

Qual è il protocollo per stabilire una connessione con i tracker? Supponendo che la mia conoscenza e terminologia sia corretta una volta che mi collego ai tracker trovati all'interno del file torrent, riceverò quindi un elenco di qualche tipo contenente l'IP e le porte seeder. Quindi posso connettermi e iniziare a scaricare pezzi del file dai seeder.

So anche che Utorrent elenca gli attuali seeders IP e penso che anche la loro porta. Una volta che conosco un seeder IP e la porta è possibile stabilire manualmente una connessione e iniziare a scaricare i pezzi del file? O c'è una stretta di mano o uno strato di sicurezza che lo impedisce?


Penso che dovresti chiedere questo su StackOverflow.
NoNameProvided

1
Sembra che tu abbia qualche ricerca da fare e alcune idee su dove guardare. Di per sé questa domanda è troppo ampia per poter rispondere appropriatamente a SU / SO.
SlightlyCuban

Anche su SO, questo sarebbe piuttosto ampio. Guardare una specifica Torrent o il codice sorgente per un client open source esistente sarebbe un punto di partenza migliore.
dsolimano

Anche se sento che la base di queste domande rivela che sei fuori di testa e che non c'è molto che puoi fornire alla scena torrent, ti consiglierò di trovare un client torrent open source e rivedere il codice che usano. Uno è Diluvio: dev.deluge-torrent.org/wiki/Download
Wutnaut

Well StackOverflow è diretto alla programmazione di domande specifiche. Questa domanda non cerca codice ma piuttosto conoscenza su come i client torrent lavorano dietro le quinte.
user3586062

Risposte:


2

Il protocollo Bittorrent è dettagliato Qui . Puoi anche studiare il codice sorgente di un'applicazione Bittorrent open source come Transmission.

Qual è il protocollo per stabilire una connessione con i tracker?

HTTP.

Una volta che conosco un seeder IP e la porta è possibile stabilire manualmente una connessione e iniziare a scaricare i pezzi del file? O c'è una stretta di mano o uno strato di sicurezza che lo impedisce?

Se il pari non ti ha soffocato a causa del fatto che sei avaro o inaffidabile. Probabilmente c'è dell'altro, non ho letto le specifiche complete da molto tempo. Leggi le specifiche

Per quanto riguarda la sicurezza a livello di accesso, non c'è nessuno al di là del meccanismo di soffocamento, che non è in realtà una misura di sicurezza ma solo una misura di applicazione equa. Non sono del tutto sicuro di come funzioni la crittografia, ma è solo per proteggere il trasporto e non per identificare il peer. Per quanto riguarda il fatto di assicurarsi che i peer dei pezzi diano sono parti del torrent, ecco a cosa servono gli hash SHA-1.


1
Questo è stato molto utile grazie.
user3586062
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.