区块链端对端交易性能分析

区块链端到端交易性能分析

区块链从微观上来说就是一个不可篡改的可溯源系统,从宏观上来说具有三个特点:共识机制(这个被很多人所研究,包括改进,例如POW、POS、BPFT等等)、分布式存储(每个节点对于链信息的存储,也是个比较有意思的方向,例如RS编码)、P2P。对于区块链端对端交易性能的分析,我想从P2P网络讲起,交易的基础都是基于搭建的网络进行的,在网络上信息传输的延迟对于性能的影响是巨大的。然后对共识机制的改进就没有做过多的涉及,因为这一部分比较常见。当然后面讲到的像fabric、分片都是比较基础的讲到,如果每一部分要细讲的话,感觉篇幅会较长,所以也就没有再深入写下去。

1、P2P网络模型(路由查询分类模型)

P2P网络不同于传统的客户端\服务端的C\S结构,在P2P的网络结构中,每一个节点都是一个客户端以及服务端的存在,同时它们就不再适用HTTP,而是采用Socket进行网络编程。

在P2P网络模型分类中一般有:集中式、纯分布式、混合式以及结构化四种模型,不过在这里需要注意的是这些分了模型是路由查询模型,也就是不同节点之间怎么建立连接,而至于它们连接之后的交易内容就不是分类模型关注的问题了。

**集中式:**对于第一种模型集中式,就是存在一个中心节点保存网络中每一个节点的索引信息,一般这样的索引信息包括IP地址、端口、节点资源等等,也就是说一个节点存储所有节点的路由信息,当普通节点要访问其他节点时,都是通过这个中心节点来得到信息,这样做的缺点就是节点规模扩大后,出现性能瓶颈,也存在单点故障。

**纯分布式:**第二种模型就是纯分布式,也就是说网络中没有中心节点,节点之间都是随机建立的拓扑网络,如果有一个新节点要加入网络中,最简单的就是随机选择一个存在的节点建立邻居关系,例如在比特币网络中,就是使用DNS的方式查询节点,DNS一般使用硬编码到代码中,它可以提供比特币节点的IP地址列表,从而新节点要找到其他节点就可以通过DNS服务器查询建立连接。但是新节点加入网络后要进行全网广播,也就是泛洪机制。纯分布式的模型没有单点性能瓶颈问题,但是因为泛洪机制,因此容易出现泛洪循环,同时也会出现消息风暴,也就是例如节点要求的资源有很多个节点拥有,那么大量这些节点同时发送给这个节点导致消息请求的节点瘫痪。

**混合式:**混合式就是集合了集中式和分布式结构,网络中存在多个超级节点组成分布式网络,而每个超级节点拥有自己的集中式网络,也就是它连着自己管理的多个普通节点。如果有一个节点要加入,那么它首先与一个超级节点通信,得到其他超级节点的列表,然后选择要加入哪个超级节点的网络,这样就把泛洪广播限制在超级节点之间,避免大规模泛洪循环,比特币网络也是类似这种架构。

**结构化:**相比于纯分布式网络的随机网络,结构化分布式网络就是让所有节点都按照某种结构进行有序组织,例如一个环状网络,基本它们的实现都是根据DHT思想:在网络中,可以抽象出来两种空间:资源空间、节点空间,资源空间是代表了所有节点保存的资源集合,节点空间就是所有节点的集合,首先我们对资源和节点都进行编号,,例如把资源名称或者它的内容取一个Hash变成一个数值ID,这样就可以对资源ID和节点ID进行一个映射关系,例如把资源n的索引信息放到节点n上,搜索的时候就是按照这个映射关系进行查找,避免了泛洪广播,这种模型的有点是更加的快捷以及准确,但是事实上映射中是很难一一对应的,尽管如此还是可以通过一定的大小关系进行映射,和就是DHT思想。

2、比特币网络

对于比特币的网络系统中,节点的主要功能是:钱包、挖矿、区块链数据库、网络路由;不同类型的节点具有不同的部分功能,但是每一个节点都有路由功能,一般只有比特币核心才包含了四大功能。所有节点都会参与校验以及广播交易以及区块的信息,同时会发现并且维持其他节点的连接,而那些包含了完整的区块链数据库的就称为全节点,而相比之下,只包含了区块头而没有交易数据的节点被称为轻节点,例如钱包。还有一部分的节点是独立矿工节点,这里强调独立矿工是为了与矿池,也就是所谓的集体挖矿区分开来,独立矿工节点则是全节点包含了挖矿功能的节点,至于矿池矿工节点,它们是分布在一个局部的集中式矿池网络,中心节点式一个矿池挖服务器,其他节点连接到这个服务器,它们之间依据的式矿池挖矿协议,也就是中心节点作为一个全节点与它的下属节点形成一个网络与主网按照比特币协议进行通信。

所以综上所述,在整个比特币网络中,除了那些节点使用比特币协议进行通信外,还包含了矿池里面的矿池协议,此外因为挖矿创建出新的区块后,需要广播到全网节点,如果区块使用上面所述的比特币协议网络,有很高的网络延迟,所以需要一个专门的传播网络来加快区块在矿工之间的同步传播,这个网络叫做比特币传播网络或者比特币中继网络。**比特币传播网络:**为了最小化矿工之间的传输延迟,原始的比特币传播网络由几个专门的组成,并且连接大多数的矿工和矿池,也就是类似于混合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值