Skip to content

Commit 73d7183

Browse files
Adds new protocol troubleshooting page (#20816)
1 parent b46af00 commit 73d7183

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
pcx_content_type: troubleshooting
3+
title: Troubleshoot protocol issues
4+
5+
---
6+
7+
This guide covers common HTTP/2 and HTTP/3 issues, including origin incompatibility, multiplexing errors, and browser errors, with steps to diagnose and resolve them.
8+
9+
## H2 to Origin - Origin incompatibility
10+
11+
- The origin's `max_concurrent_streams` is negotiated during the handshake process.
12+
- If a `GOAWAY(0)` is received, it is likely due to a server restart or another reason causing the server to refuse new streams.
13+
- For more information, refer to [RFC 9113 - SETTINGS_MAX_CONCURRENT_STREAMS](https://datatracker.ietf.org/doc/html/rfc9113).
14+
15+
## H2 Multiplexing - Origin incompatibility/issues
16+
17+
- Multiplexing issues can arise due to incorrect server configurations.
18+
- Use [netlogs](https://www.chromium.org/developers/design-documents/network-stack/netlog/) to identify `SETTINGS_MAX_CONCURRENT_STREAMS` violations or unexpected `GOAWAY` frames.
19+
- For more information, refer to [Stream Concurrency Issues](https://datatracker.ietf.org/doc/html/rfc9113#name-stream-concurrency).
20+
21+
## Generic browser errors
22+
23+
Common browser errors include:
24+
25+
- `ERR_HTTP2_PROTOCOL_ERROR`
26+
- `ERR_HTTP3_PROTOCOL_ERROR`
27+
- `ERR_QUIC_PROTOCOL_ERROR`
28+
29+
These errors do not necessarily indicate a protocol-level issue. Follow these steps:
30+
31+
1. Attempt reproduction using HTTP/1.1.
32+
2. If the issue persists in HTTP/1.1, address the underlying error before testing HTTP/2 or HTTP/3.
33+
3. If the issue does not persist, analyze netlogs for HTTP/2 or HTTP/3-specific issues.
34+
35+
For more information, refer to [Chromium URL Request Header](https://chromium.googlesource.com/chromium/src/+/HEAD/net/url_request/url_request.h).

0 commit comments

Comments
 (0)