Marlin:Layer 0的可扩展之道

(晨光照射原野,梵高)

关于公链的可扩大之前聊过很多次,不过多半时刻商量的是Layer 1和Layer 2的可扩大,比如分片、Plasma、ZK-Rollup、Optimistic Rollups、状况通道、侧链等。而今天蓝狐笔记存眷的是Layer 0。

经由过程Layer 0的可扩大性会给以太坊等区块链带来什么?

Layer 0与可扩大性

节点是构成区块链收集的基本。节点记录交易、介入验证、提议区块、获得嘉奖等等。而这些节点要杀青共鸣,须要保持一致性、可用性,须要互相沟通。节点之间沟通时光的长短对区块链的可扩大性具有本质性的影响。

Layer 0是节点之间传递信息的通信层。信息沟通的构建办法跟杀青共鸣的效力直接相干。而共鸣的杀青速度则与区块链的可扩大性和安然性相干。从这个角度,为晋升区块链的可扩大性,Layer 0也是可以做出供献的。

区块链收集跟中间化收集不合的一点是,区块链收集是无须许可的,它要推敲来自互联网本身的限制。假如是中间化企业,可以采取私家线路,经由过程CDN和SD-WANs等进步收集机能。而对于去中间化的收集来说,这是不实际的。

此外,在如今的加密鼓励体系中,挖矿节点之间存在竞争关系。一个矿工向其邻近节点共享所开采区块后,而邻近节点有念头不进一步传播该区块,因为如许可以获得一些优势。也就是说,如许的鼓励机制,不只没有鼓励某些节点加快传播其已知信息,还存在延缓信息传播的可能性。这也晦气于可扩大性和安然性。

那么,上述的这些问题有没有机会解决?

Marlin的Layer 0

Marlin是枪鱼,据说是世界上游得最快的鱼。Marlin是办事于区块链的通信层,它欲望在其推动下,区块链收集的速度越来越快,好像枪鱼一般。Marlin欲望经由过程Layer 0为区块链可扩大性的成长供献出本身的筹划。

(枪鱼据说是游速最快的鱼,Marlin.pro)

为晋升区块链的TPS,一般来说,从链上角度,有两种办法,一个是增长区块容量,一个是缩短出块时光(这里暂不推敲横向的分片)。

假如采取大年夜区块的办法,节点须要花费更长时光来验证收到的信息,这会延缓区块广播的速度;假如缩短出块时光,提赶过块的速度,会见临分叉问题,个中一个原因也是受制于区块传播的速度。要想提赶过块的速度,须要加快区块的传播。而今朝的区块传播速度晦气于提赶过块速度。当人们将比特币的区块大年夜小从1M上限修改为32M甚至2G时,或者将出块时光从10钟阁下缩短到更短时光时,确切可以进步可扩大性,然则它带来更大年夜的问题,比如全节点掉落线,无法同步数据的情况增多,甚至出现区块须要重组等情况。一旦区块过大年夜,出块时光过快,收集的一致性或可用性就出现问题,个中很重要的原因之一,就是全节点受到收集和硬件的物理前提限制,无法及时验证和广播。

而这就是Marlin作为Layer 0试图要解决的问题。它试图在今朝的物理前提限制情况下找到最快的区块传播速度筹划,从而进步可扩大性,缓解Layer 1 公链的通信延迟懊末路。在Marlin协定的解决筹划中,有两个核心,一个是中继收集,一个是经济鼓励机制。

在Marlin收集中,有专门用于中继的节点,叫做Marlin Node,节点互相之间传递信息,可以加快传播速度。Marlin借鉴了CDN加快技巧,对收集进行了划分,是以也有很多中继收集。

今朝收集层也晦气于去中间化协定,今朝有些协定的机制设计中,因为存在竞争关系,矿工有动力中继其区块并接收最新的区块,但他们很少有动力主动传播其他矿工挖的区块,矿工欲望起首挖出区块。节点等待其他节点进行广播,而本身搭便车,可以节俭带宽费用。同时,这种机制也会导致中间化,因为最终来说,只有那些大年夜的节点才有念头转发这些交易。为解决自私挖矿等问题,Marlin融合了经济鼓励的机制。在其收集中的节点,只要成功中继信息,就可以获得嘉奖,由此鼓励信息传递的速度。经由过程引入带有鼓励机制的收集层,还可以防止垃圾信息/DDoS等进击。

除了为公链供给可扩大,Marlin还可认为DeFi应用供给加快的办事,Siddhartha是Marlin的开创人,也公链项目Zilliqa前核心开辟者之一。他曾经提到:“比如在DeFi范畴,Marlin的中继框架可以供给外围接口,这些接口为DeFi交易者供给低延迟的优势。在DApp早期起步阶段,查询Infura、Alchemy以及Graph等API时,加载时光时常高达10秒,异常迟缓。Marlin Cache可以将这种延迟降低至大年夜约250毫秒,可以在DApp中实现类似于web2.0的机能。”

所有P2P应用都是用收集层进行节点沟通,这导致任何应用去中间化存储或计算的应用也可以应用Marlin的办事。比如当前应用IPFS的应用不得不经由过程中间化的CDN来赞助用户晋升机能。Marlin的优势在于它可以让这些应用Filecoin/Arweave的应用即便没有CDN也可获得好的机能。从这个角度,Marlin类似于Web 2时代的Akamai。

Marlin的Layer 0可扩大之道

Marlin在Layer 0上解决公链的可扩大性问题,核心源于它在两个方面的设计:中继收集和代币鼓励机制。

1.中继收集

Marlin协定是构建中继收集的协定。遵守其协定请求的Marlin节点构成了中继收集。除了Marlin节点之外,还有审计者节点,由它们确保中继节点和中继收集遵守其机能和SLA包管。Marlin收集的应用者可以有矿工和全节点,矿工应用Marlin中继收集广播其数据包和区块,而全节点(钱包或商家等)应用Marlin收集接收最新交易和区块。是以,Marlin收集本质上也是中继收集的市场。

(Marlin收集的重要介入者,Marlin.pro)

在上面这张图中,Marlin将其介入者分为临盆者、接收者、中继者以及中继集群(中继收集)。个中临盆者是将区块引入中继收集的一组节点。临盆者平日是矿工,他们会尽快将区块广播出去。临盆者对区块有效性负责,假如引入无效区块的临盆者会遭受处罚。

接收者包含其他矿工、交易所、钱包、区块浏览器或其他节点等,他们欲望尽快接收到区块。接收者须要向协定付出订阅费来成为接收者。中继者是从临盆者那边将区块中继给接收者的节点组。中继者会获得嘉奖以尽快传播区块,只有那些介入中继传播区块的节点才有机会获得收益。中继者集群是一组由中继者构成的中继收集。他们集体负责传播区块,并由此获得嘉奖。

更进一步说,Marlin协定收集是怎么架构起来的?

Marlin收集可分为四个部分:创建、治理、数据包广播和监督。

*创建

Marlin收集是由很多Marlin节点构成的,要想成为Marlin节点,起首须要运行Marlin中继节点软件,还须要质押必定量的代币,这鄙人文会提到。这些节点须要达到必定的请求,例如收集连接优胜、地位分布更接近于终端用户等。

成为Marlin节点之后,节点和中继收集可以向其目标用户(如矿工和全节点)展示自身的特点、功能以及价格,个中包含IP地址、中位数带宽、经度、纬度、质押代币所对应的公钥等。而矿工和全节点等可以根据需求选择中继收集。这就形成了一个交易市场。

节点可以创建中继集群,设置许可最大年夜参加的节点数、根据地舆地位参加最大年夜和最小的节点数、节点最小的质押额、节点的最小设备请求(带宽、CPU内核等)、最小的SLA请求等。一旦创建中继收集,它会主动涌如今Marlin市场上。

*治理

节点创建一个中继收集之后,须要进行治理,个中包含节点的参加、参数的调剂、节点的退出等。

一个节点要参加某个中继收集可以经由过程被邀请或申请参加的方法。在经由多半票赞成后可以邀请一个节点介入个中继收集,被邀请节点只要在邀请过时前宣布接收邀请交易即可参加。别的一个方法是申请参加,假如多半票赞成,则可以参加该中继收集。

一个中继收集创建之后,它并非是一成不变的。固然一开端个中的节点都邑遵守最初的参数。不过跟着后续节点的参加,这些节点也会有谈话权。根据用户需乞降中继收集竞争情况的变更,中继收集的参数也可能会见临调剂。这些都须要经由过程治理进行更改。今朝Marilin收集采取投票的方法进行参数调剂。假如少数节点不赞成,它们可以选择分开并创建本身的中继收集。

最后,节点退出某个中继收集是须要打呼唤的。假如节点不打呼唤随便退出某个中继收集,对于该中继收集和其用户会很晦气。在Marlin的中继收集中,假如节点悄无声气地退出或提前退出,是要被消减质押代币的。节点退出中继收集可以提议退出声明交易。假如中继收集找到替代节点,它许可该节点在其声明期停止前退出。此外,还有一种强迫退出的模式,假如多半节点认为某个节点行动不端也可以将其踢出中继收集。

*数据包广播

矿工和商家等是Marlin中继收集的用户,它们只需集成Marlin SDK即可跟Marlin节点交互。为了供给灵活办事,Marlin采取模块化构造,协定开辟者可以编写插件来自定义一些功能,且能在Marlin节点、全节点上针对其协定相干的数据包履行自定义代码。例如选择不合中继收集的策略;知足必定前提下随机选择中继收集,或者经由过程硬编码中继收集的列表等。

当矿工生成区块,它可以根据本身的策略发送给中继收集。这时可能会见临付出费用的问题(覆盖进口节点的区块验证成本),不过付出费用会增长额外延迟。还有一种变通的方法是请求矿工进行代币质押,削减第一跳的区块验证,假如是垃圾信息则可以实施处罚。

Marlin的中继收集是网状收集,其组播路径根据来源进行优化。它会赓续监控不合路径的丢包率、带宽和等待时光,由此实现尽可能在短时光内完成区块的组播传送。

在接收区块和交易方面,矿工订阅邻近的Marlin中继节点以接收新区块和交易的通知。只要Marlin节点收到新区块,它会发送其哈希给所有的订阅者。接收新区块和交易的订阅者须要付出小额费用。同时,为避免额外延迟,节点可以直接推送给白名单矿工,后续再付款。

*监督

Marlin协定须要全盘懂得节点的机能,这为后续的奖惩供给根据。监督的操作重要由审计节点来实施。

这些审计节点起首是匿名的,它们看上去就跟通俗的矿工或全节点一样。审计者收集是自力于中继收集的。为了确认特定节点是否表示优胜,审计者节点会经由过程谢林点机制来进行投票,由此确认这些节点是否知足其SLA义务。假如节点达不到请求,则其质押代币会被消减。

整体来说,Marlin的中继收集由一组可用的Marlin节点创建,创建之后须要对收集进行腻滑治理,以免影响中继收集的竞争力。而矿工或全节点订阅中继收集,并根据需求随机选择中继收集来广播其区块和交易,可以确保其区块和交易在最短时光内广播给其他订阅者。最后为了包管中继收集的持续优胜运行,须要经由过程监督机制来处罚不相符请求的节点,由此构建运作优胜的中继收集。

2.代币鼓励机制

Marlin收集的原生代币是POND,100万个POND为MPOND。POND代币一共100亿个,这意味着MPOND有10,000个。Marlin的原生代币是实现Marlin收集持续运转的关键。其代币具有价值序言、治理、质押等诸多用处。

(Marlin的代币流向,Marlin.pro)

起首POND可以用来付出费用,鼓励中继节点,也用来克制节点作恶。

上文提到过,当前的区块链收集的节点在某些情况下并不会主动转发交易和区块。Marlin的代币机制试图解决这个问题,试图鼓励节点有念头转发交易和区块,鼓励节点持续晋升其机能并尽快转发数据包;试图削减节点在传播路径中创建sybil身份的念优等。

中继节点的费用分派机制须要知足:抗孤立性;保持次序。为解决这个问题,交易和区块须要包含附加到最初内容主体的见证。一个是签名链接:传播路径中每个在转发其内容的节点附加公钥,并应用私钥对其主体进行签名。此外,还有密钥列表,节点将新创建的密钥对<kpub,kpriv>附加到见证中,并对见证签名。

对于节点来说,老是转发数据包相符其好处。整体来说,Marlin设立的鼓励机制,用于鼓励节点转发数据包,鼓励节点有更高的机能表示。与此同时,体系是否可以或许抵抗女巫进击和有较低的广播开销则取决于市场的竞争情况。假如市场经济不激烈,节点更偏向于设置昂扬费率,并在路径中创建sybil身份以增长其收入份额。假如市场存在竞争,下流节点可以选择。在如许的机制下,节点会偏向于赓续进步机能,并跟其他节点进行竞争,而试图创建sybil身份的窗口机会不会太多。

在Marlin收集中,它并没有采取费用共享构造,而是让市场介入者来决定。采取市场的方法来决定费用,可以让介入者评估风险和回报的价值。此外,采取市场决定的方法,也推敲到了办事差别化的身分等身分。

中继节点可以获得两部分费用:一部分是中继信息的费用收益,可以覆盖带宽和基本硬件等成本支出。中继者根据其完成的工作量获得响应比例的费用,这部分费用来源于接收者的订阅费用。第二部分费用是收集嘉奖费用。这部分嘉奖重要用于鼓励早期的中继介入者,跟着收集应用增长,嘉奖价值会逐渐降低,因为他们可以从中继信息的办事费用中获得大年夜多半收益。

审计节点是确保节点保持必定机能的重要角色。审计节点之所以愿意介入审计,最重要的原因是审计节点可以获得收益。Marlin协定中有一个审计嘉奖池,Marlin节点会按期供献审计费用,可以看作为成员费用或保护费用,还有节点存入或提取质押代币时,也会有一部分代币作为费用进入嘉奖池,可以看作为进入或退出费用。此外,假如产生代币消减,这些处罚费用也会进入嘉奖池。这也让审计节点有动力去发明那些不知足请求的节点。

而对于区块链临盆者,他们平日是矿工,他们有天然的需求尽可能快速地广播其区块,这部分介入者无须鼓励。不过,假如有恶意临盆者进行垃圾信息进击,他们质押的代币会被消减。是以,POND代币也具有处罚感化。

其次,POND代币可用于质押,获得成为中继节点的资格。

在早期Marlin收集中,必须质押100万个POND(1个MPOND)才有资格成为节点,才有机会获得节点的费用。假如中继收集节点在特准时光内无法交付区块和交易,其质押会被消减。去中间化收集的审计者会监督中继收集是否达到请求。此外,POND代币的持有人可以将其代币委托给中继节点。质押代币可以获得POND的代币收益。

假如早期介入的节点浩瀚,则会锁定大年夜量的POND代币,因为每个节点须要质押1MPOND代币。按照代币总量,从理论上,早期最多不会跨越1万个中继节点。

再次,POND代币也是治理代币。

在Marlin收集中,只有MPOND代币的持有人才能提议提案并介入投票。

最后,POND可以用于推动生态的启动。

POND代币在Marlin收集早期也可以起到启动生态的感化。Marlin有一个Flowmint筹划,它可认为layer 1平台社区的相干者供给必定的鼓励。个中包含带宽挖矿、layer 1代币持有人、安装了Marlin网关的验证者和委托者等,经由过程这些鼓励筹划可以让生态体系中的更多人在早期介入进来。

通用化的Layer 0

综上所述,Marlin之所以有机会赞助公链晋升可扩大性,其核心之处在于构建一个优化过的中继收集体系。在这个中继收集体系中,中继者愿意以最短时光将临盆者的区块和交易广播给接收者,与此同时可以获得响应的费用收益。在这个中继收集体系中,其代币机制起到了重要的维系感化,可以将全部中继收集市场持续运转起来。

Marlin的中继收集并不办事于某个特定的区块链,它是采取模块化设计,可通用于各类区块链收集。在以太坊、波卡、Cosmos、Solana等公链寻求更好的可扩大性的路上,类似于Marlin如许的Layer 0可以助一臂之力。即便不合的Layer 1和 Layer 2存在割裂状况,Marlin也有机会受益于全部区块链行业的成长。

对于全部区块链成长来说,它不仅须要在layer 1和Layer 2上寻求可扩大,也须要在Layer 0上寻求可扩大。跟着Layer 0、Layer 1以及Layer 2的持续优化,公链将来的可扩大性有机会达到新的高度。

------

风险警示:蓝狐笔记所有文章都不克不及作为投资建议或推荐,投资有风险,投资应当推敲小我风险遭受才能,建议对项目进行深刻考察,慎重做好本身的投资决定计划。