就最近论坛上在讨论的特定区块出块节点重复的问题:
特向大家介绍在相关方面的详细设置内容如下:
为防止新选取的验证节点由于网络连接慢、区块不同步等原因影响共识效率,保证共识的容错性,每轮共识中不全部替换所有25个节点,在未处罚的情况下,只替换8个(少于1/3)验证节点,有17个验证节点会保留,但是最多保留3轮。也可以避免新加入的验证人被处罚。
目前是结合VRF算法和二项分布来随机选取,由于大部分验证节点Staking数量差不多,中选的概率按理论应该差不多,一个结算周期是43个共识轮,每个共识轮替换8个,每个节点每个结算周期平均4.3次中选。
验证节点选出来后,考虑到共识的稳定性,也会将稳定的节点(从前一轮保留下来的节点)排在前面出块,新加入的节点总是会排在后面,而且会根据质押交易的顺序。
目前分析发现现在的选取和排序算法在现在的质押情况下有一定的规律性,这里面不排除存在问题,目前一方面排查具体原因,另一方面也考虑在排出块顺序时考虑共识稳定性的同时增加一定的随机性。
感谢大家的反馈,欢迎大家一起来进一步分析讨论。非常感谢。