eMule Katana
Guida basata su eMule 0.50a Katana 2.11
Guida a cura di: dylandog84Riferimenti per la creazione della guida: eMule Project -
guida ad eMule X-Ray -
eMule wiki -
guida ad eMule ZZUL
- codice sorgente.
Questa guida è pubblicata con licenza Creative Commons Attribution 2.5 License 
Prefazione:EMule Katana è una mod creata da p!ll3.p4ll0 sulle fondamenta della OfFixed di Spike2. Lo scopo del dev è quello di promuovere un client che possa implementare sia la maggior parte delle funzioni grafiche (bandierine, icone personalizzate ecc.) sia l'efficacia di un sistema antileecher come il ClientAnalyzer. È stata data importanza anche alla gestione delle fonti in download e upload con l'inserimento di specifiche caratteristiche che man mano si prenderanno in considerazione.
Indice
Caratteristiche della mod
Enhanced Client RecognitionFunzione che permette di riconoscere correttamente il nome e la versione del client che contattiamo, compresi "eMule Plus", "Hydranode", "Shareaza", "MLdonkey" e "TrustyFiles". Questa caratteristica è visualizzabile attraverso la schermata "Statistiche" alla voce "Clients -> Software".
NodesDatUpdateQuesto miglioramento prevede l'inserimento di un percorso predefinito (
http://www.alldivx.de/nodes/nodes.dat) all'interno dello spazio "Aggiorna nodes-dat da URL" collocato nella schermata Kad.
AntiCorruptionFunzione creata da tHeWiZaRdOfDoS con il fine di bannare quei determinati client che ci inviano una quantità di dati inferiore rispetto ad una soglia minima predefinita (64 bytes).
No needed requeueQuando finiamo di scaricare un chunk da una fonte, quest'ultima viene abbinata alla voce "in coda" invece che alla dicitura "parti non necessarie". Questa situazione si verifica se nel frattempo tale fonte completa un nuovo segmento.
AntiShapeFunzione creata da NetFinity con il fine di rendere meno redditizio il Credit shaping, ovvero la scambio di dati (e quindi di crediti) che avviene tra due client nel momento in cui entrambi stanno scaricando il medesimo file. Questo comportamento sfavorisce la condivisione dei file completi in quanto l'upload viene quasi completamente impiegato per la diffusione di segmenti riconducibili a file incompleti. Molte leechers mod enfatizzano questo cattivo comportamento cercando di inviare il minimo indispensabile utile per ottenere la "spinta" conferita dal sistema dei crediti. L'AntiShape evita quindi di elargire i crediti a quei client che ci hanno inviato meno di 2 MB.
Own ScoreCaratteristica che permette di visualizzare il punteggio che si ha nei confronti di un determinato client. In altre parole, l'Own Score è quel valore, definito "moltiplicatore", utile a calcolare i crediti che si hanno presso quel client. L'Own Score è visibile in due colonne poste rispettivamente nella lista utenti in upload e nella lista utenti in coda (on queue). Un ulteriore riscontro è visibile all'interno della scheda
Client Details (dettagli Client).
Più il valore è elevato, maggiore sarà la nostra quantità di crediti e quindi la nostra prelazione all'interno della coda di upload di quel determinato client qualora dovessimo richiedergli un segmento.L'Own Score è in stretto contatto con la colonna Ul/Dl posta in tutte le liste (download, upload, in coda, client conosciuti). Come indicato nel figura ripresa dalla lista client in upload:
il valore posto sotto la colonna Ul/Dl e riferito al primo client afferma che egli ha scaricato da noi 8.86MB senza averci corrisposto nulla (0 MB). Come detto poc'anzi, il nostro score nei suoi confronti tenderà ad aumentare.
Il valore Ul è riconducibile ai byte che il client ha ricevuto da noi.
Il valore Dl è riferito ai byte che egli ci ha offerto.L'Own Score ha un range minimo che va da 1.01 fino ad un massimo di 3.34. Se il client scarica da noi 1 Mb senza corrispondere nulla, il nostro Own Score sarà 1.01 (quindi da lui non vanteremo ancora nessun credito), mentre se arriva a scaricare un intero segmento (9.2 mb), il nostro Own Score sarà al massimo, ovvero 3.34. Queste equazioni valgono per il primo segmento scaricato. Se lo stesso client completa un secondo segmento intero senza offrire nulla in cambio, il nostro Own Score salirà a 6.68.
Flood PreventionFunzione ideata da tHeWiZaRdOfDoS che si pone il fine di ritardare la gestione delle richieste effettuate dai client per l'ingresso in un nostro slot di upload. Questa feature agisce in particolar modo durante l'avvio di eMule e verifica se i client ai quali vengono offerti i primi slot di upload sono riconosciuti come "cattivi" in quanto effettuano delle richieste troppo ravvicinate (fast reasks). Lo scopo finale è quello di rimuovere quest'ultimi favorendo l'inserimento dei client più "leali". L'opzione può essere abilitata/disabilitata attraverso il
menù contestuale upload (oppure usufruendo dei menù simili presenti anche nelle liste "client in coda e "in download").
Redesigned ClientDetailsDialogQuesta è una della caratteristiche grafiche più significative implementate dalla Katana.
Cliccando con il destra mouse sopra ad ogni client contattato dal nostro emule possiamo visualizzare la sua scheda, ovvero i "dettagli client" (client details).
Questa veste grafica è stata piuttosto elaborata ed è stata suddivisa in tre schede:
La prima permette di visualizzare le informazioni generali aggiuntive e riferite a quel determinato client. L'ispirazione per l'architettura di questo menù è stata presa dalla vecchia
mod TK4[/b]:
Oltre ad alcune voci predefinite presenti anche nel pannello "client details" utilizzato dal client ufficiale, l'immagine permette di visualizzare una nuova voce:
Own Score.
La fonte interessata è stata accostata alla figura del teschio, simbolo proprio del ClientAnalyzer e sinonimo di comportamento scorretto nei nostri confronti.
Per conoscere il motivo della penalizzazione (il rating è passato da 100, ovvero il valore predefinito per ogni client, a 90), dobbiamo spostarci nella scheda successiva:
Qui possiamo visualizzare in dettaglio i criteri più significativi che il ClientAnalyzer adopera per verificare il comportamento di un client nei nostri confronti.
GeneralQui viene ripreso quanto indicato all'inizio della scheda precedente, ovvero nome utente e programma utilizzato.
TransferQui viene divisa e catalogata sotto differenti voci la quantità di dati che il client ci ha inviato (uploaded) e quanto egli ha scaricato da noi (downloaded):
- Complete: dati inviati/ricevuti riconducibili ai file completi.
- Part file: dati inviati/ricevuti riconducibili ai file incompleti.
- Rare: dati inviati/ricevuti riconducibili ai file rari.
- Weighted: somma totale dei 3 dati precedetemente illustrati. Il ClientAnalyzer "pesa" in maniera differente la tipologia di dati inviati/ricevuti, abbinando un moltiplicatore (*1.5) a due determinati valori. Le due formule utilizzate sono queste:
Uploaded => (1.5 * Complete file data) + Part file data + Rare file data = Weighted
Downloaded => Complete file data + (1.5 * Part file data) + Rare file data = Weighted
Prendendo l'esempio in figura si avrà:
(1.5*0) + 5.83 + 0 = 5.83 MB
0 + (1.5*9.20) + 0 = 13.80 MB
Ul/Dl ratioRapporto tra i dati che il client ha ricevuto (Ul) e quelli che ci ha inviato (Dl). In figura si nota un valore di 1/0, ovvero egli ha scaricato da noi oltre un chunk (segmento composto da 9.28 MB) senza averne corrisposto un altro.
Failed UL/DLNumero di sessioni di upload e download fallite.
Scores- (Analyzer): questo è il modificatore adoperato dal client analyzer per il calcolo del rating (voto) del client. Il valore di partenza è 1.0 (nessuna penalizzazione/bonus). Se il client adotta atteggiamenti scorretti può scendere fino a 0.01. Al contrario, ovvero quando il client ci uppa in maniera spropositata rispetto a quanto gli abbiamo offerto, tale valore può arrivare a 10.
Nell'immagine si può visualizzare il valore 0.90, di conseguenza il rating presente nella pima scheda sarà 90 (anzichè 100).
- (official): questo è il modificatore utile per il calcolo dei crediti da conferire al client. Il valore predefinito è 1.0 (nessun credito), il massimo è 10. Questo valore rispecchia quanto indicato sotto la voce DL/UL modifier (modificatore DL/UL) collocata nella prima scheda.
Behavioural Qui è stato inserito un elenco di comportamenti cattivi che un client può adottare nei nostri confronti. Per il significato delle voci proposte, date un'occhiata
qui. Nel caso illustrato in figura il client è stato abbinato a nessuna voce.
HashlistsQui di seguito sono elencate quelle voci illustrate nel
pannello Leecher Secure (sicurezza contro le sanguisughe):
- GPL breaker: coloro che vengono abbinati a questa voce sono client che hanno violato i termini della gpl.
- Fincan Mod: vedi Fincan Hashceck.
- Sui Leecher: vedi Upsession check (SUI ban).
Le voci "vìolate" dal client analizzato sono evidenziate da un punto esclamativo di colore rosso. L'immagine afferma quindi che non c'è un rapporto paritario tra i dati inviati e ricevuti, pertanto il rating del client verrà diminuto a 90 fino a quando non si raggiungerà un Ul/Dl ratio di 1:1.
Il client in oggetto può essere ulteriormente segnalato mediante la colonna "
Antileech Info" presente nella lista dei client conosciuti (Known clients):
La terza ed ultima scheda permette di visualizzare sia i file richiesti da noi (parte alta) sia quelli richiesti dal client contattato (parte bassa):
In questo caso entrambi ci stiamo richiedendo il medesimo file.
ActiveRatioFunzione ideata da NetFinity e che non si discosta molto dal concetto di
ZZratio.
L'ActiveRatio è una caratteristica che forza un certo rapporto DL/UL in una determinata sessione di eMule, ovvero si resetta ogniqualvolta viene riavviato il client.
Il rapporto si calcola attraverso la formula:
Ratio (rapporto) = Download totale / (upload totale - upload totale con gli slot amici)
- Se si scaricano meno di tre segmenti (27 mb circa), il ratio non si attiva.
- Se il ratio è < di 1.0 (quindi si è uppato di più rispetto a quanto si è scaricato), il ratio non si attiva.
- Se il ratio è tra 1 e 3, la velocità di download si limita a 5 volte l'upload.
- Se il ratio è tra 2 e 3, la velocità di download si limita a 4 volte l'upload.
- Se il ratio è tra 3 e 4, la velocità di download si limita a 3 volte l'upload.
- Se il ratio è superiore a 4, la velocità di download si limita a 2 volte l'upload.
Server.met-default-update URL addedQuesto miglioramento prevede l'inserimento di un percorso predefinito (
http://www.emulefuture.eu/emulefuture/server.met) all'interno dello spazio "Aggiorna server.met da URL" collocato nella schermata Server.
PowerShareIl PowerShare incluso nella Katana è lo stesso utilizzato dalla ZZUL, pertanto è possibile reperire
qui la spiegazione di questa funzione.
L'immagine rappresenta il menù contestuale che appare nella finestra "File Condivisi" nel momento in cui clicchiamo con il destra mouse sopra ad un file. Qui abbiamo la possibilità di abilitare il Powershare abbinandolo ad una delle priorità base proposte anche dal client ufficiale. In figura è attivo il PowerShare assieme alla priorità *Release*.
RQR (QRdiff)La Katana implementa una serie di colori visualizzabili sia sotto la colonna
"Priority" (Priorità) presente nella schermata
"Transfers" (Trasferimenti) sia nella lista dei client in coda (
on queue). Questa funzione è denominata QRdiff (QR sta ad indicare Queue Rank, ovvero posizione in coda) ed indica le nostre posizioni guadagnate/perse/invariate nella coda di ogni fonte contattata per quel determinato file che abbiamo in download.
Dalla colonna Priority (Priorità) possiamo trovare:
- doppia freccia verde verso l'alto e colore verde: posizioni guadagnate.
- doppia freccia rossa verso il basso e colore rosso: posizioni perse.
- singola freccia blu verso destra e colore blu: posizioni invariate.
- singola freccia rossa verso l'alto con un valore numerico a fianco: stiamo uppando verso quel client alla velocità espressa dal valore numerico poc'anzi citato.
- singola freccia verde verso l'alto con la scritta "Transferring" (In trasferimento): stiamo ricevendo i dati da quel determinato client.
- simbolo ?Unknown (sconosciuto): non si riesce a definire il QRdiff per quella determinata fonte.
- simbolo xQueueFull (Coda piena): il client al quale è abbinato questo simbolo non può accettarci nella sua coda di upload in quanto risulta essere piena.
Nell'esempio indicato in figura
QR:16(-6) sta ad indicare che abbiamo guadagnato 6 posizioni (quindi precedentemente eravamo a QR:22) nella coda di upload del client al quale il QR e riferito.
Per conoscere il significato degli altri valori riportati basta incrociare le informazioni elencate poc'anzi.
Dalla colonna "DiffQR" presente nella lista client in coda (on queue) possiamo trovare:
- Il valore RQR qui visualizzato è riconducibile al QR proposto nella lista download, quindi abbinare un client ad un RQR3127 equivale a dire che siamo alla posizione 3127 all'interno della sua coda di upload (quindi è come se visualizzassimo QR3127 sotto la colonna Priority)
- singola freccia verde verso l'alto con un valore numerico a fianco: stiamo scaricando da quel client alla velocità espressa dal valore numerico poc'anzi citato.
Nell'esempio indicato nell'immagine,
DL:3.82KB/s sta ad indicare che stiamo scaricando un segmento da quella fonte alla velocità di 3.82 KB/s.
Per conoscere il significato degli altri valori riportati basta incrociare le informazioni elencate per il DiffQR poposto nella colonna Priority (Priorità).
Icon for complete filesQuando si completa il download di un file è possibile visualizzare questa icona

al suo fianco.