I’ve had this idea for a while, but I’ve never got around to it so I’m calling publicly for collaborators: https://github.com/rustyrussell/million-channels-project
The project would be in several parts:
- Do some rough analysis of the current lightning network: number of (public) channels, number of nodes, distribution of channels by node, and distribution of channels in blocks.
- Apply a scaling factor to make a similar network on regtest, preferably in a reproducible manner. This would be the corpus.
- Write a program to generate all the gossip generated by that network.
- Feed the gossip into a test node and watch it die horribly.
- Fix the bottlenecks in each implementation :)
Obviously, there are an infinite number of refinements, but I expect we would get useful results out of even a simple version of this. It would be nice to get ahead of network growth and uncover issues before they become deployment problems.
Meanwhile, thanks to a nice stream of bug reports from Javier on Telgram, I’ve ordered a Raspberry Pi as my third lightning node for more performance testing.