知乎摘录-学习IPFS

1. 什么是 IPFS

星际文件系统 (InterPlanetary File System). IPFS 是一个分布式的 web, 点到点超媒体协议。可以让我们的互联网速度更快，更加安全，并且更加开放. IPFS 协议的目标是取代传统的互联网协议 HTTP。

2. 为什么有 IPFS

众所周知，互联网是建立在 HTTP 协议上的. HTTP 协议是个伟大的发明，让我们的互联网得以快速发展。但是互联网发展到了今天 HTTP 逐渐出来了不足.

2.1. HTTP 的中心化是低效的，并且成本很高

使用 HTTP 协议每次需要从中心化的服务器下载完整的文件 (网页，视频，图片等), 速度慢，效率低。如果改用 P2P 的方式下载，可以节省近 60% 的带宽. P2P 将文件分割为小的块，从多个服务器同时下载，速度非常快.

2.2. Web 文件经常被删除

回想一下是不是经常你收藏的某个页面，在使用的时候浏览器返回 404 (无法找到页面), http 的页面平均生存周期大约只有 100 天. Web 文件经常被删除 (由于存储成本太高), 无法永久保存. IPFS 提供了文件的历史版本回溯功能 (就像 git 版本控制工具一样), 可以很容易的查看文件的历史版本，数据可以得到永久保存

2.3. 中心化限制了 web 的成长

我们的现有互联网是一个高度中心化的网络。互联网是人类的伟大发明，也是科技创新的加速器。各种管制将对这互联网的功能造成威胁，例如：互联网封锁，管制，监控等等。这些都源于互联网的中心化。而分布式的 IPFS 可以克服这些 web 的缺点.

2.4. 互联网应用高度依赖主干网

主干网受制于诸多因素的影响，战争，自然灾害，互联网管制，中心化服务器宕机等等，都可能是我们的互联网应用中断服务. IPFS 可以是互联网应用极大的降低互联网应用对主干网的依赖.

3. IPFS 的目标

IPFS 不仅仅是为了加速 web. 而是为了最终取代 HTTP 协议，使互联网更加美好

4. IPFS 包含哪些内容

4.1. IPFS 是一个协议，类似 http 协议

定义了基于内容的寻址文件系统

内容分发

使用的技术分布式哈希、p2p 传输、版本管理系统

4.2. IPFS 是一个文件系统

有文件夹和文件

可挂载文件系统

4.3. IPFS 是一个 web 协议

可以像 http 那样查看互联网页面

未来浏览器可以直接支持 ipfs:/ 或者 fs:/ 协议

4.4. IPFS 是模块化的协议

连接层：通过其他任何网络协议连接

路由层：寻找定位文件所在位置

数据块交换：采用 BitTorrent 技术

4.5. IPFS 是一个 p2p 系统

世界范围内的 p2p 文件传输网络

分布式网络结构

没有单点失效问题

4.6. IPFS 天生是一个 CDN

文件添加到 IPFS 网络，将会在全世界进行 CDN 加速

bittorrent 的带宽管理

4.7. IPFS 拥有命名服务

IPNS：基于 SFS（自认证系统）命名体系

可以和现有域名系统绑定