IRI 即将发布,修复侧缠结导致的问题

IRI 1.5.2将包括一些重要的bug修复,这些修复能够缓解最近几周在mainnet上遇到的确认时间过长和节点失去响应的问题。

公告:我们开通了一个新的官方Twitter帐户来公布最新的IOTA工程新闻和信息以及Tangle状态情况。请关注这个帐户:https://twitter.com/iota_dev

Lewis Freiberg在他的博客文章(https://medium.com/@lewisfreiberg/whats-up-with-the-tangle-d825c692e7a8)中提到了“side tangle”(侧缠结)问题的概念,但是近期的侧缠结究竟发生了什么导致IRI被“锁定”并变得反应迟钝?

在图中,我们看到左边的主缠结(蓝色),定期发布里程碑(绿色)。右侧(橙色)的侧缠结是通过引用一个旧里程碑来构建的,然后构建一个非常长的交易链,直到很久以后才会引用回主缠结。

由于每个IOTA交易都必须引用两个以前的交易,因此IOTA参考实现(IRI)提供了一个名为“getTransactionsToApprove”的方法,它会找到两个有效的tips,新交易可以使用这两个tips来附加到缠结上。在当前的IRI代码中,每次调用此方法时,随机漫步者会验证从最近的里程碑到所选交易的所有交易。正如您在插图中所看到的,如果漫步者后来出现在侧缠结中,那么它可能会尝试同时验证大量的交易。在一个足够大的侧缠结中,大量的验证会很快的导致IRI失去响应。

您可以重温一下Tangle白皮书,我们希望防止“懒惰tips”被批准,并且由于所有这些侧缠结上的交易都回溯到了一个非常旧的里程碑,所以我们应该认真考虑将它们定性为懒惰tips,并且完全避免对它们进行验证。

IRI 1.5.2就是这样做的。在底层进行验证时,IRI将记住每个交易引用的最新里程碑。这一信息允许漫步者立即知道何时可以接受一个在历史中很久才引用回主缠结的交易。换句话说,步行者可以更容易的检测到懒惰tips,并在不需要进一步考虑的情况下就可以忽略它们,同时在它访问的每一个tip上加上标记,这样下次就不会再次尝试验证它们了。

IRI团队将于明天(7月23日)在一个分支上进行修复,以便节点运营者进行测试,我们预计在解决方案经过全面测试后的一两天内正式发布IRI 1.5.2版本。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180723B1R9MM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动