专栏首页Fractal 区块链【Fractal】Layer0 加速协议BackPackers:突破公有链吞吐效率瓶颈
原创

【Fractal】Layer0 加速协议BackPackers:突破公有链吞吐效率瓶颈

BackPackers引入了一种新的网络模式来解决网络层(layer 0)的一些低效率问题,包括交易广播瓶颈、源广播瓶颈和P2P网络中节点间的负载不均衡。

BackPackers:一个由Packer组成的安全的分布式骨干网络

BackPackers创造性地通过引入了一个称之为Packer的新的角色,为共识层提供了一个分散和安全的骨干网络。Packer的身份信息全网公开,所有的Packer形成一个分布式的网络,类似于分布式哈希表(DHT)中的网络。Packer收集用户发出的交易,并将其打包形成pseudo-blocks,然后再将pseudo-blocks广播到网络中。Packer向其打包的交易收取一定的中继费,通过这种方式激励Packer持续地打包交易。BackPackers将网络传输作为了一种服务(network-as-a-server,NaaS),并且这种服务的提供者可以在自由市场中相互竞争。与此同时,BackPacker被设计为,即使所有Packer都是恶意的,也能够保证和底层区块链相同的一致性和活性。 

BackPacker中的数据传播流

在给定网络拓扑和网络延迟的情况下,BackPackers保证了最优的传播时间。与传播多个大小为数MB的块不同,只有大小为2-3KB的meta-block,沿着最短路径传播到p2p网络中的节点,并且最小化了验证过程。每个meta-block包含一个pseudo-blocks  id的有序列表和解决了某个难题(PoW,PoS)的证明。网络中的节点在接收到meta-block和其所包含的pseudo-blocks后 :(1)将pseudo-blocks按照meta-block中pseudo-blocks id的顺序排好,(2)解决冲突和重复的交易。然而,meta-block的传播只需要验证其确实解决了某个难题(例如比特币中的nonce),而不需要对meta-block中包含的所有交易进行验证。

BackPackers提供了第一个智能传播协议,能够保证相邻节点的最佳吞吐量。传播协议自动平衡相邻节点间的负载,优先向网络压力大的相邻节点提供服务。通过随机网络优化理论,我们证明在队列长度的期望为 O ( 1/ε ) 的情况下,吞吐量收敛到网络容量的 (1 - ε)。 

随机网络优化理论作用于相邻节点吞吐率优化

BackPackers引入了一种全新的,在layer0提高区块链可扩展性的解决方案,它提供了可证明的最佳传播时延和邻近节点间的最佳吞吐量。由于网络层目前要么被遗忘,要么被发掘不足,BackPacker相比于作用于layer1和layer2的扩展性解决方案,其对于扩展性的提升更底层,具有更大的发展空间。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一文读懂Fractal共识协议:iChing之精妙

    在过去的十年里,PoW 共识协议一直安全地支撑着区块链系统稳定运行,而其存在的能源浪费和算力集中的问题也显而易见,因此,Fractal 在 2017 年设计之初...

    Fractal
  • ETH2.0 都要来了你还不知道 Casper 吗?(二)

    在上篇文章中,我们介绍了Vitalik原始论文中的Casper FFG,其借助PoS对PoW产生的区块进行确认来提高系统的安全性,但这只是一种过渡的方案,在以太...

    Fractal
  • Fractal CTO 范磊:PoS 能不能实现真正去中心化?

    2019年9月6日,Fractal Platform CTO 范磊在Fractal社区,进行了主题为《PoS能不能实现真正去中心化?》的在线直播。文章比较长,约...

    Fractal
  • [ 物联网篇 ] 12 - 联发科MTK8516 开发环境搭建

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    程序手艺人
  • 字符串解码

    编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。

    你的益达
  • Python 基于python+mysql浅谈redis缓存设计与数据库关联数据处理

    测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作Redis 1、创建示例数据库表 CR...

    授客
  • 机器学习第3天:预测汽车的燃油效率

    写在前面: 这篇文章将通过线性回归模型预测汽车的燃油效率,文本所用到的数据以及代码可根据文末的联系方式向我索取

    明天依旧可好
  • Java之IO-字符流的缓冲区

    缓冲区的出现,提高了对数据的读写效率对应的类:BufferedWriter,BufferedReader

    用户5224393
  • 是风口,还是封口?

    2018年7月拼多多在美国纳斯达克敲钟上市,短短三年时间,拼多多汇聚了三亿多用户,过百万卖家,建立起异类的、“拼”的线上电商生态。如此红利让很多企业家投资人纷纷...

    机器思维研究院
  • 你所能用到的数据结构(七)

    十、装配火车的乐趣       国庆放假结束了,第一天真是不想来上班啊,接着国庆之前的吧,上一篇写的是利用数组实现堆栈的结构,使用数组的两个致命的弱点是大小必须...

    一心一怿

扫码关注云+社区

领取腾讯云代金券