The path to reliability
Why do we need reliable nodes? Why is it essential for Lightning Network? What are the points of attention to maintain a reliable node?
Who could have imagined that a few lines of code left by Satoshi Nakamoto in Bitcoin v0.1 could lead several years later to a booming industry like Lightning Network?
By introducing payment channels in 2009, Satoshi Nakamoto already foresaw the limits of Bitcoin in its initial version as an efficient payment system at large scale.
source: github.com
However, it took a few years and several evolutions of the concept of payment channels to finally get to the current version of Lightning Network, as introduced in Poon and Dryja's whitepaper in 2016. Since then, Lightning Network adoption has grown steadily to reach a network of over 17k public nodes and a total capacity of 5000 BTC.
Bitcoin layers
The fact that Bitcoin is organized in layers can be confusing to many. However, Bitcoin is a protocol, and like TCP/IP before it, it is organized in layers. TCP/IP specifies how data is exchanged over the internet. In contrast, Bitcoin specifies how value is exchanged over the internet of money, with the power to rebuild the entire monetary and financial systems on more a robust foundation.
Bitcoin layer 1 is characterized by an unequaled level of reliability and security of its transactions. To date, Bitcoin has performed more than 750 million transactions with almost no downtime events. Yet, the number of transactions per second, or throughput, remains limited compared to centralized payment solutions.
The second layer, a.k.a Lightning Network, significantly improves the scalability of Bitcoin layer 1. It has been created primarily to provide faster and cheaper transactions, while benefiting from layer 1’s powerful decentralized security. But do we experience the same level of reliability for off-chain payment and on-chain transactions?
We have to face reality; Lightning Network doesn't yet allow the same level of reliability as current payment systems or Bitcoin on-chain payments. It is still pretty common to experience failed, or unusually long, payments. Nevertheless, Lightning Network presents many other advantages compared to existing payment service providers that make it particularly attractive:
The private nature of Lightning Network prevents any actor from obtaining precise information on the number of transactions or the reliability rate of the entire network, but every node operator can do it at his level. And this is where things get actionable; we need to run more reliable nodes to build a better network.
Areas of improvement
To match or even exceed the performance of existing payment solutions, we identified several areas of improvements:
Reachability
If we want to check the performance of a node, the first step is to make sure it is reachable. How? Our monitoring solutions offer a set of checks to monitor the status of your node:
TCP connectivity: basic tcp check to see if your node is reachable over internet (ipv4 and ipv6).
TOR connectivity: basic tcp check to see if your node is reachable over Tor network.
Lightning connectivity: checks run on multiple nodes positioned in different parts of the network to ensure connectivity and prevent false positive alerts.
The idea is to receive an alert when bad things happen and to help you maintain the continuity of your operations.
Latency
The success of a transaction depends on several factors, but latency is a parameter of primary importance.
In a previous tweet, we provided an analysis on a sample of +17k public nodes and showed the impact of connectivity (TCP or TOR) on the latency. The average latency of TOR nodes is significantly higher than that of clearnet nodes, which also highlights the trade-offs between privacy and reliability.
Explorer provides free access to latency for several thousand public nodes to allow any operator to test the latency of its neighborhood before connecting or to monitor existing peers.
Connectivity
On a sample of +18k nodes, we analyzed the minimum distance, or shortest path, required for each node to reach another node by obtaining the full graph of the network.
In that sample, we see that most nodes can connect to their peers within 3 or 4 hops. Since every node can potentially become a source of problems, the longer the distance between the sender and recipient, the lower the transaction's reliability. We designed our tools to offer a better understanding of a node’s neighborhood and help node operators to be better connected.
With Explorer, node operators get a chance to look at the graph from the perspective of their nodes. Their node becomes the “reference node”,i.e the center, and all other peers are organized from the reference in number of hops.
Liquidity
Liquidity is an essential parameter for most nodes but does not manifest similarly for all the nodes. On the one hand, low-capacity nodes generally have a higher outbound than inbound liquidity. On the other hand, high-capacity nodes tend to attract inbound liquidity. All nodes aim to keep their channels balanced to maximize the likelihood of successful payments.
Maintaining liquidity in channels can quickly become complex, especially for nodes with many channels. Liquidity has become so vast that it requires a more in-depth analysis of the problems and solutions in place and will result in a dedicated article.
Conclusion
The steady growth of nodes and capacity remains a very positive sign for the network's health and the adoption of Bitcoin in general. However, to reach mass adoption, the community needs to prove the superiority of the lightning network compared to existing payment systems. How? By building even better apps and services to provide private, faster, cheaper transactions and also by matching the level of reliability and UX that consumers already experience on existing payment rails.
The low cost of lightning transactions is already a decisive advantage, but we must improve reliability. Without better reliability, lightning probably can't cross the chasm and will impede the development and adoption of other layers.
bolt.observer wants to accelerate lightning network adoption by removing node management complexity and making it simple and accessible to every business. Using the right tools helps you be a more efficient node operator and gives you more time to focus on serving your clients.
Make sure you check out bolt.observer and feel free to reach by email , Twitter or Telegram for any question.