Chrome does not display HTTP/3 Response

284 views
Skip to first unread message

Sin-Woo Bang

unread,
Mar 22, 2023, 2:26:48 AM3/22/23
to QUIC Prototype Protocol Discussion group
Hello everyone,

I encountered an error regarding QUIC, and would appreciate your advice, if possible.

I set up a TLS certificate using Let's Encrypt and powered a server supporting HTTP 1 to 3.
I found the server working properly with HTTP 2.
In order to test QUIC, I added the argument --origin-to-force-quic-on and I checked my backend log, which indicated that the response was delivered successfully.

[2023-03-22 01:54:10 -0400] [28] [INFO] 172.19.0.1:39402 - - [22/Mar/2023:01:54:10 -0400] "GET /api/health_check/ 3" 200 2 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36"

Allow me to break down this log, particularly this part "GET /api/health_check/ 3" 200.
The part indicates that an HTTP/3 request was conveyed on "/api/health_check/" and that returned 200, which is a successful code.

I was expecting the response message to be shown as received. However, as you can see in the below image, the browser insisted that "This site can't be reached" with the error code "ERR_QUIC_PROTOCOL_ERROR".

Screenshot 2023-03-22 at 3.00.40 PM.png

Here is a detailed log emitted from Chrome stdout/stderr, with increased verbosity.

[12329:259:0322/150326.515199:VERBOSE1:mutable_profile_oauth2_token_service_delegate.cc(263)] MutablePO2TS::RefreshTokenIsAvailable
[12329:36867:0322/150326.520062:VERBOSE1:media_stream_manager.cc(1582)] RFAOSF::Core() [process_id=17, frame_id=4]
[12343:14083:0322/150326.520152:VERBOSE1:network_delegate.cc(35)] NetworkDelegate::NotifyBeforeURLRequest: https://MYHOST:MYPORT/
[12343:14083:0322/150326.522373:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.522644:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.536123:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.536272:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.536310:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.536368:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.544226:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.544312:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.544333:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.544365:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.545249:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.545592:VERBOSE1:tls_client_handshaker.cc(508)] Client: handshake finished
[12343:14083:0322/150326.547314:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150326.547599:VERBOSE1:tls_client_handshaker.cc(508)] Client: handshake finished
[12753:259:0322/150326.551257:INFO:cpu_info.cc(53)] Available number of cores: 10
[12343:14083:0322/150328.998957:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150328.999503:VERBOSE1:tls_handshaker.cc(121)] TlsClient: SSL_do_handshake returned when entering early data. After retry, rv=-1, SSL_in_early_data=1
[12343:14083:0322/150329.072304:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150329.073037:VERBOSE1:tls_handshaker.cc(100)] TlsClient: Continuing handshake
[12343:14083:0322/150329.073228:VERBOSE1:tls_client_handshaker.cc(508)] Client: handshake finished


I even tried additional options to disable certificate errors with --ignore-certificate-errors-spki-list and --user-data-dir, but it didn't work.
Moreover, the browser displayed a warning message.
Screenshot 2023-03-22 at 3.12.33 PM.png

I would be grateful if anybody could provide advice or assistance.

Thank you,
Sin-Woo

Junho Choi

unread,
Apr 2, 2023, 10:35:50 PM4/2/23
to proto...@chromium.org
Have you tried curl (with http3 build)? It'd be easier to use curl to check http/3 first, then debug the chromium issue.
(for chromium, try to take netlog which contains http/3 details)

--
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/b5b40692-0354-46aa-898c-62a2b1f2489fn%40chromium.org.


--
Junho Choi <junho dot choi at gmail.com> | https://saturnsoft.net

Sin-Woo Bang

unread,
Apr 3, 2023, 12:38:17 AM4/3/23
to proto...@chromium.org
Hello Junho, I already checked curl and found it working fine. It is why I reported it here, it works with curl, however, is problematic with Chrome.

You received this message because you are subscribed to a topic in the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this topic, visit https://groups.google.com/a/chromium.org/d/topic/proto-quic/_2ffEAP56go/unsubscribe.
To unsubscribe from this group and all its topics, 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/CAJ5e%2BHCDcqCyF-gPcVitwM6HQk3R6SR9jMLEhHpRNmymuHP6cQ%40mail.gmail.com.
--
Name : Sin-Woo Bang | 방신우


Reply all
Reply to author
Forward
0 new messages