BUMO 多链惊艳亮相 分层扩容突破“不可能三角”

  • 时间:
  • 浏览:41

  近日,BUMO 发布Orbits多链技术MVP(Minimal Viable Product)版本,该技术可大幅提高公链的扩展性和性能并突破“不可能三角”,所谓的区块链“不可能三角”,也称为“三元悖论”,通常指区块链系统无法同时兼顾去中心(Decentralization)、可扩展性(Scalability)、安全性(Security),至多只能三者取其二。

  

  (不可能三角示意图)

  BUMO发布的Orbits技术基于主链保证去中心化及安全的同时,通过创建子链来提升可扩展性,最大限度的兼顾“不可能三角”的三要素。同时Orbits对用户十分友好,用户只需要填写几个关键参数,即可便捷灵活的创建一条安全可靠的子链。实际测试中,BUMO创建3000条子链,TPS可突破百万,其性能和扩展性已经处于全球领先水平。

  

  (BUMO Orbits架构图)

  BUMO Orbits在提升可扩展性的同时,还可极大提升公链的性能。Orbits依据网络ID将主链扩展至多个子链,每一个子链只需要运行该子链的共识协议,网络上的交易可以分散到子链中来进行处理。因此子链越多,就有越多的交易被并行处理和验证。通过这种平行处理的方式,将大任务拆分成多个可并行处理小任务,从而有效提升整体网络性能。

  Orbits除了实现性能和可扩展性的提升,也在其它很多方面取得了很多技术突破:

  a、共识方面采用多链隔离共识的方式,有效避免不同链共识相互影响。

  b、P2P通信方面对Gossip协议进行了有效的改进,大幅度减少了不同链之间的消息冗余。

  c、节点方面提出了观察者角色,观察者能够准确的识别子链节点做恶,有效的提升了子链的安全。

  d、激励机制,主链验证节点不仅可以去参与主链的的挖矿也能去子链挖矿,这样验证节点不仅可以获得主链的奖励也可以获得子链的收益。

  目前主流的扩容技术方案按照层次分可以分成3层:

  

  (扩容分层图)

  Layer 0:该层也叫数据传输层可扩展方案,主要解决优化网络传输速度,减少网络延时。目前有BDN分发、组播锁定组、QUIC UDP 协议等。

  Layer 1:这层主要是对链本身做改变,主要是通过网络层、数据层、共识层去改变链本身的特性,目前在这层的技术有隔离见证、分片、DAG等技术。

  Layer 2:Layer2也叫链下扩展,构建在主链上。它们不要求对基层协议的更改,相反的,它们只是以智能合约或者其他的形式存在,与链下网络进行交互。目前的解决方案有状态通道、主子链技术、侧链等。

  BUMO对以上三层扩容技术方案经过深入的研究,最终采用Layer2主子链技术。原因在于:Layer0 可以很好的改善网络传输问题,但是对于公链的TPS来说改变的微小甚微。Layer1 的分片和DAG的方式需要对公链底层做大修改,会带来很多潜在的问题,目前来看分片和DAG等技术虽然也有很多项目,到现在为止大部分还处于研究阶段,能够上POC测试的用例都还没有,还不太成熟。关于Layer2技术,BUMO为什么使用主子链技术不选状态通道呢?由于状态通道过于中心化,安全性还得不到太多保障。

  经过BUMO团队的架构设计,Orbits技术具备如下特性:

  安全性高:子链的安全可以借助于主链安全得到保证,子链不要部署很多节点,这样不仅提升了安全也节约了资源。

  可扩展性高:理论上可以无限扩展子链,且每条子链都是一个独立的生态系统,通过BU关联,具有极强扩展性。

  性能高:子链扩展后独立运行,且相互之间性能不会影响,性能成线性增长。

  按照互联网正常带宽中位数13Mbps为例,子链构成每笔交易实际大小为0.5k,则一个区块打包一万笔交易大小为5MB,理论吞吐量极限最大值约为3120TPS(10000 × 13Mbps / 5MB),实际测量的情况可以由下图反应,当子链的条数挂载20条的时候TPS达到了66532,挂载300条子链的时候达到了904256,一直到挂载3000条子链的时候达到了峰值9398623,达到3000后再增加链的条数tps反而有所下降。从下图测试数据可以说明BUMO的子链挂载条数在3000这个极值范围,TPS大概能够突破900万,超过3000条子链整个网络就不会太稳定。

  

  隔离性:对于不同的业务场景可以构建不同子链,对不同数据进行了隔离。如果子链出现了问题也不会影响其它子链的运行。

  如何搭建一条属于自己的子链?

  BUMO多链具备上述这么多优势,相信会有非常多开发者想尝试构建一条自己的子链,以下就为BUMO开发者提供构建子链的方式。

  在BUMO上搭建子链非常简单便捷,开发者需要在主链上进行注册,缴纳消费金(一定数量的BU,用于子链向主链提交区块头信息所消耗的手续费),并把自己的子链节点加入到主链,这样就构建了一条子链。

  

  (开发者自主搭建子链示意图)

  上述是对BUMO多链技术的简单介绍,如果想要详细了解BUMO多链提供的功能,欢迎去演示环境体验。假如你是开发者,对区块链技术有非常深的理解,欢迎研究我们多链源码。

猜你喜欢