传统的区块链节点,所有交易任务、交易确认等功能均基于软件层面实现,无论是在任务广播,还是交易确认,与其他节点的数据连接均是串行处理,导致了网络层次结构复杂、性能低、延迟大等用户体验的问题。
目前市场上主流的区块链平台为了解决这个问题,大多在软件层面上做了不同程度的优化,但是软件层面的改善有很大局限性,对于一个高性能系统,是软件、硬件、网络共同作用的结果。因此HPB设计了专用的区块链硬件加速单元(包括加速硬件及加速硬件固件)以及与之匹配的软件引擎(硬件加速系统层驱动以及上层软件接口API),可以通过结合CPU串行能力和FPGA、GPU、ASIC等芯片的并行处理能力,实现高性能和高并发计算加速。再配合底层软件层的优化,从硬件+软件层提供了更加务实和可实现的区块链高并发解决方案。
硬件加速引擎可实现大并发连接,同时维持支持超过10000条TCP会话,可并行处理10000条会话,大大降低了网络层级数,专有并行处理硬件将接管传统的由软件串行处理的交易数据广播、未验证Block全网广播、交易确认广播。其对会话的响应速度以及会话维护数量均是普通PC节点处理性能的100倍以上。
具备硬件加速引擎的HPB系统处理流程示意图和描述如下:
1、系统初始化,硬件系统获取全网配置表项,建立会话,并维持会话可靠。
2、任意节点用户端软件发起交易请求,通过加速硬件向全网并行广播发送附有签名的信息,同时开始监控全网确认状况。
3、随机指定节点(通过DPOS算法选举出来的区块生成者)收到带有签名信息的交易后,打包未确认Block,通过加速硬件全网广播。
4、全网各节点的HPB加速引擎进行Block确认,并广播确认结果。
5、任意节点收到约定的k个Block确认消息。
6、达成共识并发布完整Block,全网广播完整Block,各节点更新各自账本。
HPB硬件加速引擎,从网络层面来讲,因为可以与很多节点维持大量会话,因此节省了大量网络确认等待时间,可以不用等到完整Block发布,即可通过自行统计交易确认数,从而提前向用户反馈交易确认信息,改善用户体验。从硬件层面来讲,通过采用配有TOE芯片的专用网卡,包括TCP在内的四层处理请示都可以从主机处理器转移到硬件加速卡上,其最终的结果就是在加速网络响应、并发能力增强同时降低服务器复杂度,提高节点处理性能。
HPB官方网站网址:http://gxn.io/