UCE:Caduceus P2P网络三层体系架构解析

区块链给互联网企业带来了巨大的变革,而其网络层的P2P网络的效率问题随之产生,因此,P2P网络的效率问题亟待解决。从实际的角度来看,目前大多数区块链企业的观念、技术手段都还停留在传统的互联网时代,许多公司对P2P网络、DHP网络等底层体系架构的认识仅仅停留在表面,却没有意识到P2P网络带来的根本改变。观念上的停滞,最直接的结果就是区块链网络层的传输速度迟缓,导致了一系列的网络问题。

Caduceus为什么没有单独采用P2P和Gossip协议,而是采用了三层P2P网络体系架构?Caduceus?目标十万级持续性TPS的实现框架是什么?

本文将从Caduceus平台的大规模P2P网络传输技术的角度出发,围绕P2P网络中的、拓扑网络、超立方体、DHP网络,Gossip的底层技术原理,全方位阐述Caduceus?P2P网络架构技术的三层体系架构。

目录:

一、IP体系结构

二、拓扑网络结构

三、超立方体架构

四、P2P网络架构及DHP网络

五、Caduceus网络架构的应用价值

一、IP体系结构

对于互联网体系而言,所有的互联网都是基于网络七层协议,它从低到高分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其目的是为不同计算机互连提供一个共同的基础和标准框架,并为保持相关标准的一致性和兼容性提供共同的参考。

IP的三大主要作用?

1.标识节点和链路

用唯一的IP地址标识每一个节点

用唯一的IP网络号标识每一个链路

2.寻址和转发

确定节点所在网络的位置,进而确定节点所在的位置

IP路由器选择适当的路径将IP包转发到目的节点

3.适应各种数据链路

根据链路的MTU对IP包进行分片和重组

为了通过实际的数据链路传递信息,须建立IP地址到数据链路层地址的映射

IP协议的主要作用包括:

1.标识节点和链路:?IP为每个链路分配一个全局唯一的网络号(network-number)以标识每个网络;为节点分配一个全局唯一的32位IP地址,用以标识每一个节点。寻址和转发:IP路由器(router)根据所掌握的路由信息,确定节点所在网络的位置,进而确定节点所在的位置,并选择适当的路径将IP包转发到目的节点。

2.适应各种数据链路:?为了工作于多样化的链路和介质上,IP必须具备适应各种链路的能力,例如可以根据链路的MTU(MaximumTransferUnit,最大传输单元)对IP包进行分片和重组,可以建立IP地址到数据链路层地址的映射以通过实际的数据链路传递信息。

互联网的基础是TCP/IP协议。TCP/IP协议也可以看成四层的分层体系架构,从底层开始分别是物理数据链路层、网络层、传输层和应用层,为了和OSI的七层协议模型对应,物理数据链路层还可以拆分成物理层和数据链路层,每一层都通过调用它的下一层所提供的网络任务来完成自己的需求。其中:

OSI应用层、应用层、会话层对应的是TCP/IP协议应用层。

OSI传输层的对应的是TCP/IP协议传输层。

OSI网络层的对应的是TCP/IP协议网络层。

OSI数据链路层、物理层对应的是TCP/IP协议数据链路层。

OSI七层模型和TCP/IP四个协议层的关系:

1.OSI引入了服务、接口、协议、分层等概念;TCP/IP借鉴了OSI的这些概念并建立TTCP/IP模型。

2.OSI是先有模型,后有协议,先有标准,后进行实践;而TCP/IP是先有协议和应用,再参考OSI模型提出了自己的四个协议层模型。

3.OSI是一种理论模型,而TCP/IP已广泛使用,成为网络互联事实上的标准。

TCP/IP模型可以通过IP层屏蔽掉多种底层网络的差异,向传输层提供统一的IP数据包服务,进而向应用层提供多种服务,因而具有很好的灵活性。

二、环形拓扑网络结构

网络的拓扑结构,即是指网上计算机或设备与传输媒介形成的结点与线的物理构成模式。网络的结点有两类:一类是转换和交换信息的转接结点,包括结点交换机、集线器和终端控制器等;另一类是访问结点,包括计算机主机和终端等。线则代表各种传输媒介,包括有形的和无形的.

在拓扑结构中,每一个数据节点会跟其他的2至3个数据节点进行连接,这2至3个数据节点是优选后的结果。它的传输效率和传输路径一定最短。它们首先会组成一个骨干网,其每个区域都是一个超立方体的结构,其次就是DHP。

拓扑结构的选择往往与传输媒体的选择及媒体访问控制方法的确定紧密相关。目前Caduceus是环型拓扑结构,其结构主要特征有以下几点:

1.可靠性。高效提高可靠性,保证所有数据流能准确接收;系统的可维护性,使故障检测和故障隔离较为方便。

2.延迟低,尽可能减少响应时间。

3.灵活性强。如果网络在今后有扩展或改动,能容易地重新配置拓扑结构。

4.高吞吐量。为开发者提供最大的吞吐量。

三、超立方体架构

随着P2P系统实际应用的发展,物理网络中影响路由的一些因素开始影响P2P发现算法的效率。一方面,实际网络中结点之间体现出较大的差异,即异质性。另外,实际网络被路由器和交换机分割成不同的自治区域,体现出严密的层次性。

那么,Caduceus?的升级目标十万级持续性TPS的实现框架是什么,通过超立方体架构

、DHP网络、拓扑网络技术架构,将给区块链行业带来哪些颠覆性的影响?

在Caduceus?的P2P网络层,例如,四个项目会发送4个节点,在每个节点收到之后,它并没有确定其他的节点是不是能收到,并且会再发送给其他节点。其他节点有两种做法:一是全部都发,二是不再发送给其他节点。

其实这是一个4×4,,节点越多,发送的数据越多。如果按100兆来计算的话,那就是=100万。如果用Gossip的算法,每个节点就是80个,=2000次。

但gossip协议有一个问题,因为每次只发送20个人,大多数情况下,这20个人的通道可能有80个节点,它的可靠性没那么高,何时转出去,我们并不知道。同时这20个人发出去的时候,可能要到100个节点。这也是gossip为什么要提高算法的原因。比如EOS,他们的节点之间相连。这里面很关键的因素就是在第二层的超立方体结构。

一般来讲,正方体是Q3,超立方体是Q4。超方体是一种很自然的计算机结构。如果处理器对应于Qk中的邻接节点,则它们之间可以直接通信。用来命名顶点的k元组可以视作处理器的地址。

超方体的结构:Qk中顶点的奇偶性是由该顶点的名字中包含的1的个数的奇偶性而决定的。Qk中每条边有一个偶端点和一个奇端点。因此,偶顶点构成一个独立集,奇顶点也构成一个独立集,因而Qk是一个二部图。k元组的每个分量可以取两个值,所以:

对于一个顶点,确定其名字中的一个位置并将该位置的值修改成另一个值,就可以得到它的一个相邻顶点。于是,Qk是k-正则的。由于含有n个顶点的k-正则图有nk-2/2条边,所以:?

超方体可以称为N位超立方体,可以容纳2的N次方节点,且每1个点就是1个阶段,一共8个节点。每个节点它会有一个很显著的特点。比如每1个点一定会跟周围的3个节点相连。那么它有什么特点呢?

第一,每一个节点可以跟周围的三个东西,可以变成一个N位根质数。每一个相邻点跟另外一点,只是在某一个维度上不同。比方两个节点就是在X轴上有区别。它们的区别是,它变换了中间的这一位。所以,每个节点都可以代表一个N位根数。

如果我们是r的10次方,n等于10,超立方体就能容纳1024个节点。那么我们再看这8个节点。从000开始,我们到任何一个节点,最多需要经过3个节点的转发。

简单来讲,如果节点之间传递消息的时间是10毫秒,这就意味着我们将单一节点交易广播给所有节点,最多只需要消耗30毫秒。一个三维的理念,跟它二进制数相差最大的是1。从000变到111怎么变?每次变一个数字,总共变多少次不会超过n次,因为一共就n位。在超级立方体内,消息传播到其他节点,最多经过14个点,就一定能到达目标点。

如果10毫秒作为节点之间的延迟,那就是100毫秒之内,我们就一定可以转发给所有的节点。在区块链领域的P2P网络中,最关注两个东西。第一,是这一个节点多长时间内能到达所有的节点。例如收了这个交易,才能谈出块和共识,这个就决定了交易的确认时间。

第二,是消息量。不同的网络的消息要消息量越少,花费的消息量越少。这对于我们负载的压力有些影响,我们每个节点处理的能力就越少。

一个n位超立方体,每一个节点最多发出去N次方-1数据。n位超立方体,要广播到整个超级立方体的网络里面,它总共需要2的N次方-1消息量。经过这样一个n位超立方体网络之后,整个P2P网络会变的可控。我们从一个点广播的消息,最多是需要经过10次,就能达到所有点。如果节点之间的连接速度是5毫秒,我们需要10毫秒,所有消息都会到网络里面去,每个节点都会收到,同时广播消息量最少。

总的来讲,Caduceus由于采用超立方体,节点之间在有限的时间范围内的消耗更少。能支持更多的节点,传输时间更短,同时广播时间也能控制在有限时间内。

四、P2P网络架构及DHP网络

在P2P网络中,每台计算机每个节点都是对等的,它们共同为全网提供服务。而且,没有任何中心化的服务端,每台主机都可以作为服务端响应请求,也可以作为客户端使用其他节点所提供的服务。

P2P通信不需要从其他实体或CA获取地址验证,因此有效地消除了篡改的可能性和第三方。所以P2P网络是去中心化和开放的,这也正符合区块链技术的理念。

P2P系统一般要构造一个拓扑结构,在这个结构中需要解决节点命名,出错恢复和数据查询等问题,现有的P2P网络结构有以下几种:

混合型的P2P结构

混合型的P2P结构并不是完全的分布式P2P,这种结构中仍然有服务器的存在,不过服务器的作用发生了改变,和传统的C/S相比,此时服务器仅祈祷促成各种节点协调和扩展的功能,一般这种服务器我们称为索引服务器。在这种结构下,资源并不存储在服务器上,而是存储在各个计算机上,这样一来可以大大降低服务器的负载压力,但是对服务器的依赖性依然存在。

纯分布式的P2P结构

纯分布式的P2P结构又分为非结构模型和结构化模型两种,其中非结构模型采用随机图的组织方式,各个计算机间的关系以及数据的放置方式没有严格的控制,才用洪返的方式来定位数据,该模型的主要优点是稳定性好,主要缺点是查询效率比较低;结构化模型中主要基于分布式哈希表来控制计算机的分布和数据的放置,该模型的优点是查询效率高,主要缺点是稳定性比较低。

非结构化P2P模型

非结构化P2P模型采用了基于完全随机图的洪泛发现和随机转发机制。解决了网络结构中心化的问题,扩展性和容错性较好,但是它采用应用程广播的协议导致消息量过大,网络负担过重,无法得知整个网络的拓扑结构或组成网络的各计算机的身份,另外这类系统更容易受到垃圾信息甚至是病的恶意攻击,而且由于采用洪泛方法,查询的直径也不可控,查询效率比较低下。

结构化P2P模型

非结构化P2P系统中存在着缺乏有效的可扩展的查找机制的问题。近年很多研究人员在设计可扩展的查找机制方面做了很多工作,重要成果就是分布式哈希表,基于分布式哈希表的P2P是结构化的P2P。从技术角度来看,P2P网络的发展可分为以下三个阶段:

第一阶段:集中式对等网络

这种网络采用的是中心化的拓扑结构,由于文件的索引信息都是存储在中央服务器上,每个子节点都需要连接中央服务器才可以找到资源。它最大的优点是维护简单、索引速度快。但是由于整个网络严重依赖于中央服务器,容易造成性能瓶颈和单点故障的问题。

第二阶段:非结构化的分布式网络

这种网络采用Flooding搜索算法,每次搜索都把要查询的消息广播给网络上的所有节点。当一个节点要下载某个文件的时候,这个节点会以文件名或者关键字生成一个查询,并把查询发送给所有跟他相连的节点。如果这些节点存在文件,则跟这个节点建立连接,如果不存在,则继续向相邻的节点转发这个查询,直到找到文件位置。

可以发现,当网络规模变大以后,这种搜索方式会引发”广播风暴”,严重消耗网络带宽和节点的系统资源。虽然避免了集中式对等网络的“单点故障”问题,但是效率却很低下。

第三阶段:结构化的分布式网络

目前采用最广泛的就是结构化的分布式网络,也就是基于DHT的网络。

DHT为了达到Napster的效率和正确性,以及Gnutella的分散性,使用了较为结构化的基于键值对的路由方法。

DHP网络

DHP全称是DiffieHellmanProtocol,是一种交换密钥的方式。在私钥加密体系中,密钥是非公开的,加密和解密使用的是同一个密钥、DPH提供了在公共channel传递密钥的功能。

DHP算法有以下主要恃点:

一、关联规则算法生成候选集的个数,从而提高了查找每个事务中候选项目集的速度,在很大程度上优化了Apriori算法的性能瓶颈问题。

二、减少事务数据库的内容。DHP算法生成的更小的候选集在生成2-项目集的时候,就可以通过使用剪技技术逐渐减少事务数据库的内容,包括减少整个数据库中事务的数量(即行数)和每个事务项中的个数(即每行包含的项目数量),从而显著地减少后面迭代的计算量。

三、减少数据库扫描,降低对磁盘的1/0访问。经过剪枝,要处理的候选集小了,更多的内容可以在内存中进行,而且由于DHP算法在每趟扫描数据库的时候没有得到项目集,这样可以节省某些数据库扫描.把频繁项目集的确定推迟到后一趟中,从而减少对磁盘1/0的访问。

DHP算法减少了处理的候选集,是以附加一个Hash表的计算和数据库表的存储空间(为了进行数据库的修剪)为代价,换取执行时间的快速。

另一方面,从目前底层技术角度来看,没有一条公链能在广域网环境实测达到100kTPS,这是为什么呢?让我们来做几个最简单的算术计算:

无论是以太坊最常用的Token转帐交易,还是Solana的最小packetwithpayload,每笔交易都需要至少170字节,100kTPS所需网络带宽至少为:170Bytes*100k/s=17MB/s=136Mbps。这么大的数据量,而且它还需要广播到所有共识节点,这是不可想象的。如果使用通常的Gossip协议,节点发出的数据量至少是这个数据10倍以上,而且共识节点数量也多,广播所需网络数量也就越大。

可以对比下,BTC15分钟1个块,区块大小是1MB,平均9.1kbps;以太坊最大区块大小由1.865MB增加为10MB,出块时间为15~12秒(ETH2.0),平均1~6.67Mbps。

所以,工程上设计运行指标达到10kTPS以上的区块链,都必须考虑网络问题,并提供相应的解决方法。而面对网络层存储不够的问题,Caduceus给出了有效的解决方案。

在网络通信层,Caduceus采用3层的半结构化P2P网络,拓扑层降低网络连接度,超立方体层实现快速高效广播,边缘计算层负责分布式存储和边缘渲染。从而形成带宽为200Mbps、延迟不超过300ms的大规模跨洲际P2P网络;

简单来讲,就是Caduceus在网络通信层,一天的存储量能达到1.3T,同时作为边缘计算的入口,其快速构建成一个点对点的通信网络,且具备稳定、高效的存储功能。

最后总结:

Caduceus目前采用了三层P2P网络架构:拓扑网络、超立方体和DHP网络结构。拓扑网络结构负责洲际区域之间的通信,超立方体结构负责城域网节点之间的通信,DHP网络结构是共识存储节点、IPFS节点和边缘渲染节点的通信层。

例如一个10维超立方体可以容纳1024个节点,每个节点连接最近的9个节点,每个节点向所有节点广播消息,消息转发次数不超过1023,转发条数不超过9。因此,具有广播时间短、广播消息少的特点。这有利于为caduceus的区块链和边缘渲染系统建立一个高速、低延迟的P2P网络。

通过三层P2P网络架构,Caduceus构建的基础设施将影响到元宇宙的未来。其底层网络架构切实反映了元宇宙发展的原始原则,将作为所有Caduceus生态和开发者最终受益的价值基础。

从本质上讲,Caduceus不会像以前的传统企业那样按照固有认知解决新问题,而是专注于通过区块链技术,打造全新一代的网络效率解决方案。Caduceus未来将构建一个开放自由、互通互助的元宇宙生态,成为元宇宙的重要基础设施和入口。

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:0ms0-6:402ms