Questo sito utilizza cookie di terze parti per inviarti pubblicità in linea con le tue preferenze. Se vuoi saperne di più clicca QUI 
Chiudendo questo banner, scorrendo questa pagina, cliccando su un link o proseguendo la navigazione in altra maniera, acconsenti all'uso dei cookie. OK

Distribuzione del software in rete: un tool Peer-to-Peer basato su metafore grafiche

A partire dall’anno 2000 una nuova architettura software ha focalizzato l’attenzione degli utilizzatori della rete Internet: l’architettura Peer-to-Peer. Fautore di tale esplosione è stata la massiccia diffusione del software Napster e Gnutella per la distribuzione on-line di file musicali.
Il Peer-to-Peer (P2P), però, non è solo sinonimo di “pirateria” di file audio, ma è un’architettura che promette di rivoluzionare completamente la rete con sistemi per file sharing, condivisione delle risorse dei PC, lavoro collaborativo e altri servizi non ancora identificabili, eliminando la distinzione tra computer client e computer server.
I PC su cui viene eseguito un software P2P, tendono ad organizzarsi dinamicamente e autonomamente in comunità virtuali costituite da PC paritetici, i Peer appunto, e secondo modalità specifiche per ogni differente applicativo.
Il fatto che aziende del calibro di Microsoft e Sun si stiano interessando a questa architettura, dimostra che il P2P non è utile solo per lo scambio illegale di materiale tutelato da leggi sul diritto d'autore: entrambe stanno realizzando piattaforme di sviluppo (rispettivamente .NET Framework, Microsoft, e Jxtapose, Sun) che facilitino la creazione di nuovi tool aderenti a questa architettura.
Come tutte le nuove architetture, anche questa non è priva di limitazioni e problemi: tra questi quello sicuramente più importante è il problema della sicurezza, legato sia alla mancanza all’interno delle comunità virtuali, che si formano, di un punto di controllo centralizzato che ne permetta una completa gestione e amministrazione, sia al fatto che ogni Peer fornisce, ad altri membri della comunità, l’accesso a risorse presenti sul proprio computer.
Alla luce dell’importanza che sta assumendo il P2P Computing, si è deciso di sviluppare un software conforme a questa architettura, in grado di permettere la distribuzione di software OpenSource.
Per favorire la diffusione di questa tipologia di software esistono sia un'organizzazione, l'Open Source Iniziative, sia varie licenze adottate da diversi produttori.
Il tool sviluppato in questo lavoro di tesi deve, inoltre, fornire adeguati strumenti di ricerca tra i software OpenSource disponibili all’interno della propria comunità virtuale: è necessario, pertanto, organizzare tali software secondo modelli precisi e rigorosi. Sono stati quindi individuati i seguenti tre distinti criteri di classificazione:
• secondo un modello commerciale che descriva la tipologia d’uso del software distribuito (es. utility di sistema, gioco, editor);
• secondo un modello architetturale che descriva l’architettura computazionale del software distribuito (es. 2-Tier, 3-Tier);
• secondo un sottinsieme delle componenti che costituiscono un business model.
Il lavoro di tesi svolto si articola nei seguenti capitoli:
• Capi 1. I Modelli Architetturali: analizza i tre diversi modelli di
catalogazione del software e, per ogni modello, viene formulata una propria proposta;
• Cap 2. Architetture Peer-to-Peer: analizza le architetture Peer-to-Peer esistenti su cui basare il successivo sviluppo del tool;
• Cap 3. Politella: Progetto Architetturale: analizza le scelte architetturali fatte per sviluppare il tool;
• Cap 4. Politella: Manuale Utente: analizza il funzionamento del tool;
• App A. Diagrammi delle Classi: riporta i diagrammi UML delle classi implementate per sviluppare il tool;
• App B. Scenari di Interazione: riporta i diagrammi UML degli scenari di interazioni tra le classi che compongono il tool sviluppato.
Il tool sviluppato è un software di tipo Peer-to-Peer completamente distribuito il cui funzionamento è estremamente simile a quello di Gnutella: il nome stesso, Politella, è stato scelto proprio per evidenziare questa affinità.
Di questo applicativo si è utilizzato solo il principio di funzionamento e il meccanismo di gestione della comunità virtuale, sviluppando, però, una soluzione totalmente originale.
Entrambi i tool basano il proprio funzionamento su un protocollo applicativo molto semplice, costituito da pochi pacchetti differenti, ma quello di Politella risolve alcune limitazioni dell’altro e che coincidono, contemporaneamente, con i principali problemi che interessano in generale tutte le architetture P2P completamente distribuite.
Altra fondamentale caratteristica, e allo stesso tempo limite, di un’architettura P2P completamente distribuita, è l’enorme traffico che si genera sulla rete per gestire correttamente una comunità virtuale anche di piccole dimensioni.
Ovviamente Politella non ha potuto porre completamente rimedio a questo problema perchè peculiare di tale meccanismo di funzionamento, ma in parte è in grado di arginarlo.
L’implementazione realizzata non vuole assolutamente essere la soluzione definitiva agli obiettivi che si sono voluti raggiungere, ma solamente la prima versione, completamente funzionante, di un lavoro che può essere ancora sviluppato.

Mostra/Nascondi contenuto.
Introduzione 1 Introduzione A partire dall’anno 2000 una nuova architettura software ha focalizzato l’attenzione degli utilizzatori della rete Internet: l’architettura Peer-to-Peer o Peer-to- Peer Computing. Fautore di tale esplosione è stata la massiccia diffusione del software Napster [76] e Gnutella [82] per la distribuzione on-line di file musicali. Il Peer-to-Peer (P2P), però, non è solo sinonimo di “pirateria” di file audio, ma è un’architettura che promette di rivoluzionare completamente la rete con sistemi per file sharing, condivisione delle risorse dei PC, lavoro collaborativo e altri servizi non ancora identificabili, eliminando la distinzione tra computer client e computer server. I PC su cui viene eseguito un software come Napster o Gnutella, o una delle numerose altre simili applicazioni (si veda [68]), tendono ad organizzarsi dinamicamente e autonomamente in comunità virtuali costituite da PC paritetici, i Peer appunto, e secondo modalità specifiche per ogni differente applicativo. Il fatto che aziende del calibro di Microsoft e Sun si stiano interessando a questa architettura, dimostra che il P2P non è utile solo per lo scambio illegale di materiale tutelato da leggi sul diritto d'autore: entrambe stanno realizzando piattaforme di sviluppo (rispettivamente .NET Framework [65], Microsoft, e Jxtapose [66], Sun) che facilitino la creazione di nuovi tool aderenti a questa architettura. Come tutte le nuove architetture, anche questa non è priva di limitazioni e problemi: tra questi quello sicuramente più importante è il problema della sicurezza, legato sia alla mancanza all’interno delle comunità virtuali, che si formano, di un punto di controllo centralizzato che ne permetta una completa gestione e

Tesi di Laurea

Facoltà: Ingegneria

Autore: Fabrizio Lamberti Contatta »

Composta da 222 pagine.

 

Questa tesi ha raggiunto 2749 click dal 20/03/2004.

 

Consultata integralmente 2 volte.

Disponibile in PDF, la consultazione è esclusivamente in formato digitale.