A Data Flow Framework with High Throughput and Low Latency for Permissioned Blockchains
联盟链的吞吐瓶颈由共识层和网络层的数据分发过程共同决定。
Predis 协议利用了共识节点的空闲带宽,提前分发区块中的内容即bundle,减少了共识区块中的内容,每个共识区块中能够包含更多的交易,从而提高了吞吐。将数据分发和共识过程解耦,冗余遇到数据可用性(data avaliability)的问题. 也就说如果一个区块要被添加到区块链上,但是区块中的内容还没有被广泛传播,许多的节点还无法访问区块中的内容。
在之前的工作中,面对数据可用性的问题,采用可靠广播解决,例如保证至少 nc-f 个节点收到了预分发的数据。但是在predis的设计中,并不依靠可靠广播RBC。Predis的mempool设计成多条链的形式,有点累计确认的思想在里面。
Multi-zone 中共识节点利用EC编码将bundle分成若干strips。将网络拓扑分成多个zone,每个zone中有relay 节点负责转发 stripes 从而减少每个节点的带宽压力。
PREDIS
在predis 中交易被打包成 bundle然后广播给其他的共识节点,bundle是类似于区块的结构,也包含了指向前一个bundle的hash。同一个节点打包的bundle会穿成一条链。如果一个bundle被共识节点接收并认为是有效的,那么他的前一个bundle也一定被该节点接收并验证是有效的。
tip 指明了当前各个链中的有效bundle的高度。
如果有恶意节点发送冲突的bundle,会被检测到并将恶意节点加入ban list。

文章介绍了Predis框架,通过预分发数据和解耦共识过程来提高联盟链的吞吐量,降低延迟。它利用EC编码和多区策略优化带宽使用,并通过单链mempool实现类似可靠广播的效果。
最低0.47元/天 解锁文章
1447

被折叠的 条评论
为什么被折叠?



