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:

The discussion on the Lightning-dev mailing list revolves around finding a way to have both determinism and encourage a diverse distribution of network maps. One proposal suggests treating it as a spatial indexing problem, using the lexicographical space of node ids or hashes. A quadtree could be used to divide nodes into four buckets based on the two most significant bits of their public key hash. Nodes can advertise a feature bit committing to keeping the entire routemap of the bucket matching their own public key hash. However, some members are hesitant to divide the world in such a manner, arguing that hierarchical or bucketing designs would lead to undesirable separation between endpoints and core networks. Instead, they propose that nodes remain peers by synthesizing an artificial "distance" measure based on hashing a node's public key and treating it as a 256-bit signed number in two's complement notation. The global rule would use this distance measure to choose routes while avoiding centralization and maintaining homogeneity.


Updated on: 2023-06-02T18:10:12.847806+00:00