• 注册
  • 墨客科普 墨客科普 关注:34 内容:79

    【虎评墨客 】墨客系列介绍之分片

  • 查看作者
  • 打赏作者
  • 拉黑名单
    • 墨客科普
    • 大版主
      墨客战士

      分片是指将网络中的所有节点分成若干个子群体,这些子群体之间通过预定义的方法执行原来所有节点都要处理的工作,从而达到提高系统处理能力的结果。

      分片有它特定的要求

      1. 分片的子群的大小有限制,一方面,希望能够分更多的片,但是,为了维持系统的容错性,分片的节点数有个下限,比如不能低于50个。

      2. 分片的共识有限制。由于节点数少的关系,POW可能不适合。

      3. 分片之间必须保证数据的一致性

      以太坊的分片策略

      以太坊目前的分片策略是在一个周期内,将所有的节点分成若干份,然后将合约分配给每个分片,当周期结束时,会重新分片。这里会有几个问题

      1. 需要一个全局的存储器来保存这个分片信息。

      2. 这个周期通常比较长,如果节点数动态变化比较大的话,分片的信息会很容易过时。

      3. 周期结束时,当前分片处理的合约必须重新分配到新的分片,造成不必要的切换资源操作。

      4. 分片的共识方式与底层的共识一样,这样分片的功能必须等主网切换到POS才能采用。

       

      墨客的分片策略

      墨客采用分层的办法来实现分片。墨客的底层采用POW的方式保证所有的数据的一致性,底层称为v-node,分片处理的节点称为SCS,每个SCS节点与一个v-node对应。这样SCS节点可以通过v-node获得全局一致性的区块信息。

      SCS节点和v-node节点分工处理不同的工作

      【虎评墨客 】墨客系列介绍之分片

      SCS的特点:

      1. 每个分片有自己的存储,就是分片的区块链;

      2. SCS可以有不同于底层的共识方式,比如pos,pbft;

      3. SCS的区块生成时间可以与底层不一致,比如可以采用快速的区块周期来进一步提高处理速度;

      4. SCS周期性的向底层flush结果,从而获得阶段性的全局一致性。

      与以太坊等设想的分片方法不同,墨客分片采用合约驱动的模式,就是说一个合约对应于一个系统分片,合约创建时自动随机选择相应数量的节点形成一个分片来处理这个合约,这个合约的生存周期都在这个分片中实现,从创建,到结束合约。当然,中间如果需要,可以重新洗牌来选择新的分片节点。

      墨客分片处理流程

      【虎评墨客 】墨客系列介绍之分片

      墨客系统将提供一个PBFT的分片实现,用户也可以实现自己的共识协议,作为SCS的一个插件,这样就形成了子链的概念。

       

      墨客分片策略的优势

      这样做分片的好处是什么?主要是提高系统的处理速度

      目前以太坊的处理速度限制在这几个部分:总gas量是7百万。单个支付交易需要21k,合约调用变动比较大,可能平均在200k左右。这样,如果纯支付的话,每个block可以支持350个,如果全部合约调用的话,每个block是35个。算上一个block 20s,那么每秒的处理速度大概在2-10个

      墨客采用分片的技术,那么合约的执行尽可能都在SCS端执行,V-node只处理支付交易和必要的合约调用。如果能够有100个分片的话,那么合约处理的速度将提高到100倍或更多。同时,底层将大部分处理支付交易,这部分的逻辑比较简单,我们完全可以降低支付交易的gas量进一步提高处理能力而不会造成系统太大的负担。

       

      分片对墨客系统挖矿的演化影响

      整个系统的处理速度上去之后,会对v-node的要求更高。体现在两个方面,一个是网络的带宽,另一个是存储的容量。

      当然还有每个节点的GPU运算能力。随着光纤网络和5G网络的普及,带宽预计不会成为一个瓶颈。存储器的价格则更加不是问题。对于普通用户而言,因为有SCS可以参与挖矿,并不一定需要部署一个v-node,只要有信任的v-node可以连就可以。

      这样墨客系统会形成两个层次的挖矿节点:


      1. 大量运算能力强大,高网络带宽,大存储的v-node,执行POW,并提供SCS接入服务,维持整个网络必须的挖矿能力,这个数量在几千到一万;

      2. 海量cpu –based的SCS用于处理合约的执行。针对子链的共识多样性,这样的SCS节点甚至可以是手机等移动设备


      SCS节点的数量可以不受限制。在目前的架构下,可以有几十万甚至几百万的SCS参与,而不会影响系统的性能。

      请登录之后再进行评论

      登录
    • 做任务
    • 实时动态
    • 偏好设置
    • 返回顶部
    • 帖子间隔 侧栏位置: