Assuming nodes A and B do not have a direct channel between themselves and previously they could find an indirect path of channels and finalize their payment successfully.

After a while, they decide to make another payment, and to avoid waiting for another routing, they prefer to use the same previous path. However, since the network state after each transaction is changed (even without opining new channels or closing previous channels and even all nodes remain alive, yet the direction of the balances in individual channels has been changed).

A and B therefore need to be sure about the situation of previous path they had used in their previous payment.

Is there a reliable approach for that?


Short answer: no (unless you control all nodes on that path)

However the problem about uncertainty is part of the routing anyway. You know the topology of the network with the cltv deltas, routingfees and capacity of ech channel. Yet you never know how the capacity is split into balance of a channel. so once your lightning nodes computed a potential path the onions are constructed and the routing process starts and will only be successful if all channels on the way have enough satoshis on their side to forward the payment. The next time this path is supposed to be used again they have to construct the onion and get feedback from the nodes on the path to see if the payment can actually be routed through.

So to some degree it seems to be of little use to store previous paths that have been used.

if however channels would be closed or new capacity is spliced in (once splicing is implemented) nodes would get this information via the gossip protocol.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.