• 注册
  • WordPress后台-外观-小工具 进行配置小工具

    Filecoin Filecoin 关注:0 内容:558

    Filecoin挖矿机制剖析你知道若干?

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • Filecoin
    • LV1

      Filecoin自第二阶段测试网启动以来,较之前的版本有了不小的更改,而且仍有连续的改动,测试中的一些细节改动会被纳入到最终版本中,以是在主网上线前一些主要的网络参数可能会发生变化。以是建议矿工在挖矿最先前最好投入资金购置一些硬件举行测试、实验和基准测试。

      现在Filecoin网络中,存在存储矿工和检索矿工两种角色,其他角色正在开发中。

      存储市场

      在Filecoin中,存储节点能够与用户签署存储协议,为客户提供存储空间,并凭据约定的价钱,用户为存储节点支付响应的FIL。

      凭据Filecoin的规则,提供存储空间的节点被称为存储矿工,他们通过出块来维持Filecoin链的正常运行,当某一个存储节点乐成出一个块后,它可以获得最新铸造的FIL代币,同时也能通过完成区块里包罗的买卖获得响应的矿工费。

      检索市场

      节点也可以介入到Filecoin的检索市场中,与客户签署合同,通过为客户提供指定的文件获得FIL。一样平常检索节点需要高吞吐量和高带宽且位置优越等要求,他们能够促进文件的普遍和快速分发,尤其是一些要求较高的文件。

      其他角色

      其他角色正在开发中,如修复矿工节点,他们可以促进网络的恢复,然则该角色在现在的网络中暂未支持,但现在的Filecoin网络仍能正常运行。

      存储矿工剖析

      存储矿工意味着在Filecoin网络中保留文件,存储矿工必须以加密的方式证实他们遵守了存储文件的答应,在Filecoin网络中,这种证实通过复制证实(PoRep)和时空证实(PoSt)机制实现。将存储空间抵押给Filecoin需要FIL,以确保矿工履行合同义务。

      存储数据

      存储矿工将数据存储在牢固的扇区中。这些数据通过客户通过买卖渠道与存储矿工签署合同而来,不外矿工有权选择是否为客户提供存储服务。存储矿工也可以对任何买卖都不感兴趣,用随意数据填充这些扇区,但为Filecoin网络预留了空间,在有需要时通过升级扇区为未来买卖提供存储合约。

      复制证实

      一旦一个扇区被填充完毕,存储矿工将通过复制证实PoRep对该扇区举行封装,封装是一个盘算麋集型的历程,最终获得该数据唯一的一个示意(原始数据可以通过对封装后的示意解封重构)。数据被封装后,存储矿工天生一个证实P,然后运行零知识证实历程SNARK对P举行压缩,最后将压缩后的效果作为存储答应的一个凭证提交到区块链上。通过以上保持数据存储的历程被称为质押存储。

      时空证实

      复制证实完成后,存储矿工要连续地证实他们质押存储的数据一直都在,这就需要通过时空证实来完成。在这个时空证实历程中,网络向存储矿工发出一个隐秘挑战,这个挑战只有直接查询到一个对应的密封扇区才气乐成。存储矿工必须在严酷的时间限制内响应挑战。密封的盘算难度保证了存储矿工必须随时提供密封扇区并保持其完整性。

      在Filecoin中,PoSt表现为两个差别的挑战:WindowPoSt和WinningPoSt。

      WindowPoSt

      Filecoin挖矿机制剖析你知道若干?

      WindowPoSt是审查存储矿工所做答应的一种机制。它将每个24小时划分为一系列窗口。响应地,每个存储矿工的质押扇区集被划分为子集,每个窗口有一个子集。在给定的窗口内,每个存储矿工必须为其各自子集中的每个扇区提交一个PoSt。这需要随时接见每个受挑战的扇区,并将导致SNARK压缩证实作为块中的新闻公布到区块链。通过这种方式,在任何24小时内至少审查一次答应存储的每个扇区,来保留一份永远的、可核实的、公然的纪录,以证实每个存储矿工的连续答应。

      Filecoin网络期望存储的数据连续保持其可用性。一个扇区提交WindowPoSt失败,网络将会处罚其存储矿工。该扇区锚定的质押币被罚没,其对应网络的算力被减掉。在被视为完全放弃了他们的存储答应之前,存储矿工将有一段有限的时间将故障扇区恢复。若是需要,存储矿工也将有能力先发制人地宣布故障,这将削减处罚,但仍必须在合理的时间范围内解决。

      WinningPoSt

      WinningPoSt是存储矿工为网络孝敬而获取奖励的一种机制。在Filecoin网络中,时间被星散成一系列的周期epochs,链的高度与经由的时间段数相对应。在每一个周期的最先,都市选出一小部分的矿工来建立新的区块(Filecoin行使tipsets,允许在统一高度有多个区块)。每一个乐成建立区块的矿工都市有FIL奖励,同时可以收取其他节点的小费(矿工手续费),将要处置的新闻打包到区块中。

      存储矿工乐成当选出块节点的概率与其在全网的存力有关。与底层WindowPoSt历程类似,存储矿工的义务是在epoch竣事之前提交指定扇区的压缩存储证实。未在窗口内完成WinningPoSt的存储矿工将失去出块权,但不会因未能完成此操作而受到处罚。

      存力

      在Filecoin的网络规则中,一个存储块出矿的可能性与其存力占网络的比例大致呈正比。而Filecoin为了激励存储节点存储“有用”的数据,存储矿工有机遇竞争经核实客户提供的特殊买卖。一样平常这类客户是经网络授权的,他们的数据被界说为有价值的数据,而存储他们的数据会凭据获得的存力会通过乘数放大,该乘数被称为存力系数。

      硬件参考

      Filecoin网络的介入者若是想要介入到整个Filecoin网络中,需要知足介入该网络的硬件装备。

      运行Lotus客户端,不挖矿

      若是不想介入挖矿,然则想运行Lotus,目的是开发钱包或挪用网络接口,系统设置只需要2-4核的CPU,8G RAM,有足够存储链上数据的存储空间即可。现在测试网链的数据增长速率是每周12G。官方正在优化这块,以削减链上的数据。

      存储挖矿

      值得注意的是,在当前状态下,Filecoin存储挖矿需要相当壮大的硬件才气知足存储和证实的要求。这些需求在很大程度上是由PoRep和PoSt机制所施加的设计约束所驱动的,以及思量到其可接见性、盘算可行性和加密安全性所要求的。

      Filecoin存储挖矿可不是事情量证实POW挖矿,数据封装是唯一获得算力的方式。在网络允许的时间范围内,快速和有用的硬件要盘算种种必须的证实。协议实验室一直在研究降低硬件的要求,如软件优化证实机制、外包SNARK盘算以制止对昂贵的gpu的要求。然而,与此同时,在对硬件举行大规模投资之前,潜在的存储矿工应仔细思量并试验其系统的组成,以确保他们能够到达所需的性能。

      服务器运行Lotus性能剖析数据

      最佳的系统组成将在很大程度上取决于存储矿工的运营模式,包罗资源支出和运营成本。因此,协议实验室无法给出任何详细的建议。然而,我们已经揭晓了一些我们自己的设计,包罗现在适合测试和小规模介入挖矿装备的提要。

      我们希望存储矿工能够凭据自己的需要调整设置,在testnet上使用其他设置举行挖矿是可能的,而且我们预计这些设置中的许多将跨越我们自己构建的效率。我们激励实验,并要求感兴趣的社区成员在GitHub上分享他们自己的性能剖析。

      一样平常硬件问题

      我们不能给出详细的硬件设置,然则可以提供一些指导。

      CPU:

      凭据履历,高频率的多核CPU能够加速封装历程,从而尽快地将存力展示到网络中。协议实验室自己的测试解释,Modern AMD处置器具有SHA扩展性,与其他处置器相比具有相当大的优势。

      GPU:

      壮大的gpu是需要的,以完成SNARK盘算在所需的时间限制。Lotus现在的设计是为了支持NVIDIA制造的芯片。我们预计未来会有其他制造商的显卡支持。我们的性能剖析数据可以深入领会芯片的性能。

      RAM:

      现在的Filecoin网络仅支持32G和64G扇区。要盘算云云大的扇区需要相当大的内存,至少需要128G。

      存储空间:

      在选择适当的存储解决方案时,需要思量许多因素,其中最主要的可能是挖矿模子。存储矿工现在需要保证1TB的原值存储(主网上线可能增加到100TIB),才气获得出块资格。在这一点上,另有许多因素需要值得思量。

      1. 首先,也是最主要的一点是,存储矿工应该注意到,若是数据丢失,可能会受到严肃的责罚,即使是一个错位的比特位,也可能导致严重的责罚。因此,存储矿工可能希望思量到实现数据冗余的开销。

      - 对于追求介入检索市场的存储矿工来说,思量加入分外的存储空间,为提供密封数据的“热”拷贝做准备是一种郑重的做法。只管解封扇区以恢复原始数据固然是可行的,然则硬件也需要消耗响应的盘算(这是现在正在为Lotus开发的特征)。

      2. 另一个需要思量的因素是Filecoin网络对高可用性的要求。虽然理论上,存储矿工应该能够使用大多数企业硬盘、固态硬盘或其他合适的非冷存储硬件,但并非所有存储硬件都能在7*24小时运行中保持最佳性能。

      3. 存储矿工现在也需要有足够的空间来存储链上数据。削减链上数据在磁盘上的存储是Lotus努力开发的一个偏向。Filecoin实现可能还需要分外的磁盘存储,相当于保证存储的一小部分,用于记账。

      4. 最后,协议实验室在测试中发现,在RAM量较低(128GiB)的系统中,使用NVMe存储作为交流空间可以作为弥补。在某些操作中,存储矿工可能会遇到内存不足问题(尤其是密封,需要大量事情内存)。

      网络:

      若是使用分布式lotus seal worker(请参阅下面的进阶挖矿注意事项),建议使用高性能网络(建议使用10GbE+网卡和交流机)。使用网络连接存储时,也建议使用高性能网络。

      进阶挖矿注意事项

      如上所述,Filecoin存储挖矿主要依赖PoRep和PoSt机制。PoRep自己由几个阶段组成,而Lotus有助于将这些阶段委托给差别的服务器,通过seal worker实现最大效率。协议实验室开发了一个示例架构,旨在行使这些功效举行大体量挖矿。在这里,我们在设计类似的系统时,要思量处置差别瓶颈的问题。

      封装预提交1阶段preCommit phase 1:

      在这个阶段,将举行PoRep SDR编码。这个阶段受CPU限制,是单线程的(凭据设计,它不适合并行化)。这个阶段预计需要几个小时的时间,正确的时间取决于被密封的扇区的巨细,固然,也取决于举行密封的机械的规格。上文提到,协议实验室(和其他机构)已经发现,带有SHA扩展的AMD处置器在很大程度上加速了这一历程。使用具有更高频率的cpu也可以提高性能。

      封装预提交2阶段preCommit phase 2:

      在这个阶段,行使Poseidon哈希算法天生Merkle树结构。该历程主要受GPU的限制,然则CPU也可以作为另一种选择,只不外处置历程会异常慢。当使用GPU时,此阶段预计需要45分钟到1小时。

      Filecoin挖矿机制剖析你知道若干?

      封装提交1阶段commit phase 1:

      这是一个中心阶段,为天生证实做准备事情。它受CPU限制,通常在几十秒内完成。

      封装提交2阶段commit phase 2:

      最后,这个密封阶段涉及到建立一个SNARK,行使它压缩天生一个证实凭证,然后广播到链上。这是一个GPU麋集型历程,预计需要20-30分钟才气完成。

      协议实验室发现在统一台机械上执行preCommit phase 2、commit phase 1和commit phase 2,单独行使一台高效的机械来执行preCommit phase 1是异常有用的。然则,在预提交阶段1和预提交阶段2之间存在大量文件传输,在网络接见速率较慢或使用硬盘而不是固态驱动器的机械上,这可能会跨越在其他方面取得的性能提升。在这种情况下,执行所有阶段都出现在统一台机械上可能更有用。

      PoSt主要受限于GPU,然则可以行使具有多核的CPU来加速历程。例如,WindowPoSt现在必须在30分钟的窗口内举行。24核CPU和8核CPU之间的区别可能是在一个合适的范围内消灭窗口和只是在时间上委曲通过。WinningPoSt是一种不那么麋集的盘算,必须在Filecoin出块周期(现在是25秒)的小窗口内完成。

      总结

      Filecoin网络整体基于区块链手艺搭建而成,从零最先完善一个乐成的区块链项目是一件难度异常大的事情。

      请登录之后再进行评论

      登录
    • 做任务
    • 实时动态
    • 偏好设置
    • 返回顶部
    • 帖子间隔 侧栏位置: