We start a TCP backup ConnectJob if the first one doesn't finish in 250ms (kMaxConnectRetryIntervalMs). If DNS resolution takes a long time, we will start TCP backup Jobs will also get stuck in DNS resolution.
When DNS completes, these backup jobs (6 of them) will be attempting TLS handshakes at the same time.
On mobile, doing extra TLS handshakes can be costly. It will help if we can make the backup timeout logic aware of DNS resolution.
I haven't looked into this closely. This is filed by a Cronet consumer. I think it's worth investigating especially given CPU time and other resource is critical on mobile.
Comment 1 by xunji...@chromium.org
, Sep 26 2017