@@ -1,58 +0,0 @@ 关于libp2p网络的一些设计想法 | 凤凰涅槃进阶之路

关于libp2p网络的一些设计想法

Abel sun2022年12月12日
约 413 字大约 1 分钟

  1. 需要设置与本节点连接的数目,一般20-25

  2. 种子节点,一般是将所有已知网络地址配置为种子节点

  3. 节点连接淘汰策略(1 Random, 2 FIFO, 3 LIFO)

  4. TLS 认证配置

  5. 黑名单和白名单的设置

  6. 消息发送的一个优先级设置,比如说共识消息优先(0-10级)

  7. 大消息体拆包,组包(将消息体拆解成256个小包,再组合)

  8. 支持的一般协议包括,TCP,QUIC

  9. 需要支持多连接复用并行发送(与每个节点建立多个连接,可以发送多个消息)

  10. 中继转发

    image-20221024103004301

在这种场景下,如果不采用Relay或者NAT穿透功能的话,虽然node1和node2之间可以建立连接,但是node1与node3,node1与node4之间并不能打通进行直接通信。当我们启用中继功能,配置中继地址的话,就可以通过node2作为媒介,将node1<—>node3node1<—>node4建立。具体配置如下

  1. nAT穿透
  2. 传输层之上运用加密协议noise
  3. 支持多路复用协议yamux
  4. 业务层协议
    • 区块同步协议
    • gossip
    • 交易协议
  5. mdns启用
  6. kad协议
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.9.1