Si è mosso velocemente. Questo è l’unico modo per descrivere l’ascesa di Napster. In meno di dodici mesi, il sito è passato da zero a 60 milioni di visitatori mensili. Non era solo popolare. Era il sito web più visitato su Internet al suo apice. Poi sono intervenuti i tribunali. Un unico ordine lo ha chiuso a causa delle dilaganti violazioni del copyright. Non ha rivisto la luce fino al 2003, rinominato come servizio legale a pagamento sotto Roxio.
L’appello era semplice. Hai musica gratis. Non dovevi andare in un negozio. Non dovevi acquistare un CD, inserirlo e attendere lo strappo. Hai appena cliccato. Un enorme database conteneva quasi tutte le canzoni esistenti. È stato facile. Era gratuito.
Ma quella facilità ha avuto un prezzo. L’architettura era il difetto fatale.
Napster faceva affidamento su un server centrale per indicizzare e connettere gli utenti. Questo modello centralizzato ha reso facile trovare la musica, ma ha anche reso facile ucciderla. Quando i giudici stabilirono che Napster stava facilitando la violazione del copyright, la chiusura fu chirurgica. Staccando la spina al server, l’intera rete scomparirà. Non c’era alcun backup. Nessun fallback decentralizzato. Solo silenzio.
Agli utenti non interessavano le sfumature legali. Si preoccupavano dell’accesso. La maggior parte è migrata verso un diverso tipo di sistema di condivisione file. Uno che non poteva essere ucciso così facilmente.
L’ascesa di Gnutella
Inserisci Gnutella.
Questa era l’alternativa. Non era solo uno strumento; era una filosofia diversa. Invece di un hub centrale, Gnutella ha utilizzato una rete peer-to-peer (P2P). Ogni computer nella rete era sia un server che un client. Non c’era un singolo punto di fallimento. Per spegnerlo, dovresti spegnere il computer di ogni singolo utente.
Questa architettura decentralizzata è il motivo per cui Gnutella è sopravvissuta. Anche se i tribunali hanno represso altri servizi, Gnutella ha persistito. Si è adattato. Si è evoluto. È diventato la spina dorsale di molti moderni protocolli P2P.
Il Napster originale era un negozio senza serrature. Gnutella era un labirinto senza centro. Uno era facile da derubare. L’altro era difficile da catturare.
Il nuovo Napster
Nel 2003 il panorama era cambiato. Roxio ha acquistato il nome Napster e lo ha rilanciato. La versione 2 era legale. Hai pagato per la tua musica. Niente più infrazioni. Era un prodotto più pulito. Più sicuro. Ma mancava l’energia grezza e caotica dell’originale. La magia non era solo nella musica. Era nella libertà.
Il vecchio Napster ci ha insegnato qualcosa. La centralizzazione è efficiente finché non lo è più. La decentralizzazione è complicata, ma è resiliente. Lo abbiamo imparato nel modo più duro.
Ora, ogni volta che riproduci in streaming una canzone, paghi per comodità. Stai utilizzando un servizio centralizzato. Spotify. Apple Musica. YouTube Musica. Sono facili da usare. Sono al sicuro. Sono anche vulnerabili. Una società controlla la biblioteca. Una società controlla l’accesso.
Gnutella ci ha mostrato un’altra strada. Un modo dove la rete è il prodotto. Dove gli utenti sono le infrastrutture. È più lento. È più complesso. Ma è libero da un unico punto di controllo.
Quale

La navigazione web standard è una transazione semplice. Chiedi a un server un file e il server te lo restituisce. Per i siti di grandi dimensioni, ciò richiede centinaia di macchine solo per mantenere le luci accese. Napster ha completamente rotto questo modello. Non ospitava solo file; ha trasformato il computer di ogni utente in un nodo di un’enorme rete di distribuzione decentralizzata.
Il Napster originale era un sistema ibrido. Utilizzava la condivisione di file peer-to-peer per il trasferimento effettivo dei dati, ma si affidava a un’autorità centrale per il rilevamento. Quando hai avviato il software, la tua macchina si è registrata con i server centrali di Napster. Stavi essenzialmente elencando i tuoi MP3 disponibili in un catalogo globale.
Ecco il flusso di lavoro:
- Hai installato il client. Il tuo PC è diventato un mini-server.
- La tua macchina ha eseguito il ping dei server centrali, inviando un elenco di ogni traccia sul tuo disco rigido.
- Il database centrale ora conteneva l’indice di miliardi di canzoni.
- Hai cercato “Roxanne” tramite la Polizia.
- Il server centrale ha restituito un elenco di indirizzi IP per gli utenti che ospitano quel file.
- Hai selezionato un pari. Il tuo computer si è collegato direttamente al loro e ha scaricato la canzone.
Questa architettura ha risolto due problemi immediati. Innanzitutto, lo stoccaggio. Nessuna singola azienda potrebbe acquistare abbastanza spazio su disco rigido per contenere l’intero catalogo musicale mondiale. In secondo luogo, la larghezza di banda. Distribuire il carico su milioni di connessioni domestiche era infinitamente più economico rispetto allo streaming da un data center.
C’era anche una strategia legale coinvolta. I creatori sostenevano che stavano sfruttando una lacuna nella legge sul copyright per quanto riguarda la condivisione privata tra amici. I tribunali alla fine hanno respinto questa logica. Ma il danno era fatto. Il concetto è stato dimostrato. La rete era diventata troppo grande per essere ignorata.
Il difetto nel design di Napster era evidente col senno di poi. Il database centrale era un unico punto di errore. Era il tallone d’Achille. Quando il tribunale ne ordinò la chiusura, l’intera rete crollò. Non potresti avere una rete peer-to-peer se il suo indice fosse di proprietà di un’entità che potrebbe essere messa a tacere legalmente.
Quando Napster crollò, c’erano circa 100 milioni di utenti abituati a condividere file liberamente. L’infrastruttura per quel comportamento era già pronta. Ad aspettare dietro le quinte c’era un’architettura più resiliente.
Perché Gnutella ha cambiato il gioco
Il successore di questa ondata di condivisione di file è la rete Gnutella. Mantiene la meccanica principale della condivisione di file peer-to-peer ma rimuove l’hub centrale. Gli utenti inseriscono comunque i file sui propri dischi rigidi e li rendono disponibili. Hai ancora bisogno del software Gnutella per connetterti alla rete.
Le differenze sono strutturali e significative.
Innanzitutto non esiste un database centrale. Il concetto di indice globale è morto. Gnutella utilizza invece un approccio di query distribuito. Quando un utente cerca un file, la richiesta viene passata da un nodo all’altro, saltando attraverso la rete finché non trova una corrispondenza. È un effetto a catena delle query.
In secondo luogo, l’ecosistema è frammentato. Non esiste un unico “client Gnutella”. Molte applicazioni diverse possono accedere alla rete Gnutella. Questa varietà rende più difficile prendere di mira un software specifico per azioni legali.
Questa decentralizzazione offre un grado di immortalità che Napster non ha mai avuto. Un’ordinanza del tribunale contro un’azienda non fa nulla per fermare il protocollo. Per chiudere effettivamente Gnutella, le autorità di regolamentazione dovrebbero bloccare tutto il traffico di rete a livello dell’ISP o dell’infrastruttura backbone. Questo è un incubo tecnico e politico rispetto alla semplice citazione in giudizio del CEO di una società di server centralizzata.
Il passaggio da un indice centralizzato a un sistema di query distribuito non è stato solo un aggiornamento tecnico. Era una risposta alla fragilità del vecchio modello.

Napster si basava su un unico, fragile pezzo di software client. Gnutella non aveva quel lusso, o meglio, ne aveva troppo. La rete si è fratturata in dozzine di applicazioni concorrenti. Potresti scegliere BearShare, Gnucleus, LimeWire, Morpheus, WinMX o XoloX. L’interfaccia potrebbe sembrare diversa, ma la logica di fondo era identica: uccidere l’autorità centrale.
Ma senza un indice centrale, la rete ha bisogno di un modo per trovare le cose. È qui che il meccanismo di ricerca del client Gnutella diverge nettamente dal tradizionale modello server-client.
Come i client Gnutella individuano i file
Immagina di volere un MP3 specifico. Non c’è nessuna libreria da controllare. Invece, il tuo software deve gridare nel vuoto.
Si inizia con un unico punto di contatto. Potresti aver inserito manualmente un indirizzo IP oppure il software è stato precaricato con un elenco di host conosciuti. La tua macchina invia la query di ricerca a quel vicino.
Il vicino non si limita a rispondere. Controlla il proprio disco rigido. Se il file è presente, restituisce il nome del file e il tuo IP. Ma fa anche qualcosa di più aggressivo. Inoltra la tua richiesta a ogni altra macchina che conosce.
Quelle macchine fanno lo stesso. Controllano il loro spazio di archiviazione. Inoltrano ulteriormente la richiesta. Ciò crea un effetto a catena, un’ondata di query che si espande verso l’esterno attraverso la rete.
Il sistema si basa su un contatore Time To Live (TTL) per evitare loop infiniti.
Ogni richiesta ha un limite TTL. Consideralo come un indicatore del carburante. La richiesta potrebbe percorrere sei o sette “salti” di profondità prima di rimanere senza benzina. Se ogni nodo conosce solo altri quattro peer, una ricerca approfondita su sette livelli può teoricamente toccare 8.000 macchine.
È un calcolo distribuito a forza bruta. Semplice. Intelligente. Ed estenuante.
Il compromesso: stabilità vs. prestazioni
Questa architettura risolve il problema più grande del suo predecessore. Napster è morto perché un server possedeva le chiavi. Gnutella non ha chiavi. Non esiste un singolo punto di errore. Nessun ordine del tribunale può uccidere la rete perché non c’è nessuna testa da tagliare. Gnutella funziona sempre, a condizione che tu possa raggiungere almeno un altro peer.
Ma il decentramento comporta una tassa.
Innanzitutto, non vi è alcuna garanzia che il file esista. Potresti inviare la tua query a 8.000 macchine e ottenere zero risultati. Il file potrebbe trovarsi sulla macchina 8.001. Sei cieco.
In secondo luogo, la latenza è brutale. Poiché la query deve propagarsi su più livelli, potresti attendere un minuto o più per una risposta completa. Il sistema non ti dice cosa ha trovato finché non ha controllato fino in fondo.
Terzo, tu sei l’infrastruttura. La tua macchina non è solo un consumatore; è un router. Risponde alle richieste in entrata e trasmette quelle in uscita. Stai bruciando la tua larghezza di banda per mantenere viva la rete. È un sistema peer-to-peer nel senso letterale: aiuti gli altri pari, spesso a tue spese.
Questi svantaggi sembrano gravi in teoria. In pratica, agli utenti non importava. Sono state scaricate centinaia di milioni di copie dei client Gnutella. La promessa di accesso superava il costo della larghezza di banda.
Esempio XoloX: ricerca

XoloX è tanto semplice quanto lo è per un client Gnutella. Non cerca di stupirti con interfacce appariscenti o funzionalità complesse. Funziona e basta. Il download è piccolissimo, circa 600 kilobyte, e, soprattutto, è pulito. Nessuno spyware. Nessun popup in bundle. Semplicemente uno strumento semplice da installare, che lo rende un candidato ideale per comprendere i meccanismi del networking peer-to-peer senza appesantire.
L’interfaccia si riduce a tre funzioni principali, accessibili tramite tre pulsanti nella parte superiore della finestra: ricerca, trasferimento e gestione dei file. Puoi passare da uno all’altro secondo necessità.
Come funziona la ricerca Gnutella in XoloX
Quando apri la scheda di ricerca, è quasi troppo semplice. Digita un nome file o alcune parole chiave. Puoi filtrare per tipo di media (audio, video o “Tutti i tipi”) se desideri restringere l’ambito. Premi invio e il client trasmette la tua query nel vuoto.
Dategli dai 30 ai 60 secondi.
La finestra di ricerca inizia a popolarsi. I risultati arrivano da migliaia di altre macchine che elaborano la stessa richiesta. Non è istantaneo, ma è efficace.
Noterai una colonna denominata punteggio. Questa non è una valutazione della qualità del file. Si tratta del conteggio di quanti peer online hanno attualmente disponibile quel file specifico. Un punteggio alto significa più fonti. Più fonti significano maggiori probabilità di completare effettivamente il download, soprattutto se hai a che fare con un file popolare. Scegli saggiamente.
Esempio XoloX: download

Ottenere un file da una rete peer non è sempre una faccenda semplice, clicca e aspetta, ma XoloX lo rende per lo più indolore. Basta fare doppio clic sul target nei risultati di ricerca. Tale azione passa il nome del file alla finestra di trasferimento, che attiva l’effettivo handshake con il peer.
È qui che il protocollo brilla. Se più nodi nella rete contengono lo stesso file, XoloX non ne sceglie uno a caso. Si connette a diversi contemporaneamente. Questa strategia di download parallelo è il motivo per cui potresti vedere velocità come 69,2 kilobyte al secondo per un file video di grandi dimensioni, con stime che si aggirano intorno ai 43 minuti per oltre 100 megabyte. Si sta sfruttando la ridondanza per superare il collo di bottiglia.
Ma non è sempre così fluido.
A volte fai clic e… non succede nulla. Il client non può raggiungere l’origine oppure la macchina host ha già esaurito il servizio per altri utenti. Questo è il classico ingorgo peer-to-peer. Hai tre modi per gestirlo:
- Aspetta. I nodi occupati alla fine si liberano. La pazienza è una strategia valida qui.
- Scegli file con punteggi elevati. I file con punteggi di reputazione migliori hanno maggiori probabilità di provenire da peer reattivi e disponibili.
- Scambia il file. Elimina il download bloccato dalla finestra Trasferisci e seleziona nuovamente lo stesso nome file dai risultati della ricerca. Ciò costringe il client a provare un peer diverso che potrebbe essere meno congestionato.
Una volta terminato il download, i dati arrivano nella directory XoloX designata. Puoi anche visualizzarlo nella finestra File all’interno dell’app. Se vuoi restituire qualcosa alla rete, puoi condividere questi file scaricati. Questo non è automatico, però. Devi configurare la finestra di dialogo Preferenze per specificare esattamente quali directory e tipi di file desideri condividere con altri.


Hai il controllo sul consumo della tua connessione. Modificando le impostazioni di XoloX, puoi limitare la larghezza di banda in uscita utilizzata quando altri scaricano dal tuo computer. Questo semplice interruttore impedisce che la tua tubazione a monte venga soffocata dalle richieste di dati di altre persone.
Gnutella è effettivamente legale?
Il protocollo stesso è pulito. Non esiste uno statuto che vieti la condivisione di file di pubblico dominio. L’illegalità emerge solo quando gli utenti utilizzano la rete per distribuire musica e film protetti da copyright. Questo specifico attrito è ciò che ha affondato Napster.
L’industria musicale ha ufficialmente dichiarato guerra a Gnutella. Tuttavia, non dispongono di un meccanismo semplice per fermarlo.
Come l’industria cerca di spezzare la rete
Interrompere l’architettura è la strategia attuale. Attualmente sono in gioco due attacchi principali:
- Inondare la rete con pacchetti di ricerca fasulli per sovraccaricarla.
- Popolamento dei server Gnutella con file corrotti che non servono a nulla.
Ma gli sviluppatori dietro Gnutella sono già sopravvissuti a minacce simili. È probabile che riparino questi buchi. Il software si adatterà. I file continueranno a scorrere.
La condivisione è solo furto o pubblicità gratuita?
Il vero dibattito non è tecnico. È finanziario. Quanti danni reali causa la condivisione di file? Un file condiviso è un furto o è pubblicità gratuita? Pensatelo come il tempo di trasmissione della radio. L’esposizione danneggia le vendite o le aiuta?
Domande frequenti
Cos’è il protocollo Gnutella?
È un protocollo di condivisione file peer-to-peer (P2P). Consente agli utenti di cercare e scambiare file direttamente con altri computer, senza che un server centrale contenga l’inventario.
Più risorse
Se desideri approfondire i dibattiti sulla legalità o vedere diverse prospettive sulla condivisione di musica protetta da copyright, i collegamenti seguenti offrono più contesto.
Articoli correlati
- Come funzionano i file MP3
- Come funzionano i lettori MP3
- Come funzionava Napster
- Come funzionano i server Web
- Come funzionano i dischi rigidi
- Come funzionano i masterizzatori CD
- Come funziona l’infrastruttura Internet
- Come funziona la rete domestica
- Cosa sono i diritti d’autore e i brevetti?
Link utili
- Directory dell’host Gnutella
- Kazaa
- Domande frequenti su Gnutella di Knowbuddy
- Novità Gnutella
- Codice di ricerca PHP Gnutella
- La debacle di Internet: una visione alternativa
- Embedded.com: incorporamento del peer-to-peer
Titoli di notizie recenti
- MTV.com: L’industria discografica fa causa a 32 studenti per condivisione illegale di file – 04/10
- Nuova ondata di cause legali per la condivisione illegale di file promosse dalla RIAA – 4/04
- Guida hardware di Tom: Sondaggio: condivisione di file musicali in diminuzione – 4/04
- WiredNews: Roxio acquista Pressplay, Napster vive – 5/03
- NewScientist.com: I “camminatori casuali” potrebbero velocizzare le reti peer-to-peer – 7/02
- Gnutella.com: le etichette pianificano attacchi legali contro individui? – 7/02
- Gnutella.com: Hollywood vuole tappare il “buco analogico” – 02/5
- P2P.com: Gnutella e Freenet rappresentano la vera innovazione tecnologica – 5/00




























