Principiul protocolului de funcționare
Clienții sunt conectate între ele și segmente de schimb de fișiere fără participarea directă a unui tracker, care este doar în mod regulat actualizări de informații cu privire la schimbul conectat de clienți și alte informații statistice. Pentru a lucra în mod eficient, este necesar ca rețeaua BitTorrent cât mai mulți clienți sunt capabili de a accepta conexiunile de intrare. NAT Setare neadecvată sau un firewall poate preveni.
La conectarea clienților schimb direct de informații cu privire la segmentele lor existente. Un client care dorește să descarce segment, trimite o cerere și, în cazul în care al doilea client este gata să dea, primește acest segment. Clientul verifică apoi segmentul de control și notifică toți colegii în legătură cu privire la prezența lui pe segmentul respectiv.
Fiecare client are capacitatea de a bloca temporar revenirea la un alt client (născut. Choke). Acest lucru face ca pentru o utilizare mai eficientă a ieșirii canalului. În plus, atunci când aleg - care a debloca ospețe de preferință, care s-au dat la acest client o mulțime de segmente. Astfel, sărbători cu rate bune de rentabilitate se încurajează reciproc pe principiul „te - Eu, eu - voi.“
Lipsa de cozi pentru a descărca.
Fișierele sunt descărcate în segmente mici; segmentul mai puțin accesibile, cu atât mai probabil va fi trecut. Astfel, prezența în rețeaua „Sidera“ cu dosar complet pentru a descărca în mod opțional - sistemul alocă segmente între „colegii“ pentru a ulterior acestea pot partaja segmentele lipsă.
Clienți (peers) segmente de schimb direct între ele, în conformitate cu principiul „te - Eu, eu - tu“.
segmente descărcate devin disponibile imediat altor clienți.
Integritatea controlată a fiecărui segment.
Ca obiect de injectare poate face mai multe fișiere (de exemplu, conținutul unui director).
Clienții conectați la tracker prin TCP. Incoming tracker Port: 6969.
Clienții sunt conectate între ele folosind protocolul TCP. Porturile client intrare: 6881-6889.
Numerele de porturi nu sunt stabilite în caietul de sarcini de protocol, și pot fi modificate, dacă este necesar. Mai mult decât atât, în acest moment, se recomandă majoritatea trackerele folosind portul HTTP 80 convențional, cât și pentru clienții de a alege un port de intrare aleator.
DHT-rețea BitTorrent client utilizează protocolul UDP.
În plus, protocolul UDP este UDP-tracker (nu sunt acceptate de către toți clienții și nu este o parte oficială a protocolului) și pentru conectarea clienților unele cu altele prin intermediul UDP prin NAT (utilizat numai în clientul BitComet și nu o parte oficială a protocolului).
Pentru fiecare fișier distribuit creează un fișier de metadate cu extensia .torrent, care conține următoarele informații:
tracker URL-ul;
informații generale despre fișierul încărcat (numele, lungimea, și așa mai departe.);
checksum (sau, mai degrabă, SHA1 sumei de control) segmente ale fișierului încărcat.
Lucrul fără tracker
Noile versiuni ale protocolului au fost dezvoltate bestrekernye (ing. Trackerless), sisteme care rezolva unele dintre problemele anterioare. Disclaimer tracker în astfel de sisteme nu duce la defectarea automată a întregii rețele.
Începând cu versiunea 4.2.0 a clientului oficial, are o funcție în activitatea bestrekernoy bazată pe protocolul Kademlia. În astfel de sisteme tracker disponibile descentralizat, clienților, sub forma unui tabel hash distribuit.
În momentul de față, nu toți clienții utilizează protocolul compatibile unele cu altele. Compatibil cu fiecare alte BitComet, μTorrent, KTorrent și clientul oficial BitTorrent. Azureus are de asemenea operație bestrekernoy, dar punerea sa în aplicare diferă de oficial, astfel încât nu se poate lucra cu DHT de mai sus prin intermediul clienților. [2] Cu toate acestea, există suport pentru Azureus DHT prin priza standard de Mainline DHT. (Această funcție trebuie să fie oprit)
Super însămânțarea (această stare-Cid)
Super-LED este o schimbare în comportamentul de semanare si nu poate fi efectuată fără a deranja protocolul BitTorrent. Cu toate acestea, nu este aprobat de către orice dezvoltator de protocol, Bram Cohen, nici un client oficial.
Super-LED este activă atunci când există doar o singură semănătoare. De fapt, acesta obligă utilizatorii să împartă datele descărcate. Clientul este dat o parte orice parte a fișierului nu mai transmite date până atunci, până când se găsește o rețea la o a doua copie a acestei părți. Deoarece mulți dintre participanți nu sunt în măsură sau nu doresc să pună la dispoziția altor date descărcate, totalul scade rata de rentabilitate. În mod obișnuit, în contrast cu super-semințe, se obține întotdeauna informațiile necesare, dacă este disponibilă, astfel că rata medie de date este mai mare.
Super-eficiente cu LED-uri la îndemână, cu o multime de pendulare. Atunci când un grup mic de oameni (2-3 persoane), clienții lor din diverse motive, pot fi reticenți să comunice unul cu celălalt. În acest caz, a inclus un super-semințe face clienții să aștepte pentru ca datele să devină disponibile. Atunci când numărul de pompare mari (10-20 persoane), suficient pentru a da fiecare parte a fișierului doar o singură dată, în timp ce clienții vor putea să-l împărtășească unii cu alții, și fiecare dintre ele va primi întregul fișier.