so imagine instead of an Internet, we had a network of networks.
oh, yes, so that was what the Internet was.
but now we have broken it into little fiefdoms and we need to reconnect it.
so the classic thing to do is to build an overlay. IPv6, with tunnels to get you around - think of the tunnels like phone lines which glued together the original IPv5 intenret -stafeful, but soft stateful (soft, as in democracy, as opposed to hard state which is like royalty:)
another way to do this is to provide address translation rather than encapsulation - realm specific IP - getting between realms needs either a small number of nodes which are intra-realm reachable, but also have globally reachable addresses, or else a mapping service and a ream naming system (think IPNL _ use Fully Qualified Domain Names and map them to places -) - this COULD use a hash function for each realm - indeed the set of nodes that get you between realm A and realm B could just be a DHT.
You could put the info in border routers, and combine this with a scheme to get better scaling of addressing and routing and still retain multi-homing, but providing mapping, encapsulation and a service to find the nodes that will get you between the above. If the map is from an end system identifier (IPNL used FQDN but you could just use, say, realm specific or legacy IPv4 addresses) and a location identifier (also known as a route hint), then maybe LISP is your friend:
Perhaps, although for me, the protocol overhead in LISP looks a bit messy - you could use my mad idea of sending multiple packets with different addresses to punch your way through the address translation points (TNA - see
for a daft take on this:)
but this is mostly so i can use the phrase
Peer of the realm:)
(this should really be on my internet blog, or compsci blog, but i liked the balanisation political aspect too much:)