Rilascio del file system decentralizzato globale IPFS 0.8

Viene presentato il rilascio del file system decentralizzato IPFS 0.8 (InterPlanetary File System), che forma un archivio di file con versione globale distribuito sotto forma di una rete P2P formata da sistemi partecipanti. IPFS combina idee precedentemente implementate in sistemi come Git, BitTorrent, Kademlia, SFS e Web e assomiglia a un singolo "sciame" BitTorrent (peer che partecipano alla distribuzione) che scambia oggetti Git. IPFS si distingue per l'indirizzamento in base al contenuto anziché in base alla posizione e ai nomi arbitrari. Il codice di implementazione di riferimento è scritto in Go e distribuito sotto le licenze Apache 2.0 e MIT.

Nella nuova versione:

  • È stata implementata la possibilità di creare servizi esterni per il pinning dei dati utente (pinning - associazione dei dati a un nodo per garantire il salvataggio dei dati importanti). I dati assegnati a un servizio possono avere nomi separati che differiscono dall'identificatore di contenuto (CID). Puoi cercare i dati sia per nome che per CID. Per elaborare le richieste di data pinning viene proposta l'IPFS Pinning Service API, utilizzabile direttamente in go-ipfs. Nella riga di comando, si suggerisce di allegare il comando "ipfs pin remote": ipfs pin remote service add mysrv https://my-service.example.com/api-endpoint myAccessToken ipfs pin remote add /ipfs/bafymydata —service= miosrv —name= miofile ipfs pin remoto ls —service=miosrv —name=miofile ipfs pin remoto rm —service=miosrv —name=miofile
  • Sono state accelerate le operazioni di data binding (pinning) e unpinning (unpinning) sul nodo locale. I miglioramenti delle prestazioni e il risparmio di memoria sono particolarmente evidenti quando si eseguono operazioni di inferenza o modifica su sistemi con un numero elevato di associazioni.
  • Durante la generazione di collegamenti "https://" per i gateway, è stata aggiunta la possibilità di trasferire nomi DNSLink utilizzando sottodomini. Ad esempio, per caricare il nome "ipns://en.wikipedia-on-ipfs.org", oltre ai collegamenti precedentemente supportati "https://dweb.link/ipns/en.wikipedia-on-ipfs.org ", ora puoi utilizzare i collegamenti " https://en-wikipedia—on—ipfs-org.ipns.dweb.link”, in cui i punti nei nomi originali vengono sostituiti con il carattere "-" e il carattere " -” ai caratteri viene preceduto l'escape con un altro carattere simile.
  • Il supporto per il protocollo QUIC è stato ampliato. Per aumentare le prestazioni è possibile aumentare i buffer di ricezione per UDP.

Ricordiamo che in IPFS il collegamento per accedere ad un file è direttamente collegato al suo contenuto e comprende un hash crittografico del contenuto. L'indirizzo del file non può essere rinominato arbitrariamente; può cambiare solo dopo aver modificato il contenuto. Allo stesso modo, è impossibile apportare modifiche a un file senza cambiare l'indirizzo (la vecchia versione rimarrà allo stesso indirizzo e quella nuova sarà accessibile tramite un indirizzo diverso, poiché cambierà l'hash del contenuto del file). Considerando che l'identificatore del file cambia ad ogni modifica, per non trasferire ogni volta nuovi collegamenti, sono forniti servizi di associazione di indirizzi permanenti che tengono conto di diverse versioni del file (IPNS), oppure di assegnazione di un alias in analogia con i tradizionali FS e DNS (MFS (Mutable File System) e DNSLink).

Per analogia con BitTorrent, i dati vengono archiviati direttamente sui sistemi dei partecipanti che si scambiano informazioni in modalità P2P, senza essere vincolati a nodi centralizzati. Se è necessario ricevere un file con un determinato contenuto, il sistema trova i partecipanti che hanno questo file e lo invia dai loro sistemi in parti in più thread. Dopo aver scaricato il file sul suo sistema, il partecipante diventa automaticamente uno dei punti per la sua distribuzione. Per determinare i partecipanti alla rete sui cui nodi è presente il contenuto di interesse, viene utilizzata una tabella hash distribuita (DHT). Per accedere al FS IPFS globale, è possibile utilizzare il protocollo HTTP oppure è possibile montare il FS virtuale /ipfs utilizzando il modulo FUSE.

IPFS aiuta a risolvere problemi come l'affidabilità dell'archiviazione (se l'archiviazione originale non funziona, il file può essere scaricato dai sistemi di altri utenti), la resistenza alla censura dei contenuti (il blocco richiede il blocco di tutti i sistemi utente che dispongono di una copia dei dati) e l'organizzazione dell'accesso in assenza di connessione diretta a Internet o se la qualità del canale di comunicazione è scarsa (è possibile scaricare i dati tramite i partecipanti vicini sulla rete locale). Oltre all'archiviazione di file e allo scambio di dati, IPFS può essere utilizzato come base per creare nuovi servizi, ad esempio per organizzare il funzionamento di siti non legati a server o per creare applicazioni distribuite.

Rilascio del file system decentralizzato globale IPFS 0.8


Fonte: opennet.ru

Aggiungi un commento