从使用者的角度看,功能上来讲,主要有以下
使用 BitTorrent 下载必须使用种子文件,将下载内容的所有地址放到这个种子文件中,才能下载。而 IPFS 使用 DAG 数据结构存储数据,下载任何文件时只需知道一个 hash 地址即可。
IPFS 的部分实现参考了分布式版本管理工具 git 的实现,因而它可以存储内容的多个版本,而 BitTorrent 是不支持这个功能的。
BitTorrent 下载必须使用种子文件,客户端只能下载种子文件内的内容,而 IPFS 不受这个限制,可以下载毫不相关的任何文件(当然是加密过的即使下下来如果没有密钥也是看不了的),于是 IPFS 内部的资源调度子模块 BitSwap 可以更高效地调度,预下载内容,从而提高下载效率。
使用 IPFS 存储文件夹时,文件夹树形结构中的每个节点都有一个唯一的 hash, 因为可以只下载文件夹中的指定内容而无需下载整个文件夹。 BitTorrent 不支持这个功能。
BitTorrent 只是一个 download system, 而 IPFS 是一个 filesystem,意味着你可以将 IPFS mount 到你的本地电脑然后当磁盘一样操作。
详细可参考以下链接
https://medium.com/@kidinamoto/ipfs-vs-bittorrent-9f1c3adb8fcd