Questa e' una piccola guida sul perche' i download delle volte sono lenti.
E' una traduzione di quella scritta da Unknown1 (il programmatore principale
di eMule), con varie modifiche mie, che potete trovare qui in inglese:
http://www.emule-project.net/board/index.php?showtopic=24704SETTAGGI PER LA CONNESSIONE:La prima cosa che dovete controllare e' la velocita' della vostra
connessione. Valori troppo elevati in upload possono paralizzare e
rallentare i vostri trasferimenti. In Italia i collegamenti di solito
sono di tipo ADSL con capacita' di download/upload:
1280/256 - 640/128 - 320/128 - 256/128
Trasformati in velocita' in KappaByte/secondo si ottiene:
160/32 - 80/16 - 40/16 - 32/16
Rendetevi pero' conto che per trasferire files e' necessario anche lo
scambio di altri dati (oltre a quelli che compongono effettivamente il
file), per contattare le fonti ed i server. Quindi settando i valori al
massimo di fatto rallentate la vostra connessione. Piu' fonti avete,
maggiore sara' la banda necessaria per contattarle.
Ad esempio, con un'ADSL 1280/256 (come Alice Mega) si puo' tranquillamente
settare il limite download a 0 (se possibile, significa illimitato, senno' 200) e quello upload a 27.
Per un'adsl 256/128 invece si puo' settare 0 (sempre se possibile, senno' 40) e 13.
Questo in condizioni normali. Se invece voi avete varie migliaia di fonti
disponibili sara' necessario diminuire di 1 o 2K il limite dedicato
all'upload.
Nota: se non sapete quanto veloce e' la vostra connessione, usate questo
test:
http://www.mclink.it/azienda/meter.htmRicordate di farlo quando NON AVETE NESSUN PROGRAMMA INTERNET attivo (tipo
eMule, FTP, messenger e simili).
ID BASSO:Un altro problema puo' essere l'id basso, se vi viene assegnato potrete
sempre ricevere dati ma con molta piu' difficolta'.
Cause principali di ID basso sono il firewall mal configurato, router,
LAN. Per un test provate qui, con eMule aperto:
http://www.thedonkeynetwork.com/connection_testDovete inserire il numero di porta TCP usato da eMule.
DOMANDA E OFFERTAUn fatto e' che l'upload totale del network (QUALSIASI NETWORK) e' uguale
al download totale possibile nel network. Faccio un esempio. Mettiamo che
ci siano 4 utenti, a b c d, che stanno scaricando lo stesso file. Tutti e
4 hanno un'adsl del tipo 640/128 e hanno settato 10k/s in upload.
Quale sara' la velocita' upload massima del network? 10*4, 40k/s.
Questo porta a 3 possibili soluzioni:
- ogni utente riceve a 10k/s.
- due utenti ricevono a 20k/s, due utenti non ricevono niente.
- un utente riceve a 30k/s, un utente riceve a 10k/s, due utenti non
ricevono niente.
Ovviamente in Italia ci sono molti piu' utenti, ma la formula non cambia,
e ci porta a dire che e' impossibile pretendere di ottenere sempre certe
velocita' in download perche' la nostra ADSL ce lo permette, semplicemente
perche MANCA BANDA IN UPLOAD. La stragrande maggioranza delle connessioni
da noi sono del tipo ADSL che garantiscono valori di download
enormemente piu' alti di quelli in upload. Questo significa che quando
voi scaricate ad un valore superiore a quello in upload, ci sara' qualcuno
che scarica ad una velocita' inferiore a quella del suo upload.
Quando voi scaricate al doppio del vostro upload, qualcuno non scarichera'
affatto.
Gli unici che possono un po' cambiare questi rapporti sono gli utenti
Fastweb (o quelli con una rete dedicata ad alta velocita'), ma sono
troppo pochi rispetto alle migliaia di ADSL.
Quindi ricordate che piu' uplodate, piu' sara' veloce il network. Meno
uplodate, piu' diventera' lento.
IL NETWORK EDONKEY2K/EMULE A PAROLEMolti si lamentano perche' con altri network ottengono valori di download
molto piu' alti e si chiedono come mai. Questo dipende dal fatto che i
contenuti dei network sono totalmente diversi (e' un dato di fatto che su
eMule si trovano cose che ad esempio kazaa, bittorent, winmx, sognano di
avere). eMule e' un network che ha soprattutto files di dimensioni molto
grandi, quindi LUNGHI da diffondere. Trasferire files lunghi in una maniera
corretta a molti utenti e' difficile da ottenere. Per esempio, ricevere
un file lungo su Kazaa e' molto poco sicuro. Puoi iniziare a riceverlo
velocemente, ma se quella fonte scompare non puoi fare niente. Inoltre
i dati possono essere corrotti e non c'e' modo di essere sicuro che il
file funzionera'.
Perche' allora eMule e' migliore? Cerchero' di spiegarlo con un esempio
molto semplice che funzionerebbe solo in un mondo perfetto, ma che
dovrebbe far capire.
EMULEDiciamo che voglio diffondere un file di circa 144mb e ho a disposizione
30k/s in upload e 16 persone vogliono quel file. eMule dividera' quel file
in 16 parti (chiamate chunk) di 9.28mb ognuna. Ora, invece di uplodare
l'intero file ad una persona a velocita' massima, lo uploada a 8 utenti a
velocita' minore. Ogni utente ricevera' una delle 16 parti diverse che
compongono il file. Una volta che loro hanno finito di ricevere la loro
parte del file, tornano nella coda, ed eMule inizia ad uplodare agli 8
utenti che richedono il file. I primi 8 che hanno ricevuto una parte del
file adesso possono uplodarla ad altri che vogliono quel file.
Quando il secondo set di 8 utenti ha ricevuto il download, loro sono rimessi
in coda. Ora, il risultato e' che eMule ha uplodato 16 parti diverse del
file (il file INTERO, in pratica) a 16 utenti diversi, che potranno
completarlo fra di loro. Io potrei anche rimuoverlo dalla condivisione
perche' nel network il file completo e' presente comunque. Questo significa
che tutti ricevono il file piu' lentamente, ma tutti loro lo ricevono
comunque. Se io invece continuo ad uplodare altri 144mb e poi mi
scollego, ancora piu' utenti avranno parti di quel file, altri lo
vedranno ed inizieranno a richiederlo ed a diventare fonti per altri e cosi'
via.
ALTRI NETWORKAncora, io ho un file di 144mb, voglio condividerlo e ho una connessione
di 30k/s in upload. 16 utenti vogliono quel file. Io inizio ad uplodarlo
tutto ad un utente solo. Lo riceve molto velocemente ma appena lo finisce
si scollega cosi' puo' usarlo. Allora io inizio l'upload ad un altro utente,
che lo riceve velocemente ed una volta ricevuto inizia a trasferirlo ad
un altro. Cosi' faccio anch'io, ma dopo un po' devo scollegarmi.
Ora che succede? Succede che nel network c'e' ora un solo utente con
il file completo, e 2 che hanno una parte di quel file. Appena quello
che ce l'ha completo si scollega, nessuno avra' il file completo. E nessuno
potra' diffonderlo.
E' ovvio, questo era solo un esempio visto che e' difficile spiegare
come funziona un network in poche righe, ma rende bene l'idea del perche'
su eMule i trasferimenti siano mediamente piu' lenti, ma con possibilita'
enormemente maggiori di trovare quello che si sta cercando anche dopo un
anno dalla release.
Infine, e' sempre bene ricordare che su eMule si hanno i migliori risultati mettendo tanti files in download. Al contrario di altri programmi di file sharing, che prediligono uno o pochi files alla volta, su eMule e' bene richiedere insieme varie decine di files, in modo da avere piu' fonti e scalare le code verso piu' fonti.
PS Ho intenzione di tenere aperto per la discussione questo thread, i post che saranno ritenuti poco utili saranno cancellati senza preavviso per non generare confusione.