Guida ad eMule ZZUL_BastarD

Aperto da 3ul3r0, 27 Aprile 2009, 17:14:50 PM

Discussione precedente - Discussione successiva

0 Utenti e 1 Visitatore stanno visualizzando questa discussione.

3ul3r0

ZZUL_BastarD


Guida basata sulla ZZUL_BastarD 1.9.9 (eMule 0.49c)

La ZZUL_BastarD, come suggerito dal nome, è una mod derivata dalla ZZUL e sviluppata da CiccioBastardo, un programmatore italiano, che ha cercato di inglobare nella sua mod alcune caratteristiche proprie della ZZUL ma arricchendola con altre totalmente nuove e originali, rendendola di fatto unica nel suo genere.
A differenza di altre mod, è una mod molto leggera dal punto di vista della RAM richiesta, ed è  priva di tantissime opzioni inutili per la quasi totalità degli utenti. La maggior parte delle caratteristiche sono "nascoste", cioè sono inglobate nel codice (hardcoded) e non sono modificabili manualmente. Lo scopo è quello di poter usufruire da subito di importanti caratteristiche senza dover necessariamente procedere a configurazioni particolari o senza dover conoscere molto del mondo delle mod.
Verranno esposte e brevemente commentate le caratteristiche più o meno visibili della BastarD.

Una versione più dettagliata di questa guida è presente al seguente indirizzo: ZZUL_BastarD - Guida alle caratteristiche.




Installazione


A differenza della versione ufficiale, la BastarD non necessita di installazione e non esiste quindi un installer, ma solo i binari. Una volta scaricati i binari, basta estrarre il file exe dall'archivio nella cartella desiderata, e avviarlo. Verranno create automaticamente tutte le cartelle necessarie, come la cartella Incoming, Temp, ecc e la BastarD sarà pronta per essere usata.
N.B. Non estrarre mai l'exe di questa mod nella cartella di eMule ufficiale, perché sono versioni differenti. La BastarD va quindi posizionata e avviata da una cartella separata rispetto la versione ufficiale di eMule, nel caso in cui si decida di usarle entrambe.





Gestione Priorità di Upload


Priorità di base dei file


In questa mod i livelli di priorità di Upload originali (release, alta, normale, bassa, molto bassa) sono 10, numerati appunto da 1 a 10, e rappresentano i moltiplicatori applicati al punteggio degli utenti che richiedono un particolare file. In tal modo un client che richiede un file con priorità 2 avrà un punteggio doppio rispetto ad un client che richiede un file con priorità 1.


Priorità Automatica
Attivando questa priorità, il livello di priorità di Upload viene assegnato automaticamente da eMule, come nella versione originale, in base al numero di richieste di download ricevute per quel particolare file. Con questa scelta, i 5 livelli originari previsti vengono mappati nei 10 livelli presenti nella BastarD, in modo da avere un controllo più preciso sulla gestione dei file.
La priorità Automatica può essere attivata sia per i normali file, sia per quelli in Powershare.
Dalla versione 1.9.6 è possibile scegliere la priorità non lineare attivando la casellina "Non linear upload priority" in Opzioni --> File. In questo modo i file con priorità di upload 10 (non lineare) riceveranno una spinta maggiore rispetto ai file con priorità di upload 10 (lineare).


Priorità PowerShare (PS)
E' praticamente il livello più potente a disposizione dei releaser.
Questo livello di priorità applicato ad un file permette di distribuirlo immediatamente, senza che il client richiedente debba entrare nella coda di Upload. A differenza di altre mod può essere attivata anche sui file in download, però con la limitazione dello ZZratio attivo.


Priorità SuperRelease (SR)
Può essere applicata solo sui file completi e prima della versione 1.9.1 era nota come PowerRelease.
Dalla versione 1.9.6, quando un file viene contrassegnato con la priorità SR, ottiene un moltiplicatore fisso 100x, quindi i client che ne fanno richiesta di download lo riescono a prelevare più facilmente perché scalano la nostra coda molto velocemente.
Invece con le versioni precedenti alla 1.9.6 il SR permetteva di gestire dinamicamente la priorità di upload del file in relazione al valore dello Share Ratio, visibile nella finestra dei File Condivisi sotto la colonna omonima.


Small File Pushing (SFP)
Spinge file più piccoli di un chunk (9,28 MB) seguendo una funzione Iperbolica e usando moltiplicatori (Rating Booster) sempre maggiori con file sempre più piccoli. Questo permette, ai client che ne fanno richiesta, di scalare più velocemente la nostra coda se richiedono file più piccoli di un chunk.
Per attivarlo basta andare in Opzioni --> Opzioni Avanzate spuntando la casellina "Push Small Files" presente in fondo all'elenco.





Misure anti-leeching e salvaguardia del network


FineCS (Credit System)


E' il cuore della BastarD, ovvero un sistema di crediti alternativo a quello ufficiale, attivo di default ma disattivabile a favore del sistema ufficiale dalla finestra Opzioni --> Opzioni Avanzate alla voce "Credit System". In realtà non è un sistema di crediti in quanto non vengono premiati coloro che ci inviano molti MB, ma al contrario vengono puniti coloro che ne inviano pochi scaricando però molto. E' un potente mezzo per combattere i leecher e il meccanismo dello scambio file (trading) che si innesca usando un qualsiasi sistema dei crediti.
Il FineCS viene applicato solo sui file incompleti e mai su quelli completi.
Esso permette a qualsiasi utente di scaricare da noi fino a 4 chunks (circa 40 MB) in più di quelli che ha inviati a noi stessi, ma se questa soglia viene superata allora scatta il sistema punitivo che inizia a togliere a quel client sempre più punti, spingendolo verso le posizioni più basse della nostra coda. Quando quel client inizierà ad inviarci a sua volta dei chunks, il suo punteggio tornerà a salire e inizierà a riscalare la nostra coda fino a tornare alla normalità nel caso in cui rientri nella soglia dei 4 chunks di gap.
Non viene mai bannato nessun client, ma solo punito a livello di punteggio, quindi l'unico effetto che si ha è quello di far aumentare il tempo di attesa in coda a quei client che si comportano in modo scorretto, ovvero scaricano molto ma diffondono poco.
Infine tale soglia è ridotta a 3 chunks se quell'utente non ci ha inviato nemmeno un chunks, e che ha quindi solo prelevato. Il client che invece rispetta tale vincolo sulla differenza non subisce nessuna penalità, ma neanche nessuna spinta o aumento del punteggio, per cui a differenza della versione originale, nessun credito è previsto e tutti i client ricevono lo stesso punteggio di partenza.


BestShare
Con questa caratteristica, introdotta dalla versione Bastard 1.9.1, si tenta di far scalare più velocemente la nostra coda ai client che ci hanno inviato molto più di quello che hanno scaricato da noi. Ogni 10 minuti i client vengono ordinati secondo questa differenza, e all'utente con il valore migliore (Best Client) è concesso un tempo Bonus. Il tempo bonus consiste nell'aggiungere al "tempo di attesa in coda" del tempo supplementare che diventa tanto più alto quanto più alta è la differenza tra Upload e Download di quel client.
Questo meccanismo permette quindi ai client scelti come "migliori" di scalare più velocemente la nostra coda di upload, bilanciando quindi in qualche modo il sistema dei crediti FineCS, che non assegna nessun tipo di credito o moltiplicatore di punteggio per i client che ci inviano molti dati. Una volta che viene concesso lo slot, il bonus viene completamente cancellato, a prescindere dalla quantità di dati trasferiti.
Il tempo bonus non viene salvato in nessun file, ma resta valido solo per la sessione corrente, e  i client identificati come Bad o Illegali non ottengono nessun bonus, mentre quelli FastWeb possono ottenerlo, a patto sempre di aver inviato una quantità di dati maggiore rispetto a quella scaricata.


ZZratio
Lo ZZRatio limita la velocità di Download qualora il Rapporto Up:Down della sessione ( visualizzabile in Statistiche --> Trasferimenti --> Rapporto Up:Down Sessione (Esclusi Up Amici) ) supera il valore 1:3. Dunque in ogni sessione bisogna inviare una quantità dati di almeno 1/3 rispetto a quella scaricata, altrimenti scatta la limitazione che abbassa la nostra velocità di download. Se invece il rapporto non è superato, si può scaricare a velocità illimitata. Questa caratteristica è attiva di default per cui non è possibile scegliere se abilitarla o meno.
Per evitare di incorrere nella limitazione, è utile lasciare eMule connesso e fare abbastanza Upload, in modo da accumulare un ratio sufficiente da poter "spendere" successivamente nel momento in cui si volesse scaricare dei file, a patto di farlo nella stessa sessione.


Identificazione client illegali
Questa mod implementa diversi metodi per identificare i client illegali. Quest'ultimi ottengono una riduzione del punteggio nel calcolo della differenza tra Upload e Download e non possono beneficiare del SFP, del SUQWT, della priorità dei file (per loro la priorità è sempre settata al livello 1, anche se sono in PowerShare), del PowerShare (non by-passano mai la coda). Tuttavia se sono abbastanza in coda, possono comunque riuscire a scaricare qualcosa, quindi non vengono bannati ma solo puniti.
Una verifica dei client illegali identificati si può vedere nella finestra Dettagli del Client.


Filtraggio Server
Nella BastarD esiste una lista particolare di IP da bannare, che corrispondono ad una serie di Server ritenuti non validi in quanto restituiscono risultati falsi. Questa lista è inclusa nel codice per cui non è editabile né si può disattivare. L'effetto sarà visibile solo nel Registro Eventi nel momento in cui tentiamo di aggiornare la lista server, e uno dei server presenti in lista ha l'IP che corrisponde ad uno degli IP da bannare. Verrà quindi mostrato un messaggio "Refused" ad indicare che la tale server è respinto.


Smart Unshare
Quando un file sta per essere rimosso dalla lista dei file condivisi, la BastarD ci segnala che il file si trova in uno stato che richiede maggiore supporto da parte dell'utente, al fine di garantirne la diffusione, invitandoci quindi a mantenerlo in condivisione.
Lo stato dipende dal rapporto di trasferimento, dal numero di richieste e infine dal numero di fonti complete.


Save Upload Queue Waiting Time (SUQWT)
Permette di rendere eMule "presente" anche quando è disconnesso, salvando il tempo di attesa dei client che sono nella nostra coda di Upload nel momento in cui scolleghiamo eMule. In tal modo quando gli stessi client si riconnettono e ci richiedono lo stesso file, tornano nella coda di Upload ma vedranno il loro nuovo tempo di attesa sommarsi al precedente valore che eMule aveva salvato nel file clients.met.SUQWTv2.met presente nella cartella /config. Questo permetterà loro di tornare  in coda non partendo da un tempo nullo, ma partendo dal vecchio tempo salvato.
E' una funzione inglobata nel codice della BastarD, quindi è sempre attiva e non può essere disattivata.





Guida a cura di 3ul3r0

Questa guida è pubblicata con licenza Creative Commons Attribution 2.5 License

3ul3r0

#1
Altro


Slot Focus
E' una feature presente nella BastarD e non può essere disattivata. Permette di concentrare la banda di upload su un minor numero di client per volta invece che dividerla equamente su tanti client come fatto dalla versione ufficiale, quindi apre solo un numero di slot sufficienti a riempire la banda di Upload. Questo sistema favorisce la diffusione di chunks interi (9.23 MB), rendendoli disponibili nel modo più veloce possibile, così l'utente che ha ricevuto il chunk in un tempo più breve rispetto al normale, è già in grado di condividerlo e di inviarlo a sua volta ad altri utenti che richiedono quel file. Per favorire il passaggio dello slot-focus da un utente all'altro, vengono aperti altri slot a velocità minore (trickle slot, visibili in colore grigio nella finestra di Upload) in modo da rendere subito disponibili questi utenti a ricevere lo slot in ogni istante.


NiceHash Load & Dimensione Buffer


Entrambi possono essere settati da Opzioni --> Opzioni Avanzate.

Il NiceHash permette di regolare lo stress che subisce l'HardDisk durante la fase di Hashing dei file.
Abbassando il valore espresso in percentuale (%) aumenterà il tempo necessario a completare l'hashing, ma verrà ridotto il carico di lavoro per l'HD e liberata ad intervalli regolari la CPU lasciandola quindi libera di eseguire altri processi attivi sul nostro PC. Invece impostandolo al 100% la funzione resterà disattivata e l'hashing verrà gestito come sulla versione ufficiale.

La Dimensione Buffer invece determina la dimensione del buffer in cui vengono temporaneamente allocati i chunk scaricati prima che vengano definitivamente scritti su Hard Disk. Rispetto alla versione ufficiale qui il valore è stato portato a 8 Mega, e si consiglia di tenerlo alto in modo da ridurre l'accesso al disco rigido, che nel lungo termine può portare alla sua rottura. Essendo 8 MB il valore massimo per singolo file, mettendo molti file in download si potrebbe avere una notevole occupazione totale in memoria.


Importa chunk da file









Permette di importare chunks da un file esterno, all'interno di un file che è in trasferimento. Questo permette di recuperare i dati da file danneggiati, e scaricare invece solo il minimo necessario per ripararlo. Se ci sono abbastanza fonti (>10), l'AICH può essere applicato sui chunks importati per ridurre ulteriormente la quantità di dati che devono essere scaricati.
Cliccando su un file, attraverso il menù contestuale, vengono mostrate 3 opzioni - Import parts to file, Initiate rehash, Stop import process – con le quali è possibile rispettivamente importare chunk, ricalcolare il filehash completo, bloccare il processo di importazione dei chunk.


Finestra Messaggi


Contiene un comoda area Post-It, nella quale vengono salvate e ricaricate automaticamente delle brevi note che possiamo scrivere manualmente per ogni utente aggiunto come Amico.
Inoltre tutte le conversazioni della chat, ad esclusione di quelle di spam, sono salvate nella directory Logs a prescindere da chi ha iniziato la conversazione. I file vengono nominati in automatico usando l'userhash più il nick dell'utente.



Finestra dettagli del client
Vicino alla voce "Rapporto Down/Up" è specificata la ragione della diminuzione del punteggio:
[ G ] = Violazione GPL
[ I ] = Client illegale
[ V ] = Versione obsoleta (<0.25)
[ F ] = Client FastWeb in stato illegale *
[ S ] = Client con Identificazione non sicura
[ R ] = Client sopra la soglia U-D prevista dal FineCS

* Nota : Un client appartenente al range degli indirizzi pubblici di Fastweb è considerato illegale se non ci ha inviato più dati di quelli che ha ricevuto da noi. Non è un ban, ma una pesante riduzione del punteggio, percui è comunque possibile per i client FastWeb scaricare qualcosa anche in queste condizioni, a patto di attendere per un tempo sufficientemente lungo in coda.


Scorciatoie da tastiera
Nella finestra File Condivisi:
(CTRL)+(S) SuperRelease
(CTRL)+(X) PowerShare
(CTRL)+(Z) Priorità Automatica
(CTRL)+(+) Aumenta la priorità del file
(CTRL)+(-) Diminuisce la priorità del file

Nella finestra Trasferimenti:
(CTRL)+(F) Assegna lo slot amico al client selezionato, ed eventualmente lo aggiunge anche alla lista amici.


Colori
* In File Condivisi i file sono mostrati con sfumature di rosso-nero-verde a seconda del numero delle Fonti Complete. Un file color rosso risulta poco diffuso, mentre color verde indica una forte presenza di Fonti Complete.
Risulta molto utile per tenere sotto controllo i propri file, nel caso si volessero bilanciare le priorità per favorire la diffusione di file rari.
* Le Collezioni sono sempre mostrare con lo sfondo color verde.
* I file in PowerShare presentano lo sfondo color giallo.
* I file in PowerRelease presentano lo sfondo color rosa.
* I file su cui è attivo lo SFP, presentano lo sfondo color azzurro.
* In Trasferimenti, i file in download inseriti in particolari categorie, conservano il colore assegnato alla categoria.


Colonne aggiuntive
In Trasferimenti --> Download:
Day (Hour) Average : Mostra la velocità media di trasferimento dei file in download, calcolata rispettivamente nella giornata e nell'ultima ora.
Total Average : Mostra la velocità media totale di trasferimento dei file in download, calcolata sul tempo totale per cui il file è in download.

In Trasferimenti --> Upload:
Slot # : Indica il numero di slot assegnato a quel client in coda.
Software : Indica il tipo di software che usano i client in coda.
Mod Version : Indica il tipo di Mod che usano i client in coda.
Chunk Detail : Mostra in dettaglio il chunk in Upload.
Dimensione : Indica la dimensione totale del file in Upload.
IP Number : Mostra l'indirizzo IP dei client.
Upload Conditions : ( R: / Diff: / P: )  Mostra rispettivamente il Rating del client, la differenza Up-Down, la priorità del file.

In Trasferimenti --> In Download:
Mod Version : Indica il tipo di Mod che usano i client in coda.

In Trasferimenti --> In Coda:
Software : Indica il tipo di software che usano i client in coda.
Mod Version : Indica il tipo di Mod che usano i client in coda.
Dimensione : Indica la dimensione totale del file in Upload.
IP Number : Mostra l'indirizzo IP dei client.
QR : Indica il Queue Ranking, ovvero la posizione di quel client nella nostra coda.

In Trasferimenti --> Client conosciuti:
Mod Version : Indica il tipo di Mod che usano i client conosciuti.
Valutazione : ( R: / Diff: ) Mostra rispettivamente il Rating del client e la differenza Up-Down per quel file.
IP Number : Mostra l'indirizzo IP dei client.

In File Condivisi:
Share Ratio : Mostra il rapporto tra Download e Upload per ogni file.
Categoria : Indica la categoria in cui si trova il file incompleto che è in download.
Interested Clients : Il numero di richieste di download ricevute per quel file.
Scaricato : Indica la dimensione parziale del file scaricato o la scritta "Completo", a seconda se il file è ancora in download o è stato già completato, ed è quindi solo in condivisione.

In Cerca:
Server : Per ogni file trovato e presente in elenco, indica l'IP del server che ha risposto alla nostra ricerca e il numero di fonti disponibili. In caso di file su cui c'è il sospetto o la certezza di un risultato fake/spam , è possibile individuare subito il server che ha inquinato i risultati e provvedere alla sua rimozione della lista server.
In alternativa c'è la comoda opzione "Remove spamming server" nel menù contestuale del file sospetto, che provvede in automatico ad eliminare dalla lista il server che ha restituito quel file.


Altre Modifiche minori
* La cronologia ricorda fino a 60 ricerche precedentemente fatte, ed è possibile rimuovere singolarmente una ricerca dalla lista (opzione presente anche sul client ufficiale dalla versione 0.49b).
* Ogni 3 minuti il buffer viene svuotato e salvato su Hard Disk.
* Rimossa tutta la sezione IRC e le notifiche presenti in Opzioni --> Notifiche.
* [MinQR]: Indica, nella colonna delle Fonti, il valore minimo del QR.
* Rimossa voce "Prova ad inviare a tutti delle parti complete" in Opzioni --> File.
* In Opzioni --> File inserita la voce "Confirm popup for links in clipboard", che consente di disabilitare la comparsa del popup quando un link viene trovato nella clipboard. E' utile per poter aggiungere link ed2k da browser senza dover confermare ogni volta.
* Separatori di chunk nella barra progresso in Upload e Download.
* E' possibile assegnare uno slot amico ad un client direttamente dalla finestra Trasferimenti, usando il menù contestuale. Non è necessario quindi aggiungerlo prima alla lista amici e da tale finestra impostare lo slot amico.
* Quando in una cartella che era precedentemente in condivisione vengono aggiunti nuovi file, questi saranno visibili in grassetto rispetto agli altri, a ricordare che nel caso quella cartella venga rimessa in condivisione i file in grassetto saranno quelli sconosciuti di cui la BastarD deve calcolare l'Hash.
* Nella finestra Server la scheda Informazioni sul Server non mostra i messaggi pubblicitari.
* Nella finestra Dettagli Client sono presenti diverse voci aggiuntive, tra cui l'Indirizzo IP del client, e la differenza (Diff) tra le voci Scaricati in Totale e Inviati in Totale.





Guida a cura di 3ul3r0

Questa guida è pubblicata con licenza Creative Commons Attribution 2.5 License