Foresightnews 快讯 2024年09月03日
FLUX 短时突破 0.69 USDT,5 分钟涨逾 25%
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

互联网计算机的新P2P层采用多种技术提升性能,包括使用QUIC、引入时隙表等,提高了网络和共识性能。

🎯新P2P层提供改进的网络性能,确保共识协议所需保证,易检测节点不当行为,使用基于QUIC的新传输层,完全异步实现,防止队头阻塞问题。

💡新P2P层引入新颖的时隙表抽象数据结构,控制工件分发,保持发送速率,检测同伴不当行为,客户端将使用P2P协议单独实例。

📈新P2P层工作方式与现有不同,不总用广告,用多个流管理工件发送,引入不同通信协议,通过时隙表实现目的,解决反压问题,保证弹性和活跃性。

🚀使用QUIC异步实现及直接推送小工件提高网络性能,实验显示新P2P层块率更健壮,提升了互联网计算机性能,将转向使用QUIC。

互联网计算机区块链依赖于点对点(P2P)协议,该协议在每个子网的节点之间分发消息(工件),该协议是一组运行互联网计算机区块链的协议,包括互联网计算机共识协议、DKG(分布式密钥生成)协议或状态同步协议。

每个这样的协议都会生成工件,并且需要 P2P 层将这些工件分发给子网中的对等点,我们将这些协议中的每一个都表示为 P2P 客户端,它们是作为 P2P 层之上的更高层组件实现的。

图 1:互联网计算机的总体架构

在引入用于状态同步的单独 P2P 层之后,正在为互联网计算机协议栈中的所有其他 P2P 客户端引入新的 P2P 层,这个新的 P2P 层提供了改进的网络性能,确保了共识协议所需的保证,并且更容易检测节点的不当行为。

新提出的 P2P 层使用最近推出的基于 QUIC 的新传输层,因此,随着迁移到这个新层,互联网计算机的 P2P 层将完全停止使用 TCP,向 QUIC 的转变也意味着向 P2P 层的完全异步实现的转变。

每个请求都作为新的 QUIC 流发送,并独立于其他请求进行处理,这可以防止潜在的队头阻塞问题,至少在理论上,这些问题可能会导致活性问题。

新的 P2P 层引入了一种新颖的抽象数据结构(称为时隙表)的使用,这使得更容易控制工件到对等点的分发,同时根据连接质量保持向每个对等点足够的发送速率,并且不会影响其他同行,它还可以更轻松地检测同伴的不当行为。

随着提议的新 P2P 层被接受,每个客户端将使用 P2P 协议的单独实例,其中状态同步将使用专门为其设计的实例,其余客户端将使用新 P2P 层的单独实例将在这篇文章中详细描述。

新提出的 P2P 层的推出始于一系列 NNS 提案的采用,该提案将 HTTPS-outcalls 工件分发转变为使用新的 P2P 层,之后,所有剩余的客户端都将被转移,包括共识协议,最终使旧的 P2P 层过时。

背景:互联网计算机的 P2P 层

在非常高的级别上,P2P 协议负责将每个客户端的已验证工件池中存在的任何工件分发到同一子网中的对等点,已验证的工件池由客户端根据其向同行广播这些工件的需要来填充。

图 2:P2P 层与其客户端之间的接口

图 2 显示了 P2P 与其之上的客户端之间的接口,客户端可以在每次调用 on_state_change() 时任意更改工件池。

每个此类调用最终都会返回一组 ChangeAction,这些 ChangeAction 对应于在该客户端的已验证工件池中添加和删除工件,P2P 层应使用此信息将经过验证的池的内容传播到对等点。

互联网计算机现有的 P2P 协议基于从每个节点到其对等点的工件流,每当将工件添加到经过验证的池中时,就会向所有对等方广播广告,广告是描述工件的小消息。

发送它而不是工件本身作为节省带宽的措施,以便接收者可以决定是否要下载(可能很大的)工件,发送节点维护一个到每个对等点的 TCP 流,在该流上发送广告(以及后来根据请求的工件)。

P2P 层应保证诚实节点和可操作节点之间的工件传递,并且应对潜在恶意节点的恶意行为具有弹性。

P2P 层所有与共识相关的客户端有两个重要属性:

P1 - 活动工件的有限数量:经过验证的工件池在任何时间点的大小都是有限的,共识协议使用检查点来定期清除工件,因此池的最大大小 C 可以作为检查点间隔(以块数衡量)和子网大小的函数来计算。

P2 - 工件的显式到期:如果工件从池中删除(被清除),则不再需要将其传播给同行,或者,从接收方来看,如果没有对等方拥有某个工件,则保证接收方不需要该工件,即使在它被所有其他对等方删除时它未能接收到该工件。

这里强调这两个属性,因为它们支持重要的设计决策,这些决策将很快得到解释。

网络背压

在传统的客户端 - 服务器应用程序中,背压的概念被广泛使用:如果接收方减慢消费消息的速度,发送方的缓冲区就会填满,然后发送方的网络层必须采用以下三种路径之一:

将背压传播到应用程序层,使应用程序减慢数据生产速度

缓冲消息(可能无限期)

丢弃出口消息

在区块链上,这变得更加复杂,想象一下,发送者经历了来自某个对等方的背压,这位同伴可能是诚实的,也可能不是,采用上述任何一种方法都会导致严重的问题:

减慢数据生产速度意味着减慢区块链速度,允许此行为将成为拒绝服务(DoS)攻击媒介;

缓冲区(可能是无限期的)也将成为攻击媒介;

丢弃出口消息可能意味着无法保证向诚实但缓慢的节点传送消息。

由于选项 1 和 2 的安全风险,大多数区块链选择了选项 3,然而,选项 3 存在区块链活跃性的风险(即,如果丢弃足够多的消息,则可能会卡住),为互联网计算机提出的新的 P2P 层克服了风险,而不会丢失消息。

新的 P2P 层

新的 P2P 层的工作方式与现有的非常不同,首先,它并不总是使用广告,如果工件足够小,它们将立即发送,没有任何广告;其次,它不使用单个流,而是通过同一 QUIC 连接使用多个流;第三,因为它不使用单个流,所以它以非常不同的方式管理工件的发送;第四,它引入了一种略有不同的协议,用于同一子网中的对等点之间的通信。

让我们退后一步,看看 P2P 层在为共识协议和具有类似需求(即非状态同步)的其他客户端提供服务时的目的,目的是,对于每个诚实的节点,确保对等节点可以接收该节点在其经过验证的工件池中拥有的任何内容,当然,同时保持一切安全、可扩展和高性能。

新的 P2P 层通过引入一种称为槽表的新颖抽象数据结构来实现此目的,该结构用于跟踪经过验证的工件池的内容以及更新对等点有关该内容的过程,槽表数据结构很简单,但它准确地提供了满足要求所需的内容。

槽表数据结构

时隙表是一个抽象的数据结构,由发送端的每个节点维护,并且由接收端的每个节点推断,发送端的时隙表的大小与验证池中的活动工件的数量完全对应,如果您还记得上面的属性 P1,这意味着槽表受限于某个常数 C。

每当将工件添加到验证池中时,它就会添加到发送端槽表中的空槽中,槽更新消息正在发送给所有对等点,告诉他们槽的内容已更改,在接收侧,每个对等点根据新时隙更新消息的到达来跟踪其每个对等点的时隙表的状态。

但请注意,网络拥塞和背压可能会导致这些更新延迟,因此,接收方的视图仅最终与发送方时隙表一致。

除了工件信息之外,每个槽还具有版本号,该版本号会随着验证池的每次更新而全局递增,以便接收者在收到更新消息时可以通过仅接受版本号高于其版本号的更新来知道它是新更新还是旧更新。

图 3:槽表抽象数据结构示例

图 3 显示了此过程的示例:发送方生成工件 A 到 F,它还会在此过程中删除其中一些工件,由于删除不一定会传播到对等方,因此它们在其对等方槽表的视图中可能仍具有已删除的工件,这是正确的,因为槽的内容最终会更新并且会传播。

对于发送端的每个槽,都会生成一组新的异步任务(即绿色线程)—— 每个对等点每个槽一个任务,由于任务非常轻量级,因此对于更大的子网也可以扩展,每个任务负责可靠地推送相应槽和相应对等点的槽更新消息。

这意味着任务会重试推送更新,直到收到确认,每当槽的内容发生变化时,任务就会停止尝试推送旧内容,而是开始尝试推送新内容,慢速对等点可能会缓慢获取更新,但不会干扰更快的对等点。

这种方法有点像是上面反压讨论中方法 2 和 3 的结合(在网络层缓冲消息并丢弃消息),它解决了反压问题,同时又不放弃弹性和活跃性。

这种方法的正确性源于前面提到的客户端的属性 P1,即活动工件的有限数量,它保证了 C 槽在任何情况下都是足够的,因此槽可以被重用。

上述协议不仅允许对等点同步其已验证工件池的内容,而且还允许节点确保其对等点一次通告的工件数量不会超过 C 个,如果更新消息的槽号大于 C,则接收方可以立即推断出发送方的不当行为。

当节点在接收端注意到某个工件不再存在于其任何对等方的槽表中时,该节点可以安全地从未经验证的工件池中删除该工件(如果它仍然存在),或者停止任何尝试如果尚未检索到此工件,请检索它。

属性 P2:前面提到的工件的显式过期,保证任何对等点不再需要此类工件,因此,槽表还对未经验证的工件池的大小施加了隐式限制:未经验证的池最多只能包含来自诚实对等方的 C 个工件(因为它们在经过验证的池中应该具有大致相同的内容),并且,每个恶意对等点至多 C 个工件,因为它可能会使用 C 个完全不同的工件向 IC 发送垃圾邮件。

不到 1/3 的节点可能是恶意的,因此未经验证的池的总大小不能超过 C*4*n/3 个工件。

您可能已经注意到,上述设计描述仅涉及工件,并未提及广告,原因是广告仅仅是为了提高带宽利用率的优化,新的 P2P 层仅对大型工件使用广告(当前阈值设置为 1KB)。

小于阈值的伪影在时隙更新消息中发送,因此不必稍后由接收器显式请求,对于大于阈值的工件,会生成广告并在更新消息中发送,然后,接收者客户端可以决定是否要请求它以及从哪个对等点请求它。

提高性能

使用 QUIC 的异步实现以及较小工件的直接推送提高了网络性能,因此也提高了共识性能。

图 4:(顶部,现有 P2P 层 / 底部,新 P2P 层)在 60 个节点的子网上,在有或没有重子网负载的情况下,随时间变化的块率,并人为增加了链路延迟,垂直线表示高负载的结束。

图 4 显示了我们为比较现有 P2P 层和新 P2P 层的性能而进行的一项实验的结果,在本实验中,我们在一个数据中心中以每秒 200 x 100 KB 请求的负载运行了一个 60 节点的子网,并测量了共识区块率。

图表显示了随着时间的推移,每个节点都有一条线的块率,我们在两个实验中的所有网络链路中人工添加了 80 毫秒往返的链路延迟,以模拟地理上分布的子网。

上图显示了现有 P2P 层的块率,虽然子网成功取得进展,但在负载较高时,出块率非常不稳定,一旦负载结束,它就会恢复正常,但在高负载期间,这意味着子网范围内的块率较低,因此用户感知的延迟较高。

下图显示了新提出的 P2P 层的块率的健壮性,即使在重负载下,子网仍以非常稳定的块速率运行。

结论

用于共识和类似客户端的新 P2P 层提高了互联网计算机的性能,实现了更好的可扩展性,降低了代码复杂性,并改善了不完善网络条件下的行为。

它已经在某些子网上启用,仅适用于与 HTTPS 呼出相关的工件,并且 DFINITY 基金会很快将提交为其他客户端启用它的建议。

如果被接受并执行,互联网计算机的整个 P2P 层将转向使用 QUIC 而不是 TCP,从而使互联网计算机的网络层更加健壮、可扩展和高性能。

了解有关互联网计算机的更多信息:

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。


Page 2

ICP 生态项目率先实现“完全链上”人工智能模型

一家人工智能公司在 ICP 区块链上部署了 OpenAI 的 GPT-2,旨在测试训练、维护和部署人工智能模型的新方法。

ckBTC 是 Web3 上的比特币

持有、发送和接收原生比特币,就像互联网计算机和比特币网络是一个区块链一样,无需链桥或链下中介。

2025 香港 Web3 嘉年华定于明年四月盛大举行

作为连续举办的第三届活动,基于前两届积累的活动声望和全球影响力,2025 香港 Web3 嘉年华规模预计达到数万人!

TOKEN2049 新加坡再创记录:所有展览机会已售罄!

全球最大的 Web3 活动门票数量有限,共有 20,000 名与会者和 500 多个周边活动!

人工智能 x 区块链的现状以及下一步发展

互联网计算机正在转向 64 位 WASM,这将使我们的智能合约内存增加四倍至 16GB,足以部署轻量版 Llama 3。

联合国毒品和犯罪问题办公室黑客马拉松

价值 70,000 美元的知识代币和互联网计算机奖项和奖品

对话 TOKEN2049 创始人:全球最大加密盛会背后的七年汗水与台下功

TOKEN2049 到底意味着什么?新加坡 TOKEN2049 主办方赚了 1500 万美金是真的吗?

Kinic - 面向新网络的人工智能工具

KINIC 是一个专注于“便携式可验证 AI” 概念的 DAO,它推动使用 IC、零知识证明和定制 AI 工具模块部署模型。

布鲁塞尔 EthCC 链融合日

ICP 助力的链融合日的一些主要亮点

技往开来:2024 第十届上海区块链国际周将于十月盛大开幕

穿越十年,共鉴荣耀,2024 上海区块链国际周,一场不容错过的科技盛宴!

随着阈值 Schnorr 测试密钥的推出,下一个链融合里程碑进入测试阶段

在 ICP 上启用对阈值 Schnorr 的支持可以使容器能够签署主根交易并托管更广泛的加密资产

Chain Fusion 技术:多链生态系统的关键

我们将不同的区块链融合在一起,以推动其他链和 ICP 生态系统的价值创造。

Copper 开始支持互联网计算机的 ICRC 和 SNS 代币

Copper 已整合对 ckBTC 的支持,ckBTC 是互联网计算机上由比特币支持的代币。

ICP 代币分析:DFINITY 的 ICP 如何为去中心化网络的未来提供动力

深入研究 ICP 代币经济学及其在互联网计算机生态系统中的作用,探索网络的代币分布和实用性。

非洲的区块链革命:互联网计算机协议(ICP)的 DecaHack 计划

ICP 的 DecaHack 活动强调了区块链的变革潜力以及培养该领域人才的重要性

CV Labs 与 DFINITY 基金会建立战略合作伙伴关系

此次合作将使 CV Labs 社区内的初创企业和开发者能够直接在互联网上构建、托管和提供去中心化应用程序,绕过传统的中心化服务器。

DeAI 的下一步:链上推理实现人脸识别

Cyclotron 里程碑将 ICP 的计算能力提高了一个数量级(约 10 倍),使其成为唯一一个拥有完全在链上执行人脸识别的智能合约工作示例的区块链。

TOKEN2049 新加坡将于 2024 年九月盛大开启,将打破所有记录

今年的 TOKEN2049 新加坡将成为全球最大的 Web3 活动,将有 20,000 名与会者和超过 500 场周边活动!

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

互联网计算机 新P2P层 QUIC 时隙表
相关文章