[josm-dev] IPv6 problems

Dirk Stöcker openstreetmap at dstoecker.de
Fri Jan 1 12:42:31 UTC 2016


On Fri, 1 Jan 2016, Simon Legner wrote:

> I tried to find some reference implementations for the RFC6555 / Happy
> Eyeballs in Java – without success. None of the popular HTTP client
> libraries [1, 2, 3] seem to have any support for this algorithm.
> Instead, they seem to attempt connections sequentially to the resolved
> addresses [4, 5].

Beside browsers nearly no software uses Happy Eyeballs as far as I know. 
Most software only does a single connect for a single IP. Some rotate the 
IP's, so each attempt tries another one. Some try one after another and so 
on.

All of these multi-connect mechanisms are workarounds. E.g. what do you do 
when you have a bad setup, where IPv6 connection is fine, but goes to the 
wrong destination. When do you decide that IPv4 must be used in this case.

That was a scenario I did see some often years ago with umanaged IPv6 
setups and service moving to another server without changing also the IPv6 
address.

Opening a TCP connection can become extremely complex when you want to 
care for all the possible misconfigurations.

We did not add multi-connect attempts for IPv4 only networks, why should 
we do it now? All IPv6 cases we had until now have been clearly broken 
connectivity. We can spend a lot of time to hide these errors, but what's 
the result? Will the users fix their setup? No.

I know these issues from 8 years ago when I started support for IPv6. 
Broken setups, providers not monitoring outages of IPv6, broken routes, 
... It's 8 years later now! You can buy working IPv6 connectivity. I don't 
see such IPv6 specific errors anymore today. Hiding the errors which 
occur with other providers wont help in my eyes - only fixing them is 
right.

BTW the stats say: Google has 10% IPv6 now. We have about 2%. I'd say it 
works when I compare this to other HTTP based services which I run which 
are in the 0.x% range still.

Ciao
-- 
http://www.dstoecker.eu/ (PGP key available)


More information about the josm-dev mailing list