美文网首页
什么是致密区块

什么是致密区块

作者: 区块文 | 来源:发表于2019-06-25 14:20 被阅读0次

简介/致密区块 

当全节点之间已共享许多相同内存池(mempool)内容时,使用简单的技术,就可能减少将新区块广播至全节点所需的带宽数量。发送方节点向接收方节点发出致密区块“概要内容”,这些概要内容包含以下这些信息:

新区块的80字节区块头;

缩短交易标识符(txids),其目的是为防止拒绝式服务攻击;

一些发送节点预测的,但接受对等节点不具备的完整交易

接收方节点将尝试使用接收到的信息,以及在其内存池(memory pool)当中的交易,来重新构建整个区块。如果它仍然缺失某些交易,它将请求广播节点。

优点/致密区块

这种方法的优点,是交易数据仅需在最佳的情况下进行发送(当它们在初始广播当中),其大幅度地降低了总带宽。

此外,致密区块中继提议,还提供了第二种操作模式(称为高带宽模式),其中接收方节点,直接请求它的一些对等节点来发送新的区块,而无需先获得许可,这可能会增加带宽(因为在同一时间内,两个对等节点可能会发送同一个区块),但它进一步降低了区块传播的时间。

模式/致密区块

传统的中继方式,一个区块(灰色长条)是由节点A负责验证,然后节点A将发送一条inv消息到节点B ,以请求允许发送这个区块。节点B回复区块的请求(getdata),然后节点A发送区块。

在高带宽中继中,节点B使用了sendcmpt(1) (发送致密区块)来告诉节点A,它想要尽快接收区块。当一个新的区块抵达时,节点A会执行一些基本的验证(例如验证区块头),然后自动将区块头、缩短交易标识符(txids)以及预测缺失交易(如上所述)发送给节点B。节点B尝试重新构建区块,并请求任何仍处于丢失状态(getblocktxn)的交易,它们是由节点A发送(blocktxn)的。在此背景下,在将区块添加到各自的区块链副本之前,两个节点都完成了完整的区块验证,并和以前一样保持了相同的全节点安全性。

在低带宽中继中,节点B使用了sendcmpt(0)来告诉节点A,它想要尽量减少带宽的使用。当一个新的区块抵达时,节点A会完整验证它(因此它不会中继任何无效区块)。然后它会询问节点B是否想要区块(inv),这样,如果节点B已从另一个对等节点收到了区块,它就可以避免再次下载。如果节点B不想要区块,它要求在致密模式下(getdata(CMPCT))进行,节点A发送区块头、缩短交易标识符(txids)以及预测丢失交易。节点B试图重建区块,请求仍处于丢失的交易,而节点A发送这些交易。然后节点B完整验证这些区块。

相关文章

  • 什么是致密区块

    简介/致密区块 当全节点之间已共享许多相同内存池(mempool)内容时,使用简单的技术,就可能减少将新区块广播至...

  • 致密友

    致密友 by Alex Lee 你告诉我,...

  • 致密友

    不知道你最近怎么样,莫名想你 。 说实话,我现在也不是很好 此前一个月,什么也没做,毫无长进。虚度了时光,浪费大好...

  • 致密友

    思语和珈艺是在高中的时候认识的。 一开始她们并没有看对眼,总觉得对方是个不易接近的人,然而高中毕业十年后,她们却各...

  • 起源库:必读, 为何要学习没有区块链的“区块链思维”

    什么是区块链思维 区块链思维是什么?什么是区块链? 区块链是传销?。 起源库: 什么是区块链? 起源库: 最近你王...

  • 什么是区块头?如何通过区块链API获得区块头信息?| Token

    什么是区块头? 我们知道区块高度其实就是'区块的编号”。具体什么是区块高度可参见什么是区块高度?,众多的区块组成了...

  • 什么是区块链? CNS积分怎么赚钱

    什么是区块链, 怎么赚钱什么是区块链?CNS积分怎么赚钱 什么是区块链?比特币是运行在区块链平台上的应用程序,区块...

  • 什么是区块

    要了解区块链,首先我们需要了解什么是区块。在比特币网络中,数据会以文件的形式被永久记录,我们称这些文件为区块。 1...

  • 什么是区块链?

    什么是区块链? 一、什么是区块链? 区块链英文是blockchain,block是账本的意思,blockchain...

  • 邪气

    大凡陰陽的关键,以陽气的致密最为重要。陽气致密,陰气就能固守于内。陰陽的协调配合,相互为用,是维持正常生理...

网友评论

      本文标题:什么是致密区块

      本文链接:https://www.haomeiwen.com/subject/pbvtcctx.html