了解IOTA :尖端选择系列

扫码链接5000+新基建产业链上下游从业者,入群请备注“机智地+姓名+公司+岗位

大家好,欢迎回到我们的IOTA Tangle系列节目!在本系列的整个课程中,我们计划研究IOTA背后的基本概念,IOTA是一种革命性的加密货币,它抛弃了区块链。如果你在想:“什么是Tangle?”,那么你来对地方了。

IOTA 缠结系列回顾

从上一篇文章开始,我们开始深入了解IOTATangle,它是如何工作的,以及它为什么重要。

让我们回顾一下:纠缠是有向无环图或DAG。除非你已经是一个数学奇才,否则这个概念可能有点模糊,所以让我们来分解一下。图将对象分组;有向图意味着组中各种关系之间的顺序很重要;有向无环图没有形成循环的连续跃点(点与点之间)(这样您可以从起点开始并以循环的方式无限重复步骤)。

Tangle是什么样子的?

这有点抽象,所以本周我们计划加入更多的细节,以便从应用程序的角度更好地理解Tangle。同样,如果你想从基本的、逻辑的角度来了解更多关于Tangle本身的信息,请查看本系列的最后一篇文章。

在实践中,Tangle是什么样子的?一个简单的Tangle示意如下图所示:

了解IOTA :尖端选择系列

图1:一个Tangle示意图。
让我们从最左边的块0开始。与其他加密货币一样,IOTA也有一个所谓的起始块,它启动了整个交易链(在本例中是web)。当起始块第一次被实例化时,整个MIOTA (IOTA的代币)被放入循环中。这包括多少代币?相当多:确切地说是2,779,530,283,277,761(对于那些喜欢数学符号的人来说,大约是2.78 x 1015)。请注意,这个数字实际上是IOTA作为MIOTA的数量,指的是1,000,000 IOTA(很好,但是让人迷惑,是吗?)因此,虽然MIOTA是代币的实际名称,但是上面列出的IOTA的数量应该除以1,000,000才能得到流通中的MIOTA的数量。

交易和批准

在起始块被创造之后发生了什么?这时网络才真正启动并开始允许交易和审批。请记住,上图中的正方形表示网络中的交易,而连接正方形的边表示交易的批准。每次在网络上放置一个新交易(square)时,它都需要选择两个先前的交易来进行审批(图1左边是较早的交易,右边是较新的交易)。例如,以交易#5为例。有人决定在网络上进行交易,现在他们需要批准两个技巧(其中技巧指未经批准的交易)。我们稍后会讨论技巧的选择过程,但是现在请注意#5同时批准了#2和#3,因此,#2和#3已经批准了#1,#0也批准了#1……您明白了吧!

随着每一笔新交易进入网络并批准另外两笔提示,之前的交易审批会越来越强(类似于比特币获得一个区块被批准的高概率所需要的时间);要真正相信一笔交易是合法的——而不仅仅是一次审批,需要面对相当多的障碍。在上面的图表上还有更多的提示吗? #6是一个提示,因为它还没有被任何其他交易批准。

IOTA小贴士

现在我们了解了Tangle的基础——有交易和审批,在将一个交易放在Tangle上之前,它必须批准另外两个交易。没毛病。所以这意味着一个节点可以选择任意两个它想要的交易,然后批准它们,随后就可以正常运行了,对吗?这种选择过程不仅是整个IOTA的一个有趣方面,而且对于保持Tangle的收敛性和网络的稳定性也非常重要。在这篇文章和下一篇文章中,我们将试着更好地理解选择技巧是什么意思。

随机游走和非加权随机游走

我们可以选择任意数量的方法来指导其他交易的批准,但是在这个过程中,我们将坚持使用两个更经常被引用的替代方法:随机游走(或者更准确地说,称为“统一随机提示选择”)和非加权随机游走。提示:这两个技巧选择方法都没有在IOTA中使用;然而,如果不了解它们的基本原理及其无效背后的原因,我们就无法充分理解网络使用的加权随机游走。让我们从随机游走开始(再说一遍,更精确的术语是“共识随机技巧选择”,但是为了简洁起见,我们在本文中只将其称为“随机游走”)。

IOTA基金会已经整合了相当惊人的可视化,你可以使用它来更好地理解随机游走。在继续体验一个更复杂的例子之前,请随意尝试一下,为什么选择正确的算法来选择提示是IOTA的一个重要部分。



了解IOTA :尖端选择系列

图2:随机游走图
因此,让我们进一步研究图2。#5和#6都是动态的,因为1)已经批准了以前的交易,2)已经被以后的交易批准了。这个方法很简单,只要选择另一个要审批的交易,就可以了。但是,当Tangle变得非常严重,或者很多人同时尝试使用网络或两者兼而有之时,会发生什么呢?

提示选择可视化

这里是你在科学博物馆的孩子——我们将一起通过视觉来理解为什么选择随机交易来批准在一个大的网络上不是一个好的方法。如果你没有点击上面,可以在这里找到可视化。您将在web页面上看到两个滑动控件。第一个是当前显示在屏幕上的交易数——非常简单。下一个滑块表示网络上的交易率(旁边有趣的歪歪扭扭的是希腊字母lambda)。交易速率可以看作是不同节点交易之间的时间。这意味着在较高的交易速率下,更多的节点尝试使用一次性网络,而在较低的速率下,很少有节点尝试同时执行交易。

好了,你终于找到有趣的部分了。如果您正在跟进,那么就继续前进,将交易数设置为10(或接近10),并将交易率设置为尽可能低的值(0.1)。会发生什么呢?这形成了一个交易链(或者它将有很高的概率;你可能偶尔会得到一些除了纯链以外的东西)。在这种情况下,网络的利用率非常低,以至于一次只存在一个提示,导致下一个交易批准前一个提示,以此类推。如果交易率设置为50呢?网络被大量利用,以至于交易来得太快,任何相互批准都无法发生。所有的交易最终只批准了起始块;不用说,这对于确保跨x轴(时间单位)移动的交易有效性是相对无用的。

交易率

现在我们已经改变了交易率,让我们保持它不变,并开始改变图表上的交易数。继续将交易率设置为接近5,交易数设置为30左右。您可以将鼠标悬停在交易集上,并注意到在当前交易之前的红色路径和在未来的蓝色路径。为什么所有的灰色块都存在?这些灰色块表示提示,即使在少量交易中也有相当多的提示。如果我们将交易数量设置为300会发生什么?由于网络费率保持不变,小额比例有所下降。提高小额比率(大约20个左右)会导致小额数量急剧增加。

你可以自由发挥想象的作用,但是让我们总结一下我们在这个练习中看到的:

·非常低的交易率会导致一个乏味和不值得信任的网络,因为没有通向共同终点的不同路径。


·高交易率(相对于网络中的交易数量)将会留下相当多的孤立节点(或提示)。它们所采用的路径可能对网络有用,也可能没用,当事情扩展到实际大小(比如数千个交易)时,网络可能变得不稳定或无法聚合。

声明: 本文由入驻基智地平台的作者撰写,观点仅代表作者本人,不代表基智地立场;基智地发布此信息的目的在于传播更多信息,与本站立场无关。

发表评论

邮箱地址不会被公开。 必填项已用*标注