“Shall we open a Satoshi Radio Ring of Fire?”
05/07/2021
Welcome to the Satoshi Radio – Ring of Fire homepage. In July 2021 we created the biggest Ring of Fire to date, with 65 participating nodes and 65.000.000 sats liquidity. The project is driven by our community. Developers, designers, video editors, and team leaders all joined to make this Ring of Fire a reality. This page is the place where you can find all the information you need about our Ring of Fire. We will explain what a Ring of Fire is, why it is helpful and how you can create your own.
To understand why a Ring of Fire is helpful, you need to have a basic understanding of the Lightning Network. The Lightning Network is a second-layer payment protocol, designed to scale the number of bitcoin payments possible. Payments between Nodes on the Lightning Network are routed via so-called “Payment Channels”. These payment channels are basically multi-signature wallets in which the participating nodes deposit a certain amount of Bitcoin. Only the open and close transactions are broadcasted and included on the core bitcoin blockchain, all the payments in between (state-changes) are only recorded by the two connected nodes. While this sounds good in theory, it led to an issue in practice. Channels are generally funded from one side when opened (the side of the node initiating the channel). This means that this node has local capacity, but is lacking remote capacity. The practical translation of this problem is that the node can send transactions but cannot receive transactions. To be able to receive transactions, you need nodes to open a payment channel to your node as well. That is easier said than done. How do you get other nodes to open a channel to you? This is even more difficult for new nodes that are not well connected yet. Well-connected nodes, with high uptime and well-funded channels, act as a magnet to other nodes. Node operators will find these high-end nodes on sites like 1ML and open a channel (thereby providing remote capacity to the well-connected node) without even asking. It is just not as attractive for others to provide liquidity to you if you are just starting.
“If the Mountain won’t go to Mohammed, then Mohammed must come to the Mountain”.
As a new node operating looking for the remote capacity to receive payments (and maybe even start routing payments), you need to actively search for other nodes willing to provide you with liquidity. For a while, this was mostly done by knowing the right people. Being active in Lightning Telegram groups, providing helpful information, and generally being an addition to the community does wonder if you want people to open a channel to you. While this approach works, it also has some downsides. The process (if you can even call it that) is quite ad-hoc, depends on a high level of trust, and tends to centralize around the big well-connected nodes. The network began to look like a centralized network, where we want to create a decentralized or even a distributed network.
To tackle this problem, two developers by the names of SoulExporter and Czino started documenting a structured process to: “strengthen cooperation and form strong partnerships, we have devised the concept of a ring of nodes. It serves as a template to bring node runners together and lift each other up.” They called this ring of nodes “The Ring of Fire”.
The benefits are clear: these rings strengthen the community, the network and improve the general liquidity in the network. So how does it work? Node operators looking for liquidity, more channels, or better connectivity come together in Telegram groups (like Ring of Fire) or websites (such as lightningnetwork.plus). These groups and websites act like marketplaces, where node operators can find Rings of Fire in all sizes. There are two important variables, namely: the number of nodes in the ring and the size of the channel (in satoshis). However, these two variables are advertised upfront, so that node operators know what they are getting into. Sometimes, the node operator initiating the ring will set certain requirements that other nodes need to adhere to. For instance, a ring could only be available to nodes with a minimum of 50 other channels and a node capacity of 50 million satoshis (0.5 BTC).
When the group is formed and all members agree on the ring terms, the process starts. It is a best practice that the most experienced member of the group acts as the ring leader. The ring leader is in charge of designing the ring, more specifically: putting the members in the correct order. There are multiple reasons why the order is important. Nodes that already have an opened channel should not be next to each other in the ring. Furthermore, it is often rewarding to let the bigger and more connected nodes connect to smaller nodes, to distribute capacity evenly across the ring.
After the ring leader completes the position of each node in the ring, he will inform the other node operators. Each node opens one channel to the next node in a clockwise manner. All the channels are of the size that was agreed upon. Sometimes nodes operators will also agree on the on-chain fee used to open the channel, although this is not an essential step in the process. After initiating the channel, the on-chain transaction is shared with the group and ring leader to monitor the status of the ring.
Some groups consider the ring completed after all channels are opened (and confirmed on the blockchain). Others add another step to the process: balancing the channels. Without balancing the channels, all transactions in the ring travel clockwise. This could lead to longer routing routes, which makes the ring less attractive to route transactions through. To solve this issue, rings can be balanced after all channels are opened. Initially, all nodes in the ring increase the fees on the channels to make sure that nobody routes payments through the ring while the balancing is in process. There are multiple options to balance the ring, but the most elegant and trustless way is to let the ring leader make a payment to himself that goes through all the nodes in the ring. That last part is crucial! The payment needs to be constructed so that it takes the path through the nodes in the ring, in the correct chronological order. When executed correctly, all channels between the nodes should be balanced.
Some rings will also negotiate on a share fee policy. There are two types of fees on the lightning network: base rate and fee rate. The base rate is a static fee. The fee rate is variable and depends on the transaction size. When a ring wants to act as one big node, they will set their fees to 0/0 (0 base fee and 0 fee rate). When a ring wants to attract micropayments, it could set its base rate to zero. If the ring wants to attract bigger transactions, it will agree on a lower fee rate (and higher base rate).
And that’s it. The node operators shake hands, thank each other, exchange contact information, and part ways.
Satoshi Radio has quite a history on the Lightning Network. At the beginning of 2020, we set up our Lightning node: the Satoshi Radio Lightning Node 1. We were in the fortunate position of having multiple experienced node operators in our group, who guided us through the process. Special mention goes out to lightning.watch (who provided us with initial external capacity) and Jorijn (who helped us to build the donation bot on Telegram).
Listeners of the podcast started using our guide to set up a node of their own, we kept working on the donation functionality and fixing bugs as they appeared. Looking back, this was a really fun time. Managing your nodes forces you to learn about the technical side of bitcoin. The mempool, transaction fees, difference between wallets, SSH, command line, Linux, and channel management. The most exciting part was the community that started to emerge. We came together in the LightningNL telegram group.
The big breakthrough came exactly a year later when the node software Umbrel was released. The user experience and interface of this software package were (and is) lightyears ahead of other available options. This removed the barrier to entry for less experienced bitcoin users to set up their node. In January 2021 we created a tutorial not knowing that this would lead to hundreds of new nodes.
Setting up your node became some sort of introduction ritual for the community of our podcast. This was amplified because we introduced new node owners in our podcast and welcomed them with applause. While this started spontaneously, it ended up being a catalyst for more listeners to set up their nodes. At this point, one year after the tutorial, more than 250 users set up their lightning node and send us a donation.
As this ritual evolved an issue emerged. Call it an existential void. After someone bought the hardware, downloaded the blockchain, opened a channel, and made a donation there was nothing left to do. People started asking what the next step was. For a while, there was no clear answer. It is possible trying to route payments, but most of the time that is too expensive for the regular user.
When the concept of a Ring of Fire was created it also reached our community. We talked about it a couple of times until one regular member said:
Shall we open a Satoshi Radio Ring of Fire?
This innocent idea transformed into a behemoth in a matter of weeks. Almost immediately we had sixty-five members willing to be part of the ring. We gathered ourselves in the main Telegram group. We had users designing artwork, making videos, creating routing queries, guarding the process, volunteering to be ring leaders, and more. The enthusiasm of the community was contagious, as more and more people started to creating value from their own area of expertise. It became clear that you do not have to be a programmer to create value for the ring.
We appointed our most knowledgeable user, who goes by the name of Laptopman, as our ring leader. He was assisted by one of our most technically educated users: StijnBTC. He had the difficult task of creating a ring that consists out of 65 nodes in which there are no redundant channels and the bigger nodes are distributed evenly across the ring. Because the group was so big, he decided to split the group into teams of 8 nodes (one team of 9). Every group was appointed a group leader, usually a trusted and knowledgeable member of the community.
The subgroups gathered in their own dedicated Telegram channel. Laptopman decided to open the channels in a layered approach, meaning that subgroup 1 would go first, followed by subgroup 2, and ending with subgroup 8. Following this process, the ring leader (Laptopman and Stijn) could assist the subgroups individually when issues popped up. To our surprise, it went quite smoothly. Within two days, 60 channels were opened. The last 5 channels proved to be a bit more challenging but were also opened within the week.
In the meantime, other community members started creating artwork to share on social media. Our meme god Ramon created this stunning poster, showing the ring and all participating members:
Another artist, Thomas, came up with the idea to creat a wallpaper for phone and desktop. This wallpaper serves as a souvenir and was distributed for free to all participants. The fact that this beautiful artwork was drawn by hand shows the level of dedication of all involved.
Creating a ring with 65 members is already an accomplishment, but the icing on the cake is the fact that we wanted to balance all the channels. This turned out to be just as difficult as we imagined. Balancing a channel of 10 nodes is already difficult, let alone 65. This is caused by the fact that every node and channel increases the chance of the payment route failing. But with the relentless work of our ring leaders Laptopman and StijnBTC and the responsiveness of the participants we were able to balance the ring during the Satoshi Radio live stream on the 29th of July 2021.
So what is next? We don’t know. We will probably set up more (smaller) rings. There are already dozens of listeners who missed the first ring and want to participate in the second. What we do know is that this project was totally worth it. It strengthens the lightning network, our own community, and increased our knowledge.
Special thanks to:
Below you will find helpful resources to set up your own Lightning Node and Ring of Fire.
Node Software:
Tutorials:
Documentation:
Websites:
Made with ❤ with Elementor
Satoshi Radio is onderdeel Maulwurf Media (KVK: 75370751)