From ZmnSCPxj at protonmail.com Mon Apr 1 03:31:31 2019 From: ZmnSCPxj at protonmail.com (ZmnSCPxj) Date: Mon, 01 Apr 2019 03:31:31 +0000 Subject: [Lightning-dev] 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) In-Reply-To: References: Message-ID: Good morning Rene, > > Maybe I oversee something - in that case sorry for spamming the list - but I don't understand how you could know the distance from yourself if you don't know the entire topology? (unless u use it on the pruned view as you suggested)? That is correct, and the reason that it would still lose determinism (and thus be hard to test anyway), as I lamented. At least for a pruning heuristic like you proposed (i.e. probabilistically prune channels) it is possible to make deterministic with a fixed RNG seed. For instance a node might concatenate its own public key with the short-channel-id (in some fixed byte order) of the channel, hash the concatenation, then use the hash as the seed of an RNG that gives 1 bit, and prune the channel if the bit is cleared (to remove half the channels in the routemap). > > On the other hand querying for a certain depth would be possible with the suggested `query ask egonetwork` in case for depth 3 one would have to peer with the nodes from the friend of a friend network.? But for this, you would require that every node also keep every channel with depth less than your maximum query amount. Perhaps for friend-of-friend, it might be sufficient to just query a peer to give its own direct public channels, which it needs to remember anyway. But that is basically only a depth of 2 (if we count depth of 1 as your direct channels). Regards, ZmnSCPxj