【笔记】分布式网络与分布式账本
一、分布式网络P2P的概念
1.类型与概念
现实网络模式中,主要存在三种模式,分别是中心化、分布式与去中心化。
分布式网络,作为区块链的底层公有链,是种分布式对等网络(P2P),每个网络节点都是平等的,没有哪个节点处于中心地位或者对其他节点具有控制、管理权限,所以每个结点之间的关系都是对等的,故又称为“对等网络”。 在此网络中的参与者既是资源、服务和内容的提供者,又是资源、服务和内容的获取者。
分布式网络与中心化的客户端或服务器网络架构不同,它是一种去中心化的网络结构方式,其提高了数据传输的效率,对中心化的网络结构来说具有更高的安全性。
2.分散化、负载均衡与隐私
分布式网络(P2P网络)主要有分散化(非中心化)、可扩展性、健壮性、高性能、保护隐私与负载均衡等特点,其中以分散化和局域均衡为主要内容。
(1)分散化,即非中心化
网络中的资源和服务分散在所有节点上,信息传输和服务的实现都直接在节点之间进行,无须中间环节和服务器的介入,避免了可能的“瓶颈”。这样就大大降低了对集中式服务器的资源和性能的要求。分散化是P2P的基本特点,由此带来了可扩展性、健壮性等方面的优势。
(2)负载均衡
因为每个节点既是服务器优势客户端,降低了对传统“客户/服务器模式”(C/S)服务器计算能力、存储能力的要求,同时因为资源分布在多个节点,更好地实现了整个网络的负载均衡。
在P2P网络中,由于信息的传输分散在各节点之间进行而无须经过某个集中环节,用户的隐私信息被窃听和泄露的可能性大大缩小。
目前解决Internet隐私问题主要次啊用中继转发的技术方法,从而将通信的参与者隐藏在众多的网络实体之中,但在传统的一些匿名通信系统中, 实现这一机制依赖于某些中继服务器节点。在P2P中,所有参与者都可以使用中继转发的功能,因而大大提高了匿名通信的灵活性和可靠性,能够为用户提供更好的隐私保护。
3.高效、健壮与可扩展
- 可扩展性
在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步扩充始终能较容易地满足用户的需要。由于大部分处理直接在节点之间进行,大大减少了对服务器的以来,因而能够方便地扩展到数百万个用户。
对于纯P2P来说,整个体系是全分布的,不存在“瓶颈”。理论上其可扩展性是无限的。P2P可扩展性这一优点已经在一些应用的实例中得到证明,如Napster、Gnutella、Freenet等。
- 高性能
采用P2P架构可以有效地利用互联网中散布的大量普通节点,将计算任务或存储资料分布到所有节点上。利用其中限制的计算能力或存储空间,达到高性能计算和海量存储的目的。
- 健壮性
P2P架构则天生具有耐攻击、高容错的优点,因为服务是分散在各个节点之间进行的,所以部分节点或网络遭到破坏对其它部分的影响也很小。分布式模型一般在部分节点失效时能够自动调整、整体拓扑,保持其他节点的连通性。
二、常见问题与分布式事物
1.常见问题
(1)通信异常
分布式系统需要在各个节点之间进行通信,因此每次网络通信都会伴随着网络不可用的风险,例如光纤、路由、域名系统等硬件设备不可用。
(2)网络分区
当网络发生异常情况,导致分布式系统中部分节点之间的网络延迟不断增大,最终导致分布式系统中只有部分节点能够正常通信,这种情况称为网络分区,俗称“脑裂”。
(3)三态
因为网络的问题,所以分布式系统的每次请求与响应存在特有的“三态”概念,即成功、失败和超时。
2.分布式事务
一个分布式事务可以看作由多个分布式操作序列组成,通常把这一系列分布式操作称为子事务。在分布式事务中,各个子系统的执行也是分布式的,因此要实现一种能够保证“ACID”特性的分布式事务处理系统就格外复杂。于是,出现了诸如**“CAP原则”和“BASE原则”**这样的分布式经典理论。
三、P2P的两种架构
1.分类及性能
根据点链接方式以及资源定位方式,分布式网络分为两种架构:一种是非结构化的P2P网络,另一种是结构化的P2P网络。
分布式网络两种架构4中结构的性能比较:
2.非结构化的P2P网络
非结构化的P2P网络,是指网络系统的各个节点随机地互相链接在一起,没有经过特定设计的层叠网络结构。
特点就是搭建网络容易,最大缺陷是数据索引的效率低。
当节点太多,就会形成巨大的信息潮流,消耗大量的*处理器(CPU)和带宽资源以满足大量节点之间的数据查询和通信,因而使得数据索引的效率低。
3.结构化的P2P网络
结构化的P2P网络,是指网络即诶但通过特定的网络拓扑结构链接在一起,通过网路协议确保任意节点可以高效地找到所需数据,即使是很少见的数据。目前最常用的结构是分布式哈希表(DHT)。
优点是能大大提高搜索效率。缺点在于,由于网络中的哈希表建立了资源与存储空间的对应关系,所以网络抗扰动的能力不足。