Netsukuku

Da Wikipedia, l'enciclopedia libera.

Netsukuku è un sistema di routing sperimentale di tipo peer-to-peer, sviluppato dal FreakNet MediaLab, nato per costruire una rete distribuita, anonima e anarchica, non necessariamente separata da Internet, senza il supporto di alcun server, ISP e di alcuna autorità centrale.

Idea di base[modifica | modifica sorgente]

Netsukuku nasce dall'idea di creare una rete pura, che sfrutta il caos, si crea e si mantiene autonomamente, e sopravvive adattandosi alle mutazioni delle connessioni in rete, come un frattale. L'unione degli algoritmi di gestione di una rete pura con algoritmi frattali e le teorie matematiche sul caos è una delle caratteristiche che permette a Netsukuku di poter creare una rete diffusa e distribuita, non centralizzata, anonima, anarchica, non controllabile, ed autonoma. Scopo di Netsukuku è far sì che chiunque, in qualunque luogo e in qualsiasi momento possa agganciarsi immediatamente alla rete senza dover passare attraverso adempimenti burocratici o contrattuali. L'indirizzo IP che identifica un computer è scelto casualmente ed in modo univoco (eventuali collisioni vengono risolte), quindi non è associabile ad una località fisica precisa, e le rotte stesse, essendo formate da un numero innumerevole di nodi, tendono ad avere una complessità e densità talmente elevata da rendere il tracciamento di un nodo un'impresa estremamente complicata. La velocità del trasferimento dei dati è limitata unicamente dalla tecnologia attuale delle schede o dispositivi di rete.

Funzionamento[modifica | modifica sorgente]

In una rete di tipo peer-to-peer ogni nodo agisce da router; per risolvere il pesante problema computazionale e memorizzare tutte le rotte di tutti i 2128 nodi della rete, in Netsukuku si usa un meta-algoritmo sperimentale di routing, che sfrutta alcune teorie del caos per evitare un consumo elevato di potenza di calcolo, ed algoritmi frattali per mantenere la mappa dell'intera rete costantemente sotto i 2 kB. Allo scopo di creare un differente sistema di nomi di dominio, non più basato sui tradizionali server DNS, è nato l'A Netsukuku domain name architecture, un sistema distribuito, non gerarchico e decentralizzato, di gestione degli indirizzi della rete che sostituisce appunto il DNS. Il tutto gira sotto sistema operativo GNU/Linux ed è rilasciato sotto licenza GNU GPL. Netsukuku non è mai stata testata su larga scala (10.000 nodi o più).

Gli Internet Service Provider di Internet offrono connettività chiedendo, in cambio, un contributo economico; questo impedisce a chi non ha risorse economiche sufficienti la possibilità di connettersi alla rete e di comunicare tramite i suoi servizi. Gli ISP forniscono i loro servizi in base a principi di profitto, secondo regole e contratti personalizzati, i quali solitamente non tengono conto delle disponibilità di coloro che non possono permettersi di pagare la connessione. Internet si poggia su alcune infrastrutture centralizzate come i DNS; queste permettono di gestire in modo economico l'assegnazione delle risorse; difatti per esempio i nomi di dominio vengono venduti. La struttura stessa inoltre permette di localizzare fisicamente qualsiasi computer connesso ad Internet, con conseguenze notevoli sulla privacy dei singoli nodi.

Quando un nodo si aggancia a Netsukuku, la rete si auto-assesta e tutti gli altri nodi vengono a sapere le rotte più veloci ed efficienti per comunicare con il nuovo arrivato. I nodi non hanno privilegi o limitazioni rispetto ad altri nodi, fanno parte della rete e contribuiscono alla sua espansione ed efficienza, essendo tutti uguali. Con l'aumentare del loro numero, la rete cresce, muta forma e le rotte si perfezionano. In Netsukuku non vi è alcuna differenza tra reti private e pubbliche e non ha più alcun significato parlare di LAN. Una rete basata su Netsukuku non può essere controllata né distrutta poiché è totalmente decentralizzata e distribuita. L'unico modo per sorvegliare o smantellare una rete basata su Netsukuku è rimuovere fisicamente ogni singolo nodo che la compone. In essa si possono implementare effettivi sistemi distribuiti, come ad esempio l'A Netsukuku domain name architecturey (ANDNA), che sostituisce il tradizionale sistema dei DNS.

Il protocollo di rete per il routing dinamico di Netsukuku è chiamato Npv7 HT. I normali protocolli ed algoritmi per il routing dinamico vengono solitamente utilizzati per creare piccole e medie reti, come l'OSPF, il RIP od il BGP, ed usano diversi algoritmi per trovare il percorso migliore per raggiungere un nodo in una rete. Questi protocolli richiedono un consumo di processore e memoria rilevante, ed è per questo motivo che i router di Internet sono spesso dei computer appositamente dedicati. Sarebbe impossibile adottare uno di questi protocolli per creare e mantenere una rete come Netsukuku, dove ogni nodo è a sua volta un router, poiché la mappa di tutte le rotte richiederebbe uno spazio di circa un centinaio di Gigabyte su ciascun calcolatore connesso alla rete. L'Npv7 struttura l'intera rete come un frattale, ed usa un particolare algoritmo chiamato Quantum Shortest Path Netsukuku (QSPN) per calcolare tutte le rotte necessarie a collegare un nodo ad ogni altro nodo.

Un frattale è una struttura matematica che si può comprimere all'infinito, proprio perché, al suo interno, ogni sua parte è formata dal frattale stesso; il QSPN sfrutta un algoritmo di tipo frattale per cui si ha una compressione elevata di una struttura che può espandersi infinitamente. Il risultato tecnico è che bastano pochi Kb per mantenere l'intera mappa di Netsukuku su ogni nodo. Il QSPN, invece, è un meta-algoritmo perché non esegue una sequenza di istruzioni matematiche determinate a priori ma sfrutta la casualità e le teorie del caos, richiedendo una quantità di calcoli molto esigua.

A Netsukuku domain name architecture[modifica | modifica sorgente]

L'A Netsukuku domain name architecture[1] (ANDNA) è un sistema di assegnamento e gestione dei nomi distribuito, non gerarchico e decentralizzato che nella rete Netsukuku svolge un compito che nella rete Internet viene assegnato ai DNS. Il database di ANDNA è incluso nel sistema Netsukuku e quindi ogni nodo include un database ANDNA che nella peggiore delle ipotesi può occupare 355 kilobyte di memoria.

Semplificando, ANDNA funziona nel seguente modo: Per risolvere un nome simbolico l'host applica una funzione Hash sul nome. La funzione Hash restituisce un indirizzo che l'host contatta chiedendo la risoluzione dell'indirizzo generato dall'hash. Il nodo contattato riceve la richiesta, ricerca nel proprio database ANDNA l'indirizzo associato al nome e lo restituisce all'host richiedente. La registrazione avviene in un modo simile. Per esempio supponiamo che il nodo X voglia registrare l'indirizzo FreakNet.andna, X calcola l'hash del nome e ottiene l'indirizzo 11.22.33.44 associato al nodo Y. Il nodo X contatta Y chiedendo la registrazione dell'hash 11.22.33.44 al proprio indirizzo. Y memorizza la richiesta nel proprio database e ad ogni richiesta di risoluzione dell'hash 11.22.33.44 risponderà con l'indirizzo di X.

            
            Nodo X
      ip: 123.123.123.123
      hash( hostname: "FreakNet.andna" ) == 11.22.33.44
                                           ||
                                           ||
                                         Nodo Y
                                     ip: 11.22.33.44
                           {    [ FreakNet.andna nel database del nodo Y ]    }
                           {hash_11.22.33.44 ---> 123.123.123.123}

Il protocollo ovviamente è più complesso dato che il sistema prevede una gestione a chiave pubblica/privata per autenticare gli host e impedire modifiche non autorizzare dei database andna. Inoltre il protocollo prevede la ridondanza dei database per rendere il protocollo resistente ad eventuali guasti e prevede anche la migrazione dei database nel caso la topologia delle rete si modifichi. Il protocollo non prevede la possibilità di revocare un nome simbolico, questo dopo un certo periodo di inattività (attualmente 3 giorni) viene semplicemente cancellato dal database. Il protocollo inoltre impedisce ad un singolo host di registrare un numero eccessivo di nomi simbolici (allo stato attuale 256 nomi) in modo da impedire a degli spammer di memorizzare un elevato numeri di termini di uso comune o di effettuare azioni di cybersquatting.

Utilizzi[modifica | modifica sorgente]

L'obiettivo della rete Netsukuku è la realizzazione di un'infrastruttura che non dovendo basarsi sulle usuali infrastrutture internet risulti più economica e indipendente, in modo da consentire l'accesso alla rete anche agli utenti non in grado di pagare un regolare canone agli ISP. I progettisti della rete pensano di poter realizzare questa rete parallela basandosi pesantemente sulle future generazioni di reti senza fili che avendo una portata di diversi chilometri permetterebbero la realizzazione di una diffusa rete Netsukuku. Nella fase iniziale comunque gli sviluppatori intendono basarsi sulle attuali infrastrutture internet per il testing della rete.

Un altro possibile utilizzo della rete Netsukuku sarebbe la realizzazione di reti cellulari senza l'apporto di gestori telefonici. Questa applicazione parte dalla considerazione che gli algoritmi della rete richiedono ridotte risorse e quindi possono agevolmente girare sugli attuali cellulari, anche se per reali applicazioni in tal senso sono allo stato attuale solo teoriche.

Critiche[modifica | modifica sorgente]

Il progetto Netsukuku è nato nel 2005. Da allora è disponibile solo una versione beta open source che denota pesanti ed evidenti problemi nell'installazione e nel funzionamento. Il suo creatore, Andrea Lo Pumo, spera che la disponibilità della beta open source possa invogliare gli amatori a cimentarsi nell'ardua impresa di ristrutturazione e debugging.

Note[modifica | modifica sorgente]

  1. ^ NTSKK - codice segreto rivoluzione

Voci correlate[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

  • (EN) official WebSite
  • FreakNet MediaLab
  • International Telecommunication Union nel contesto del "World Summit on the Information Society" (WSIS), che si prefigge lo scopo di stimolare nuovi progetti e partenariati per ridurre il digital divide, Netsukuku è preso in considerazione dall'ITU, come iniziativa attinente all'infrastruttura dell'informazione e della comunicazione
Telematica Portale Telematica: accedi alle voci di Wikipedia che parlano di reti, telecomunicazioni e protocolli di rete