.. _envoy_v3_api_file_envoy/extensions/filters/http/bandwidth_limit/v3/bandwidth_limit.proto: Bandwidth limit (proto) ======================= .. _extension_envoy.filters.http.bandwidth_limit: This extension has the qualified name ``envoy.filters.http.bandwidth_limit`` .. note:: This extension has an unknown security posture and should only be used in deployments where both the downstream and upstream are trusted. .. tip:: This extension extends and can be used with the following extension category: - :ref:`envoy.filters.http ` This extension must be configured with one of the following type URLs: - :ref:`type.googleapis.com/envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit ` Bandwidth limit :ref:`configuration overview `. .. _envoy_v3_api_msg_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit: extensions.filters.http.bandwidth_limit.v3.BandwidthLimit --------------------------------------------------------- :repo:`[extensions.filters.http.bandwidth_limit.v3.BandwidthLimit proto] ` .. code-block:: json :force: { "stat_prefix": ..., "enable_mode": ..., "limit_kbps": {...}, "fill_interval": {...}, "runtime_enabled": {...}, "enable_response_trailers": ..., "response_trailer_prefix": ... } .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.stat_prefix: stat_prefix (`string `_, *REQUIRED*) The human readable prefix to use when emitting stats. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.enable_mode: enable_mode (:ref:`extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode `) The enable mode for the bandwidth limit filter. Default is Disabled. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.limit_kbps: limit_kbps (`UInt64Value `_) The limit supplied in KiB/s. .. note:: It's fine for the limit to be unset for the global configuration since the bandwidth limit can be applied at a the virtual host or route level. Thus, the limit must be set for the per route configuration otherwise the config will be rejected. .. note:: When using per route configuration, the limit becomes unique to that route. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.fill_interval: fill_interval (`Duration `_) Optional Fill interval in milliseconds for the token refills. Defaults to 50ms. It must be at least 20ms to avoid too aggressive refills. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.runtime_enabled: runtime_enabled (:ref:`config.core.v3.RuntimeFeatureFlag `) Runtime flag that controls whether the filter is enabled or not. If not specified, defaults to enabled. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.enable_response_trailers: enable_response_trailers (`bool `_) Enable response trailers. .. note:: If set true, the following 4 trailers will be added, prefixed by ``response_trailer_prefix``: * bandwidth-request-delay-ms: delay time in milliseconds it took for the request stream transfer including request body transfer time and the time added by the filter. * bandwidth-response-delay-ms: delay time in milliseconds it took for the response stream transfer including response body transfer time and the time added by the filter. * bandwidth-request-filter-delay-ms: delay time in milliseconds in request stream transfer added by the filter. * bandwidth-response-filter-delay-ms: delay time in milliseconds that added by the filter. If :ref:`enable_mode ` is ``DISABLED`` or ``REQUEST``, the trailers will not be set. If both the request and response delay time is 0, the trailers will not be set. .. _envoy_v3_api_field_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.response_trailer_prefix: response_trailer_prefix (`string `_) Optional The prefix for the response trailers. .. _envoy_v3_api_enum_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode: Enum extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode ------------------------------------------------------------------------- :repo:`[extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode proto] ` Defines the mode for the bandwidth limit filter. Values represent bitmask. .. _envoy_v3_api_enum_value_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode.DISABLED: DISABLED *(DEFAULT)* ⁣Filter is disabled. .. _envoy_v3_api_enum_value_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode.REQUEST: REQUEST ⁣Filter enabled only for incoming traffic. .. _envoy_v3_api_enum_value_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode.RESPONSE: RESPONSE ⁣Filter enabled only for outgoing traffic. .. _envoy_v3_api_enum_value_extensions.filters.http.bandwidth_limit.v3.BandwidthLimit.EnableMode.REQUEST_AND_RESPONSE: REQUEST_AND_RESPONSE ⁣Filter enabled for both incoming and outgoing traffic.