GeTThings: a P2P application
Realizzato da:
GeTThings è un client server distribuito per la condivisione di file.
Le caratterisitiche di questo nuovo software sono simili a quelle
dei famosissimi e ricchissimi software peer-to-peer che realizzano già file sharing sulla rete.
Esistono però delle differenze:
- GeTThings non è propriamente peer-to-peer in quanto i file condivisi non risiedono sulla memoria di massa del client che intende
metterli a disposizione degli utenti, ma sono copiati sui server su cui gira GeTThings. Questo implica che un utente che voglia
condividere pippo.txt debba farne esplicita richiesta al server
- GeTThings mette a disposizione dell'utenza la condivisione di file criptati. La crittazione avviene mediante l'algoritmo 3DES
uno dei più sicuri ed efficienti algoritmi di crittazione a chiave simmetrica. Le chiavi inserite all'atto della richiesta di condivisione
non viaggiano sulla rete con maggiore sicurezza per i dati condivisi. L'uso del 3DES porta con sè chiaramente tutti gli svantaggi di
un sistema di crittazione a chiave simmetrica
- GeTThings è realizzato in Perl per sistemi Linux. L'uso del Perl implica la necessità per chi voglia usare il client e per chi
voglia mettere a disposizione un server di avere installato un interprete Perl sulla propria macchina.
- L'interfaccia grafica è realizzata mediante Tcl/Tk ed in particolare mediante l'uso di un modulo per il Perl Perl/Tk
Anche qui è quindi richiesto per il client l'installazione di tale modulo per godere al meglio nell'uso di GeTThings (per maggiori informazioni
sul modulo Perl/Tk vedere il sito ufficiale del Perl nella sezione CPAN). Per chi non volesse
perdere tempo e pazienza con download e installazioni varie è diponibile anche una semplice, veloce ed efficiente versione testo del client
A consolazione dei più pigri diciamo che dalla versione 7.0, in poi l'installazione della SuSe provvede di default ad installare i moduli
richiesti per far girare l'interfaccia grafica GeTThings. A sfavore dei più pigri diciamo invece che si rende necessaria l'installazione
del modulo Crypt::DES (fornito con GeTThings) per poter utilizzare la condivisione criptata (in questo caso bisogna cambiare però la linea
BEGIN del client). La versione fornita ha una linea simile alla seguente:
BEGIN { push @INC, qw(/export/home/users/reti/gencor/perl5/DES/lib/site_perl/5.005/i586-linux
/export/home/users/reti/gencor/perl5/DES/lib/site_perl/5.005/i586-linux/auto/) }
Chi ha un pò di dimistecchezza con il Perl sa che il tutto va necessariamente sulla stessa linea. Nel caso in cui non ci sia
bisogno di Crypt::DES basta commentare la linea riportata e la linea seguente:
use Crypt::DES;
L'ingresso di un nuovo utente è sottoposto ad una veloce e semplice registrazione. Una volta regitrato l'utente può:
- richiedere di condividere un file (in modo criptato o meno)
- richiedere di scaricare un file (sia criptato che non)
- effettuare ricerche dei file condivisi in base a nome, estensione e proprietario del file
- richiedere di rimuovere un file in precedenza condiviso
- disconnettersi dal server (la documentazione parla di tale operazione ma nella versione 0.9 la disconnessione non è ancora funzionante
per questo è stata inibita)
- uscire da GeTThings
Una delle caratteristiche migliori di GeTThings è la consistenza delle operazioni effettuate anche in presenza di continue cadute e
risalite dei server. L'unica eccezione è per l'operazione di registrazione di un nuovo utente la cui funzionalità è sottoposta all'assunzione
che la rete dei server non venga spezzata in due sottoreti da una eventuale caduta. Un ultimo aspetto merita di essere sottolineato; come
detto i file condivisi risiedono sui server. Questo può portare ad avere server con molti file e altri con pochi, con un notevole aggravio
di richieste per i server più carichi. Per questo motivo viene effettuato periodicamente il bilanciamento del carico tra i server.
Aggiungiamo infine che nella prossima versione saranno disponibili numerose funzionalità aggiuntive a partire dall'utile Resume per i file
il cui download è stato interrotto.
Per approfondire la conoscenza di GeTThings è disponibile un'utile
presentazione
realizzata con il presenter di StarOffice con le specifiche tecniche di questo nuovo software.
Puoi scaricare il codice sorgente cliccando qui. Puoi anche fare il download della sola documentazione (in formato ssd). Torna alla mia home cliccando qui.
Realizzato da DVL group il 14 marzo 2001