枣庄便民网 网站首页 资讯列表 资讯内容

BigBang Core超级节点方案

2020-07-10| 发布者: 枣庄便民网| 查看: 144| 评论: 3|来源:互联网

摘要: 一、超级节点方案分绍分布式超级节点的主要目标在于为主链的DPOS节点解决扩展性问题。作为多支链的区块系统...

一、 超级节点方案分绍

分布式超级节点的主要目标在于为主链的DPOS节点解决扩展性问题。BigBang Core作为多支链的区块系统,参与DPOS的节点需要为所有有价值的支链进行同步出块。随着应用支链数量增加,出块节点的负担会日趋加重,单服务器无法满足系统本身可扩展性要求,于是分布式超级节点是解决这一问题的有效方案。

在分布式超级节点方案中,根据业务不同,主要角色分为ROOT节点服务器和分支节点服务器。

ROOT节点服务器主要负责共识协商、主链出块、主链数据管理、分支节点管理等工作;ROOT节点服务器保存有出块签名密钥的相关数据,用于共识协商及主链出块使用;ROOT节点服务器接入BigBang Core网络,一方面进行安全主链上的DPOS协商,另一方面和超级节点内的其它分支节点交互数据;ROOT节点服务器与其它超级节点的ROOT节点服务器通过P2P(SOCKET API)连接,或者与普通节点通过P2P(SOCKET API)连接。ROOT节点服务器只存储检验安全主链的数据,应用分支数据由分支节点服务器处理。分支节点服务器和ROOT节点服务器通过SOCKET API 或MQ方式连接,交互安全信标、管理数据等信息。

分支节点服务器则专门用于组织应用支链的区块数据,每台分支节点服务器只负责一条或多条分支链数据,并且不能有两台分支节点服务器负责相同的分支链数据。分支节点服务器通过SOCKET API或MQ方式与ROOT节点服务器连接,接收处理安全信标和管理数据。分支节点服务器通过P2P(SOCKET API)与其它超级节点的对应分支节点连接(ROOT节点服务器通过与对端ROOT节点服务器握手协商时获得对端分支节点的连接地址,并将连接地址分发给分支节点)。当DPOS协商当前ROOT节点被选中为出块节点时,ROOT节点服务器构造主链新块,并把支链出块上下文数据推送给各分支节点服务器。分支节点服务器构造各自支链新块数据并签名后(分支节点保存有出块签名密钥的相关数据),由分支节点自已广播全网。

二、 超级节点与超级节点之间的连接方式

超级节点与超级节点之间通过P2P(SOCKET API)方式,分别是ROOT节点与ROOT节点连接,分支节点与对应管理分支的分支节点连接;ROOT节点与分支节点之间可以采用P2P(SOCKET API)方式,也可以采用MQ方式通讯。

ROOT节点与分支节点之间交互的数据主要包括出块上下文数据,如信标、高度、被选节点DPOS地址表等信息;交互数据还包括对端节点(超级节点或普通节点)的分支节点连接信息,连接信息中包含安全信标,只有两个ROOT节点协商的分支节点才可以互相连接,增强了分支节点的安全性。

ROOT节点负责管理分支节点,可以通过RPC连接ROOT节点,添加或删除分支节点配置信息(或者在配置文件中配置分支节点信息),配置信息包括分支节点的地址信息、分支节点管理的分支链信息等等;分支节点主动连接ROOT节点,ROOT节点通过配置的分支节点的地址信息,对分支节点连接鉴权,只有配置了的分支节点地址,才可以连接ROOT节点,提供基本安全认证;分支节点可从ROOT节点同步需要管理的分支链信息,ROOT节点在分支配置改变时及时同步给分支节点。

1) 采用P2P(SOCKET API)方式连接

image.png

2) 采用MQ方式连接

image.png

三、 超级节点与普通节点的连接关系

普通节点提供全链所有数据管理,包括共识协商、主链数据管理、分支链数据管理等等,普通节点需要与超级节点的所有节点连接,包括ROOT节点和分支节点。普通节点首先与超级节点的ROOT节点连接,通过握手协议获得超级节点的所有分支节点连接地址及分别管理的分支链信息;而在握手阶段,普通节点会告诉ROOT节点,本节点为普通节点,主链及分支链都在同一个节点上,超级节点的分支节点都需要连接该节点,并将该节点作为对应的分支节点处理。

连接关系图:

image.png



四、 超级节点与LWS及RPC客户端的连接方式

1) RPC客户端与超级节点的连接关系

ROOT节点和分支节点都提供RPC接口,RPC客户端都可以连接上并进行命令操作,分个节点可以导入钱包地址,并可以进行钱包相关的操作。

连接关系图:

image.png

2) LWS与超级节点的连接关系

一个超级节点附近可以有多个LWS提供服务,每个LWS提供部分分支的服务,每个LWS必须与超级节点的ROOT节点连接,并同步主链数据,同时LWS需要与自已管理的分支链对应的分支节点服务器连接,同步对应的分支链数据。

ROOT节点负责管理LWS服务器,可通过RPC来添加、删除LWS服务器,并可以配置LWS服务器管理的分支链信息;LWS服务器上需要配置ROOT节点服务器地址,并主动连接ROOT节点服务器,只有ROOT节点上配置了LWS服务器的地址信息,LWS服务器才能连接得上ROOT节点服务器;ROOT节点服务器会及时向LWS服务器同步LWS的分布表,即LWS表及分别管理的分支链信息,用于LWS客户端连接时重定向使用。

LWS客户端任意选择一个LWS服务器连接,并请求订阅分支链数据,如果该服务器上有该支链数据,则提供相应的服务,如果没有支链数据,则返回失败消息,并返回对应支链的重定向的LWS服务器地址;LWS客户端也可以请求获取LWS分布表,可以根据LWS分布表连接对应的LWS服务器。

连接关系图:

image.png

五、BigBang Core官方轻钱包 -- PockMine

PockMine使用跨平台语言“RN技术”作为主要可视化开发语言,其特点为在一套语言下,可以同时运行于安卓与IOS终端。作为BigBang Core第一个手机端钱包应用,PockMine团队非常注重资产安全,采用“云钱包+HD钱包”并行的双钱包结构,最大程度保障了用户的资产安全,为用户提供简单便捷、安全可靠的数字资产存储服务。云钱包现已支持BBC、USDT、BTC、ETH等币种,HD钱包则支持BBC及BBC支链中的各种Token。同时,PockMine更是全球首个支持EDPoS投票的手机客户端,并且兼顾CPoW和EDPoS双共识玩法。注册用户可以免费获得CPoW挖矿算力,产出的BBC可直接在应用内参与BBC EDPoS投票获取收益。

未来,PockMine将紧跟BigBang Core的发展脚步,为其主要业务进行移动端的全面支持。 作为BigBang Core生态的核心应用,PockMine将会承载数字资产管理与查询、LWS/LWC设备管理与查询、雾存储空间撮合交易市场、物联网数据撮合交易市场等主要生态功能,成为BigBang Core生态中密不可分的一环。

image.png

PockMine官方网站:https://www.pockmine.com

PockMine下载链接:https://pockmine.com/download

BigBang Core官网:https://www.bigbangcore.com/




分享至:
| 收藏
收藏 分享 邀请

最新评论(0)

Archiver|手机版|小黑屋|枣庄便民网  

GMT+8, 2019-1-6 20:25 , Processed in 0.100947 second(s), 11 queries .

Powered by 枣庄便民网 X1.0

© 2015-2020 枣庄便民网 版权所有

微信扫一扫