[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Transport level multihoming




> We make the existing API a userspace wrapper on an improved API that takes
> multiple addresses. The resolver will return a bogus IP address which is
> specific to that boot-session of the host, the socket API wrapper will
> reconize the bogus address (because they will all be scoped out of a
> special allocated area), and query the resolver again to retrieve all of
> the real addresses then call the real API.
> 
> This would allow us to achieve application compatibility.

If you are using bogus identifiers then the system, from the applications
perspective, looks very much like a NAT.

Thus multiparty applications which pass IP addresses to peer application
instances will completely fail. It isn't clear to me that even
the ftp port command can be made to work.
(Having implemented Bump-in-the-API with IPv4 applications on an IPv6
stack by making the applications believe they connect to addresses
in 0.0.0.0/8 I have a long list of things that can break. Doing this
for IPv6 "over" IPv6 has the same issues as far as I can tell.)

I don't yet fully understand the properties of using one of the real IP
addresses. It can cause some unexpected aliasing between IP address sets
as you pointed out in subsequent emails.

  Erik