DNS probe on very slow networks

14 views
Skip to first unread message

Camille Lamy

unread,
Aug 24, 2015, 8:03:19 AM8/24/15
to loadi...@chromium.org, net...@chromium.org, bmcq...@chromium.org, ta...@chromium.org
Hi loading-dev,

I'm just back from vacations in Africa, and have been trying to use Chrome on very slow networks there, which proved to be a very unusable experience. My particular point of issue was the DNS probe. I was on a super slow network, where the average time to do a DNS request is close to the timeout on the DNS probe. This means that half of my requests would get killed by Chrome thinking I did not have Internet, when I actually had it. In particular, it was impossible to get a Google search to complete in Chrome (however it was fine in GSA, which I think has been optimized for slow networks).

Based on this I was wondering how we set our timeout limits for DNS probe, and if it would be possible to have them adapt to the network latency (possibly taking into account its variance as well)? Eg if it takes on average 9s to do a DNS request, then a timeout of 10s on the DNS probe is probably not a good idea.

Thanks,
Camille

Matt Menke

unread,
Aug 24, 2015, 8:15:49 AM8/24/15
to Camille Lamy, loadi...@chromium.org, net...@chromium.org, Bryan McQuade, ta...@chromium.org
The network stack HostResolver doesn't actually use its own timeout - it does retry requests (After 6 seconds and then after 18 seconds (cumulative), while not cancelling the original GetAddrInfo calls).  Worth noting that GetAddrInfo can't actually be cancelled prematurely, since it's a sync API.

DNS probes for internet connectivity do use a timeout (They don't use GetAddrInfo), but we only use them after we encounter a network error, and only use them to modify the contents of error pages.  They should be using a timeout retrieved from the system DNS configuration, I believe.

--
You received this message because you are subscribed to the Google Groups "net-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to net-dev+u...@chromium.org.
To post to this group, send email to net...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/net-dev/CAMKsNvozVbptdtncsyCXYC_6%2BTdh8dn7kaPyPKAV5WjjtZN2_w%40mail.gmail.com.

Chris Bentzel

unread,
Aug 24, 2015, 9:34:31 AM8/24/15
to Matt Menke, Camille Lamy, loadi...@chromium.org, net...@chromium.org, Bryan McQuade, ta...@chromium.org
Which platform was this on? DNS resolution is handled differently depending on the platform. 

Matt Welsh

unread,
Aug 24, 2015, 12:12:08 PM8/24/15
to Chris Bentzel, Matt Menke, Camille Lamy, loadi...@chromium.org, net...@chromium.org, Bryan McQuade, ta...@chromium.org
Please, please tell me you got a netlog? :-)


You received this message because you are subscribed to the Google Groups "Chromium Loading Performance" group.
To unsubscribe from this group and stop receiving emails from it, send an email to loading-dev...@chromium.org.
To post to this group, send email to loadi...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/loading-dev/CAAuiYA9SN38ueLhyOKmGFbrRBXiV9DLDf8Wov4bcTHWOGYedLA%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages