科普:閃電網(wǎng)絡(luò)的入賬容量問(wèn)題
幾個(gè)星期以來(lái),比特幣社區(qū)的很多人一直在討論閃電網(wǎng)絡(luò)(Lightning Network)的 inbound capacity 問(wèn)題。越來(lái)越難以收到閃電火炬,加上 Bitrefill 啟動(dòng)了 Thor,還有 LND 放出了 Lightning Loop,都讓人們更加關(guān)注這個(gè)問(wèn)題。在本文中,我會(huì)解釋這個(gè)問(wèn)題的形式及其根源。我們也會(huì)分享一些很容易被忽略的洞見(jiàn)。
本地和遠(yuǎn)端的余額
要理解入賬容量,我們得先深入了解閃電網(wǎng)絡(luò)的第一個(gè)基本模塊:支付通道。這個(gè)概念可能你在之前也聽(tīng)過(guò)了,所以我們直接跳到跟入賬容量有關(guān)的部分。
我們先考慮一個(gè)單獨(dú)的通道,然后慢慢提高思考的復(fù)雜度。
一個(gè)支付通道開(kāi)通后,它就鎖住了恒定數(shù)量的一些 btc,這個(gè)數(shù)量叫做 “ 通道容量 ”。參與支付通道的雙方各自擁有這個(gè)容量的一部分。在你自己這邊的余額,我們叫 “ 本地余額 ”,而在你的交易對(duì)手那邊的余額,叫 “遠(yuǎn)端余額 ”。你的本地余額和遠(yuǎn)端余額在關(guān)閉通道之前可以更新任意次,但通道容量,如果你不關(guān)閉通道或者拼接通道,是無(wú)法改變的。
- 支付通道就像沙漏:雖然沙子的總量是恒定的,你可以任意把沙子移動(dòng)到其中一端。但如果你想改變里面沙子的數(shù)量,那就非打破這個(gè)沙漏不可 -
- 你跟 Robert 的通道里面有 8 btc,你的本地余額是 5 btc,你的遠(yuǎn)端余額是 3 btc -
每次支付,都是把你的本地余額轉(zhuǎn)一些給你的交易對(duì)手,也就是減少本地余額,增加遠(yuǎn)端余額。類(lèi)似地,當(dāng)你收到一筆支付時(shí),你的本地余額增加,數(shù)額恰好等于你的遠(yuǎn)端余額減少的數(shù)額。
- 當(dāng)你給 Robert 支付 1 btc 之后,你的遠(yuǎn)端余額增加了 1 btc -
入賬和出賬的容量
現(xiàn)在,我們更清楚地理解了什么決定了通道的容量,以及本地和遠(yuǎn)端余額是怎么更新的,現(xiàn)在來(lái)想想,如果你是一個(gè)閃電網(wǎng)絡(luò)的節(jié)點(diǎn),是網(wǎng)絡(luò)的一部分,將有何區(qū)別。
兩個(gè)交易方并沒(méi)有直接相連的支付通道。但是,他們可以通過(guò) 路由節(jié)點(diǎn) 來(lái)支付。在整個(gè)支付路徑上,每一次中轉(zhuǎn)都要用到一個(gè)雙向的支付通道。因此,我們剛剛講到的支付通道特性適用于每一次中轉(zhuǎn)。
假設(shè)你想通過(guò)閃電網(wǎng)絡(luò)來(lái)賣(mài)貼紙。那么,你需要與至少一個(gè)閃電網(wǎng)絡(luò)節(jié)點(diǎn)建立連接。你仔細(xì)挑選了一個(gè)節(jié)點(diǎn),保證這個(gè)節(jié)點(diǎn)可能跟你的潛在客戶 Sophie 和 Angela 相連。我們把這個(gè)節(jié)點(diǎn)叫做 “lnTop”。
- 你跟 InTop 開(kāi)啟了一個(gè)通道,鎖入了 2 btc。你的本地余額是 2 btc,遠(yuǎn)端余額是 0 btc -
現(xiàn)在,Angela 想要買(mǎi)一些你的貼紙,并通過(guò) lnTop 來(lái)支付。但是,你跟 lnTop 的通道中,你的遠(yuǎn)端余額是 0 呀,lnTop 并不能給你支付。因此,lnTop 無(wú)法路由這筆交易。
在一個(gè)時(shí)間點(diǎn)上,你可以收到的 btc 數(shù)量(也就是 “入賬容量”),是由你的遠(yuǎn)端余額決定的。很簡(jiǎn)單嘛,如果你相連的節(jié)點(diǎn)只能發(fā)送 1 btc 給你,你是沒(méi)法收到比 1 btc 更大的數(shù)額的。類(lèi)似地,你可以發(fā)送的 btc 數(shù)量(“出賬容量”)是由你的本地余額決定的。
在你決定跟 lnTop 開(kāi)啟一個(gè)通道時(shí),你需要確定自己想鎖定多少 btc 進(jìn)去,也即你初始的本地余額是多少。lnTop 也一樣,他們的選擇決定了你初始的遠(yuǎn)端余額。這就有了一個(gè)重要影響。雖然你能夠決定自己的初始本地余額(自己的初始出賬容量),但你沒(méi)法控制自己的初始遠(yuǎn)端余額(和入賬容量)。
如果你今天要啟動(dòng)一個(gè)自己的閃電網(wǎng)絡(luò)節(jié)點(diǎn),并且只是隨隨便便地選了一個(gè)節(jié)點(diǎn)來(lái)開(kāi)啟通道,你可能會(huì)發(fā)現(xiàn),你根本沒(méi)有入賬容量可用,即,你壓根沒(méi)法通過(guò)閃電網(wǎng)絡(luò)來(lái)收到支付。聽(tīng)起來(lái)對(duì)商人很不友好,對(duì)不對(duì)?
好消息是,你有很多辦法來(lái)提高自己的入賬容量,比如自己先發(fā)起支付,或請(qǐng)求其他節(jié)點(diǎn)提供容量(并付錢(qián)給他們)。這篇文章講解了入賬容量問(wèn)題的不同解決方案。
就這么簡(jiǎn)單?
嗯 …… 也不是。即使你知道了自己如何能提高遠(yuǎn)端余額,可能也沒(méi)法解決入賬容量問(wèn)題。關(guān)鍵在于:并非所有通道的入賬容量都相同。要理解這一點(diǎn),你要先理解,在支付路由的過(guò)程中,閃電網(wǎng)絡(luò)的其它部分,發(fā)生了什么事情。我們把上圖所示網(wǎng)絡(luò)的通道容量都劃出來(lái),這樣更好理解了。
- 這是 lnTop 往通道里充值了 3 btc 之后的情形。在網(wǎng)絡(luò)中,所有節(jié)點(diǎn)都跟自己相連的節(jié)點(diǎn)有專門(mén)的本地和遠(yuǎn)端余額 -
你從 lnTop 那里獲得一些入賬容量之后,Angela 最多也只能給你發(fā) 2 btc,因?yàn)槟阍?lnTop 那里的入賬容量超過(guò)了 2 btc,但 lnTop 在 Angela 處的入賬容量只有 2 btc。
- Angela 給你發(fā)送了 1 btc,路徑上所有節(jié)點(diǎn)的余額更新。她還能再給你發(fā) 1 btc -
但是,在這個(gè)網(wǎng)絡(luò)里,Sophie 就沒(méi)法給你發(fā)送 1 btc。你可以看看 Sophie 給你支付的路徑上的通道容量狀態(tài),你的確有 3 btc 的入賬容量,但 lnTop 沒(méi)有 lnFirst 的入賬容量。
- lnFirst 沒(méi)法路由 1 btc 的支付給你。所以 Sophie 沒(méi)法給你支付 -
對(duì)于支付,每個(gè)參與路由的節(jié)點(diǎn)和你(接收方)都必須跟上一個(gè)節(jié)點(diǎn)有足夠的入賬容量。所以,雖然你能解決跟相鄰節(jié)點(diǎn) lnTop 的入賬容量問(wèn)題,但 lnTop 可能跟相鄰的節(jié)點(diǎn)沒(méi)有足夠的入賬容量。Lightning Labs 的閃電網(wǎng)絡(luò)基礎(chǔ)設(shè)施總監(jiān) Alex Bosworth 幾周以前指出了這個(gè)問(wèn)題。
還有一個(gè)事實(shí),讓這個(gè)問(wèn)題很難解決。那就是,“揭示所有節(jié)點(diǎn)的本地和遠(yuǎn)端余額” 這件事,在閃電網(wǎng)絡(luò)上是做不到的。作為網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn),你只知道通道容量,并不知道這部分容量在兩個(gè)參與者之間是如何分布的。
誰(shuí)會(huì)受這個(gè)問(wèn)題影響?
閃電網(wǎng)絡(luò)中,并非所有的節(jié)點(diǎn)都有相同的需要。從上面的例子中,我們可以辨認(rèn)出至少 3 類(lèi)節(jié)點(diǎn)。
商家節(jié)點(diǎn)
我們用 “商家節(jié)點(diǎn)” 來(lái)稱呼那些主要是收賬的節(jié)點(diǎn)。在上面的例子中,“你” 就是一個(gè)收賬節(jié)點(diǎn),因?yàn)槟阕铌P(guān)心的就是收到貼紙買(mǎi)家的支付。因此你需要入賬容量。記?。翰粌H你要有足夠的入賬容量,買(mǎi)家到你的整個(gè)支付路徑上的節(jié)點(diǎn)都必須有足夠的入賬容量才行。
終端用戶節(jié)點(diǎn)
這些節(jié)點(diǎn)主要使用閃電網(wǎng)絡(luò)來(lái)發(fā)賬。偶爾他們會(huì)從朋友或者閃電應(yīng)用處收到錢(qián)。Sophie 和 Angela 都是終端用戶。對(duì)于這個(gè)群體,關(guān)鍵是要連上資金充足而又與商家相連的節(jié)點(diǎn)。他們既需要入賬容量,也需要出賬容量,全看他們?cè)谔囟〞r(shí)間的需要。
路由節(jié)點(diǎn)
這些節(jié)點(diǎn)是路由支付并從中賺取手續(xù)費(fèi)的節(jié)點(diǎn)。LnTop 和 lnFirst 都是這樣的節(jié)點(diǎn)。他們的工作是發(fā)現(xiàn)有需要的收款方,比如你,小鎮(zhèn)上最大的貼紙商家。對(duì)終端用戶,他們需要足夠的入賬流量;對(duì)商家,他們需要出賬容量。此外他們還得跟市場(chǎng)上的其他服務(wù)商競(jìng)爭(zhēng),要確保自己總是在線。賺點(diǎn)錢(qián)不容易,對(duì)吧?
結(jié)論
我們從單一通道開(kāi)始討論,講解了網(wǎng)絡(luò)內(nèi)通道的特點(diǎn),最終使用 “節(jié)點(diǎn)信息全公開(kāi)” 的假設(shè)討論了入賬容量問(wèn)題。
我們將入賬容量定義為給定時(shí)間點(diǎn)在閃電網(wǎng)絡(luò)中你可以收到的 btc 數(shù)量,并推論了它依賴于你的遠(yuǎn)端余額。
入賬容量問(wèn)題可能是閃電網(wǎng)絡(luò)在啟動(dòng)階段會(huì)遇到的問(wèn)題。因此,如果流動(dòng)性在整個(gè)網(wǎng)絡(luò)中的分布更充分、更好,問(wèn)題將減輕。我們會(huì)繼續(xù)撰文探討閃電網(wǎng)絡(luò)在早期會(huì)遇到的問(wèn)題。
以上就是科普:閃電網(wǎng)絡(luò)的入賬容量問(wèn)題的詳細(xì)內(nèi)容,更多關(guān)于閃電網(wǎng)絡(luò)入賬容量介紹的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
你可能感興趣的文章
-
科普:閃電網(wǎng)絡(luò)常見(jiàn)問(wèn)題及解決方法匯總
這篇文章主要介紹了科普:閃電網(wǎng)絡(luò)常見(jiàn)問(wèn)題及解決方法匯總的相關(guān)資料,希望這篇有關(guān)閃電網(wǎng)絡(luò)的常見(jiàn)疑問(wèn)的文章,能夠幫助各位投資者對(duì)閃電網(wǎng)絡(luò)有一個(gè)更加深入透徹的了解。…
2021-12-14 -
區(qū)塊鏈掃盲:閃電網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)速成指南
這篇文章主要介紹了區(qū)塊鏈掃盲:閃電網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)速成指南的相關(guān)資料,希望這篇關(guān)于閃電網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)速成指南的文章,能夠幫助到各位朋友對(duì)閃電網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā)的理解?!?/p> 2021-12-13
-
閃電網(wǎng)絡(luò)和雷電網(wǎng)絡(luò)是什么?閃電和雷電網(wǎng)絡(luò)的區(qū)別是什么?
這篇文章主要介紹了閃電網(wǎng)絡(luò)和雷電網(wǎng)絡(luò)是什么?閃電和雷電網(wǎng)絡(luò)的區(qū)別是什么?的相關(guān)資料,希望這篇關(guān)于閃電網(wǎng)絡(luò)和雷電網(wǎng)絡(luò)的介紹,讓更多的人能夠深入了解這兩者網(wǎng)絡(luò)的區(qū)別?!?/p> 2021-11-09
-
AToken閃電網(wǎng)絡(luò)的優(yōu)勢(shì)和操作方法
這篇文章主要介紹了AToken閃電網(wǎng)絡(luò)的優(yōu)勢(shì)和操作方法,AToken閃電網(wǎng)絡(luò)是更適應(yīng)于BTC小額轉(zhuǎn)賬場(chǎng)景,目前AToken已正在布局閃電支付場(chǎng)景,通過(guò)AToken閃電網(wǎng)絡(luò)可以實(shí)現(xiàn)秒轉(zhuǎn)賬、…
2021-03-29