为什么我的节点挖矿收益很低,长期以来也没有改观。

最近在社区成员中有一些关于主网上线后路由器挖矿收益变低的讨论,主要原因是其中一些路由器成本和配置较低,另外一些路由器对上行链路有限制,或者两者兼而有之。

首先,NKN实现了一种路由算法,它既是随机的,也有利于低延迟链接。NKN网络中的“延迟”决定了选择哪条路由,它同时考虑了处理能力和网络状况。它不是TCP/IP中的简单ping,而是协议级别上两个节点之间的握手,用于测量节点是否能够足够快地接收数据包(主要由下行链路决定),足够快速的处理数据包包(主要由CPU、RAM等决定),足够快速的发包 (主要由上行决定)。

此外,在v0.9网封测时,大多数情况下95%的节点都是低成本和配置路由器,所以“每个人都和邻居一样穷”。 在此期间,大多数低成本的路由器获得了平均的挖掘奖励,但是在主网1.x中。这是一个全球性的开放网络,主要是VPS、云虚拟机和个人电脑,它们通常具有高性能的CPU和高速的网络连接。因此,这些路由器在处理能力和网络连接方面确实存在劣势。

因此,计算性能确实有一些影响,但也只是在一定程度上。例如,如果同样的网络连接状况下,树莓派 3B(四核,ARM64, 1.2GHz, 1GB ram)和VPS之间可能没有什么区别。但是,如果是一个低成本的路由器配置在单核MIPS32 650MHz芯片上,那么处理速度可能会很慢以至于它的邻居有时会不考虑它进行消息转发。

下图显示了谷歌云节点与国内IP地址节点之间的网络延迟的差异。GCP节点的平均延迟为280毫秒,然后在7月29后下降到150毫秒左右。国内IP地址节点延迟更高,为460-800ms(峰值高达1200ms)。有关更多测试设置,请参阅附录。

国内IP段(36.107.x.x114.99.x.x140.246.x.x223.215.x.x60.16[79].x.x) 与 GCP IP段(35.24[0-9].x.x)最近7天(07/24 ~ 07/31)的RTT时序图
image

如果您的节点足够快(网络和CPU都足够快),那么对于主网一个很好的指标就是在很长一段时间内检查它的消息中继计数,然后与其他节点进行比较。

NKN一直在努力确保NKN节点软件能够在尽可能多的设备上运行,包括WiFi路由器、NAS、电视机机顶盒和树莓派等。无论在测试网还是现在的主网,我们都在不断地优化代码以减少计算、内存、网络和存储需求,与此同时仍然保持网络的安全,免受各种攻击。

综上所述,NKN的软件和代码对所有节点都是完全相同和公平的。但我们不能保证所有节点都能获得相同的挖掘奖励。因为节点硬件配置和网络连接的多样性决定了挖掘结果的差异。

附录:抽样统计 IP 段
我们抽样统计了节点和他的 successor 邻居之间的平均往返延迟,数值来自于节点的 JSON API 返回结果(与 nknc info --ring 返回值相同)。统计的 IP 段为:

国内IP地址(122个节点):

  • 36.107.*
  • 114.99.*
  • 140.246.*
  • 223.215.*
  • 60.16[79].*

GCP IP地址(179个节点):

  • 35.24[0-9].*

平均7天以上:

  • 继任.延迟
  • 前任.延迟