首页 > Filecoin > 正文

Go-filecoin 0.2.2更新简介

IPFSFAN  2019-05-26  IPFS/Filecoin栏目  

  19年5月17日,协议实验室更新了0.2.2版本的go-FILecoin客户端,一起来看看新版本客户端更新了哪些内容吧!

  

  我们很高兴宣布,go-filecoin 0.2.2版本已经推出。Go-filecoin是Filecoin协议在Go语言下的实现。您可以在Github的go-filecoin/changelog.md 文档找到最新版本的更新日志。

  0.2.2版本更加重视后端的升级,升级内容包括对Filesystem repo的迁移与解决储存上的一些争议内容;更好的messagepool(信息池);共识证明机制改进;为了更可靠的中继层与DHT(分布式哈希表),大改了Libp2p和go-libp2p-kad-dht版本。对于用户层面的改进为新的指令与可用选项,优化后的状态信息,还修复了一堆BUG。体验下吧!

  安装与设置

  链同步状态

  当首次创建FIlecoin节点时,节点必须要下载并认证区块链的内容,上述行为被称作“链同步”。尽管在同步完成前,某些初始命令仍然可以立即执行(比如通过水龙头获取FIL),但其他命令(比如挖矿相关命令)将会返回错误提醒,除非链同步完成。目前完成一此链同步需要花费数个小时的时间,为此,我们为链同步的WIKI进行了更新;对链同步信息状态的进度进行优化;提供更简洁明了的链同步信息输出。在未来的版本中,我们还会从根本上解决链同步速度过慢的问题。

  扇区储存配置

  现在你可以选择将你的Filecoin节点信息储存在某个具体位置里了!你有两种方法来指定节点信息与扇区储存的位置:

  通过配置 sectorbase.rootdir

  通过 –sectordir 选项配置 go-filecoininit

  如果用户不指定储存的位置,那么数据将默认储存在 $HOME/.filecoin_sectors 中。 更多细节请关注Filecoin WIKI

  新的特点

  可升级的数据库

  除了客户端封装的信息外,Filecoin节点还会储存其他数据,例如配置列表数据,区块,交易状态和加密密钥。随着开发进度不断加深,我们需要一种安全的方法来更改上述数据的类型与结构。在0.2.2版本中,我们新增了一种支持Filesystem repo数据迁移的设计结构,新增迁移工具的初始化功能。这令FIlecoin节点在运行程序时无缝升级铺平了道路。

  欲了解更多信息,请在客户端中查看帮助文本:

  Tools/migration/go-filecoin-migrate –help

  储存支付通道

  新版本针对储存协议的争议解决方面进行了优化。支付通道现在具有某些“条件”,即可以在储存凭证(文件储存和支付的合约单)被赎回之前,查询另一参与者的相关情况。支付通道现在也可以由付款人来关闭。在支付通道中,如果通道的对象(交易双方)没有即时赎回通道中的付款,那么此交易通道会提前关闭(款项结算后将返回交易双方)。此功能将和Piece inclusion proofs(即将到来)一同使用,以便在储存交易中客户向矿工支付时强制执行储存证明(Proof of STOrage)

  新的调试(Debugging) 命令

  在你进行调试和探索Filecoin可用性时,可以使用以下三个新的指令:inspect; protocol; bitswap

  ·go-dilecoin inspect all:此项指令将会复制所有必要信息,以便在Github上进行BUG报告。这项指令复制的信息包括操作系统详细信息;当前Go-filecoin配置以及其他的常用统计信息。

  ·go-filecoin protocol:此项指令将复制所有有关节点在运行Filecoin协议时的参数,例如自动处理间隔和扇区大小。这对调试Filecoin的共识证明与协议系统的内部结构有莫大帮助。

  ·go-filecoin bitswap:此项指令将复印相关节点libp2p bitswap系统的详细信息,比如区块、书、信息收发。常用于对网络进行调试。

  更多信息可以通过运行—help指令来查询。

  性能与稳定性

  Libp2p升级至0.0.16版本

  Libp2p近期发布了一系列改进措施,主要着眼于对中继功能的优化,解决了中继生产节点(production rELAy nodes)占用过多资源的问题。目前go-libp2p已经升级至0.0.16版本,filecoin也可享受到新版libp2p的功能。

  Go-libp2p-kad-dht升级至0.0.8版本

  在go-filecoin0.2.1版本中,我们发现DHT中的部分BUG将导致部分节点无法控制,通过将go-libp2p-kad-dht版本由0.0.4升级至0.0.8即可解决此问题呢。

  信息验证功能优化

  我们采取了一系列步骤来增强信息池的可靠性。信息池目前可以拒绝由于无效签名、资金不足,手续费不足或无效节点等因素导致的无法处理的信息。同时,信息池也可以追踪Nonce值来保证信息的排序正确。以及单个账号无法在信息池中归属大量的信息。最后,信息池现在也能限制其所能接受的信息上限。

  整合证明

  后端工作为更加灵活、更加强大的储存证明奠定了许多基础。在新版本中,向扇区内写入大文件时将能更有效的利用本机内存,此版本还包括对集合证明(Inclusion proofs),多扇区尺寸设置(multiple sectorsizes)和证明长度可变(Variable proof lengths)的基本支持。

  证明性能优化

  在 rust-fil-proofs中,我们在完整性与操作高效性上取得了进展。新版本中可以切换至Mmap以使用更高效的默克尔树结构,抽象Hasher,生成成长证明(gorth proofs)时限制网络并行,以及跨区计算与聚合挑战(Challengesacross partitions)

  架构重构和近期重点

  FAST(FilecoinAutomation & System Toolkit)

  自上个版本以来,我们显著改进了Filecoin的FAST测试系统,FAST现在可在出现测试失败事件时自动记录来自测试节点的相关日志数据和信息。同时,FAST也具有新的Localnet tool(本地网工具)来快速简单的设置本地Filecoin节点集群以进行测试与实验。若想知道Localnet tool的细节请参照go-filecoin Github

  Go模块优化

  经过对Go 1.11 版本的模块进行基础支持,目前我们已可以切换至Go模块来进行依赖性管理。此项功能可以在经父节点依赖项进行更新时,简便地管理模块的依赖性并加快更新速度。

  设计文档

  在Filecoin的重要特性与组件开始编码前,我们会定期攥写设计文档。这些简短的设计文档可以有效协助团队获取信息、形式化团队想法以及分享设计观点。在未来你也可以于设计文档报告(Designdocs repo)中找到最新的设计文档。

  版本通告

  Go-filecoin0.2.1已于2019年5月8日发布,0.2.1版本已经包含了上述大多数的变更。之后不久,由于DHT(#2753)的BUG导致部分Filecoin节点出现混乱,团队发布了0.2.2版本来解决此BUG。

  值得一提的是,在模组更换工作完成前,只有最新版本的go-filecoin才会接入到用户测试网(User devnet)。如果用户希望接入用户测试网,必须运行0.2.2版本地go-filecoin客户端。

  更新日志:

  0.2.2版本177个PR的完整列表可以在Github中找到,完整列表包含了上述未列出的BUG修复。

点击左下角“阅读原文”,在Filecoin博客查看详细更新日志。

版权信息
作者:CyanGlacier
来源:IPFSFAN

关于我们

联系我们

作者进驻

手机版

Copyright © 2013 比特巴 www.btb8.com
始建于2013年,提供比特币 区块链及数字货币新闻、技术教程、测评、项目周报、人物等资讯
本页面提供的是IPFS教程资讯,星际文件系统IPFS(Filecoin)目标是为了补充甚至是取代目前统治互联网的超文本传输协议(HTTP)。