调查:新公链们为何频现宕机事故?
作者|Richard Lee
01
为什么「公链宕机」值得重视?
Web 3.0同时结合Web 1.0的开放性和Web2.0以其经济效益而闻名,是加密圈对下一代互联网浪潮的总称。这个旧术语再次成为成为一个热门词汇,而且象征着区块链和加密技术的大规模采用。
2021年,公链赛道迎来爆发式发展,Solana原因之一:号称每秒几万TPS,致力于为用户带来更快更便宜的链上使用体验。SBF、许多名人或机构,如美国银行Solana看作促进大规模加密采用的「门户」。
公链作为最底层的基础设施,其安全性和稳定性至关重要Solana以代表性的新公共链计划挑战以太坊,成为许多新用户进入加密行业的第一站,但遇到了停机等尴尬状态,反映这些新公共链在快速发展过程中逐渐暴露出自己的缺点。
如果上述公共链网络瘫痪数小时,必然会给新主流用户带来不良的使用体验和印象,成为制约加密经济大规模发展的重要瓶颈。
毕竟,作为分布式节点维护的分散网络,如果公共链仍然像基于集中服务器的平台一样频繁停机和卡住,如何说服主流人群?
02
流量失控:新公链「停摆」根因
「DDoS攻击」它是项目方在解释网络性能下降时最常用的术语之一。DDoS攻击的全称是「distributed denial-of-service attack」,指使用多个源的流量,使流量超出系统的处理范围,使真实用户无法及时获得所需的网络服务或资源。攻击者通常通过向网络发送超过网卡处理能力的流量,或向应用程序发送超过其管理能力的要求数量来达到效果。
根据区块链白帽黑客组织Halborn介绍,传统DDoS该方法通常会导致系统中的固定单点故障,如 Web 服务器出现故障,访问者可能无法访问其运营的网站。因此, DDoS 攻击阻力通常是区块链技术的主要卖点之一——区块链网络中没有节点是必不可少的,单个节点离线不会导致整个网络瘫痪。
但这并不意味着区块链可以免受DDoS的影响。Halborn攻击者可以发送大量的垃圾交易(spam),让它充斥整个区块链网络,从而减少「合法用户」使用机会和空间资源。在真实场景中,通常被称为「攻击」并非真的有预谋「攻击」,但在热门项目中IDO、GameFi在交易或市场大的情况下,真正的用户使用计算机程序「开挂」,作弊。
那么,继续提高节点服务器的内存容量能解决这个问题吗?答案是否定的。这取决于大多数区块链网络的共同特征:大多数区块链具有固定容量,并定期创建具有特定尺寸限制的块。当节点包装块时,将存储任何不适合当前块的内容「内存池」等待下一个块打包。
因此,这一基本属性也决定了公共链网络需要面对的常见问题:在特殊情况下,可能会引发洪水般的交易请求。
如何各大网络近期表现的重要指标是如何应对这一问题,以及应对措施是否有效。
Solana用户可能对「交易泛滥」最熟悉的体验。追溯到去年9月14日,Solana全网中断17小时,所有链上服务都无法使用。官方后续报告称,这是由于分散的社交网络协议Grape Protocol 在 Raydium 平台上的IDO由于这些交易,许多用户通过编写的机器脚本发送大量交易「内存溢出」,导致验证节点崩溃,整个网络最终无法实现「共识」而离线(即不能产生新区块)。

而根据Solana Status公告,Solana自去年12月初以来,网络的拥堵一直存在「9·14」停机事件暴露的问题有关。Solana Status是Solana发布网络性能公告的基金会推特账户。
根据区块链公司Laine分析,近期市场波动性大,DeFi项目中的许多杠杆头寸都符合清算标准DeFi清算人员将获得奖励,任何人都可以申请担任清算人。因此,这也创造了一个市场,许多人竞争清算来争取奖励,许多人使用自己开发的自动化程序(通常称为「机器人」),为了确保能「赢得」比赛,这些「机器人」同样的交易请求会发送几十次甚至几百次。
「我们看到每秒有近200万个事务(交易或其他类型的请求)到达同一节点,其中90%以上完全重复。」Solana联合创始人Anatoly Yakovenko 1月27日凌晨Twitter Space活动中说。
边界智能研究院院长胡智威针对停机原因,进一步向链捕手表示,由于 Solana 在验证节点之间传递共识信息也是一种特殊的事务信息。大量的信息堵塞导致共识信息无法正常传递,共识无法正常进行。

Solana TPS结构组成来源:solana beach
「同时 Solana 的一些特性被有针对性地利用,导致网络停机。例如,写入锁定并发处理事务(write-lock)锁定在许多重要地址上,使事务成为顺序执行而不是并发性,极大地影响了处理信息的能力;节点处理分叉,保留可能的分叉信息,导致内存溢出。」胡智威说。
国内知名公链Conflux的CTO 吴鸣分析链捕手,在Solana当网络交易过多导致网络拥堵时,块转发(广播)延迟会增加,账本容易分叉;当账本分叉严重时,共识算法的压力会增加,如果处理不当,最终会导致系统完全崩溃。
「一个非常重要的问题是,节点不应无节制地转发低成本的垃圾交易,Solana流量控制(流量控制)在这方面应该做得不好。」伍鸣表示。
Anatoly Yakovenko也在上述Twitter Space这个问题在活动中得到了承认。他说,主要问题是在原来的程序设计中,「重复交易检查」它是在签名验证后进行的,所以所有的重复数据都必须经过签名验证,才能检查是否属于「垃圾交易」。此外,在节点客户端升级之前,Solana删除重复数据和网络冗余的程序运行缓慢,需要几百微秒。
为避免下次大市场,「机器人」交易再次干扰网络,Anatoly Yakovenko 称下一步将在Solana 主网 beta 的 1.9 版本介绍「实际流量控制(actual flow control)」。
另一条热门公链Harmony也面临着类似的问题。1月15日,Harmony网络中断数小时,官方团队将打下基础gas费提高到30 gwei,提高垃圾交易门槛。
Harmony社区发布后的分析显示,网络的领导节点(leader node)收到了大量的垃圾流量(spam),此外,验证节点的旧客户端对高流量情况处理不善,导致了内外因素的综合「宕机」事故发生。
Harmony CTO Rongjian Lan 对链捕手表示,点对点网络(p2p)数据包重复发送,造成了p2p网络拥堵,正常共识消息无法顺利发送,网络无法实现「共识」。内部原因是,Harmony p2p潜在的网络参数bug,因此发生了上述现象。
「新的Web为了防止网络滥用,基础设施需要更好的流量监测和流量限制机制。」Rongjian Lan称,Harmony对p2p优化网络协议层参数后,将在共识、网络和网络上开展长期的系统改进项目RPC优化层。
此外,以太坊二层扩容网络Arbitrum One去年9月14日和年9月14日和今年1月9日,但从官方公告来看,这与流量失控没有直接关系,主要与网络仍处于测试阶段的高度集中有关。
据悉,Arbitrum One第一次事故的原因是Sequencer存在bug,而最后一次掉线是因为主Sequencer硬件故障发生在节点上,同时备份Sequencer未能及时生效,导致网络「罢工」数小时。
「虽然我们通常有冗余,但备份 Sequencer 无缝控制,但由于软件升级,这些功能无效。结果是,Sequencer 停止处理新事务。」Offchain Labs称。
序列器(Sequencer)是Arbitrum 开发团队 Offchain Labs一个完整的操作节点。序列器具有一定的特权,可以控制收件箱中每笔交易的排确保用户的交易结果能够立即确定。
Offchain Labs一旦 在上述公告中表示Arbitrum 完全分散,最有力的保证就会到来。
03
提高「作恶」门槛是最终的解决方案吗?公共链稳定的未来在哪里?
事实上,在一定的动机激励下,写剧本,「开挂」作弊,是互联网用户长期以来的自然行为,随着链上交互的增多,「交易泛滥」和「机器人」不可避免地会进入区块链空间。
同期遇到网络运行状态「恶评」的还有Polygon网络。一月初,因为Polygon上的P2E游戏Sunflower Farmers受欢迎,参与者发大量的事务请求,一段时间内该链游的智能合同Gas一度占据整个消费Polygon网络的41.8%,导致Polygon其他类型的交易暂时搁置,网络高度拥堵,平均Gas价格在几天内上涨了近7倍。

Polygon 平均近三个月Gas价格走势来源:Polygonscan
Polygon长期为「交易泛滥」网络拥堵不时发生。去年10月,Poygon最低限度的节点客户端gas 价格上涨30倍(1 Gwei 调至30 Gwei),以应对海量「垃圾交易」。
这种应对方式与Harmony同样的应急措施。但提高基础 gas 价格一方面提高了用户「开挂」另一方面,成本也会影响用户体验。
吴明对链捕手的分析表示,对于项目方的惯用操作,提高了基础gas作为一种「流控」这种方法必须有效,其本质是降低系统支持的吞吐率。
但他也指出,「如果你想做得更好,你需要努力提高系统本身可以支持的最大吞吐率,这将涉及到共识算法、网络转发算法、存储和执行优化。」
Solana联合创始人Anatoly Yakovenko 披露的「流量控制」改进中,就涉及到引入新的协议机制。Anatoly Yakovenko 表示,新升级将引入 质押权重qos 流控机制,这个机制是由的「Quic Protocol」据说这个协议是谷歌开发的,已经5了-六年的历史。通过这个协议,Solana发件人可以实施「评级」限制。
其中,如何决定如何在不同块之间分配带宽是开发团队最需要克服的命题——这个过程需要验证人接收来自网络其他部分的信息流,并根据来源权重优先考虑服务质量和拥塞控制。
Anatoly Yakovenko在推特上说「流控」下一步将采取4项措施-5周内推出。
胡志伟表示,对于流量攻击,公共链也可以采取对验证人的网络流量保护措施,如哨兵节点(注:当主节点出现故障时,可以通过一系列机制实现主从切换和故障转移)。对于 TPS 除了优化本链外,还可以考虑跨链 应用专有链的扩展处理。
而这也是BSC正在探索的计划。BSC在年度总结中,官方承认其运行机制存在诸多挑战,包括「网络拥塞和节点运营商面临着与最新块同步管理其完整节点的困难」,这导致BSC去年短期停机多次。
对此,BSC这是因为大块的设置导致验证节点需要更多的存储空间和时间来同步块,并将于2022年推出多链和跨链BSC 侧链 的应用(BAS) 和 BSC 分区链 (BPC),减少主链的数据存储。

BSC今年的技术规划来源:BSC博客
提高技术改进和分散化能否保证公链网络运行的稳定性?
针对这一问题,也有网友效仿区块链「可扩展性」的「不可能三角」,提出了「交易质量」选择困境:交易泛滥(spam)、抗审查性(censorship resistance)和低费用(low fees)三者之间,实现第二,剩下的另一个目标不能实现。

在上述项目团队实施改进措施之前,实际情况还不得而知。
但无论如何,公共链停机现象启示:未来很长一段时间,公共链作为基础设施仍处于早期阶段,也需要满足网络稳定性、生态完善,特别是需要采取更多措施处理交易激增等特殊情况,避免对普通用户体验的负面影响。
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。

路安



