Interface HttpProtocolOptionsOrBuilder
- All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder
- All Known Implementing Classes:
HttpProtocolOptions,HttpProtocolOptions.Builder
public interface HttpProtocolOptionsOrBuilder
extends com.google.protobuf.MessageOrBuilder
-
Method Summary
Modifier and TypeMethodDescriptionAction to take when a client request with a header name containing underscore characters is received.intAction to take when a client request with a header name containing underscore characters is received.com.google.protobuf.DurationThe idle timeout for connections.com.google.protobuf.DurationOrBuilderThe idle timeout for connections.com.google.protobuf.DurationThe maximum duration of a connection.com.google.protobuf.DurationOrBuilderThe maximum duration of a connection.com.google.protobuf.UInt32ValueThe maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster).com.google.protobuf.UInt32ValueOrBuilderThe maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster).com.google.protobuf.UInt32ValueOptional maximum requests for both upstream and downstream connections.com.google.protobuf.UInt32ValueOrBuilderOptional maximum requests for both upstream and downstream connections.com.google.protobuf.UInt32ValueThe maximum size of response headers.com.google.protobuf.UInt32ValueOrBuilderThe maximum size of response headers.com.google.protobuf.DurationTotal duration to keep alive an HTTP request/response stream.com.google.protobuf.DurationOrBuilderTotal duration to keep alive an HTTP request/response stream.booleanThe idle timeout for connections.booleanThe maximum duration of a connection.booleanThe maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster).booleanOptional maximum requests for both upstream and downstream connections.booleanThe maximum size of response headers.booleanTotal duration to keep alive an HTTP request/response stream.Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder
isInitializedMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
hasIdleTimeout
boolean hasIdleTimeout()The idle timeout for connections. The idle timeout is defined as the period in which there are no active requests. When the idle timeout is reached the connection will be closed. If the connection is an HTTP/2 downstream connection a drain sequence will occur prior to closing the connection, see :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`. .. note:: Request based timeouts mean that HTTP/2 PINGs will not keep the connection alive. If not specified, this defaults to ``1 hour``. To disable idle timeouts explicitly set this to ``0``. .. warning:: Disabling this timeout has a highly likelihood of yielding connection leaks due to lost TCP FIN packets, etc. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled for downstream connections according to the value for :ref:`HTTP_DOWNSTREAM_CONNECTION_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_CONNECTION_IDLE>`.
.google.protobuf.Duration idle_timeout = 1;- Returns:
- Whether the idleTimeout field is set.
-
getIdleTimeout
com.google.protobuf.Duration getIdleTimeout()The idle timeout for connections. The idle timeout is defined as the period in which there are no active requests. When the idle timeout is reached the connection will be closed. If the connection is an HTTP/2 downstream connection a drain sequence will occur prior to closing the connection, see :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`. .. note:: Request based timeouts mean that HTTP/2 PINGs will not keep the connection alive. If not specified, this defaults to ``1 hour``. To disable idle timeouts explicitly set this to ``0``. .. warning:: Disabling this timeout has a highly likelihood of yielding connection leaks due to lost TCP FIN packets, etc. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled for downstream connections according to the value for :ref:`HTTP_DOWNSTREAM_CONNECTION_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_CONNECTION_IDLE>`.
.google.protobuf.Duration idle_timeout = 1;- Returns:
- The idleTimeout.
-
getIdleTimeoutOrBuilder
com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder()The idle timeout for connections. The idle timeout is defined as the period in which there are no active requests. When the idle timeout is reached the connection will be closed. If the connection is an HTTP/2 downstream connection a drain sequence will occur prior to closing the connection, see :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`. .. note:: Request based timeouts mean that HTTP/2 PINGs will not keep the connection alive. If not specified, this defaults to ``1 hour``. To disable idle timeouts explicitly set this to ``0``. .. warning:: Disabling this timeout has a highly likelihood of yielding connection leaks due to lost TCP FIN packets, etc. If the :ref:`overload action <config_overload_manager_overload_actions>` "envoy.overload_actions.reduce_timeouts" is configured, this timeout is scaled for downstream connections according to the value for :ref:`HTTP_DOWNSTREAM_CONNECTION_IDLE <envoy_v3_api_enum_value_config.overload.v3.ScaleTimersOverloadActionConfig.TimerType.HTTP_DOWNSTREAM_CONNECTION_IDLE>`.
.google.protobuf.Duration idle_timeout = 1; -
hasMaxConnectionDuration
boolean hasMaxConnectionDuration()The maximum duration of a connection. The duration is defined as a period since a connection was established. If not set, there is no max duration. When max_connection_duration is reached, the drain sequence will kick-in. The connection will be closed after the drain timeout period if there are no active streams. See :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`.
.google.protobuf.Duration max_connection_duration = 3;- Returns:
- Whether the maxConnectionDuration field is set.
-
getMaxConnectionDuration
com.google.protobuf.Duration getMaxConnectionDuration()The maximum duration of a connection. The duration is defined as a period since a connection was established. If not set, there is no max duration. When max_connection_duration is reached, the drain sequence will kick-in. The connection will be closed after the drain timeout period if there are no active streams. See :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`.
.google.protobuf.Duration max_connection_duration = 3;- Returns:
- The maxConnectionDuration.
-
getMaxConnectionDurationOrBuilder
com.google.protobuf.DurationOrBuilder getMaxConnectionDurationOrBuilder()The maximum duration of a connection. The duration is defined as a period since a connection was established. If not set, there is no max duration. When max_connection_duration is reached, the drain sequence will kick-in. The connection will be closed after the drain timeout period if there are no active streams. See :ref:`drain_timeout <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.drain_timeout>`.
.google.protobuf.Duration max_connection_duration = 3; -
hasMaxHeadersCount
boolean hasMaxHeadersCount()The maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster). If unconfigured, the default maximum number of headers allowed is ``100``. The default value for requests can be overridden by setting runtime key ``envoy.reloadable_features.max_request_headers_count``. The default value for responses can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_count``. Downstream requests that exceed this limit will receive a ``HTTP 431`` response for HTTP/1.x and cause a stream reset for HTTP/2. Upstream responses that exceed this limit will result in a ``HTTP 502`` response.
.google.protobuf.UInt32Value max_headers_count = 2 [(.validate.rules) = { ... }- Returns:
- Whether the maxHeadersCount field is set.
-
getMaxHeadersCount
com.google.protobuf.UInt32Value getMaxHeadersCount()The maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster). If unconfigured, the default maximum number of headers allowed is ``100``. The default value for requests can be overridden by setting runtime key ``envoy.reloadable_features.max_request_headers_count``. The default value for responses can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_count``. Downstream requests that exceed this limit will receive a ``HTTP 431`` response for HTTP/1.x and cause a stream reset for HTTP/2. Upstream responses that exceed this limit will result in a ``HTTP 502`` response.
.google.protobuf.UInt32Value max_headers_count = 2 [(.validate.rules) = { ... }- Returns:
- The maxHeadersCount.
-
getMaxHeadersCountOrBuilder
com.google.protobuf.UInt32ValueOrBuilder getMaxHeadersCountOrBuilder()The maximum number of headers (request headers if configured on HttpConnectionManager, response headers when configured on a cluster). If unconfigured, the default maximum number of headers allowed is ``100``. The default value for requests can be overridden by setting runtime key ``envoy.reloadable_features.max_request_headers_count``. The default value for responses can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_count``. Downstream requests that exceed this limit will receive a ``HTTP 431`` response for HTTP/1.x and cause a stream reset for HTTP/2. Upstream responses that exceed this limit will result in a ``HTTP 502`` response.
.google.protobuf.UInt32Value max_headers_count = 2 [(.validate.rules) = { ... } -
hasMaxResponseHeadersKb
boolean hasMaxResponseHeadersKb()The maximum size of response headers. If unconfigured, the default is ``60 KiB``, except for HTTP/1 response headers which have a default of ``80 KiB``. The default value can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_size_kb``. Responses that exceed this limit will result in a ``HTTP 503`` response. In Envoy, this setting is only valid when configured on an upstream cluster, not on the :ref:`HTTP Connection Manager <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.common_http_protocol_options>`. .. note:: Currently some protocol codecs impose limits on the maximum size of a single header. * HTTP/2 (when using ``nghttp2``) limits a single header to around ``100kb``. * HTTP/3 limits a single header to around ``1024kb``.
.google.protobuf.UInt32Value max_response_headers_kb = 7 [(.validate.rules) = { ... }- Returns:
- Whether the maxResponseHeadersKb field is set.
-
getMaxResponseHeadersKb
com.google.protobuf.UInt32Value getMaxResponseHeadersKb()The maximum size of response headers. If unconfigured, the default is ``60 KiB``, except for HTTP/1 response headers which have a default of ``80 KiB``. The default value can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_size_kb``. Responses that exceed this limit will result in a ``HTTP 503`` response. In Envoy, this setting is only valid when configured on an upstream cluster, not on the :ref:`HTTP Connection Manager <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.common_http_protocol_options>`. .. note:: Currently some protocol codecs impose limits on the maximum size of a single header. * HTTP/2 (when using ``nghttp2``) limits a single header to around ``100kb``. * HTTP/3 limits a single header to around ``1024kb``.
.google.protobuf.UInt32Value max_response_headers_kb = 7 [(.validate.rules) = { ... }- Returns:
- The maxResponseHeadersKb.
-
getMaxResponseHeadersKbOrBuilder
com.google.protobuf.UInt32ValueOrBuilder getMaxResponseHeadersKbOrBuilder()The maximum size of response headers. If unconfigured, the default is ``60 KiB``, except for HTTP/1 response headers which have a default of ``80 KiB``. The default value can be overridden by setting runtime key ``envoy.reloadable_features.max_response_headers_size_kb``. Responses that exceed this limit will result in a ``HTTP 503`` response. In Envoy, this setting is only valid when configured on an upstream cluster, not on the :ref:`HTTP Connection Manager <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.common_http_protocol_options>`. .. note:: Currently some protocol codecs impose limits on the maximum size of a single header. * HTTP/2 (when using ``nghttp2``) limits a single header to around ``100kb``. * HTTP/3 limits a single header to around ``1024kb``.
.google.protobuf.UInt32Value max_response_headers_kb = 7 [(.validate.rules) = { ... } -
hasMaxStreamDuration
boolean hasMaxStreamDuration()Total duration to keep alive an HTTP request/response stream. If the time limit is reached the stream will be reset independent of any other timeouts. If not specified, this value is not set.
.google.protobuf.Duration max_stream_duration = 4;- Returns:
- Whether the maxStreamDuration field is set.
-
getMaxStreamDuration
com.google.protobuf.Duration getMaxStreamDuration()Total duration to keep alive an HTTP request/response stream. If the time limit is reached the stream will be reset independent of any other timeouts. If not specified, this value is not set.
.google.protobuf.Duration max_stream_duration = 4;- Returns:
- The maxStreamDuration.
-
getMaxStreamDurationOrBuilder
com.google.protobuf.DurationOrBuilder getMaxStreamDurationOrBuilder()Total duration to keep alive an HTTP request/response stream. If the time limit is reached the stream will be reset independent of any other timeouts. If not specified, this value is not set.
.google.protobuf.Duration max_stream_duration = 4; -
getHeadersWithUnderscoresActionValue
int getHeadersWithUnderscoresActionValue()Action to take when a client request with a header name containing underscore characters is received. If this setting is not specified, the value defaults to ``ALLOW``. .. note:: Upstream responses are not affected by this setting. .. note:: This only affects client headers. It does not affect headers added by Envoy filters and does not have any impact if added to cluster config.
.envoy.config.core.v3.HttpProtocolOptions.HeadersWithUnderscoresAction headers_with_underscores_action = 5;- Returns:
- The enum numeric value on the wire for headersWithUnderscoresAction.
-
getHeadersWithUnderscoresAction
HttpProtocolOptions.HeadersWithUnderscoresAction getHeadersWithUnderscoresAction()Action to take when a client request with a header name containing underscore characters is received. If this setting is not specified, the value defaults to ``ALLOW``. .. note:: Upstream responses are not affected by this setting. .. note:: This only affects client headers. It does not affect headers added by Envoy filters and does not have any impact if added to cluster config.
.envoy.config.core.v3.HttpProtocolOptions.HeadersWithUnderscoresAction headers_with_underscores_action = 5;- Returns:
- The headersWithUnderscoresAction.
-
hasMaxRequestsPerConnection
boolean hasMaxRequestsPerConnection()Optional maximum requests for both upstream and downstream connections. If not specified, there is no limit. Setting this parameter to ``1`` will effectively disable keep alive. For HTTP/2 and HTTP/3, due to concurrent stream processing, the limit is approximate.
.google.protobuf.UInt32Value max_requests_per_connection = 6;- Returns:
- Whether the maxRequestsPerConnection field is set.
-
getMaxRequestsPerConnection
com.google.protobuf.UInt32Value getMaxRequestsPerConnection()Optional maximum requests for both upstream and downstream connections. If not specified, there is no limit. Setting this parameter to ``1`` will effectively disable keep alive. For HTTP/2 and HTTP/3, due to concurrent stream processing, the limit is approximate.
.google.protobuf.UInt32Value max_requests_per_connection = 6;- Returns:
- The maxRequestsPerConnection.
-
getMaxRequestsPerConnectionOrBuilder
com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder()Optional maximum requests for both upstream and downstream connections. If not specified, there is no limit. Setting this parameter to ``1`` will effectively disable keep alive. For HTTP/2 and HTTP/3, due to concurrent stream processing, the limit is approximate.
.google.protobuf.UInt32Value max_requests_per_connection = 6;
-