hodlbod on Nostr: I've talked about this some in the past. This objection is definitely real, but your ...
I've talked about this some in the past. This objection is definitely real, but your numbers also aren't very realistic, since they assume a random distribution of relay usage. The distribution is actually a bell curve, which has far better characteristics when selecting relays, since you can rank relays based on many pubkeys sharing a relatively small pool.
If everyone was like fiatjaf, gossip would work the way you describe, but he's atypical — most people use hubs. And this is not a bad thing! What's bad is clients _assuming_ everyone uses hubs. Gossip gives people who want to self-host an out.
Realistically, there are way too many relays in production right now for how many people use them, and we do actually need some centralization. But my guess is that 10-20 huge hubs and a long tail of 10k relays is a pretty workable distribution at scale.
Another way to ameliorate this scaling problem is relay de-commodification. If people are connecting based on content language, policy, or community, the network will naturally shard, and there will be some pattern to which pubkeys write to which relays.
If everyone was like fiatjaf, gossip would work the way you describe, but he's atypical — most people use hubs. And this is not a bad thing! What's bad is clients _assuming_ everyone uses hubs. Gossip gives people who want to self-host an out.
Realistically, there are way too many relays in production right now for how many people use them, and we do actually need some centralization. But my guess is that 10-20 huge hubs and a long tail of 10k relays is a pretty workable distribution at scale.
Another way to ameliorate this scaling problem is relay de-commodification. If people are connecting based on content language, policy, or community, the network will naturally shard, and there will be some pattern to which pubkeys write to which relays.