客户端库和IRI与网络重写更新

3 个月前 创建于

在过去的几个月里,我们的IRI和客户端lib开发工作已经有很多东西在烘烤,我觉得现在是时候再次更新来突出即将发生的事情了。如果您是IRI节点运营商,请继续阅读。我们将讨论网络重写带来的一些重大变化。

客户端库

我们在4月份发布了有状态版本的客户端库。从那时起,我们一直致力于改进文档,最近,我们开始着手改进新的MAM协议。

MAM也将成为未来几周的焦点。所有库--Java,JS和Go都将为新的MAM协议提供包装器,该协议已经运行了几个月。您可以在这里查看新MAM的alpha 。

IRI

IRI已经发生了很多事情。下周将推出1.7.1版本。此版本引入了大量不同的修复和更改。我们认为其中一个修正案应该可以改善节点陷入“修复损坏的里程碑”的问题。事实证明,这个问题很难调试。

IRI的另一个重要变化是新的尖端选择超时机制。如果节点无法在给定时间内返回响应,则节点将停止提示选择过程。这由`TIP_SELECTION_TIMEOUT_SEC`配置参数控制。默认超时为60秒。

布尔配置标志的行为统一引入了一些重大变化。所有布尔标志现在都需要显式传递参数以使其行为更清晰。此外,在过去,如果在配置文件和CLI中都传递了相同的值,则可以覆盖这些值。

引擎盖下也发生了很多变化。例如,我们使API在代码中更容易使用。每当我们扩展或更改API时,这都将对我们有所帮助。我们还改进了整个发布流程,因为我们的目标是缩短未来的发布周期。

像往常一样,GitHub上的发行版中将提供完整的更改列表。

我们也向社区大肆宣传他们的贡献。例如,Viossat 更改了用于缓存传入事务的哈希算法

IRI网络重写并准备升级

IRI的另一项重大工作是完全重写网络层。代码已经从头开始重写,有很多重大变化。

重写网络协议的部分过程是建立Iota社区委员会(ICC)。一群代表在社区投票。然后,ICC的成员建立一个正在测试新代码的网络。

我们希望在7月的第二周(7月8日至12日)通过新的网络发布IRI。

如何为新网络做准备

如果您正在操作IRI节点,那么您可以提前采取步骤为网络版本做好准备。

首先,重构的IRI 将放弃对UDP协议的支持。也就是说,如果您现在使用UDP,请使用TCP联系您的邻居和邻居

预先值得了解的节点配置将有其他更改。所有这些都将在发布时的文档中,但为了给你一个想法:

删除了配置选项

  • UDP_RECEIVER_PORT
  • TCP_RECEIVER_PORT
  • MAX_PEERS
  • DNS_REFRESHER_ENABLED
  • DNS_RESOLUTION_ENABLED

新配置选项

  • NEIGHBORING_SOCKET_ADDRESS- 定义将TCP套接字绑定到的套接字地址。
  • NEIGHBORING_SOCKET_PORT- 定义要使用的TCP套接字的端口。
  • RECONNECT_ATTEMPT_INTERVAL_SECONDS- 定义尝试重新连接/断开所需邻居的间隔。
  • AUTO_TETHERING_ENABLED - 控制自动共享,这是以前通过TESTNETtrue 控制,默认是false(也在testnet模式下)。
  • MAX_NEIGHBORS- 重命名MAX_PEERS,定义连接的邻居的最大数量。

您可以将新配置选项添加到  .ini文件中,以使值与当前配置相匹配。

您可以在此拉取请求中查看网络重写更改的说明。

此处加入IOTA Discord服务器。