Chromium crashes when using gQUIC version Q043

74 views
Skip to first unread message

Naveenraj Muthuraj

unread,
May 10, 2023, 3:21:48 PM5/10/23
to QUIC Prototype Protocol Discussion group, Paul Lu
Hello ,

I am trying to run some experiments using gQUIC version Q043 to measure Page Load Time difference between older gQUIC version and present IETF QUIC v1.

I am using latest chromium source code and quic toy server as QUIC server.
While I am able to successfully talk gQUIC Q043 using quic toy client. but, When I try to use Chrome as the client I am running into below error. Which seems to be related to TLS.

I know gQUIC and IETF QUIC crypto handshake is very different, and also found this line in chromium source code
// KeyUpdates are used in TLS, but we no longer support pre-TLS QUIC.

Does this mean I cannot use gQUIC Q043 using latest chrome ? (Even though quic source code support this version )

Any hints on how to run gQUIC Q043 using chromium as client will be of great help.

Thanks!

Error Info:

Chrome command (headless)
out/Default/chrome  --no-sandbox --headless --disable-gpu --remote-debugging-port=9222  --user-data-dir=/tmp/chrome-profile1  --enable-benchmarking --enable-net-benchmarking --ignore-certificate-errors-spki-list=$(cat net/tools/quic/certs/out/server_pub_spki.txt)  --no-proxy-server   --enable-quic --quic-version=Q043  --origin-to-force-quic-on=www.example.org:443   --host-resolver-rules='MAP www.example.org:443 127.0.0.1:6121'

Error
DevTools listening on ws://127.0.0.1:9222/devtools/browser/9b86797b-0f66-457f-9b09-6ad71c4e33b5
...
[0510/123454.601065:FATAL:quic_chromium_client_session.cc(1433)] Check failed: connection()->version().UsesTls().
#0 0x7fbeae55e59c base::debug::CollectStackTrace()
#1 0x7fbeae51549a base::debug::StackTrace::StackTrace()
#2 0x7fbeae515455 base::debug::StackTrace::StackTrace()
#3 0x7fbeae23d3a9 logging::LogMessage::~LogMessage()
#4 0x7fbeae1e876c logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage()
#5 0x7fbeae1e8799 logging::(anonymous namespace)::DCheckLogMessage::~DCheckLogMessage()
#6 0x7fbeae1e82dd logging::CheckError::~CheckError()
#7 0x7fbeac86141e net::QuicChromiumClientSession::GetSSLInfo()
#8 0x7fbeac98345e net::MultiplexedSessionHandle::SaveSSLInfo()
#9 0x7fbeac98341d net::MultiplexedSessionHandle::MultiplexedSessionHandle()
#10 0x7fbeac8594b1 net::QuicChromiumClientSession::Handle::Handle()
#11 0x7fbeac8766f8 std::__Cr::make_unique<>()
#12 0x7fbeac86db29 net::QuicChromiumClientSession::CreateHandle()

Fan Yang

unread,
May 10, 2023, 3:30:38 PM5/10/23
to proto...@chromium.org, Paul Lu
-Does this mean I cannot use gQUIC Q043 using latest chrome ? (Even though quic source code support this version )
That's correct. Pre-IETF QUIC code path has been removed in https://chromium-review.googlesource.com/c/chromium/src/+/4265375.
Thanks, Fan

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/proto-quic/f67a0067-870d-4a9c-a52a-4078ffc2e816n%40chromium.org.
Message has been deleted

Fan Yang

unread,
May 10, 2023, 4:28:38 PM5/10/23
to Naveenraj Muthuraj, QUIC Prototype Protocol Discussion group, Paul Lu
You are welcome.
> I guess building the older version of the Chromium is the only way to use gQUIC versions.
Yes. Alternatively, you can revert https://chromium-review.googlesource.com/c/chromium/src/+/4265375 in your local repository.

On Wed, May 10, 2023 at 3:46 PM Naveenraj Muthuraj <nmut...@ualberta.ca> wrote:
Hi Fan,

Thank you for your prompt response and the for linking the Change Info. 
I guess building the older version of the Chromium is the only way to use gQUIC versions.

Thanks,
Naveenraj
Reply all
Reply to author
Forward
0 new messages