BTA | 汪晓明:如何通过软硬件结合打破区块链性能瓶颈?
虽然数字货币已经非常火爆,但区块链产业的落地应用仍然还没有真正实现商业化。究其原因,是由于区块链技术还处于早期阶段,性能、易用性等还亟待提高。区块链行业需要全新的底层产品革新来实现更多、更快的交易确认和信息互通,HPB芯链通过分布式应用的性能拓展,以软硬件合力来打破性能瓶颈,打造易用的高性能区块链平台,跟产业实现深度融合,满足真实的商业需求。
关于汪晓明:
HPB芯链创始人。区块链技术早期探索者,在中国区块链社区以ID「蓝莲花」活跃多年。曾任跨境电商公司Beltal CTO,十余年金融大数据、互联网技术研发经验。主创区块链教学视频节目《明说》,翻译和编撰了《以太坊官网文档中文版》,并作为主要作者编写了《区块链开发指南》。
HPB芯链创始人汪晓明
以下是汪晓明的演讲整理:
首先做一个自我介绍,我大概在6年前开始接触比特币以及数字货币相关领域,当时做跨境电商平台涉及到跨境支付,在找解决方案的时候发现比特币技术。那个年代基本上无人关注区块链以及比特币相关的东西,没有相关资料,当时我翻译了一些区块链的文章,写了50篇区块链的文章,并做了一些视频来介绍区块链。以太坊的英文版文档是我翻译的,并与专家合著了一本《区块链开发指南》,此外还有一个博客以及技术视频网站。
今天我主要想从以下六个方面来介绍HPB芯链:行业现状、整体思路、TPS瓶颈分析、HPB技术总览、业界方案对比、介绍团队。
行业现状--区块链产业的挑战
我们正在做一个非常有挑战性的事情。由于进入这个行业比较早,我们发现了很多问题,区块链近四年里呈现出爆发式发展态势,我接触比特币的时候,当时价格是500块,到现在最高点15万,以太坊从两美金涨到最高一万,价格的暴涨吸引了很多人的进入。
数字货币的发展非常繁荣,区块链产业包括应用落地方面其实并没有真正商业化。区块链技术处于早期,它的易用性比较差,而且性能非常低,所以这是我们发起HPB芯链的初衷。
对一些商业化应用,支付系统TPS(TransactionsPer Second,每秒传输的事物处理个数) 需要达到15万每秒,支付宝双十一TPS达到35万笔每秒。当前比特币TPS每秒27笔,以太坊TPS25笔,可以看到这是不同的数量级,性能问题已经制约了整个行业的发展。
HPB整体思路
HPB芯链是全新的区块链软硬件体系架构,其中包含芯片级加速引擎和区块链顶层平台,旨在实现分布式应用的性能拓展,定位为易用的高性能区块链平台,跟产业深度融合,满足世界真实的商业需求。
HPB芯链是一个基于硬件加速的高性能公链,可以对接以太坊、比特币等平台,普通用户可以直接接入,不需要搭整个底层系统。我们基于HPB搭建软硬件体系,全部开源,这套方案可以让其他公链可以自我选择以及为这个链加速,这个市场潜力是非常大的。
芯链是一个公有链,上面可以搭很多的对系,开发商可以通过我们API以及SDK很容易搭建进来,所以搭建这样一个生态系统是芯片加速引擎整个架构第一代产品的整体思路。
最上面DDR memory是一个内存,是一个基本的保障。中间绿色部分包括TOE等等,TOE主要解决网络性能问题,包括并发、网络链接的处理等等。区块链所有软件逻辑都可以放在这个上面实现。底层是一个基于ARM的CPU和FPGA,保证整个产品的性能。
从更加直观的角度来看系统的架构,上面分三部分,最上面是分布式终端,包括智能手机、平板电脑或者是服务器,中间是一个网络层,45、5G、光纤网络、WIFI网络;最下面是核心服务器,也就是云计算中心的服务器。
最终的形态是,服务器跟最上面分布终端组合起来,为这个网络做共识的确认。上面形态是加速引擎业务卡,可以有一个插口,直接插到PC或者服务器里面,通过5G网络共识处理。这里有一个我们自主设计一个芯片服务器,拿过来就可以用了。通过网络的优化,把这几层终端以及服务器打通,为网络做确认,这是一个大概物理层面的理解。
目前我们硬件服务器已经设计完毕,现阶段处于生产过程中,5月份将推出整套区块链服务器完整方案。
HPB三个特点:
第一,用芯片级引擎来加速。芯片其实是硬件,硬件跟软件到底是什么区别和优势?软件产品做一些优化能够达到30、50%的效果,但是硬件层面芯片优化可以达到十倍百倍。
第二,软硬件深度融合。软件系统融入硬件加速引擎深度定制,比特币、以太币整个逻辑全部在软件层面。我们的做法是什么?所有的单级计算性能,网络,所有了验证确认这些业务逻辑,我们会全部放到我们的加速引擎上面去,用硬件来驱动,软件层面只保留你的帐本以及你的数据。通过这种方式极大改善整个系统负载性能。
第三,我们实现了一套*的硬件公式算法,稳定支持百万级并发计算,这是非常有挑战的目标。我们希望一开始先达到五万、十万量级,符合商业的需求,未来挑战更大的目标。我相信百万级,未来一定是需要,并且能实现的。
TPS的瓶颈有哪些?
我们拿支付宝以及双十一TPS的并发量,来推演到区块链领域,我们需要看它到底需要什么样的性能指标,让这个系统可以在区块链里面实现。
D是交易大小,TPS是35万笔每秒,P是需要转发的交易数。D是每秒需要处理的数据总量,Td是每秒钟的网络接收和数据发送总量。
有一个结果,如果达到这样一个性能指标的话,每秒钟要处理的数据传输,网络传输的数据量,下面这个是五千万B,转化成兆就是50兆,每秒钟节点之间数据传输需要达到50兆/每秒。
对于一些机房,网络条件非常好的领域是可以实现的,但是对于一般网络挑战是非常大了。下面这个数据是本地数据更大的处理数据量,这个挑战是非常大了,我们看看怎么样解决。
区块链领域技术瓶颈主要涉及到四个部分:
第一,P2P网络带宽。第二,共识算法。第三,存储。第四,签名验证。
每秒的数据传输达到50,对于网络的并发、网络的带宽要求非常高,在我们现实网络环境,大部分服务器很难达到这样的网络要求。
共识算法不能支持几万的并发,这是非常困难的,我们提出了跟硬件结合起来看能否有所提升。
存储,有这么高的并发本地存储就是需要挑战的问题。
验证签名,像以太坊整个验证签名在几十以及一百笔的数据。换句话说,签名验证的这个速度,你更加不可能说整个网络TPS有多好的指标。每一个小的环节没有做到,别说整体TPS可以做到了,这是更加不可能的。我们目前已经实现了一套硬件签名技术。签名达到了三万,未来我们整个系统的负载,TPS可能先达到三万这样的一个指标。当然这个需要不断改进。
HPB的技术总览
这是我们的核心模块,一个是BOE,blockchainoffload Engine。这个BOE里面包括了网络处理的引擎,再加上区块链的业务逻辑。共识算法,会跟硬件深度定制。另外一个是异构系统,前面我们可以看到整个物理资源是服务器以及加速卡,更细节来讲是一个系统架构,我们会做一个插卡的形式,有一个接口可以直接插到电脑上面或者服务器上面,为多种服务器或者PC实现芯片的共识、服务器的功能。
这是我们第二代的核心功能,BOE,硬件架构。我们通过颜色介绍各个模块的功能,黄色部分DDR4是内存,很多模块处理数据或者网络需要内存的支持,保证小的模块没有问题,内存支持。
下面这一块橙色部分,也可以搞TOE,就是处理网络的并发执行力的连接等等,一些网络连接的处理功能。
中间这一块,紫色部分是HPB Engine以及ARM架构。蓝色的部分是PCIE,SATA, USB和HDMI,一些高速的速度处理以及外部服务器的插卡、接口都是通过这一部分来实现的。这是四种颜色分别代表了四种模块大体的方向功能。
未来要实现十万笔每秒的TPS,整个存储也是一个大的问题,第一代产品对存储没有做预留,未来可以通过SATA和USB接口把新的一些需求引入进来,这是设计接口的出发点。
未来如果网络方面有更深入或者更高要求的时候,我们用TOE模块做一些升级,从而达成了HPB Engine实现软件层面难以实现的性能要求。
共识算法,跟现在主流做法有什么相同点和不同点?我们研究了可能实现高HPB的性能算法,借鉴这个算法之后我们提出来了一个硬件共识算法,分两部分,一部分是外层选举,一个是内层选举,一共两个部分组成。
因为我们有BOE整个硬件服务器,我们通过共识节点服务器,这个服务器的时间,服务器网络处理能力,综合评定是否可以达到我们共识节点的要求,如果达到了要求我们就会把你放到可信节点里面,进入可信节点就是进入内存选取。
这样的做法是,首先硬件保证了,网络存储率非常好,所以很快选出内存节点。内存选节相对是比较公正的列表,数量跟安全性各个方面都可以综合考虑到,所以性能会非常的优异。
安全性跟性能是有点悖论的参数,但是我们通过硬件技术妥善了解决了有点冲突的。我们通过硬件共识机制,通过内层和外层以及选举的方式,快速安全选出我们的共识节点。
共识包括内层选举和外层选举。内层选举目标就是快速确认链的生产者,N1、N2、N3。内存选取包括两个部分,第一部分是提交,第二部分是确认。提交是N1-N3会每一个都提交上去,每一个节点会拿到他提交上来是自己发的,再交给全网可信节点,这是内存选举可信列表,帮助网络确认出来,区块是不是真实可信,确认好以后可以写入到我们区块链里面去。
外部选举将选出来一个可信列表,在可信列表里面通过一个快速共识过程,达成我们快速的共识算法,整个共识做法可以硬件加速技术使它更快、更安全。现在越来越多的公司或者业界的项目认识到,性能问题是摆在整个区块链行业重大问题。
业界方案对比
相同点,包括HPB我们都希望做一个百万级并发设计的顶层区块链。用户免费使用,以太坊的转帐,终端用户是需要掏手续费,如果没有以太币就不能完成转帐以及业务产品的交易,我们设计师未来希望用户是免费,费用是由硬件开发商承担。并行架构应用程序互不影响。
之前的应用可能很多人都知道以太猫,它比较火,把整个网络塞死了,堵了好几天,导致整个网络基本上处于不可用的状态,这是非常要命的事情。我们希望未来各应用程序之间可以互相鼓励设计,你的应用跟我没有关系,我们各自使用各自的设计就可以了。
不同点,因为这是一个软件架构层级的优化,HPB是一个软硬件体系的架构,HPB使用通用服务器,我们设计的HPB区块服务器,预计五月份会推出。最近一个热点EOS选择超级节点,因为超级节点对服务器的配置,对网络要求是非常高的,它的价值极其昂贵,普通人很难进来,所以它的门槛非常高。
HPB一个非常有特点的地方是很多个节点。我们做法是通过软硬件设计出专业的硬件服务器。另外,因为我们的服务器专门为区块链做定制,所有东西都是为区块链设计,所以我们成本非常低,推出来大家就可以知道我们的价格,非常低,大家都可以参与进来。
HPB的超高并发BOE引擎,这是我们整个核心的架构。高性能硬件签名技术,我们通过签名的技术的改善,先从签名这个环节达到3~5万的性能指标,从而支持整体的系统性能达到五万、十万以及第一期的目标。
HPB是业界首个开源方案,包括整个BOE技术,硬件开源其实是一个并不容易的事情,这个方案可以直接卖钱,直接带来营收。我相信包括IBM、华为、浪潮这样服务器生产商他们也不会开源他们的硬件服务器产品的代码。
区块链是一个完全开源的世界,所以我们希望把我们的方案开源出来。软件相对门槛低一些,硬件有很多不可控的因素,这个门槛相对比较高一点,所以做这个事情是需要一点对行业的理解以及对行业未来大趋势的看好,才愿意花很多的资金、精力做这个研发。
我们团队的核心成员大概有15~17年相关领域的工作经历,因此我们推出服务器的速度相对快一些。团队成员还有来自金融、经济以及密码学等领域的专家。
由于这个项目做得比较深入,业界很多大咖都支持了我们,包括NEO、bibox以及币信网都是我们这个项目的早期支持者。
据我们观察,目前整个业界对区块链的认可度越来越高,大家的方案或多或少已经透出硬件的影子,包括签名技术、服务器的方面已经往硬件方面发展,我们希望能够对行业一个长期的坚持跟投入,能够为区块链的发展尽一点微薄之力。
想跟区块链大咖蒋涛和孟岩一起工作吗?
快来快来,CSDN区块链大本营招采编 2 名 (待遇不低于行业水平)
邮件发送:[email protected](注明:姓名+区块链+采编应聘)
扫码加入区块链大本营读者群,群满加微信 17600222208 入群