人们在尝试挑选一个矿池时,Ping值或者网络连接速度经常是首先被用来参考的。他们在挖矿程序中会先查看一下份额(Shares)发送至矿池,然后再被矿池接受的速度到底有多快。打个比方,A矿池这一系列动作需要50毫秒,B矿池需要150毫秒。然后,矿工们就会认为A矿池要比B矿池好。那么他们是对的,还是错的?
Contents
份额是用来计算矿工在挖矿过程中工作量的单位。
矿工和矿池之间的关系非常简单直接。矿池给矿工们发送一个计算任务,矿工再给矿池返回解决办法(这个就是Share)。
来这里看看: 什么是份额以及在矿池中挖矿时的份额难度.
在下面的屏幕截图上,您可以看到挖矿软件显示矿池接受了份额。
矿池中的“Ping”到底是个啥?
矿池中的Ping是指矿工们发送份额到矿池并得到反馈,这一整个程序所需要用的时间。
矿池会验证一下这个份额,选择是接受它还是拒绝它。因为这个份额可能是正确的,也可能是错误的,显然矿池不能盲目地去信任矿工们的工作。
在Windows或者Linux操作系统中,Ping指令被用来测试一个服务器响应速度的快慢。而在挖矿过程中,所谓的Ping是用来衡量一整个进程:这个矿池能有多快地去接收到你的份额,多快地验证一下这个份额是正确的还是错误的,然后多快地把结果反馈给你。这就是为什么挖矿程序把它称之为“份额接受时间”(Share accepted time),而不是我们认为的那个Ping。
来这里看看: 使用“Stratum-Ping Tool”来检测一下矿池服务器真正的速度。。
按照延迟(Latency)去选择矿池是错误的
还是之前那个比方,一个矿工连接到了A矿池并开始发送份额。然后他看到份额在50ms的时间里(矿池程序中显示的是50ms)被处理了。然后他又去了B矿池,看到需要150ms。他就简单地觉得A矿池比B矿池好,然后决定使用B矿池。
问题是,这是完全错误的。
当您选择一个挖矿池时,您首先应该查看延迟份额(Stale Shares),而不是ping。这并不意味着你不应该考虑其他事情,比如:MEV奖励和分配情况、矿池费用、易用性等。
让我们再回到份额上,2Miners矿池为每位矿工都提供了详细的份额统计信息。
份额是:
- 有效份额 (Valid Share)– 矿池接受的份额。矿工们只会因为这些份额而获得奖励。
- 无效份额 (Invalid Share)– 因为无效而被矿池拒绝的份额。在大多数情况下,这是因为过度的GPU超频导致的。适当地降低超频可以解决问题。如何在不同的算法上超频Nvidia和AMD显卡
- 延迟份额 (Stale Share) – 因为迟交而未被矿池接受的份额。
多亏了以太坊网络中的叔块(Uncle Block)奖励,任何延迟份额,即使ping来到了1000ms或2000ms以上,还是可以成为一个Block Solution。当然,这样的Block不会给你带来2个ETH或更多的全额奖励。但是作为一个叔块奖励,它可以给你带来1.75 ETH。
很多矿池曲解了延迟份额的概念。如果份额在矿池发送一个新的任务之后才出现,则这个份额会被丢弃掉。2Miners选择另外一个途径。谨慎处理所有的份额,并尽量去充分利用它们。份额来晚了?没问题,也许我们可以弄出来一个叔块奖励!
当您开始在矿池中挖矿时,请注意研究一下您的份额统计信息。如果你没有延迟份额,那么这个矿池对你来说是很好的,你的延迟就无所谓了。
同样,当你选择一个矿池时,还有其他事情要考虑,比如矿池是如何转账的,转账费用是多少,MEV奖励等等。在这里,我们只讨论网络连接速度。
让我们以两名相同的矿工为例子,每个挖矿者的算力都是500 MH/s。第一个矿工的ping是50ms,第二个是500ms。
一个小时内,第一个矿工发送了200个份额,所有份额都是有效份额,没有延迟份额。第二个也发送了200个份额,所有份额都是有效份额,没有延迟份额。
那么,他们俩都得到同样的奖励。前者不会因为较低的ping而获得更多的奖励,而后者也不会因为较高的ping而获得较少的奖励。
叔块(Uncle Blocks):以太坊和其他加密货币之间的区别
叔块是以太坊、其他以太币和所有其他加密货币之间的重要区别。以太坊中的区块查找时间非常短:平均13秒。大多数加密货币的区块查找时间较长。在比特币中,每10分钟会发现一个新区块。一旦有人发现一个新的区块,那么他应该马上将信息传输给其他网络节点(矿工们)。
而在以太坊网络中,矿池通常会同时发现新的区块,然后几个矿池之间相互竞争。
多亏了叔块奖励,一个比其他矿池晚一点找到一个区块的矿池仍然可以得到奖励。两个矿池同时发现一个新区块的情况也会发生,如果其中一个矿池的整体算力比另外一个要大。在这种情况下,前者可以获得全额的区块奖励,而后者则可以获得叔块奖励。
ETH网络中当前的区块奖励平均略高于2个ETH。而叔块奖励是1.75 ETH。两者差别非常小。
来看一下矿池FAQ中有关叔块的更多信息: ” “我的区块奖励很低或者干脆没有奖励。叔块(Uncle Block)和孤块(Orphan Block)””, 以及在 ” “比特币和以太坊中的孤块(Orphan Block)、延迟份额(Stale )和叔块(Uncle Block)” “ 的文章中.
有太多的叔块是不好的。是谜还是现实?
不用说也知道任何矿池都应该努力保持与其他网络节点的良好连接,以尽可能快地获取关于新区块的信息,并尽可能快地发送关于矿池中找到的区块信息。
2Miners尽一切努力确保矿池连接到世界各地尽可能多的节点。此外,我们还与其他矿池合作,直接连接我们的网络节点。因此,我们可以没有延误地发送和接收有关新区块的信息。
我们还运行了一个特殊页面,显示不同矿池中网络节点的统计信息: 以太坊网络统计信息。.
当你听到类似这样的话:“这个矿池因为有太多叔块奖励了,所以它的服务器真差劲”,这是没有任何意义的。我们相信,排名前十的优秀矿池有能力购买并且搭建一个高质量的服务器。
由于一些矿池无法控制的原因,叔块的数量可能就可能会增加。比如之前以太坊网络中最受欢迎的矿池,星火矿池(Sparkpool)因为设立在中国大陆,结果中国的矿池与欧洲/美国的矿池之间因为中国防火墙(GFW)的关系而被多次中断。导致矿池在长时间的延误下交换信息,这样矿池中就会产生很多叔块了。
叔块(Uncle Blocks):香还是不香?
当然香!越多越好。你看:一个矿池找到100个区块和5个叔块,另一个矿池找到100个区块和10个叔块。奖励的差别超过3%。
那么叔块是好事儿还是坏事儿?
这个问题没有明确的答案。
如果叔块是矿池节点与其他网络节点连接不良的结果,那么不是好事儿。如果一个叔块是一个意外的额外奖励,那么它就是好事儿。
额外知识:没有被交易成功的2个ETH区块(Empty 2 ETH Blocks)是不是坏事?
在本文中,我们确定了一个说法:如果一个矿池有大量的叔块,那么它不一定是坏事儿。甚至可能恰恰相反。
现在,让我们谈谈另一个谜:“挖了2个ETH区块的矿池是垃圾矿池”。
事情是这样的。2个ETH区块是不包含任何交易的空区块。
通常情况下,在找到前一个区块之后会立即出现2个ETH巨块。例如,您可以查看2ETH巨块11789558,该块仅在一秒钟后跟随巨块11789557。
以太坊节点的工作方式是,在开始处理新区块后,它会在前200–300ms内创建“空”区块。没有任何办法可以避免。换句话说,在矿池找到一个新区块,或者从网络接收到关于一个新区块的信息之后,它会马上在最初的几分之一秒内出现。矿池没有足够的时间用交易来填充这个段落。
同样,考虑到排名靠前的矿池有能力购买并正确地设置矿池服务器,2ETH区块是完全正常的事情。相反,如果矿池在10秒前收到关于新区块的信息,并且没有在区块中添加任何交易,那么它就不正常了。这种情况下,您就可以说矿池是垃圾的。不过说实话,这基本上没发生过。
那么矿池是否有办法解决节点问题?是的,有。矿池可以设置一些类似于超时或延误的情况。比如说,一个矿池可以在收到新区块后的前500ms内向矿工们隐藏新区块的信息,并继续向他们发送旧任务。因此,矿池可能会找到一个价值1.75 ETH的叔块,而不是一个空的2 ETH区块。但2 ETH肯定比1.75 ETH好。所以这样的设置是毫无意义的。
由 niE 翻译