自8月14日周五开始,Medalla测试网经历了非常大的动荡,也承受了巨大的压力,这种状态持续了五天,而期间我们也一直在进行补救。
作者| Ben Edgington
Medalla信标链测试网的情况一直不太稳定。上周我总结了一篇最初的事件回顾,如果有的读者不清楚发生了什么可以先阅读一下。Prysm团队也已经发布了他们详尽的报告。总而言之,自8月14日周五开始,Medalla测试网经历了非常大的动荡,也承受了巨大的压力,这种状态持续了五天,而期间我们也一直在进行补救。
事故发生六小时期间,我的Teku节点所目睹的Medalla参与率
UTC时间2020-08-14
我们可以看到,一开始在三十分钟左右的时间段里,验证者的数量大幅下跌。Prysm节点都突然消失了,因为他们的时间被设置为未来的四小时。图中的红色水平线代表66.7%的参与率,而这是网络能够进行最终确定的最低要求,而当时参与率已经跌至最低点。
当节点将他们的密钥转移至其他客户端,情况开始逐渐好转。事故发生的两小时之后,随着Cloudfare解决了时钟问题,并且还没有更新的Prysm验证者也回到网络,情况似乎更乐观了。根据Prysmatic Labs的记述,本来是旨在修护问题的客户端更新版本中出现了一个严重漏洞,导致已经更新客户端的验证者无法恢复上线,这使得问题复杂化了。
事故的四小时之后,开始出现混乱的局面,参与率又再次下跌。因为所有客户端都需要处理Prysm验证者之前作出的“来自未来的证明”,现在这些证明已经具备有效性。由于节点尝试处理这些证明和区块,网络开始分裂。Teku和Lighthouse客户端所占内存逐渐膨胀,这引发了性能和崩溃问题,而已经更新的Prysm客户端又无法上线,总的来说就是一片混乱。
但这是超出我想象得最棒的测试经历之一!如果召开一次有关客户端测试的会议,大家聚在一起讨论怎么以极端方式来破坏网络,我觉得我们可能都想不出这么刺激的方法。“时间穿越”事件也启发了我们的思考,尤其是在大量验证者被罚没之后。
随之而来的结果就是,我们尝试了许多之前从未探索过的代码路径,也做出了许多全面的改进。一切和之前相比都更上一层楼。从这次事件中我们真的收获了很多有价值的经验。
上周早些时候,客户端团队都忙于强化客户端,以应对突发的极端环境。我们非常艰难地缓缓爬升到了网络所需的66.7%的参与率,而网络终于又恢复到了正常状态。这一时间点是UTC时间8月19日的18:30,距离事故发生整整过去了五天。在那五天中,始终有客户端能够坚挺住,网络从未真正停止运行。这证明了信标链非常健壮,信标链能够恢复。
关于此次事件推荐大家阅读:
规范方面没有发生更新。
我的ConsenSys研发同事发布了关于阶段0规范形式化验证的进度报告。
以及此处是Sigma Prime多客户端模糊测试工作的进展。
这里是一些有趣的消息:大家在学习Eth2的同时能够获得POAP奖励!此处是相关信息,大家可以进入Ethstaker Discord查看 #eth2-studymaster频道。此处是通告。大致意思就是在十周的时间里,阅读十篇Eth2文章,并且回答相关问题。成绩不错的话就能获得POAP奖励。我真的希望Eth2的开发者没有被排除在外
客户端教程:Somer Esat继续更新了他的系列教程,深度阐释了如何使用Ubuntu系统在Medalla测试网中设置Teku客户端。Somer和Super Phiz也为此制作了一个视频教程。除此之外,Super Phi还和Cayman一起录制了一个如何设置Lodestar客户端的视频。Coinmonks也撰写了一篇在Ubuntu系统中设置Lighthouse客户端的教程。
至于Teku,我也制作了一个Teku故障排除指引。欢迎大家的反馈。
对于喜欢快速阅读的读者,推荐阅读Simon de la Rouviere关于Eth2概览的推文。Narkasa交易所也发布了一篇不错的介绍:《什么是以太坊2.0?》
关于Eth2信标链如何就Eth1状态达成共识的机制效率,我做了一次分析,这可能不属于“研究”范畴。太长不读:其中还有进步空间,对此我给出了一个建议。
ConsenSys的TX/RX团队已经做了一个在Eth2分片环境中 (也即阶段1.5) 运行Eth1客户端的模拟器,现在你也可以参与运行。Eth2环境是基于Teku客户端,Eth1则基于Catalyst (Guillaume Ballet的Geth分叉)。Danny在上周的EDCON会议中进行了实时demo示范。
Vitalik捍卫了信标链在需要做出选择时对活性而非一致性的偏好。这是一场非常有趣的讨论。
虽然似乎已经过去了很久,但EDCON的会议视频值得回顾,有许多关于Eth2的干货:
Terence (Prysm) 和Paul (Lighthouse) 与客户端相关的演示
Paradigm对Danny进行了采访,来看看他不和猫咪摔跤的时候喜欢做什么 (和蔬菜有关)。
Vitalik接受Cointelegraph的采访:以太坊2.0面临的挑战比我们想象中更大。各位放心,问题不大,我们喜欢接受挑战
第46次会议于8月20日进行。
此次会议中我们仅对Medalla事件进行了简短的回顾,因为我们在过程中一直保持沟通,并且时间也有点紧张。
目前大家都在准备信标链的发布。Afri正在处理和发布准备工作相关的提案。Hsiao-Wei也在对我们的工作进行跟踪,幕后详情参阅project board。
许多客户端都进行了更新,针对Medalla测试网的历险进行回顾:此处是Nimbus的更新以及后续文章;此处是Lighthouse的更新;此处是Lodestar的更新。Prysm的回顾以及Medalla测试网事件分析。
还有什么事能够媲美一边品酒一边探讨Eth2呢?Quantstamp和Cred联合组织了一次远程品酒和圆桌会议:“Wine Not Talk About Ethereum 2.0?”
详情和注册方式参见此处,他们会把酒寄给你。
我也会与许多我非常欣赏的Eth2小伙伴一同出席这次圆桌。但时间是我这边的凌晨两点,所以我可能在会议开始前就已经醉了。应该会很有意思的!
声明:ECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及ethereum.cn,若需长期转载,请联系ethereumcn@gmail.com进行授权。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!