quic: upstream sends early data requests (#20167)
Commit Message: make HTTP/3 upstream sends 0-RTT (early data) requests if it has cached 0-RTT credentials. Add a config knob in RouteAction to specify which request can be sent over early data, which by default are HTTP safe methods. Risk Level: high, changes to conn pool behavior though should only take effect for h3 pool Testing: added h3 upstream integration tests. Docs Changes: N/A Release Notes: changes to docs/root/version_history/current.rst Platform Specific Features: N/A Runtime guard: envoy.reloadable_features.http3_sends_early_data Fixes #18715, #19542 Signed-off-by: Dan Zhang <danzh@google.com> Signed-off-by: Dan Zhang <danzh@google.com> Mirrored from https://github.com/envoyproxy/envoy @ 8ce13d75a982ddd347db5a333a4bb080922f7514pull/626/head
parent
869b003369
commit
371e532aed
5 changed files with 35 additions and 1 deletions
@ -0,0 +1,9 @@ |
||||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. |
||||
|
||||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") |
||||
|
||||
licenses(["notice"]) # Apache 2 |
||||
|
||||
api_proto_package( |
||||
deps = ["@com_github_cncf_udpa//udpa/annotations:pkg"], |
||||
) |
@ -0,0 +1,18 @@ |
||||
syntax = "proto3"; |
||||
|
||||
package envoy.extensions.early_data.v3; |
||||
|
||||
import "udpa/annotations/status.proto"; |
||||
|
||||
option java_package = "io.envoyproxy.envoy.extensions.early_data.v3"; |
||||
option java_outer_classname = "DefaultEarlyDataPolicyProto"; |
||||
option java_multiple_files = true; |
||||
option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/early_data/v3;early_datav3"; |
||||
option (udpa.annotations.file_status).package_version_status = ACTIVE; |
||||
|
||||
// [#protodoc-title: HTTP request early data policy] |
||||
|
||||
// [#extension: envoy.route.early_data_policy.default] |
||||
// The default rule to allow/disallow a request to be sent as early data. It's an empty config now. Configuring it will disallow any request to be sent over early data. |
||||
message DefaultEarlyDataPolicy { |
||||
} |
Loading…
Reference in new issue