首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

TOP公链主网技术:多层扩容和多层分片

TOP公链的主网已经成功上线,我们来快速回顾一下TOP公链到底有哪些技术特点。到目前为止,人们的关注点基本都集中在TOP公链的分片技术上。尽管这可能是最重要、最核心的方面,但是TOP团队始终没有停止创新。其实,TOP公链利用了很多扩容技术。这些技术结合在一起才打造了一条能够承载真实世界业务的公链。

综合多层扩容技术

谈到扩容技术,人们通常会提到分层(layer)。Layer-1被认为是真实的链,Layer-1的扩容也被称为链上扩容。另一个经常被谈论的层是Layer-2,它不同于Layer-1上的东西,很多区块链项目只是聚焦于Layer-1的扩容,期待第三方项目提供Layer-2扩容的解决方案。比如,以太坊就期望Plasma能够提供Layer-2扩容,比特币则寄希望于用闪电网络来提供支付通道。

就TOP而言,我们自己部署了所有的层,这一点相比其他技术,由于不涉及第三方,使得构建具有凝聚力的集成系统变得更加容易。我们来看一下,到底什么是所谓的综合多层扩容技术。

Layer0-P2P网络

除了常见的layer-1和 layer-2,TOP还增加了我们称之为“Layer-0”的一层,这也是TOP Network运行的基础层。“Layer-0”是一个定制的P2P覆盖网络,专门为优化TOP网络平台而构建,并考虑到了诸如跨分片通信之类的网络密集程序。TOP团队在建立分布式通信网络方面的深厚背景使“Layer-0”的构建成为可能。其他区块链平台通常会使用或者计划使用之前已经存在的P2P网络。而这种P2P网络是不允许他们像TOP一样进行自定义和优化的。

TOP的P2P覆盖网络可以看作是一个由很多相互连接的P2P网络组成的大型P2P网络。换言之,TOP的整个生态系统本质上是一个运行在网上的P2P网络。使用优化了的gossip协议和分层网络架构,可以在TOP Network网络上的节点和子网之间进行高效的路由和通信。

Layer 1 — 分片

在Layer 1,TOP通过综合的分片进行扩容,其中包括状态分片、网络分片和计算分片。

Layer 2 — 状态通道&服务链

最后,TOP提供了内置的状态通道和服务链(service chain)。状态通道可以将TPS增加几个数量级,并且由于它们直接内置在TOP链中,使用起来更加容易,无需寻找和集成第三方解决方案,而且可以保证兼容性。

TOP还提供了服务链,它除了大幅增加公链的灵活性,还提高了可扩展性。TOP的可插拔多链体系结构可以承载任何类型的业务,同时还减轻了主链的负担。服务链可用于复杂业务级别的逻辑和交易,从而避免了主链的拥挤。

综合多层分片技术

首先在layer-1,TOP实现了独特的多层分片设计,并且克服了与分片有关的众多挑战,实现了极为困难的全状态分片。

分片的目标是实现线性扩容。线性扩容意味着容量可以随着节点数的增加而线性增加。因此,每个节点必须完成的工作量不应该取决于系统中的节点总数或者全球交易总量。为了实现线性扩容,必须对区块链的所有资源进行分片,包括状态(存储)分片,计算(交易验证和智能合约)分片和网络(块传播,跨分片通信等)分片。如果仅仅实现计算分片(即交易和智能合约),那么状态(存储)或带宽最终将成为瓶颈。

为了打造一个全状态分片的系统,TOP开发了一种新颖的分层分片架构:

2层状态分片:状态分片在集群中的高级节点和分片中的验证者节点之间实现。

3层网络分片:共识网络分为多个区域,这些区域分为多个集群,然后再分为多个分片。

3层计算分片:计算在群集和分片之间进行分隔。然后,将分片本身划分为多个子集,并行执行交易验证。

并行pBFT和分层点阵数据结构

TOP公链采用了分层点阵数据结构。从技术上看,它是有向无环图(DAG)的形式。 但是,与其他基于DAG的项目(如IOTA)不同,点阵数据结构更加有条理,适合分片架构。

TOP公链使用的两种不同的点阵结构分别是单元点阵(Unit-Lattice)和区块点阵(Block Lattice)。

单元点阵

一个账户中的每个交易记录都被称为单元。单元链接在一起形成了每个账户的链,这就意味着每个账户本身实际上就是一个微型链。

一个分片中所有账户的集合构成了单元点阵结构。这样做的好处是可以在账户级别同时达成共识,这又增加了并行的另一层,因此吞吐量大大提高。这与每个分片使用单条链来一次又一次地验证和记录多个帐户的交易形成鲜明对比。

区块点阵

区块点阵是一种批量处理共识和跨分片同步的机制。对于每个帐户链来说,由最后一个单元指定该帐户的所有重要信息,例如当前余额。最新单元打包成块,并链接到每个帐户子空间的链中。这类似于分片链,这些链的集合构成了区块点阵。

完全并行的pBFT共识

TOP使用的是PoS-pBFT共识机制,但它并不是普通的pBFT算法。相反,TOP构建了高度并行化的pBFT版本,该版本与点阵数据结构协同工作,大大提高了可扩展性。

TOP公链总共有4层并行:

多核和多线程并行计算

首先是一个无锁并行框架,该框架将多个线程划分为多个内核。使用单元点阵帐户链模型,即使在单个分片中,交易验证也可以并行完成。 这意味着节点可以使用多个内核/线程同时参与多个共识组。

多角色节点虚拟化

一个TOP链的节点可以同时担任多个角色。一个物理节点可以虚拟化为多个角色。例如,路由网络中的高级节点还可以充当共识网络中的验证者节点。这不仅提高了可扩展性,还提高了安全性。如果某个分片突然丢失了验证者节点并变得脆弱,则路由网络中的高级节点可以迅速进入,并确保有足够的抵押来防止该分片受到攻击。

分片内的子组

每个分片在任何给定时间内都有多个子组并行执行共识,换言之,就是多层分片。

用于并行交易的多个分片

最后,当然也存在将链分成多个分片的并行。

综上所述,TOP公链被分为多个分片,每个分片又被分为多个子组。这些子组中的物理节点可以虚拟化为多种类型的节点,并使用多个内核/线程并行处理交易。可以说TOP公链使用的pBFT算法在设计时综合考虑了所有层次的并行。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200122A0E5RE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券