Filecoin介绍
Filecoin是由协议实验室发起的一种分散式存储解决方案,它将现有的云存储转化为一个算法市场。矿工通过提供数据存储或数据检索服务来获得相应代币,用户则需要支付数据存储和数据检索的费用。
2017年,Filecoin最初的代币销售成为历史上最大的代币销售,投资者大量买入未来代币简单协议(SAFT,Filecoin网络上线后便可转换为代币所有权),项目公众筹募资金为2亿5百万美金,加上在私募期间得到的5千2百万美金,协议实验室共募集到了2.57亿美元的捐款。Filecoin在募资期间获得了硅谷顶级风险资本家的投资,包括美国著名创业孵化器Y Combinator、红杉资本(Sequoia Capital )、斯坦福大学(stanford university)、安德森.霍洛维茨基金(Andreessen Horowitz)以及文克莱沃斯兄弟基金(Winklevoss Capital)。这种规模和资金组合加上团队的经验,使该项目具有加密行业中罕见的合法性水平。
NDN 介绍
NDN 是创新的内容中心自组织互联网,依托于美国国家科学基金会发起的 NDN 命名数据网络项目,通过 开源的NDN技术 和 区块链技术相结合推动互联网从“数据传输管道”向“内容分发平台”转变,构建以内容为中心的下一代互联网。 NDN Link 在全局数据命名、数据路由工作证明、数据安全自证明等多个方向实现突破,核心科研成果及科研成员来自于NDN项目组和美国、乌克兰等地的知名网络科学家。
NDN 是一个纯开源项目,目前有来自产业和学术界的团队参与和支持,这里面包括 Panasonic ,Intel,Cisco,Huawei等
Filecoin挖矿
Filecoin 是利用区块链技术构建在IPFS上的存储奖励系统,挖矿是通过一种基于时空证明的算法(POST),这种算法能够证明某个矿工中在某段时间内花费了多大的空间存储数据,通俗的讲就是提供存储空间,然后参与挖矿,通过Filecoin 官方的介绍,由于POST 需要封装和验证数据,所以导致矿工硬件成本比较高,另外,Filecoin 虽然解决了让用户提供硬盘空间的。
NDN 挖矿
我们来先来看看NDN的数据请求过程:
NDN路由节点主要的数据结构如下:
FIB(Forwarding Information Base )
FIB 表存储有关目标数据包的接口信息,并使用LPM(一种快速匹配算法)将数据包装发到上游,该表维护了数据名称前缀和可能拥有数据提供者的接口,
PIT (Pending InterestTable )
该表维护一个数据请求包的列表,直到这个数据请求包被满足,或者数据请求包过时,该表使用精确匹配(EM)方法搜索PIT条目,并且可以转发多个兴趣数据包,当特定兴趣包在该表中具有多条记录的时候,PIT将转发第一个兴趣包,其他兴趣包则记录在PIT表中保存。
CS(Content Store)
该数据结构的基本功能是优化数据检索功能,由于NDN采用数据命名的方式,并利用了数据自证安全机制,让传输的数据可以充分利用网络内缓存,从事最大化效率,把数据传输问题转变成数据存储问题。
NDN 数据请求过程
在NDN 网络中,有两个重要的角色,数据消费者和数据发布者,前者是发送Interest 的数据请求方,后者是具有Data的数据提供方,数据通信是由消费者发送Interest 来驱动的,通信转发过程如图所示:
用户想要获取数据的时候,首先发出一个Interest(包含所需数据的名称),NDN 路由器接收到这个数据包后,首先在CS中查找是否有和当前名称匹配的内容,如果有,则直接将匹配的Data返回给发起请求的节点;如果没有,路由器会在PIT表中记录下当前名称对应的Interest 是从哪个接口进入的,同时路由器在FIB表中查找与当前名称匹配的记录,以确定从哪些接口把这个Interest 发出去,当某个路由节点拥有与Name匹配的数据时,它就发出Data。这个包会沿着刚才Interest经过的路径返回,当路由器接收到Data时,它会根据这个包的名称在PIT表中查询匹配的记录,将这个包从所有匹配的接口发出,这样,所有之前请求过相同数据的节点可以得到所需要的数据,PIT中匹配的记录都被删除。路由信息和用户请求过的内容都保存在路由其中,这种方式最大限度地挖掘了路由器的存储能力。如果链路发生故障,恢复后可以从中间节点的缓存中取得数据,而不需要路由到原始数据提供者,以减少延时和带宽消耗,提高内容分发的效率。
NDN Link网络
通过对NDN 路由节点的简单分析,我们可以得知NDN本质是一种数据路由协议,该协议可以充分利用NDN网络的缓存从而提高数据的分发效率,那NDN 挖矿应该是什么样的呢?从NDN Link的白皮书中,我们发下如下内容:
该段话的核心内容就是NDN Link 项目采用一种类似POW的共识算法,该算法主要是基于NDN 路由节点的转发速率来决定出块的概率,那么路由节点的转发速率跟什么相关呢,通过白皮书的解释,NDN 路由节点的转发速率主要跟节点的带宽和CS(Content Store)存储大小有关,由于NDN 路由节点存储的是具有时效性的数据,所以缓存的数据不能需要像Filecoin那样做封装和验证,所以对于机器的配置要求就不是那么高。
NDN Protocol 协议
NDN Protocol是基于数据命名和NDN Link网络的分布式存储数据聚合协议,通过数据预言机解决分布式存储网络难以解决的检索矿工流量计费问题。同时, NDN protocol 将聚合各类分布式存储网络的数据交易需求,在数据预言机的支持下,保障数据交易和计费的高效安全撮合。简而言之,NDN Protocol 为Dapp提供安全的数据服务,并自动结算。NDN Protocol 底层是采用NDN分布式网络,NDN是由美国自然科学基金会赞助的开源项目,NDN 网络跟现有的基于TCP/IP 通信模型的网络相比,具有以下特点:
1 去中心化的理念设计。
相对于TCP/IP 通信模型来说,NDN网络是一个去中心化的通信网络,在网络中,数据成为一等民。
2 以数据为中心的安全性。
在NDN中,安全是建立在数据本身,而不依赖数据的来源和获得方式。每一块数据都由发布者实施了签名,数据签名是强制性的,数据经过签名后,再加上数据发布者信息,可以确定数据的可信性,使得消费者对于数据的信任不依赖于数据是如何得到的,从哪里得到的
3 高效的传输机制
NDN网络基于发布/订阅(Publish/Subscribe)通信模型 解除了内容的生产者和消费者直接关联关系,数据的驱动完全交由网络自身处理,从而大大提高了网络的效率。
NDN挖矿依赖存储和带宽, Filecoin挖矿依赖存储和计算
通过以上对Filecoin 和NDN 挖矿分析可以知道,由于Filecoin 是基于POST(时空证明)的算法,需要对数据进行封装和验证,所以对机器的配置要求比较高,Filecoin 也更加适合数据流动性不是很高的数据,也就是冷数据,NDN 对于机器的配置相对比较低,但是要求比较大的带宽,也更加适合热数据挖矿(比如:CDN数据,实时流媒体数据、实时IM数据)。
总结
NDN Link 和Filecoin这两个项目的都是为了建设更好的互联网而诞生的项目,一个是为了构建人类信息永存的分布式存储基础设施,一个是为了数据更好的流通和分发的分布式网络通信基础设施,在挖矿方面Filecoin更偏重于数据的永久存储,所以对存储和计算要求比较高,一个偏向于数据的时效性存储,所以对带宽和存储要求比较高。
注:如果对NDN 挖矿感兴趣的可以留言一起交流