Значнае абнаўленне глабальнай дэцэнтралізаванай файлавай сістэмы IPFS 0.5

Прадстаўлены новы выпуск дэцэнтралізаванай файлавай сістэмы IPFS 0.5 (InterPlanetary File System), утваральнай глабальнае версіяванае сховішча файлаў, разгорнутае ў форме P2P-сеткі, утворанай з сістэм удзельнікаў. IPFS камбінуе ідэі, раней рэалізаваныя ў такіх сістэмах, як Git, BitTorrent, Kademlia, SFS і Web, і нагадвае адзіны "рой" BitTorrent (піры, якія ўдзельнічаюць у раздачы), які абменьваецца Git-аб'ектамі. Для доступу да глабальнай ФС IPFS можа выкарыстоўвацца пратакол HTTP ці манціравацца віртуальная ФС /ipfs пры дапамозе модуля FUSE. Код эталоннай рэалізацыі напісаны на мове Go і распаўсюджваецца пад ліцэнзіямі Apache 2.0 і MIT. Дадаткова развіваецца рэалізацыя пратаколу IPFS на JavaScript, якая можа працаваць у браўзэры.

Ключавы асаблівасцю IPFS з'яўляецца адрасаванне па змесціва, пры якой спасылка для доступу да файла непасрэдна злучана з яго змесцівам (уключае крыптаграфічны хэш змесціва). IPFS мае убудаваную падтрымку версіявання. Адрас файла немагчыма адвольна пераназваць, ён можа змяніцца толькі пасля змены змесціва. Аналагічна немагчыма занесці змену ў файл без змены адрасу (стары варыянт застанецца на ранейшым адрасе, а новы будзе даступны праз іншы адрас, бо хэш ад змесціва файла зменіцца). Улічваючы тое, што ідэнтыфікатар файла змяняецца пры кожнай змене, каб кожны раз не перадаваць новыя спасылкі прадастаўляюцца сэрвісы для прывязкі пастаянных адрасоў, якія ўлічваюць розныя версіі файла (Ipns), або замацавання псеўданіма па аналогіі з традыцыйнымі ФС і DNS (МФС (Mutable File System) і DNSLink).

Па аналогіі з BitTorrent дадзеныя непасрэдна захоўваюцца на сістэмах удзельнікаў, якія абменьваюцца інфармацыяй у рэжыме P2P, без прывязкі да цэнтралізаваных вузлоў. Пры неабходнасці атрымаць файл з пэўным зместам сістэма знаходзіць удзельнікаў, у якіх ёсць дадзены файл і аддае яго з іх сістэм часткамі ў некалькі патокаў. Пасля загрузкі файла на сваю сістэму ўдзельнік аўтаматычна становіцца адной з кропак па ім раздачы. Для вызначэння ўдзельнікаў сеткі на вузлах якіх прысутнічае цікавы кантэнт выкарыстоўваецца размеркаваная хэш табліца (DHT).

Значнае абнаўленне глабальнай дэцэнтралізаванай файлавай сістэмы IPFS 0.5

Па сутнасці IPFS можна разглядаць як размеркаваную рэінкарнацыю Web з адрасаваннем па змесціва, а не месцы размяшчэння і адвольным імёнам. Акрамя захоўвання файлаў і абмену дадзенымі IPFS можа выкарыстоўвацца як аснова для стварэння новых сэрвісаў, напрыклад, для арганізацыі працы сайтаў, не прывязаных да сервераў, або для стварэння размеркаваных прыкладанняў.

IPFS дапамагае вырашыць такія задачы як надзейнасць захоўвання (калі зыходнае сховішча будзе выведзена з ладу, файл можна загрузіць з сістэм іншых карыстальнікаў), супрацьстаянне цэнзураванню кантэнту (для блакіроўкі спатрэбіцца заблакаваць усе сістэмы карыстальнікаў, на якіх ёсць копія дадзеных) і арганізацыя доступу пры адсутнасці прамога злучэнні да інтэрнэту або пры дрэннай якасці канала сувязі (можна загрузіць даныя праз бліжэйшых удзельнікаў у лакальнай сетцы).

У версіі IPFS 0.5 істотна падвышана прадукцыйнасці і надзейнасць працы. Агульнадаступная сетка на базе IPFS пераадолела адзнаку ў 100 тысяч вузлоў і змены ў IPFS 0.5 адлюстроўваюць адаптацыю пратаколу для працы ў падобных умовах. Аптымізацыі ў асноўным былі сканцэнтраваны на паляпшэнні механізмаў маршрутызацыі кантэнту, якія адказваюць за пошук, анансаванне і атрыманне дадзеных, а таксама на павышэнні эфектыўнасці рэалізацыі. размеркаванай хэш табліцы (DHT), якая прадстаўляе інфармацыю аб вузлах, якія маюць шуканыя дадзеныя. Звязаны з DHT код быў практычна цалкам перапісаны, што значна паскорыла аперацыі пошуку кантэнту і азначэнні запісаў IPNS.

У прыватнасці, хуткасць выканання аперацый дадання дадзеных павялічылася ў 2 разы, анансавання ў сетку новага кантэнту ў 2.5 раз,
вымання дадзеных ад 2 да 5 разоў, а пошуку кантэнту ад 2 да 6 разоў.
Перапрацаваныя механізмы маршрутызацыі і адпраўкі анонсаў дазволілі паскорыць працу сеткі ў 2-3 разы за кошт больш эфектыўнага выкарыстання прапускной здольнасці і фонавай перадачы трафіку. У наступным выпуску намечана ўкараненне транспарту на базе пратакола QUIC, што дазволіць дабіцца яшчэ большага прыросту прадукцыйнасці за кошт скарачэння затрымак.

Паскорана праца і падвышаная надзейнасць сістэмы IPNS (Inter-Planetary Name System), якая ўжываецца для стварэння сталых спасылак на які змяняецца кантэнт. Новы эксперыментальны транспарт pubsub даў магчымасць паскорыць дастаўку запісаў IPNS у 30-40 разоў пры тэставанні ў сетцы з тысячай вузлоў (для эксперыментаў распрацаваны спецыяльны сімулятар P2P-сеткі). Прыкладна ў два разы павялічана прадукцыйнасць праслойкі
Badger, якая прымяняецца для ўзаемадзеяння з ФС аперацыйнай сістэмы. Дзякуючы падтрымцы аперацый асінхроннага запісу Badger зараз працуе ў 25 разоў хутчэй старой праслойкі flatfs. Павышэнне прадукцыйнасці таксама закранула механізм Bitswap, які ўжываецца для перадачы файлаў паміж вузламі.

Значнае абнаўленне глабальнай дэцэнтралізаванай файлавай сістэмы IPFS 0.5

З функцыянальных паляпшэнняў згадваецца задзейнічанне TLS для шыфравання злучэнняў паміж кліентамі і серверамі. З'явілася падтрымка паддаменаў у HTTP-шлюзе - распрацоўнікі могуць размяшчаць дэцэнтралізаваныя прыкладанні (dapps) і web-кантэнт у ізаляваных паддаменах, якія можна выкарыстоўваць з хэш-адрасамі, IPNS, DNSLink, ENS і да т.п. Дададзена новая прастора імёнаў /p2p, у якую вынесеныя дадзеныя, звязаныя з адрасамі баляў (/ipfs/peer_id → /p2p/peer_id). Дададзена падтрымка спасылак ".eth" на базе блокчейна, што пашырыць ужыванне IPFS у размеркаваных прыкладаннях.

Які падтрымлівае распрацоўку IPFS стартап Protocol Labs таксама раўналежна развівае праект FileCoin, Які з'яўляецца надбудовай над IPFS. Калі IPFS дазваляе ўдзельнікам захоўваць, запытваць і перадаваць дадзеныя паміж сабой, то Filecoin развіваецца як заснаваная на тэхналогіях блокчейна платформа для сталага захоўвання. Filecoin дае магчымасць карыстачам, у якіх маецца невыкарыстоўваная дыскавая прастора, за вызначаную ўзнагароду падаць яго сеткі, а карыстачам, якім трэба месца для захоўвання, купіць яго. Калі неабходнасць у месцы знікла, карыстач можа прадаць яго. Такім чынам фармуецца рынак месца ў сховішча, разлікі ў якім вырабляюцца ў токена Filecoin, якія ўтвараюцца пры дапамозе майнінгу.

Крыніца: opennet.ru

Дадаць каментар