Veliko ažuriranje globalnog decentraliziranog datotečnog sustava IPFS 0.5

Predstavljeno novo izdanje decentraliziranog datotečnog sustava IPFS 0.5 (InterPlanetary File System), koji tvori globalnu verzioniranu pohranu datoteka, postavljenu u obliku P2P mreže formirane od sustava sudionika. IPFS kombinira ideje prethodno implementirane u sustavima kao što su Git, BitTorrent, Kademlia, SFS i Web, i nalikuje jednom BitTorrent "roju" (vršnjacima koji sudjeluju u distribuciji) koji razmjenjuju Git objekte. Za pristup globalnom IPFS FS-u, može se koristiti HTTP protokol ili se virtualni FS /ipfs može montirati pomoću FUSE modula. Referentni implementacijski kod napisan je u Go i distribuira pod licencama Apache 2.0 i MIT. Dodatno razvija se implementacija IPFS protokola u JavaScriptu koji se može izvoditi u pregledniku.

Ključ značajka IPFS je adresiranje temeljeno na sadržaju, u kojem je veza za pristup datoteci izravno povezana s njezinim sadržajem (uključuje kriptografski hash sadržaja). IPFS ima ugrađenu podršku za određivanje verzija. Adresa datoteke ne može se proizvoljno preimenovati; može se promijeniti samo nakon promjene sadržaja. Isto tako, nemoguće je izvršiti promjenu datoteke bez promjene adrese (stara verzija će ostati na istoj adresi, a nova će biti dostupna preko druge adrese, jer će se promijeniti hash sadržaja datoteke). S obzirom da se identifikator datoteke mijenja sa svakom promjenom, kako se ne bi svaki put prenosili novi linkovi, osigurani su servisi za povezivanje stalnih adresa koji uzimaju u obzir različite verzije datoteke (IPNS), ili dodjeljivanje aliasa po analogiji s tradicionalnim FS-om i DNS-om (MFS (Mutable File System) i DNSLink).

Po analogiji s BitTorrentom, podaci se izravno pohranjuju na sustave sudionika koji razmjenjuju informacije u P2P modu, bez vezivanja za centralizirane čvorove. Ako je potrebno primiti datoteku s određenim sadržajem, sustav pronalazi sudionike koji imaju tu datoteku i šalje je iz svojih sustava u dijelovima u nekoliko niti. Nakon preuzimanja datoteke u svoj sustav, sudionik automatski postaje jedna od točaka za njezinu distribuciju. Odrediti sudionike mreže na čijim čvorovima je prisutan sadržaj od interesa polovan distribuirana hash tablica (DHT).

Veliko ažuriranje globalnog decentraliziranog datotečnog sustava IPFS 0.5

U biti, IPFS se može promatrati kao distribuirana reinkarnacija Weba, koja se obraća prema sadržaju, a ne prema lokaciji i proizvoljnim imenima. Osim za pohranjivanje datoteka i razmjenu podataka, IPFS se može koristiti kao osnova za kreiranje novih usluga, na primjer, za organiziranje rada stranica koje nisu vezane za poslužitelje ili za kreiranje distribuiranih aplikacije.

IPFS pomaže u rješavanju problema kao što su pouzdanost pohrane (ako originalna pohrana nestane, datoteka se može preuzeti sa sustava drugih korisnika), otpornost na cenzuru sadržaja (blokiranje zahtijeva blokiranje svih korisničkih sustava koji imaju kopiju podataka) i organiziranje pristupa u nedostatku izravne veze s internetom ili ako je kvaliteta komunikacijskog kanala loša (podatke možete preuzeti preko obližnjih sudionika na lokalnoj mreži).

U verziji IPFS 0.5 značajno povećana produktivnost i pouzdanost. Javna mreža temeljena na IPFS-u prešla je granicu od 100 tisuća čvorova, a promjene u IPFS-u 0.5 odražavaju prilagodbu protokola za rad u takvim uvjetima. Optimizacije su uglavnom bile usmjerene na poboljšanje mehanizama usmjeravanja sadržaja odgovornih za pretraživanje, oglašavanje i dohvaćanje podataka, kao i na poboljšanje učinkovitosti implementacije distribuirana hash tablica (DHT), koji pruža informacije o čvorovima koji imaju potrebne podatke. Kod povezan s DHT-om gotovo je potpuno prepisan, značajno ubrzavajući traženje sadržaja i operacije definicije IPNS zapisa.

Konkretno, brzina izvođenja operacija dodavanja podataka povećana je za 2 puta, najave novog sadržaja mreži za 2.5 puta,
dohvaćanje podataka od 2 do 5 puta, a pretraživanje sadržaja od 2 do 6 puta.
Redizajnirani mehanizmi za usmjeravanje i slanje najava omogućili su ubrzanje mreže za 2-3 puta zbog učinkovitijeg korištenja propusnosti i pozadinskog prijenosa prometa. Sljedeće izdanje uvest će prijenos temeljen na QUIC protokolu, koji će omogućiti još veće dobitke performansi smanjenjem latencije.

Ubrzan je rad i povećana pouzdanost IPNS (Inter-Planetary Name System) sustava, koji služi za stvaranje trajnih poveznica na promjenjivi sadržaj. Novi eksperimentalni transportni pubsub omogućio je ubrzanje isporuke IPNS zapisa za 30-40 puta pri testiranju na mreži s tisuću čvorova (razvijen je poseban za eksperimente Simulator P2P mreže). Produktivnost međuslojeva približno je udvostručena
Badger, koristi se za interakciju s operativnim sustavom FS. Uz podršku za asinkrono pisanje, Badger je sada 25 puta brži od starog sloja flatfs. Povećana produktivnost također je utjecala na mehanizam Bitswap, koristi se za prijenos datoteka između čvorova.

Veliko ažuriranje globalnog decentraliziranog datotečnog sustava IPFS 0.5

Među funkcionalnim poboljšanjima spominje se korištenje TLS-a za šifriranje veza između klijenata i poslužitelja. Nova podrška za poddomene u HTTP pristupniku - programeri mogu ugostiti decentralizirane aplikacije (dapps) i web sadržaj u izoliranim poddomenama koje se mogu koristiti s hash adresama, IPNS-om, DNSLinkom, ENS-om itd. Dodan je novi imenski prostor /p2p koji sadrži podatke vezane uz peer adrese (/ipfs/peer_id → /p2p/peer_id). Dodana podrška za “.eth” veze temeljene na blockchainu, što će proširiti korištenje IPFS-a u distribuiranim aplikacijama.

Projekt paralelno razvija i startup Protocol Labs koji podržava razvoj IPFS-a. FileCoin, koji je dodatak IPFS-u. Dok IPFS sudionicima omogućuje pohranjivanje, upite i prijenos podataka među sobom, Filecoin se razvija kao platforma temeljena na blockchainu za trajnu pohranu. Filecoin omogućuje korisnicima koji imaju neiskorišten prostor na disku da ga daju na mrežu uz naknadu, a korisnicima koji trebaju prostor za pohranu da ga kupe. Ako je potreba za mjestom nestala, korisnik ga može prodati. Na taj se način formira tržište skladišnog prostora na kojem se obračuni vrše u žetonima Filecoin, generiran rudarenjem.

Izvor: opennet.ru

Dodajte komentar