Veröffentlichung des globalen dezentralen Dateisystems IPFS 0.8

Vorgestellt wird die Veröffentlichung des dezentralen Dateisystems IPFS 0.8 (InterPlanetary File System), das einen globalen versionierten Dateispeicher bildet, der in Form eines aus Teilnehmersystemen gebildeten P2P-Netzwerks bereitgestellt wird. IPFS kombiniert Ideen, die zuvor in Systemen wie Git, BitTorrent, Kademlia, SFS und dem Web implementiert wurden, und ähnelt einem einzelnen BitTorrent-„Schwarm“ (an der Verteilung beteiligte Peers), der Git-Objekte austauscht. IPFS zeichnet sich durch die Adressierung nach Inhalt und nicht nach Ort und willkürlichen Namen aus. Der Referenzimplementierungscode ist in Go geschrieben und wird unter den Lizenzen Apache 2.0 und MIT vertrieben.

In der neuen Version:

  • Die Möglichkeit, externe Dienste zum Anheften von Benutzerdaten zu erstellen, wurde implementiert (Anheften – Daten an einen Knoten binden, um sicherzustellen, dass wichtige Daten gespeichert werden). Einem Dienst zugewiesene Daten können separate Namen haben, die sich von der Inhaltskennung (CID) unterscheiden. Sie können Daten sowohl nach Name als auch nach CID suchen. Zur Verarbeitung von Anfragen zum Daten-Pinning wird die IPFS Pinning Service API vorgeschlagen, die direkt in go-ipfs genutzt werden kann. In der Kommandozeile wird zum Anhängen der Befehl „ipfs pin remote“ vorgeschlagen: ipfs pin remote service add mysrv https://my-service.example.com/api-endpoint myAccessToken ipfs pin remote add /ipfs/bafymydata –service= mysrv —name= myfile ipfs pin remote ls —service=mysrv —name=myfile ipfs pin remote rm —service=mysrv —name=myfile
  • Die Vorgänge der Datenbindung (Pinning) und des Lösens (Unpinning) auf dem lokalen Knoten wurden beschleunigt. Die Leistungsverbesserungen und Speichereinsparungen machen sich insbesondere bei der Durchführung von Inferenz- oder Änderungsvorgängen auf Systemen mit einer großen Anzahl von Bindungen bemerkbar.
  • Bei der Generierung von „https://“-Links für Gateways wurde die Möglichkeit hinzugefügt, DNSLink-Namen mithilfe von Subdomains zu übertragen. Um beispielsweise den Namen „ipns://en.wikipedia-on-ipfs.org“ zusätzlich zu den zuvor unterstützten Links „https://dweb.link/ipns/en.wikipedia-on-ipfs.org“ zu laden ", können Sie jetzt Links „https://en-wikipedia—on—ipfs-org.ipns.dweb.link“ verwenden, in denen die Punkte in den ursprünglichen Namen durch das „-“-Zeichen ersetzt werden und das vorhandene „ -“-Zeichen werden mit einem anderen ähnlichen Zeichen maskiert.
  • Die Unterstützung für das QUIC-Protokoll wurde erweitert. Um die Leistung zu steigern, ist es möglich, die Empfangspuffer für UDP zu erhöhen.

Denken Sie daran, dass in IPFS ein Link zum Zugriff auf eine Datei direkt mit ihrem Inhalt verknüpft ist und einen kryptografischen Hash des Inhalts enthält. Die Dateiadresse kann nicht beliebig umbenannt werden, sie kann sich nur ändern, nachdem sich der Inhalt geändert hat. Ebenso ist es unmöglich, eine Datei zu ändern, ohne die Adresse zu ändern (die alte Version bleibt unter derselben Adresse und die neue ist über eine andere Adresse verfügbar, da sich der Hash des Dateiinhalts ändert). Da sich die Dateikennung bei jeder Änderung ändert, werden, um nicht jedes Mal neue Links zu übertragen, Dienste zum Binden dauerhafter Adressen bereitgestellt, die unterschiedliche Versionen der Datei (IPNS) berücksichtigen, oder zum Fixieren eines Alias ​​analog zu herkömmlichen FS und DNS (MFS (Mutable File System) und DNSLink).

Analog zu BitTorrent werden die Daten direkt auf den Systemen der Teilnehmer gespeichert, die im P2P-Modus Informationen austauschen, ohne an zentrale Knoten gebunden zu sein. Wenn es erforderlich ist, eine Datei mit einem bestimmten Inhalt zu empfangen, findet das System Teilnehmer, die über diese Datei verfügen, und sendet sie mit ihren Systemen in Teilen an mehrere Streams. Nach dem Hochladen der Datei in ihr System wird der Teilnehmer automatisch zu einem der Punkte für deren Verteilung. Mithilfe einer Distributed Hash Table (DHT) werden Netzwerkteilnehmer ermittelt, auf deren Knoten der interessierende Inhalt vorhanden ist. Um auf das globale FS IPFS zuzugreifen, kann das HTTP-Protokoll verwendet werden oder die virtuellen FS /ipfs können mit dem FUSE-Modul gemountet werden.

IPFS hilft bei der Lösung von Problemen wie der Speicherzuverlässigkeit (wenn der ursprüngliche Speicher deaktiviert ist, kann die Datei von den Systemen anderer Benutzer heruntergeladen werden) und der Widerstandsfähigkeit gegen Inhaltszensur (zum Blockieren müssen alle Benutzersysteme blockiert werden, die über eine Kopie davon verfügen). der Daten) und Organisation des Zugriffs, wenn keine direkte Verbindung zum Internet besteht oder die Qualität des Kommunikationskanals schlecht ist (Sie können Daten über die nächstgelegenen Teilnehmer im lokalen Netzwerk herunterladen). Neben der Speicherung von Dateien und dem Austausch von Daten kann IPFS als Grundlage für die Erstellung neuer Dienste verwendet werden, beispielsweise für die Organisation des Betriebs von Websites, die nicht an Server gebunden sind, oder für die Erstellung verteilter Anwendungen.

Veröffentlichung des globalen dezentralen Dateisystems IPFS 0.8


Source: opennet.ru

Kommentar hinzufügen