中间节点在闪电网络中扮演着重要的角色,允许用户与他人进行交易,而不需要与每个对等点打开一个直接的支付通道。没有中间节点,闪电网络将失去其大部分吸引力。
在上一篇文章中,我们解释了为什么路由支付会使中间节点的通道失衡,以及这将如何导致再平衡。我们将再平衡定义为节点在支付通道中增加其余额,而在另一个通道中减少其余额,从而保持路由支付的策略操作。
为了更好地理解本文,您应该熟悉支付渠道和闪电网络的基础知识。如果你没有,我们强烈建议你先阅读之前文章。
再平衡
Carol是闪电网络的一个节点。她与Alice和Bob有联系,他们想要进行交易,但是没有直接的支付渠道。Carol将它们之间的支付路由为一个中间节点。
为了转移支付,Carol必须预先为她的频道提供资金。每次她发送一笔付款,她在发送方通道中的余额就会随着交易金额的增加而增加,而在接收方通道中的余额则会减去她收取的费用而减少相同的金额。
路由支付往往会使Carol的通道失衡,最终她将没有足够的资金在通道中路由支付。当这种情况发生时,Carol需要再平衡她的频道。
Alice想付2个比特币给Bob,但是Carol不能转帐。她需要再平衡她的渠道。
循环支付
概述和优点
循环支付是一种完全脱离链的再平衡策略,其中节点通过链接的支付通道的循环路径进行支付。要使路由是循环的,至少需要3个节点。
Carol可以使用Alice, Frank, Bob和她之间的闭合路径逆时针方向支付给自己。
1 BTC支付减少了她与Alice在通道中的余额1,增加了她与Bob在通道中的余额1。她现在可以将一个2BTC的付款从Alice转到Bob。
循环支付是一种完全的离线再平衡策略;这意味着Carol可以成功地再平衡她的频道,而不需要向区块链广播任何交易。她不需要支付连锁费用或等待确认时间。
Carol还可以精确地控制何时进行再平衡。她所要做的就是给自己一个有利的回报。
缺点
循环付款不是免费的。由于至少涉及三个节点,其中一个是她自己,Carol必须为路由她的付款至少支付另外两个节点。循环越大,她需要支付的节点就越多。
此外,这一战略需要有一个循环和资金充足的路线。Carol只能支付这条路径中最小的余额:她在C-A频道的余额,Alice在a - f频道的余额,Frank在F-B频道的余额,Bob在B-C频道的余额。这意味着,她再平衡支付的规模受到再平衡时刻的路径的限制。航路越长,获得较小上限的机会就越大。
如果Bob碰巧是一位商人,那么要找到一条资金充足的路线就变得更加困难。在这种情况下,鲍勃收到的钱将远远多于他寄出去的钱。迟早,连接到他的所有节点都会耗尽它们的通道。在这种情况下,Carol和其他邻近节点,比如Frank,都无法找到一条资金充足的循环路线。
最后,我们来分析循环支付对网络路由容量的影响,即一个节点在给定时刻可以向另一个节点发送的BTC总量。
为此,让我们引入原子多路径支付的概念。AMP发生在支付被分割成不同的路径,但却是自动完成的时候,这意味着它要么完成完整,要么完全不完成。
只要有一个循环路径,Alice就有两种可能的路由向Bob支付聚合路由容量的费用。
Alice可以支付Bob (R1 + R2) BTC。R1和R2分别为路径A-C-B和路径A-F-B的路由容量。
因为循环支付只在一个封闭的路径内重新分配金钱,所以Alice和Bob之间的路由容量保持不变。虽然Carol成功地增加了她的路由容量,但这是以Frank的容量为代价的。Alice仍然可以付给Bob同样的钱。
Alice仍然可以支付Bob (R1 + R2) BTC。(R1 + P)和(R2 - P)分别为路径A-C-B和路径A-F-B的路由容量,P为Carol的循环支付。
请注意,在最后的例子中,为了简单起见省略了费用。通过添加费用,路由容量实际上得到了修改,但只是按费用的大小排序。这应该(希望)与支付的大小相比非常小,因此路由容量在实际应用中保持不变。
费用管理
概述和优点
费用管理是一种完全的链外再平衡策略,节点利用收费作为一种机制,从经济上激励和获取朝着有利方向发展的支付。这可以从收取比其他途径更低的费用,一直到完全不收取费用,甚至支付少量的激励(有时称为负费用)。
这个策略可以被看作是Bob和Carol之间的双赢方案。他可以从使用特定路径的费用中获得折扣,而她可以再平衡她的渠道。
费用管理是离线的,因此不涉及比特币费用或停机时间。此外,如果仅仅是折扣就足以激励Bob选择Carol的路径,那么这个策略对Carol来说可能是免费的。
缺点
实际上,费用管理更多的是一种机遇,而不是一种应对渠道失衡的深思熟虑的策略。Carol不能真正控制何时发生再平衡,充其量她可以利用特定的场景,并激励自己被选为某个支付的路由器。
这是一种竞争战略,对实现的复杂性有两大影响。
首先,需要Carol对其他节点的费用管理有完整更新的信息。她的费用现在取决于Frank。同时,此策略仅在Bob拥有每个路径路由费用的完整信息时才有效。在更私有的网络中,这可能是个问题,因为节点无法访问所有数据。
其次,目前还不清楚这种策略可能需要多少资金,因为仅仅打折是不够的。例如,如果Bob碰巧是一个商人,那么Frank和Carol很可能都希望将付款从Bob路由到Alice。然后,Frank和Carol可能会进入一场“竞争”行为,并达到负费用的地步。
最后,这种再平衡策略并没有解决网络中路由容量差的问题。与最开始的情况恰恰相反;支付至少可以遵循两条路径,并且特定的节点可以再平衡其路由通道。
拼接
概述和优点
拼接是一种链上再平衡策略,节点在单个交易中关闭并重新打开支付通道,从而改变其锁定的资金数量。当节点重新打开锁定更多资金的通道时,将发生拼接。如果锁的钱少,就叫做剪接。
Carol关闭了她与Alice的通道,并打开一个新的,承诺2 BTC。她现在有一个BTC解锁。
Carol关闭了与Bob的通道,并打开了一个新的通道,提交了额外的BTC。
当使用拼接时,Carol只需要考虑她的相邻节点,就可以简单地忽略网络中其他节点的情况。不需要其他路由,因为它只涉及发送方、接收方和中间节点。这意味着splices可以在连接不良或资金不足的网络中工作。
而且,Carol只获得关于她相邻节点的信息,这就足够决定什么时候再平衡。这就是拼接适用于私有网络的原因。
最后,很容易看到拼接会改变网络的路由容量,因为以前不可能进行的支付可以在再平衡之后进行。这说明了为什么即使Bob碰巧是个商人,拼接也可以很好地工作。
在再平衡之前,Alice可以按照路由容量为1的路由路径a - c - b向Bob支付费用。
再平衡后,Alice可以按照a - c - b路由向Bob支付路由容量为2 cons的费用
缺点
虽然拼接比在两个不同的交易中关闭和重新打开频道要方便得多,但它们仍然涉及到向区块链广播交易、支付链上费用和等待确认时间。
正因为如此,拼接可能是一种代价高昂的再平衡策略。在比特币看涨的情况下,链上费用极有可能上涨,这直接影响到一个节点的成本。
结论
循环支付、费用管理和拼接并不排除解决方案,它们很可能在闪电网络中共存。它们在不同的级别和不同的网络拓扑中工作。
也许最重要的区别是拼接实际上可以改变网络的支付能力。因此,拼接可能迟早需要应用程序。
另一方面,循环支付和费用管理可能会被用作延迟拼接的策略。一旦网络连接更好,资金更充足,我们很可能会看到这些事情发生。
评论
查看更多