以太坊节点发现协议 DEVP2P V5

 节点发现协议v5

欢迎使用节点发现协议v5规范!

请注意,本规范正在进行中,可能会在未事先通知的情况下发生不兼容的更改。

节点发现是在对等网络中查找其他参与者的系统。该系统可以被任何节点使用,用于任何目的,除了运行网络协议和存储有限数量的其他节点的记录外,无需任何费用。任何节点都可以用作网络的入口点。

该系统的设计灵感来源于Kademlia DHT,但与大多数dht不同,它不存储任意键和值。相反,dht存储并转发“节点记录”,这些记录是提供网络中节点信息的签名。节点发现扮演了网络中所有在线节点的数据库,执行三个基本功能:

  1. 抽样所有在线参与者的集合:通过执行dht算法,可以枚举网络。
  2. 为所有参与者提供了一个特定搜索服务:节点发现v5包含了一个用于注册“主题广告”的可伸缩工具。这些广告可以查询,并找到发布主题的节点。
  3. 节点记录的权威解析:如果节点的id已知,则可以检索其记录的最新版本。

 

规格概述

本规范由三部分组成:

  1. discv5-wire.md定义有线协议。
  2. discv5-theory.md描述了算法和数据结构。
  3. discv5-rational.md包含设计原理。

 

与其他发现机制的比较

  • mdns/bonjour等系统允许在局域网中查找主机。节点发现协议是为在Internet上工作而设计的,对于在Internet上分布有大量参与者的应用最为有用。
  • 使用集合服务器的系统:这些系统通常被桌面应用程序或云服务使用来将参与者彼此连接起来。虽然毫无疑问是有效的,但这需要使用者信任服务器的运营商,而且这些系统容易受到审查。与 rendezvous服务器相比,节点发现协议不依赖于单一的操作员,并且对每个参与者都有少量的信任。随着网络规模的增大,它对审查的抵抗力增强,多个不同对等网络的参与者可以共享发现网络,以进一步提高其弹性。

节点发现协议的薄弱环节是加入网络的过程:虽然任何其他节点都可以用作入口点,但此类节点必须首先通过其他机制定位。可以使用多种方法,包括可扩展的dns初始入口点列表或使用bootnodes,来合理地安全地进入网络。

与节点发现v4的比较

  1. 添加了主题广告。
  2. 可以存储/中继任意节点元数据。
  3. 节点标识加密是可扩展的,不严格要求使用secp256k1密钥。
  4. 协议不再依赖于系统时钟。
  5. 通信是加密的,保护主题搜索和记录查找不受被动观察者的影响。

Node Discovery Protocol v5

猜你喜欢

转载自blog.csdn.net/JIYILANZHOU/article/details/101630595