Shwap 升级:DA 采样速度提高 12 倍

本文为机器翻译
展示原文
The Shwap upgrade: 12x faster DA sampling

Celestia主网测试版最近完成了第一次升级,为共识网络引入了第一组新功能。

数据可用性(DA)网络计划通过Shwap进行首次升级 - 现已在Arabica和Mocha测试网上激活,使用celestia-node v0.18.2。Shwap使DA采样速度提高12倍,存储需求减少16.5倍,支持更大的区块和更小的节点。

Shwap是Celestia社区路线图核心目标的又一步:不懈地扩展到1GB区块。在CIP-19中规定,Shwap包括DA网络的新消息协议和存储系统。

Shwap使DA吞吐量大幅扩展,同时保持轻节点要求较低。高吞吐量DA加速现有加密应用,并支持使用任何虚拟机的新的不可阻挡应用。更低的要求使任何人都可以运行浏览器或钱包中的轻节点,为真正可验证的Web应用铺平道路。

经过进一步测试,Shwap预计将在11月期间进入主网测试版。请注意,Celestia社区将主导网络升级的具体时间。

当前的DA网络

DA网络可以描述为两个协议。一个负责通过go-header传播链头,另一个管理以数据方块形式存在的实际区块数据,该方块由小份额或样本组成。这些样本由轻节点采样。当前的协议和存储系统是围绕Devnet时代引入的采样协议设计的。这种基于IPLD的协议已被证明是可行的,但从根本上来说是不可扩展的,尤其是以1GB区块为目标。

该协议及其存储遵循了区块链工程中的典型陷阱:基于哈希的可寻址性。这听起来是一个简单而强大的概念,提供了"很好"的特性,如重复数据删除。它足够通用,可应用于任何基于哈希的数据结构,如状态存储或在我们的情况下,数据方块存储。总的来说,基于哈希的可寻址性感觉像是一个简单的首选解决方案,事实上,它使用了所有现有的IPLD工具启动了我们的工程;然而,正如往常一样,问题出在细节之中。

例如,轻节点必须下载样本及其相关的Merkle证明才能验证样本。在基于哈希的系统中,证明中的每个节点都需要单独检索。对于128x128的方块大小,这个过程要求轻节点进行7次阻塞往返,显著减慢了采样速度。这就是旧采样协议和存储的情况。轻节点必须进行7次网络请求,然后在服务器端的全节点上进行7次IO读取。此外,服务器全节点还必须维护历史Merkle树节点的全局索引,这会由于键值存储压缩而严重影响整体数据吞吐量。

总之,基于哈希的可寻址性路径导致了:

  1. 存储Merkle证明而不是即时重新计算。
  2. 坚持O(log2n)的数据访问模式,而不是O(1)。

这些决定不允许旧协议扩展,需要从根本上采取不同的方法,从头开始,从而导致了Shwap。

Shwap

Shwap(share + swap)升级引入了一个新的消息框架和存储系统,增强了采样和数据高效检索。它将全节点存储需求减少16.5倍,为不断增长的区块大小提供了可扩展的基础。

Shwap引入的主要变化包括:

  1. 新的数据方块存储子系统
  2. 可组合的网络框架
  3. O(1)数据可用性采样(DAS)

在Shwap中,之前低效且实验性的区块重建版本也被删除,取而代之的是未来升级中更高效的生产就绪版本。通过观看Modular Summit 视频深入了解Shwap。

方块存储

数据方块存储子系统已经重新设计,以避免存储历史Merkle证明和全局索引。它还消除了最初选择的基于IPLD的存储依赖项中存储的不必要的元数据。总的来说,新的数据方块存储架构相比旧的存储使用实现了16.5倍的惊人改善。

我们的基准测试显示,使用现代CPU重新计算哈希所需的时间少于从NVMe读取的时间。这使得存储所有证明实际上是无用的,尽管存储少量策略性证明。

此外,新的存储引入了一种新的不可变文件格式,支持存储可选的奇偶校验数据,通过最小化IO和计算来加快采样检索。

The Shwap upgrade: 12x faster DA sampling

网络

Shwap为Celestia的DA网络提供了一个灵活和可扩展的消息框架。它标准化了份额交换的消息传递,而不强制使用特定的传输协议,支持TCP/QUIC和HTTP/x等应用层协议。主要的网络改进包括:

表达能力

Shwap引入了数据容器,可以访问数据方块的任何部分。它可以是样本、份额范围、Blob、行、命名空间数据等。Shwap的核心是为数据方块带来表达能力,允许任何人以任何形式有效地检索发布的数据,这些数据被分组在一个容器中。这个强大的功能使社区能够扩展数据方块的功能,同时确保软件能够快速适应新功能。

协议解耦

Shwap将核心网络消息与底层传输和协议层解耦,使其能够与较低级别的协议(如Bitswap、KadDHT、ShrEx或自定义协议)堆叠。

ShrEx集成

在ShrEx协议上使用Shwap可以改善区块数据同步,加快数据检索并减少资源消耗。凭借Shwap高效的数据存储,ShrEx使同步速度提高22倍,将Mocha上的全节点同步时间从7天缩短到8小时。

与Bitswap集成以实现高效的DAS

Shwap通过与Bitswap集成大幅改善了数据可用性采样(DAS)。之前,DAS需要7次往返才能检索128x128数据方块的数据,但通过Shwap的消息框架,Bitswap现在只需1次往返即可处理。

这些网络改进构成了Shwap升级的基础,使Celestia的DA网络实现更高效的通信,并在各方面带来显著的性能提升。

The Shwap upgrade: 12x faster DA sampling

轻节点

Shwap升级增强了轻节点,特别是在DAS效率方面。借助Shwap的O(1)往返采样,轻节点可以执行DAS的速度提高12倍,同步时间从24小时缩短到2小时。

此外,Shwap优化了样本的存储方式,将轻节点的存储占用减少2.66倍,在保持相同网络参与度的情况下提高了轻节点的效率。

The Shwap upgrade: 12x faster DA sampling

未来计划

这是朝着社区1GB区块数据方块目标迈出的重要一步;然而,还有更多工作要做。Shwap为实现这一目标奠定了软件架构的基础,但仍需要纳入更多优化才能达到目标。

现在,有了适当的基础,DA网络预计不会在存储和网络协议方面进行重大重写,这使核心开发人员能够专注于维护、加强安全性、水平特性添加,最重要的是挤出更多性能。

相关赛道:
来源
免责声明:以上内容仅为作者观点,不代表Followin的任何立场,不构成与Followin相关的任何投资建议。
喜欢
收藏
评论