-
Notifications
You must be signed in to change notification settings - Fork 10k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTTP/3: Change alt-svc protocol to h3 and add upgrade test #34469
Conversation
responseHeaders.HeaderAltSvc = $"h3-29=\":{option.IPEndPoint!.Port}\"; ma=84600"; | ||
// TODO: Perf. Create string once instead of per-request. | ||
// https://github.com/dotnet/aspnetcore/issues/34468 | ||
responseHeaders.HeaderAltSvc = $"h3=\":{option.IPEndPoint!.Port}\"; ma=84600"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Latest draft has finalized "h3"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was testing the ALPN code with similar values. I think we should include both h3 and h3-29 for compat for at least a milestone, that's really common on websites I've checked. h3 alpn didn't work with HttpClient yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I found the opposite with HttpClient: h3-29 doesn’t work and h3 does. That’s why I changed it in this PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
public async Task Listen_Http3AndSocketsCoexistOnSameEndpoint_AltSvcEnabled_Upgrade() | ||
{ | ||
// Arrange | ||
var builder = GetHostBuilder() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't the ALPN setting need to be updated to match?
public const string Alpn = "h3-29"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
HttpClient is being inconsistent and using h3 in the altsvc but not as it’s alpn dotnet/runtime#55894
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. The alt-svc and ALPN should be kept in sync, let's cover this in the meeting later today.
Fixes #34148