IPFS 即 InterPlanetary File System,一个点对点的分布式文件系统,旨在创建持久且分布式存储和共享文件的网络传输协议。
当前,使用 HTTP 协议传递相对小的文件其实是非常廉价和方便的,但是随着计算资源和存储空间的指数增长,我们面临了需要随时获取大量数据的问题,而 IPFS 就是为了解决这一问题出现的。
作为一个分布式的文件系统,IPFS 提供了一个支持部署和写入的平台,同时能够支持大文件的分发和版本管理;为了达到上述的目的,IPFS 协议被分成七个子协议,分别负责 IPFS 中的不同功能。
身份系统的主要作用就是表示 IPFS 网络中的每一个节点,所有的节点都通过唯一的 NodeId 进行标识,代表每一个使用 IPFS 的用户。
作为一个分布式的存储系统,节点之间的通信和信息传递都需要通过网络进行,同时能够使用多种传输层协议并保证可靠性、连通性、信息的完整性以及真实性。IPFS 可以使用任意的网络进行通信,它并没有假设自己一定运行在 IP 协议上,而是通过 multiaddr 的格式来表示目标地址和使用的协议,以此来兼容和扩展未来可能出现的其他网络协议。
在一个分布式系统中,检索或者访问其他节点中存储的资源就需要通过一个路由系统,IPFS 使用了基于 S/Kademlia 和 Coral 中的 DSHT 实现了路由系统,我们能够在 libp2p/go-libp2p-routing/routing.go 中找到 IPFS 路由系统的接口,实现三种基本的功能,内容路由、节点路由以及数据存储。
在 IPFS 中,数据的分发和交换使用 BitSwap 协议,BitSwap 负责两件事情:向其他节点请求需要的 Block 以及为其他节点提供 Block。
同时,IPFS 使用 Ledger 创建了一个具有激励和惩罚的网络,保证了网络中的大部分节点能够交换数据并且正常运行。
IPFS 定义了一系列的对象构建了支持版本控制的文件系统,与 Git 的对象模型非常类似,并且所有文件对象其实都通过 Protobuf 进行了二进制编码。最顶层的 commit 就表示历史的某一次快照,对比两次 commit 以及子节点构成的树就能得到两次快照之间的差别,我们可以认为 Merkle DAG 和文件对象构成了整个 IPFS 中的文件系统。
到目前为止,IPFS 技术栈已经提供了一个点对点的数据交换系统,能够在节点之间发送 DAG 对象,并且可以推送和取回不可变的对象,但是可变的命名系统也是网络不可缺少的一部分,我们终究需要使用同一个地址获取不同的状态,因为不能因为网站的更新而改变域名,所以 IPFS 需要提供域名服务解决这一问题。
在 IPFS 中可以使用如下的可变命名空间来解决这些问题,用户可以发布一个对象,其他节点就可以通过 ipns 加上该用户的节点地址访问到这些发布到网络中的对象:
在 IPFS 不仅能够使用哈希访问可变对象,也能嵌入现有的 DNS 服务中很好的运行,解决了底层服务无缝切换的问题。
IPFS 是一个非常有意思的区块链底层技术,它在兼容现有互联网协议的基础上,实现了点对点的文件存储系统并且为大数据存储提出了方案,作者尝试了一下 IPFS 的官方客户端 go-ipfs 也确实比较好用,但是目前也是在项目的早期阶段,很多模块和功能还没有定型。
据悉,宁波第一家区块链软硬件技术研发和分布式存储应用开发企业,领袖级企业区块链改革解决方案提供商:浙江甬链科技有限公司宣布正式迈入IPFS星际文件系统领域.
一个有态度的IPFS生态集聚地以实现全民数据分布式存储为使命专注于分布式存储技术研发及应用人民网北京3月25日电全球互联网行业进入高速发展期,根据国际数据公司预测,到2023年.
2021年是区块链迅速发展的一年,随着国家对数字“新基建”、新型大数据中心的大力支持,基于分布式存储的技术服务商的市场规模也呈现爆发式增长.
VM全名VirtualMachine,翻译为虚拟机。虚拟机被认为是区块链技术领域基础设施,是实现智能合约系统最为关键和核心的技术.
星际文件系统重磅新闻 星际文件系统上的索引和互操作性“内容路由”是一组用于规定信息和流量如何在用户和应用程序之间流动的规则和机制.
9月28日,20个团队参加了由Tachyon运营星际文件系统Launchpad加速器主办的演示日。这个加速器是一个为期6周的课程,致力于孵化年轻的Web3公司.
目前的星际文件系统网络是一个可通过验证存储并访问NFT、公共数据集、web3和虚拟世界资产的强大网络。你可以将其视为web3的I/O层,然而这只是冰山一角.
1、go-ipfs0.11.0新版本发布此版本改进了UnixFSSharding和PubSub实验,并支持Circuit-Relayv2,大家可阅读Github上的完整发行说明.
星际文件系统Green是协议实验室于2021年启动的一个项目,旨在将星际文件系统转变为一个可验证的环保网络.