sackof.w4ge asked over 2 years ago

Network building vs network usage + Channel sizes & rebalancing.

I can't quite understand...

Each node runner needs to balance their channels. They do this by making use of other indirect channels... which then means that those channels are now out of balance... which means that another node runner will try to balance their channels... which could undo the original balancing.
We end up with a never ending rebalancing of the network which doesn't provide any value (i.e. no input from a 'user' or output to a 'vendor').
It seems to me that:
  1. A large amount of sats is required for each channel to reduce to need/frequency of rebalancing.
  2. any channel which is under the 'large' size either shouldn't be open in the first place or should never be rebalanced.
  3. the constant flux of the network channel balances will surely add to transaction failures.
  4. any automated rebalance feature baked into node builds could cause more harm than good (either from a 'sats lost' or a on-mass scheduled event point of view).
  5. joining swaps is pointless for the majority. only the sat rich can realistically build resilience in the network or usefully join mega hubs together. any full user can of course skip the use of other's nodes by opening a channel directly (if possible) to a vendor directly.
  6. non-node runners who are using LN (via WOS for example) will be unaware of the mayhem going on in the network unless their transactions fail... if transactions fail though then the end user will use something else and bad news travels faster than good...

Happy to be wrong on any of the above.

3 Comments

LN+

LN+ Admin wrote over 2 years ago

You don't HAVE TO rebalance your channels. This is a common misconception. You can, and there are benefits I will explain later. But it's not a must. You can use the network to send and receive and route without ever rebalancing. Let me explain.

Let's say for simplicy sake, you joined a swap with 2M and you're A. Nodes are connected as without any rebalancing:
  • A > B: 2M on A's side
  • B > C: 2M on B's side
  • C > A: 2M on C's side

Possible situations:
  • A wants to send to B it's easy, they already have a channel and all the capacity is on A's side. No fees paid.
  • A wants to send to C it requires one hop, through B, and it's also no problem because there is capacity on A's side to B, and there is capacity on B's side to C. Routing fee to B is paid.
  • A wants to receive from C, they can easily because all capacity is on C's side. No fees paid.
  • A wants to receive from B, they can easily because B has capacity on their side to C, and C has capacity on their side to C. Routing fee to C is paid.

Same applies to B and C too. So everyone can pay and receive from everyone without any rebalancing. Also, everyone can route to everyone else without rebalancing as well. Rebalancing is not required for full operation within a triangle. And you can extend this to larger shapes or megastructures of multiple shapes connected together via connecting nodes.

So, why do people rebalance? When you have capacity in both directions within a channel it creates more opportunities for routing, but not within a triangle, but within large complex megastructures that arise organically within the Lightning Network. For example if you're connecting two nodes that are not otherwise connected, if you have a balanced channel you will be able to route for them in both directions.

But balanced channels come at a cost:
  • You have to obviously pay rebalancing fees, so you have to be very careful to only rebalance if you expect to make more money from routing then the cost of rebalancing. You basically need to exploit nodes that have low channel fees, exhaust their capacity in a certain direction by rebalancing through them, and then effectively forcing the network to use your path with higher fees to route transactions. I'm not saying this is wrong, because it's part of the incentive structure. Just saying this is what is happening. It is also beneficial for the network to be able to rely on an always balanced node, so the network doesn't have to look for new paths all the time. The rebalancing channel does the scouting work for the network and then charges a fee for this work done.
  • When you rebalance you reduce your channel size in each direction naturally. For example, in the above example, let's say the 3 nodes are rebalanced to have 1M on each side instead of 2M on one side. Now the maximum payment any node can do is 1M as opposed to 2M. It would always be a direct payment and thus cheaper, but smaller single payment. You can of course still do 2 x 1M payments, but the second one will still require a routing fee. So rebalancing only makes sense for large channels where this effect of reducing single payment capacity doesn't matter much.


sackof.w4ge

sackof.w4ge wrote over 2 years ago

Thanks LN+ :) Makes sense.

So as an LN supporter who cannot put enough in to hope to become a profitable routing node I will be joining swaps knowing that I'll not rebalance any channels.

My only aim with LN is to add to the size and resilience of the network in what little way i can.

What I'd like to see is more ways to transact for everyday items/services. I'll search these out and orange pill where appropriate.

Cheers, w4ge


GLN

GLN wrote over 2 years ago

My only aim with LN is to add to the size and resilience of the network in what little way i can.

Well in that case I'd definitely think about proper fee-management & rebalancing. When you rebalance with a profit and set fees so that you can rebalance with a profit, you are actually helping the network to find an optimum of prices and distribution of liquidity. This enhances the resilience of the network. Doing nothing only creates one more node with hinders the flow of sats.

Please login to post comments.