Introducing pipelining: Cardano’s consensus layer scaling solution - IOHK Blog
如果你认为管道铺设听起来像是可能会采用的一种改造程序,那也情有可原。在某种程度上,这与事实相差不大。实际上是Cardano‘plumbing’的一种进化。这是我们今年的扩展计划中的一个关键元素,也是我们发布的一系列步骤中的一个,这些步骤涵盖了随着生态系统的增长,我们有系统的方法来强化Cardano的能力。
如果要保持增长和竞争力,伸缩性和吞吐量是任何区块链的关键考虑因素。随着Cardano进入Basho开发阶段,我们专注于确保Cardano的规模能够满足生态系统日益增长的需求。换句话说,我们需要确保底层协议(Ouroboros Praos)的运行速度足够快,以应对目前在Cardano上部署或排队启动的过多分散应用程序。
随着需求的增长,Cardano将继续稳步优化一系列的步骤,谨慎和系统地扩大#Cardano的未来增长。1月初发布的节点1.33.0带来的变化给了我们额外的空间来修改一些网络参数,包括块大小和内存单元。这里的调整直接影响到Cardano如何处理网络流量,我们将继续密切监控网络性能。
继续密切观察真实世界的网络性能,重要的是,参数变化的累积影响将是整个过程的关键。在每次更新之后,在继续进一步调整之前,我们至少会在一个阶段(5天)内仔细监测和评估。随着大量的研究和工程工作投入到系统的设计和部署中,一个分散的网络架构需要基于现实世界的用户行为和使用进行扩展。
引入流水线(不知道这么翻译对不对,欢迎指教 )
管道——或者更准确地说,扩散管道——是对共识层的改进,它促进了更快的块传播。它使更大的收益净空,这将使进一步提高卡达诺的表现和竞争力。
为了理解这种技术是如何实现其预期目标的,让我们回顾一下当前块是如何传播的。
目前,一个区块在链上移动时要经过六个步骤:
-
区块传动
-
区块验证
-
区块请求和传输
-
区块验证和局部链扩展
-
向下游节点传输区块
-
区块传输到下游节点
一个区块的旅程是非常连续的。在每个节点上,所有步骤每次都以相同的顺序发生。考虑到节点的数量和不断增加的块数量,块传输需要相当长的时间。
扩散管道将这些步骤叠加在一起,所以它们是同时发生的。这节省了时间并增加了吞吐量。
这种技术所节省的时间将导致更大的空间进一步缩放Cardano,包括更改:
-
块大小——块越大,它可以承载的事务和脚本就越多
-
Plutus内存限制-一个Plutus脚本可运行的内存数量
-
Plutus CPU限制——可以为脚本分配更多的计算资源,使其运行更高效
实现流水线
扩散管道背后的设计原则之一是实现更快的块传播,同时避免对链的“破坏性”更改。我们不想删除Cardano中已经发生的任何协议、原语或交互,因为节点依赖于这些已建立的机制。我们想要完全的向后兼容,所以我们没有改变当前的工作方式,而是添加了一个新的迷你协议,它的工作是在看到一个新的理想块时,在完全验证之前,预先通知订阅的实体。
管道引入的关键变化是能够预先通知对等点,并在验证之前给它们一个块,这使下游对等点能够预取新的块体。这节省了大量时间,因为我们极大地减少了跨多个跳验证一个块所需的时间。
总之
管道只是支撑Cardano今年扩张的支柱之一。综合起来,所有这些变化将使Cardano在今年比其竞争对手更快,并成为一个高度竞争的去中心化融资平台(DeFi)。
关键点