Fișierele din rețeaua eDonkey sunt identificate prin utilizarea de rădăcină-MD4 MD4 hash părți -sums ale fișierului. Acest lucru sugerează că aceleași fișiere cu nume diferite, dar același conținut, și să se facă distincția între fișiere cu conținut diferit, dar același nume.
Fiecare client este asociat cu unul dintre serverele de rețea. Clientul spune server ce fișiere oferă acces generală (Aceste fișiere includ atât fișierele complete, acordate în mod expres accesul utilizatorului general, prin intermediul interfeței de client, precum și fișiere care descărcări client sau descărcate de alți clienți, dar nu eliminați utilizatorul din descărcarea programului client. Fiecare fișier care este descărcat de către client, este disponibil în mod automat în cota de îndată ce a primit cel puțin o parte din ea). Fiecare server menține o listă cu toate fișierele partajate ale clienților conectate la acesta. Atunci când un client caută ceva, acesta trimite o solicitare de căutare la serverul principal. Ca răspuns, serverul verifică toate fișierele care sunt cunoscute de el, și returnează o listă de fișiere client care îndeplinesc cererea sa.
Puteți căuta pe mai multe servere simultan. Astfel de solicitări și rezultatele acestora sunt trimise peste UDP. pentru a reduce lățimea de bandă utilizată și numărul de conexiuni la serverele. Această caracteristică este utilă în special dacă veți căuta pe serverul la care este conectat în prezent clientul, dă rezultate scăzute.
În plus, link-uri către fișierele sunt publicate în diverse forumuri de pe Internet sub forma așa-numita „eliberare“.
Serverele comunica periodic între ele, pentru o perioadă scurtă de timp. În timpul acestei sesiuni serverul, anunțând existența, trimite o listă a tuturor celorlalți cunoscute la el servere. Astfel, serverul păstrează o listă de alte servere activi. Atunci când un client se conectează la server, serverul poate să-l ofere cu o listă cunoscută la server.
Algoritmul hash folosit pentru a calcula identificatorul (suma MD4-rădăcină) a fișierului:
- Fișierele împărțit în bucăți egale de 9,728,000 bytes (9500 KB) și reziduul.
- Pentru fiecare bucată de calculat hash de 128 de biți a MD4-suma.
- Dacă dimensiunea fișierului este un multiplu de 9,728,000 bytes, adică, dimensiunea restul este 0, se calculează ca suma soldului acestui gol.
- Apoi, toate sumele calculate sunt combinate într-o singură matrice (lista hash) și a calculat valoarea MD4 hash toate din matrice. Această sumă este suma de rădăcină MD4-fișier - și identificatorul în rețeaua eDonkey.
- Dacă dimensiunea fișierului este mai mică decât 9,728,000 bytes, lista hash nu se face, și identificatorul de fișier este suma MD4-hash a întregului dosar.
Spre deosebire de algoritmul original, după cum urmează:
- Dacă dimensiunea fișierului este mai mică sau egală cu 9,728,000 bytes, ca identificator utilizat suma MD4 a întregului dosar.
- Dacă dimensiunea fișierului este un multiplu de 9,728,000 bytes, suma de control este, se adaugă „gol“ reziduu.
De exemplu, checksum pentru fișierele compuse numai din zero, coduri pentru diferite „versiuni“ ale algoritmului. Ia-le (fișiere) pot fi, de exemplu, următoarea comandă pentru a bash-sisteme de operare UNIX:
Dimensiune fișier (bytes)
"Original" ed2k algoritm
„Corecție“ ed2k algoritm
Cel mai comun tip de scurt.
- Numele fișierului este recomandat -kodirovat URI.
- Mărime fișier - dimensiunea exactă, în octeți.
h - AICH (Advanced Intelligent Corupție Handler)
hash suplimentară pentru link-uri ed2k. De utilizare bucăți mai mici, pentru a obține un hash. Acest lucru permite o investigație mai detaliată a fișierului pentru a localiza și corecta erorile, și reduce cantitatea de date necesare pentru a restabili fișierul.
Încurajate să-l publicați cu un link, atunci acesta devine imediat un hash de încredere și poate fi utilizat imediat pentru a restabili fișierul. În cazul în care nu se publică împreună cu un link, clientul va trebui să obțină același hash AICH din mai multe surse, înainte de hash va fi recunoscută ca fiind valabilă.
Calcularea AICH-hash
Pentru standardul bucată hash ed2k (9,728,000 bytes) este împărțit în 53 părți (52-180 KB, și 1-140 KB). Fiecare parte a fi ulterior prelucrate, de către algoritmul SHA1. Alte perechi Hashes trece din nou prin algoritmul SHA1 până când a obținut încă un singur hash.
p - set MD4 -heshey
Acesta permite absenta ed2k-sursa descărca fișierul de la -Link URL. De obicei, serverele sunt disponibile tot timpul, în contrast cu sursele ed2k, care sunt, în principal calculatoare personale conectate la Internet. Datorită acestei booting inițiale serverul, iar distribuirea ulterioară este deja în rețeaua ed2k, care crește sarcina pe servere și accesibilitate fișier.
Surse - Surse
Acesta vă permite să specificați ed2k-sursele care pot fi accesate pentru a descărca fișierul. Acest lucru face posibil pentru a începe descărcarea fișierului, fără a fi nevoie să se conecteze la ed2k-server, pur și simplu prin conectarea la sursele enumerate în mod direct.