-
Notifications
You must be signed in to change notification settings - Fork 17.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
net: Happ{y,yish,ier} Eyeballs should give the preferred family a head start #8455
Labels
Milestone
Comments
>> The primary incentive for a network operator to deploy IPv6 is to reduce NAT load (and therefore save money) > really? (from APNIC region ;) but pretty interesting, is that common in ARIN/RIPE regions recently? Well, the primary incentive *should* be to preserve the Internet as a platform of freedom and innovation, but for a hypothetical ISP who only cares about cost, IPv6 makes more sense if you know that you won't have to keep scaling up your IPv4 NAT infrastructure forever. That said, I don't personally know what the operators are thinking. |
> There's room for flexibility in the details.... For the record: as discussed other issue, current implementation is happi{sh,er} eyeballs" as described in http://www.potaroo.net/presentations/2012-04-17-dual-stack-quality.pdf. |
Comment 5 by google@barrera.io: By ignoring the address ordering a more important issue arises: Since they always prefer IPv4 unconditionally, all golang applications fail to establish any network connections on IPv6-only hosts. I've seen this behavious consistenly across several golang applications: they can never connect to any host. (And I don't have any native IPv4 connectivity most of the time). |
mikioh
changed the title
net: Happy Eyeballs should give the preferred family a head start
net: Happ{y,yish,ier} Eyeballs should give the preferred family a head start
Mar 25, 2015
@pmarks-net is working on this issue. |
mikioh
pushed a commit
that referenced
this issue
Apr 10, 2015
Remove the "netaddr" type, which ambiguously represented either one address, or a list of addresses. Instead, use "addrList" wherever multiple addresses are supported. The "first" method returns the first address matching some condition (e.g. "is it IPv4?"), primarily to support legacy code that can't handle multiple addresses. The "partition" method splits an addrList into two categories, as defined by some strategy function. This is useful for implementing Happy Eyeballs, and similar two-channel algorithms. Finally, internetAddrList (formerly resolveInternetAddr) no longer mangles the ordering defined by getaddrinfo. In the future, this may be used by a sequential Dial implementation. Updates #8453, #8455. Change-Id: I7375f4c34481580ab40e31d33002a4073a0474f3 Reviewed-on: https://go-review.googlesource.com/8360 Reviewed-by: Mikio Hara <mikioh.mikioh@gmail.com> Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
CL https://golang.org/cl/8768 mentions this issue. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
The text was updated successfully, but these errors were encountered: