4

Background: I'm trying to measure common metrics (e.g. firstContentfulPaint) using selenium with chromium over satellite links under different loss and delay parameters.

Problem: When running with high delay / loss rates, chromium stops the handshake relatively early with this error message: No recent network activity after 4001103us. (The exact number of microseconds changes but is always equal to between 4 and 5 seconds).

Found out so far: This error message seems to be generated here: https://source.chromium.org/chromium/chromium/src/+/main:net/third_party/quiche/src/quic/core/quic_connection.cc;l=6323?q=%22No%20recent%20network%20activity%20after%22&ss=chromium

I believe the relevant variable is: quic_max_idle_time_before_crypto_handshake_seconds

and is set here: https://source.chromium.org/chromium/chromium/src/+/main:net/third_party/quiche/src/quic/core/quic_constants.h;l=139;drc=1b6e5b6710b7c002de308d7195326fc84d6e9b33

Question / TL;DR:

How do I change the timeout used by chromium during the handshake stage in HTTP/3 / QUIC? (without building chromium from scratch)

Thanks a lot!

curtp67
  • 41
  • 2
  • 1
    should be able to set "max_time_before_crypto_handshake_seconds" and "max_idle_time_before_crypto_handshake_seconds" using "experimental options". So something like prefs.put("max_time_before_crypto_handshake_seconds", 10); options.setExperimentalOption("prefs", prefs); (prefs is a hashmap in Java) The config constants are here: https://chromium.googlesource.com/chromium/src/+/refs/heads/main/components/cronet/url_request_context_config.cc – pcalkins Dec 27 '21 at 22:43
  • Thanks for the suggestion but unfortunately there seems to be no option to set these in prefs. As far as I know all available options are here: https://chromium.googlesource.com/chromium/src/+/refs/heads/main/chrome/common/pref_names.cc I did try out your suggestion but I didn't work. – curtp67 Dec 28 '21 at 14:23

0 Answers0