@boxy tell me if I'm missing something, but it seems like maintaining routing tables won't scale well.
Here's my thinking: there's no hierarchy to destination addresses (I.e. there no equivalent to /16 or /24 subnets), which means every transport node needs to keep track of all the individual addresses instead of just route prefixes. If there are billions of destinations, at 16 bytes each, that would require about 100G of ram.
You could reduce this by maybe a factor of 10 by using a big bloom filter that contains pairs of (address, route). But 10G is still pretty large. And you'd need two of them if you ever wanted to expire old entries.
@boxy tell me if I'm missing something, but it seems like maintaining routing tables won't scale well.
Here's my thinking: there's no hierarchy to destination addresses (I.e. there no equivalent to /16 or /24 subnets), which means every transport node needs to keep track of all the individual addresses instead of just route prefixes. If there are billions of destinations, at 16 bytes each, that would require about 100G of ram.
You could reduce this by maybe a factor of 10 by using a big bloom filter that contains pairs of (address, route). But 10G is still pretty large. And you'd need two of them if you ever wanted to expire old entries.