I've seen theoretical estimates of Lightning Network's potential transaction throughput range from 100k or more to millions of transactions per second. My question is, how do you come up with an estimate like that? How does the number of active nodes in the network play into it? And what ultimately causes the limit? Is it network speeds, hardware limitations or something else?
It really depends on whether you model random payments (or actual economic activity), some of which will need only a hop or two, while others may need upwards of 6 hops between nodes on different continents. Alternatively you could push the theoretical limit to its maximum and choose payments that only need a single hop between two peers who are close geographically. This gets your theoretical limit up but doesn't resemble reality. A single channel between two geographically close peers using the Lightning protocol just pinging satoshis back and forth is technically transaction throughput but observing this kind of behavior driven by actual economic activity would be rare. If this is the kind of theoretical limit you are interested in though then the bottleneck is network latency and geographical distance between channel counterparties.