区块链-----网络层

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

在这里插入图片描述网络层
●网络层
●泛指区块链系统的整个网络通信层区块链数据通过网络层传播进行校验、存储等。主要实现组网、传播与校验功能。
●中心化模式
●架构
●C/SB/S
●特点
●1. 系统需要一个或多个中心化的服务器承担统一接收和处理请求的职能
●2. 优点利于服务的统一管理与升级保持服务一致性
●3. 缺点中心化的设备故障会导致服务瘫痪节点多导致负载压力大。
●点对点网络
●分布式网络架构网络中的每一个节点都是对等的可以充当服务提供方及服务获取方。单一或少量节点机器配套通信设备的故障不会影响整个网络的服务提供。
●优点
●节点越多服务质量越高扩展性越强。
●缺点
●数据一致性难以保障、资源无法统一管理、垃圾信息多等。
●P2P网络的核心技术分布式哈希表Distributed Hash Table, DHT
●用途
●维护网络中节点清单和和节点能提供的服务清单
●核心思想
●网络中的每个节点都 维护一部分索引信息然后通过特定的规则将这些节点信息连接起来使得在查询或注册时按规则触达相关节点或资源不同的规则对应着分布式哈希表不同的协议。
●优势
●避免中心化索引和网络风暴。
●分布式哈希表的基础结构
●哈希表是一种以“键-值”形式进行存储和查询的数据结构。
●在存储时存储信息经过哈希函数的处理生成一个映射地址并将信息存储到这个地址中读取时直接定位到该映射地址提取数据。
●分布式哈希表实现Kademlia协议
●由于在分布式哈希表的网络中每个节点只保存一部分资源的索引信息当网络中有资源变更时不需要全网广播只需要更新相关节点。
●问题1如何在每个节点都知道部分信息的情况下实现对全网资源的触达与维护
●Kademlia协议提出基于距离的解决方案每一个节点都维护一张哈希表表中将网络的节点基于距离进行分组每个分组下存放若干个节点代表。
●问题2网络中的节点和资源如何建立关系
●Kademlia协议将网络中的节点和资源均映射成160位的二进制码编码等于或接近某个资源的节点需要知道该资源的下载地址。
●Kademlia协议解决了点对点网络中的组网问题将找资源变成找节点将找具体节点变成找大类的代表。
●数据传播与校验
●数据传播
●区块数据打包后需要广播给其他节点进行校验和记账。
●根据点对点分布式网络的特点每个节点只会向其直接连接的节点发送区块信息。收到消息的节点会对区块进行校验通过后加入该节点本地的区块链并广播给其他节点如此循环直到触达全网的节点。
●以太坊中的数据传播方式
● 向相邻节点直接发送包含完整的区块内容的消息
●向相邻节点发送只包含区块哈希的消息收到区块哈希的节点再从发送节点请求对应的完整区块信息。
●数据校验
●点对点网络中全节点会占用较大的存储量轻量级节点会存储部分数据所以轻量级节点需要向相邻节点请求数据来完成数据校验。
●数据校验的内容依据该区块链项目预定义的清单
● 比特币的数据校验内容
●1工作量证明检查
●2区块头中Merkle根的值是否与依据区块体中交易信息计算得到一致
●3区块大小再限制范围内
●4第一笔交易以外的其他交易不能是铸币交易
●5交易的合法性

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: 区块链