Routemap scaling (was: Just in Time Routing (JIT-Routing) and a channel rebalancing heuristic as an add on for improved routing success in BOLT 1.0)



Summary:

In a discussion on the Lightning Network (LN), ZmnSCPxj suggests that non-existent channels are not safe to propagate on the network, as they can generate fake channels and waste network bandwidth. He also proposes a good pruning heuristic, "channel capacity", which can be checked on-chain, and it is reasonable to delete low-capacity channels when the routemap memory is becoming close to full. However, Ariel Lorenzo-Luaces is concerned about these heuristics because nodes can game them, potentially neglecting low-capacity but possibly reliable channels. Ariel suggests a system where public nodes advertise aggregate-channels that don't actually exist directly but are instead hidden paths for the source node to rely on payments without computing or knowing the exact sub-routes. ZmnSCPxj suggests replacing "aggregate-channel" with "high-capacity channel," which are more likely to successfully route in either direction, and if they fall into an inability to route, intermediate nodes have other lower-capacity channels that they can use JIT-Routing with to improve the directionality of the high-capacity channel. Finally, nodes still need to track their direct channels, and payee nodes making BOLT1 invoices could also provide `r` routes in the invoice from nodes with high-capacity channels, so that even if the intermediate channels are pruned due to low capacity, it is possible to get paid.


Updated on: 2023-06-02T18:15:53.471755+00:00