您现在的位置是:首页 > 区块链 > 区块链技术区块链技术

解决EOS节点排名集中问题的一些新思路

2019-06-28 14:21:23来源:作者:云泽财富栏目:区块链技术人已围观

简介解决EOS节点排名集中问题的一些新思路 EOS节点排名问题已引起了社区广泛的关注和讨论,链上治理之难,超乎大家的想象,也并非一朝一日能够解决的,不过,多探索、多尝试总比原地踏步要好。

EOS节点排名过于集中,一直都是外界所经常诟病的,除了EOS,其他一些POS的公链类似也都有类似的问题,这是POS的通病,在目前排名的前21名节点中,中国团队运营的节点早已超过了一半,节点地域分布过于集中,关键的问题还不在这里,关键在于节点之间形成了联盟,互相支持。

BM最近也很关注EOS节点排名过于集中的问题,频频在电报群中和小伙伴们交流,还发了文章为解决排名集中问题出谋划策。

除了BM,EOSNewYork 也一直都在为EOS的链上治理而努力,他们撰写的《EOS激励模型的缺失》系列文章非常值得学习,里边提出了许多有意思的探索。

EOS节点问题

EOS节点之间的竞争,在EOS主网上线前就已经展开了,在对EOS节点进行排名时,就是以获得的投票数为准的,节点获得的EOS投票数越多,则节点排名就会越靠前,得票数量排名前21的节点,也就是当前的出块节点,因为排名是动态进行了,EOS账户随时可以投票和取消投票,因此,节点的排名也是动态变化的。

由于目前的节点排名,仅是以获得的投票数为衡量标准,而且还实行了1票30投,一个EOS账户在投票时,可以同时给30个节点投票,当然也可以只投给一个节点。但由于出块节点是21个,所以建议尽量多投,不要只投一个。

为了解决前21名出块节点过于集中的问题,社区中最早提出的是实行1票1投,取消1票30投,通过1票1投来解决节点太过集中的问题。但上有政策下有对策,仅仅简单的实行1票1投,解决不了根本问题,例如对于那些巨鲸大户来说,他们可以把 一个EOS账户里边的EOS,拆分放在不同的EOS账户中,通过这种拆分的该来,就可以绕过1票1投。最终的结果还是没什么改善。解决不了实质性问题,也只是EOS账户的数量会增多而已。

除了1票1投,社区中还提出了在节点排名的时候,把投票的账户数量也做为一个辅助的衡量指标,也就是在给节点排名时,综合考虑获得的EOS投票数和给该节点投票的EOS账户数,并且给这两个指标分别予以不同的权重。例如给EOS投票数量80%的权重,而给投票的账户数量20%的权重,每个节点都根据这两个指标进行综合加权打分,最终的得分就做为排名的依据,并且经过模拟打分后,发现与现在的节点排名确实有较大出入。

无论是1票1投,还是加入投票账户数量,都解决不了根本问题,因为对于节点来说,只要多增加EOS账户就可以了,把一个EOS余额多的账户,分别转入到很多个小EOS账户中,用这些小号给节点投票,同样可以获得高排名。

既然是节点排名,那么我们可以借鉴谷歌、百度等搜索引擎的作法,听说谷歌的排名指标多达几百个,最终的排名都是通过这几百个指标的得分情况加权的。同样的,EOS节点排名,也可以引入更多排名因子,除了上边提到的得票数、投票账户数之外,还可以引入其它因子,例如节点为社区做的贡献、节点所在的位置(响应时间)等,一个节点最终的排名,是诸多排名指标综合衡量的结果,但有些指标并不容易量化。

优秀节点 EOSNewyork 也提出了许多值得思考的思路,例如取消REX的强制投票,以后购买REX时并不需要先给节点投票,REX上线后,反而节点排名的问题加重了。所以他们在文章中提到可以取消REX强制先投票的规定,为了鼓励给更多节点投票,提议一票多投可以适当给予更多权重,而且在计算投票权重时,把抵押投票的时间因素也加入了进去。

BM最近也提出了许多有意思的思路,社区有许多朋友对BM的文章( 如何摆脱帕累托法则,让BP选举更为去中心化?)进行了翻译。引用一下EOS42 荆凯的文章:

BM 的设想,是采用了分组的方式,将前21个BP的名额,分成了四组,即 8 + 8 + 3 + 2。然后,每组,按照不同的规则来产生对应的BP。

这些规则包括: 基于RAM的投票权重、基于质押时间的投票权重(币龄设计)、 基于代币销毁速率/永久锁币的投票权重、现行的基于抵押的投票权重。

BM设想方案的核心在于用多种不同的规则来平衡单一规则下造成的帕累托分布状况,值得社区进行更加深入的探讨。

Tags:EOS   节点

很赞哦! ()