Aggiornamento significativo del sistema di file decentralizzato IPFS 0.5

Presentato nuova versione del sistema di archiviazione decentralizzato IPFS 0.5 (InterPlanetary File System), che forma un deposito di file globalmente versionato, implementato come una rete P2P costituita dai sistemi dei partecipanti. IPFS combina idee già realizzate in sistemi come Git, BitTorrent, Kademlia, SFS e Web, e assomiglia a un'unica 'nuvola' di BitTorrent (i peer coinvolti nella distribuzione), che scambia oggetti Git. Per accedere al file system globale, si può utilizzare il protocollo HTTP o montare un file system virtuale /ipfs tramite il modulo FUSE. Il codice di implementazione di riferimento è scritto in linguaggio Go e distribuito sotto le licenze Apache 2.0 e MIT. Inoltre si sviluppa c'è un'implementazione del protocollo IPFS in JavaScript, che può funzionare nel browser.

Chiave è IPFS utilizza l'indirizzamento basato sul contenuto, dove il link per accedere a un file è direttamente correlato al suo contenuto (incluso l'hash crittografico del contenuto). IPFS supporta nativamente il versionamento. Non è possibile rinominare arbitrariamente l'indirizzo di un file, e può cambiare solo dopo una modifica del contenuto. Analogamente, non è possibile modificare un file senza cambiare l'indirizzo (la vecchia versione rimarrà all'indirizzo originale, mentre la nuova sarà accessibile tramite un altro indirizzo, poiché l'hash del contenuto del file cambierà). Considerando che l'identificatore del file cambia ad ogni modifica, per evitare di dover fornire nuovi link ogni volta, sono disponibili servizi per associare indirizzi permanenti che tengono conto delle diverse versioni del file (IPNS), o per associare un alias in modo simile ai tradizionali FS e DNS (MFS (Mutable File System) e DNSLink).

Analogamente a BitTorrent, i dati vengono archiviati direttamente sui sistemi degli utenti che scambiano informazioni in modalità P2P, senza dipendere da nodi centralizzati. Quando è necessario recuperare un file con contenuti specifici, il sistema individua gli utenti che possiedono quel file e lo trasferisce dalle loro macchine in diverse parti attraverso più flussi. Una volta scaricato il file sul proprio sistema, l'utente diventa automaticamente uno dei punti per la sua distribuzione. Per identificare gli utenti della rete nei nodi in cui è presente il contenuto desiderato, viene utilizzato tabella hash distribuita (DHT).

Aggiornamento significativo del sistema di file decentralizzato IPFS 0.5

In sostanza, si può considerare IPFS come una reincarnazione distribuita del Web con indirizzamento basato sul contenuto, anziché sul luogo di allocazione e sui nomi arbitrari. Oltre a memorizzare file e scambiare dati, IPFS può essere utilizzato come base per creare nuovi servizi, per esempio, per organizzare il funzionamento di siti non legati a server, o per realizzare applicazioni.

IPFS aiuta a risolvere problemi come l'affidabilità dello storage (se il deposito originale viene disattivato, il file può essere scaricato dai sistemi di altri utenti), la resistenza alla censura dei contenuti (per bloccare si dovrebbe bloccare tutti i sistemi degli utenti che hanno una copia dei dati) e l'organizzazione dell'accesso in assenza di una connessione diretta a Internet o quando la qualità della connessione è scarsa (è possibile caricare dati tramite i partecipanti più vicini nella rete locale).

Nella versione IPFS 0.5 è stata significativamente migliorata la prestazione e l'affidabilità del funzionamento. La rete pubblica basata su IPFS ha superato il traguardo di 100.000 nodi e le modifiche in IPFS 0.5 riflettono l'adattamento del protocollo per operare in tali condizioni. Le ottimizzazioni si sono principalmente concentrate sull miglioramento dei meccanismi di instradamento dei contenuti, che si occupano della ricerca, dell'annuncio e dell'estrazione dei dati, oltre a migliorare l'efficienza dell'implementazione della tabella hash distribuita (DHT), fornendo informazioni sui nodi che possiedono i dati ricercati. Il codice associato al DHT è stato praticamente riscritto, accelerando notevolmente le operazioni di ricerca dei contenuti e di determinazione delle registrazioni IPNS.

In particolare, la velocità delle operazioni di aggiunta di dati è aumentata di 2 volte, l'annuncio di nuovi contenuti nella rete di 2,5 volte,
l'estrazione dei dati da 2 a 5 volte, e la ricerca di contenuti da 2 a 6 volte.
I meccanismi di instradamento e di invio annunci rielaborati hanno consentito di accelerare il funzionamento della rete da 2 a 3 volte grazie a un utilizzo più efficiente della larghezza di banda e al trasferimento di traffico in background. Nella prossima versione è previsto l'introduzione di un trasporto basato sul protocollo QUIC, il che porterà a un ulteriore incremento delle prestazioni riducendo le latenze.

È stata accelerata la funzionalità e aumentata l'affidabilità del sistema IPNS (Inter-Planetary Name System), utilizzato per creare link permanenti su contenuti in cambiamento. Un nuovo trasporto sperimentale pubsub ha permesso di velocizzare la consegna delle registrazioni IPNS da 30 a 40 volte durante i test in una rete con mille nodi (per gli esperimenti è stato sviluppato un simulatore di rete P2P). La produttività della layer
Badger, utilizzata per interagire con il file system del sistema operativo, è stata circa raddoppiata. Grazie al supporto delle operazioni di scrittura asincrona, Badger ora funziona 25 volte più velocemente rispetto alla vecchia layer flatfs. Un miglioramento delle prestazioni ha riguardato anche il meccanismo Bitswap, utilizzato per trasferire file tra i nodi.

Aggiornamento significativo del sistema di file decentralizzato IPFS 0.5

Tra le migliorie funzionali c'è l'implementazione di TLS per crittografare le connessioni tra clienti e server. È stata introdotta la supporto per i sottodomini nell'HTTP gateway — gli sviluppatori possono ospitare applicazioni decentralizzate (dapps) e contenuti web in sottodomini isolati, utilizzabili con indirizzi hash, IPNS, DNSLink, ENS, ecc. È stato aggiunto un nuovo spazio dei nomi /p2p, in cui sono stati spostati i dati relativi agli indirizzi dei peer (/ipfs/peer_id → /p2p/peer_id). È stato aggiunto il supporto per i link " .eth" basati su blockchain, ampliando l'uso di IPFS nelle applicazioni distribuite.

La startup Protocol Labs, che supporta lo sviluppo di IPFS, sta anche sviluppando parallelamente il progetto FileCoin, che è un'ulteriore espansione di IPFS. Mentre IPFS consente ai partecipanti di memorizzare, richiedere e trasferire dati tra loro, Filecoin si sviluppa come una piattaforma basata su tecnologia blockchain per lo storage permanente. Filecoin permette agli utenti con spazio su disco inutilizzato di offrirlo alla rete in cambio di una ricompensa, mentre gli utenti che necessitano di spazio di archiviazione possono acquistarlo. Se non è più necessario, l'utente può rivenderlo. Questo crea un mercato per lo spazio di archiviazione, i cui pagamenti avvengono in token Filecoin, generati tramite mining.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster