区块链BaaS云服务(28)TOP Network 之P2P 网络

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了区块链BaaS云服务(28)TOP Network 之P2P 网络相关的知识,希望对你有一定的参考价值。

1. 总结

  • P2P网络”不是一个单片网络,而是许多以分层方式组成的P2P网络,类似于互联网的设计。
  • 开发了优化的数据传输和Gossip协议,使带宽消耗最小化,提高节点发现的效率。
  • 将地理信息嵌入到P2P网络结构中,并实现了智能路由,以减少延迟。

1.1 Kademlia DHT

P2P网络的基础是一个修改过的Kademlia DHT工具。

使用多层的Kad网络,子P2P网络之间的关系是层次化的,每个子网都有它下面一层的信息。

网络的层次结构由zone、cluster和shard实现,zone是一种逻辑划分,而每个cluster和shard由物理的P2P Kad节点网络组成。

  • zone:一个以cluster和shard为“节点”的Kad网络。
  • cluster和shard:由物理节点组成的子Kad网络。

本质上,每个子网络充当Kad网络中的一个节点。TOP Network中的每个P2P网络都在一个更大的Kad网络中被虚拟化为单个节点。

1.2 XIP 地址

当一个节点第一次被选中并加入网络时,它会被分配一个唯一的XIP地址,该地址会映射到一个Kad节点ID。此映射存储在链上的一个选举块中。

  • 在上层,节想要搜索或连接网络中任意一个对等节点,节点只需使用XIP地址。
  • 在底层,会根据XRouting-Table将XIP地址进行转换,XRouting-Table是存储在每个节点本地,用于查找正确子网的表。

-当一个节点第一次加入网络时,诸如国家代码和网络位置等一般的地理信息即被确定。然后将这些信息编码植入NodeID中。 zone表示这种地理分区的顶层,每个zone都是一个跨越特定地理区域的Kad网络。特定zone中的集群和分片会因此位于相同的区域,这极大地降低了延迟。
eg. 一个zone可能覆盖北美,而另一个zone可能覆盖欧洲。

1.3 优化的 Gossip 和数据传输协议

发送的数据包被分成头和正文两部分。头的大小只有几个字节,而正文通常要大得多。我们不是将整个包分发给特定子网络中的大量节点,而是使用最有效的层次化组合和多点广播的方法来发送正文。但是,数据头使用可靠的Gossip协议来发送,这大大减少了在Gossip过程中正文必须传输的次数,节省了网络带宽的消耗。

1.4 可靠的 UDP

开发了自己的X-UDP协议。由于这个协议是定制的,只包含了必需的东西,所以,保持了UDP的低开销和高速度。

  • UDP是无连接和不可靠的,不能保证服务质量。
  • 谷歌的QUIC是可靠的。然而QUIC过于庞大,带来了不必要的开销。

1.5 智能路由

智能路由方案:与Chord DHT中的路由机制相似。当连接到另一个节点时,查找过程最终将提供建立直接连接所需的详细信息。此外,将通过类似于Chord的转发方案测试几个路径,比较每个路径之间的延迟,并使用延迟最低的路由。

以上是关于区块链BaaS云服务(28)TOP Network 之P2P 网络的主要内容,如果未能解决你的问题,请参考以下文章

区块链BaaS云服务(28)TOP Network 之全分片主链(Layer-1)

区块链BaaS云服务(28)TOP Network 之P2P 网络

区块链BaaS云服务(27)TOP Network 区块链平台

如何要打造区块链平台?

区块链BaaS云服务(14)华大BGI区块链“Baas接口“

区块链BaaS云服务(20)百度超级链BaaS