udp_proxyv3

package
v1.36.10-2025120520573... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: unknown License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const UdpProxyConfig_Cluster_case case_UdpProxyConfig_RouteSpecifier = 2
View Source
const UdpProxyConfig_HashPolicy_Key_case case_UdpProxyConfig_HashPolicy_PolicySpecifier = 2
View Source
const UdpProxyConfig_HashPolicy_PolicySpecifier_not_set_case case_UdpProxyConfig_HashPolicy_PolicySpecifier = 0
View Source
const UdpProxyConfig_HashPolicy_SourceIp_case case_UdpProxyConfig_HashPolicy_PolicySpecifier = 1
View Source
const UdpProxyConfig_Matcher_case case_UdpProxyConfig_RouteSpecifier = 9
View Source
const UdpProxyConfig_RouteSpecifier_not_set_case case_UdpProxyConfig_RouteSpecifier = 0
View Source
const UdpProxyConfig_SessionFilter_ConfigDiscovery_case case_UdpProxyConfig_SessionFilter_ConfigType = 3
View Source
const UdpProxyConfig_SessionFilter_ConfigType_not_set_case case_UdpProxyConfig_SessionFilter_ConfigType = 0
View Source
const UdpProxyConfig_SessionFilter_TypedConfig_case case_UdpProxyConfig_SessionFilter_ConfigType = 2

Variables

View Source
var File_envoy_extensions_filters_udp_udp_proxy_v3_route_proto protoreflect.FileDescriptor
View Source
var File_envoy_extensions_filters_udp_udp_proxy_v3_udp_proxy_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Route

type Route struct {

	// Indicates the upstream cluster to which the request should be routed.
	Cluster string `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	// contains filtered or unexported fields
}

func (*Route) GetCluster

func (x *Route) GetCluster() string

func (*Route) ProtoMessage

func (*Route) ProtoMessage()

func (*Route) ProtoReflect

func (x *Route) ProtoReflect() protoreflect.Message

func (*Route) Reset

func (x *Route) Reset()

func (*Route) SetCluster

func (x *Route) SetCluster(v string)

func (*Route) String

func (x *Route) String() string

type Route_builder

type Route_builder struct {

	// Indicates the upstream cluster to which the request should be routed.
	Cluster string
	// contains filtered or unexported fields
}

func (Route_builder) Build

func (b0 Route_builder) Build() *Route

type UdpProxyConfig

type UdpProxyConfig struct {

	// The stat prefix used when emitting UDP proxy filter stats.
	StatPrefix string `protobuf:"bytes,1,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"`
	// Types that are valid to be assigned to RouteSpecifier:
	//
	//	*UdpProxyConfig_Cluster
	//	*UdpProxyConfig_Matcher
	RouteSpecifier isUdpProxyConfig_RouteSpecifier `protobuf_oneof:"route_specifier"`
	// The idle timeout for sessions. Idle is defined as no datagrams between received or sent by
	// the session. The default if not specified is 1 minute.
	IdleTimeout *durationpb.Duration `protobuf:"bytes,3,opt,name=idle_timeout,json=idleTimeout,proto3" json:"idle_timeout,omitempty"`
	// Use the remote downstream IP address as the sender IP address when sending packets to upstream hosts.
	// This option requires Envoy to be run with the “CAP_NET_ADMIN“ capability on Linux.
	// And the IPv6 stack must be enabled on Linux kernel.
	// This option does not preserve the remote downstream port.
	// If this option is enabled, the IP address of sent datagrams will be changed to the remote downstream IP address.
	// This means that Envoy will not receive packets that are sent by upstream hosts because the upstream hosts
	// will send the packets with the remote downstream IP address as the destination. All packets will be routed
	// to the remote downstream directly if there are route rules on the upstream host side.
	// There are two options to return the packets back to the remote downstream.
	// The first one is to use DSR (Direct Server Return).
	// The other one is to configure routing rules on the upstream hosts to forward
	// all packets back to Envoy and configure iptables rules on the host running Envoy to
	// forward all packets from upstream hosts to the Envoy process so that Envoy can forward the packets to the downstream.
	// If the platform does not support this option, Envoy will raise a configuration error.
	UseOriginalSrcIp bool `protobuf:"varint,4,opt,name=use_original_src_ip,json=useOriginalSrcIp,proto3" json:"use_original_src_ip,omitempty"`
	// Optional configuration for UDP proxy hash policies. If hash_policies is not set, the hash-based
	// load balancing algorithms will select a host randomly. Currently the number of hash policies is
	// limited to 1.
	HashPolicies []*UdpProxyConfig_HashPolicy `protobuf:"bytes,5,rep,name=hash_policies,json=hashPolicies,proto3" json:"hash_policies,omitempty"`
	// UDP socket configuration for upstream sockets. The default for
	// :ref:`prefer_gro <envoy_v3_api_field_config.core.v3.UdpSocketConfig.prefer_gro>` is true for upstream
	// sockets as the assumption is datagrams will be received from a single source.
	UpstreamSocketConfig *v3.UdpSocketConfig `protobuf:"bytes,6,opt,name=upstream_socket_config,json=upstreamSocketConfig,proto3" json:"upstream_socket_config,omitempty"`
	// Perform per packet load balancing (upstream host selection) on each received data chunk.
	// The default if not specified is false, that means each data chunk is forwarded
	// to upstream host selected on first chunk receival for that "session" (identified by source IP/port and local IP/port).
	// Only one of use_per_packet_load_balancing or session_filters can be used.
	UsePerPacketLoadBalancing bool `` /* 143-byte string literal not displayed */
	// Configuration for session access logs emitted by the UDP proxy. Note that certain UDP specific data is emitted as :ref:`Dynamic Metadata <config_access_log_format_dynamic_metadata>`.
	AccessLog []*v31.AccessLog `protobuf:"bytes,8,rep,name=access_log,json=accessLog,proto3" json:"access_log,omitempty"`
	// Configuration for proxy access logs emitted by the UDP proxy. Note that certain UDP specific data is emitted as :ref:`Dynamic Metadata <config_access_log_format_dynamic_metadata>`.
	ProxyAccessLog []*v31.AccessLog `protobuf:"bytes,10,rep,name=proxy_access_log,json=proxyAccessLog,proto3" json:"proxy_access_log,omitempty"`
	// Optional session filters that will run for each UDP session.
	// Only one of use_per_packet_load_balancing or session_filters can be used.
	// [#extension-category: envoy.filters.udp.session]
	SessionFilters []*UdpProxyConfig_SessionFilter `protobuf:"bytes,11,rep,name=session_filters,json=sessionFilters,proto3" json:"session_filters,omitempty"`
	// If set, this configures UDP tunneling. See `Proxying UDP in HTTP <https://www.rfc-editor.org/rfc/rfc9298.html>`_.
	// More information can be found in the UDP Proxy and HTTP upgrade documentation.
	TunnelingConfig *UdpProxyConfig_UdpTunnelingConfig `protobuf:"bytes,12,opt,name=tunneling_config,json=tunnelingConfig,proto3" json:"tunneling_config,omitempty"`
	// Additional access log options for UDP Proxy.
	AccessLogOptions *UdpProxyConfig_UdpAccessLogOptions `protobuf:"bytes,13,opt,name=access_log_options,json=accessLogOptions,proto3" json:"access_log_options,omitempty"`
	// contains filtered or unexported fields
}

Configuration for the UDP proxy filter. [#next-free-field: 14]

func (*UdpProxyConfig) ClearAccessLogOptions

func (x *UdpProxyConfig) ClearAccessLogOptions()

func (*UdpProxyConfig) ClearCluster deprecated

func (x *UdpProxyConfig) ClearCluster()

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.

func (*UdpProxyConfig) ClearIdleTimeout

func (x *UdpProxyConfig) ClearIdleTimeout()

func (*UdpProxyConfig) ClearMatcher

func (x *UdpProxyConfig) ClearMatcher()

func (*UdpProxyConfig) ClearRouteSpecifier

func (x *UdpProxyConfig) ClearRouteSpecifier()

func (*UdpProxyConfig) ClearTunnelingConfig

func (x *UdpProxyConfig) ClearTunnelingConfig()

func (*UdpProxyConfig) ClearUpstreamSocketConfig

func (x *UdpProxyConfig) ClearUpstreamSocketConfig()

func (*UdpProxyConfig) GetAccessLog

func (x *UdpProxyConfig) GetAccessLog() []*v31.AccessLog

func (*UdpProxyConfig) GetAccessLogOptions

func (x *UdpProxyConfig) GetAccessLogOptions() *UdpProxyConfig_UdpAccessLogOptions

func (*UdpProxyConfig) GetCluster deprecated

func (x *UdpProxyConfig) GetCluster() string

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.

func (*UdpProxyConfig) GetHashPolicies

func (x *UdpProxyConfig) GetHashPolicies() []*UdpProxyConfig_HashPolicy

func (*UdpProxyConfig) GetIdleTimeout

func (x *UdpProxyConfig) GetIdleTimeout() *durationpb.Duration

func (*UdpProxyConfig) GetMatcher

func (x *UdpProxyConfig) GetMatcher() *v32.Matcher

func (*UdpProxyConfig) GetProxyAccessLog

func (x *UdpProxyConfig) GetProxyAccessLog() []*v31.AccessLog

func (*UdpProxyConfig) GetRouteSpecifier

func (x *UdpProxyConfig) GetRouteSpecifier() isUdpProxyConfig_RouteSpecifier

func (*UdpProxyConfig) GetSessionFilters

func (x *UdpProxyConfig) GetSessionFilters() []*UdpProxyConfig_SessionFilter

func (*UdpProxyConfig) GetStatPrefix

func (x *UdpProxyConfig) GetStatPrefix() string

func (*UdpProxyConfig) GetTunnelingConfig

func (x *UdpProxyConfig) GetTunnelingConfig() *UdpProxyConfig_UdpTunnelingConfig

func (*UdpProxyConfig) GetUpstreamSocketConfig

func (x *UdpProxyConfig) GetUpstreamSocketConfig() *v3.UdpSocketConfig

func (*UdpProxyConfig) GetUseOriginalSrcIp

func (x *UdpProxyConfig) GetUseOriginalSrcIp() bool

func (*UdpProxyConfig) GetUsePerPacketLoadBalancing

func (x *UdpProxyConfig) GetUsePerPacketLoadBalancing() bool

func (*UdpProxyConfig) HasAccessLogOptions

func (x *UdpProxyConfig) HasAccessLogOptions() bool

func (*UdpProxyConfig) HasCluster deprecated

func (x *UdpProxyConfig) HasCluster() bool

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.

func (*UdpProxyConfig) HasIdleTimeout

func (x *UdpProxyConfig) HasIdleTimeout() bool

func (*UdpProxyConfig) HasMatcher

func (x *UdpProxyConfig) HasMatcher() bool

func (*UdpProxyConfig) HasRouteSpecifier

func (x *UdpProxyConfig) HasRouteSpecifier() bool

func (*UdpProxyConfig) HasTunnelingConfig

func (x *UdpProxyConfig) HasTunnelingConfig() bool

func (*UdpProxyConfig) HasUpstreamSocketConfig

func (x *UdpProxyConfig) HasUpstreamSocketConfig() bool

func (*UdpProxyConfig) ProtoMessage

func (*UdpProxyConfig) ProtoMessage()

func (*UdpProxyConfig) ProtoReflect

func (x *UdpProxyConfig) ProtoReflect() protoreflect.Message

func (*UdpProxyConfig) Reset

func (x *UdpProxyConfig) Reset()

func (*UdpProxyConfig) SetAccessLog

func (x *UdpProxyConfig) SetAccessLog(v []*v31.AccessLog)

func (*UdpProxyConfig) SetAccessLogOptions

func (x *UdpProxyConfig) SetAccessLogOptions(v *UdpProxyConfig_UdpAccessLogOptions)

func (*UdpProxyConfig) SetCluster deprecated

func (x *UdpProxyConfig) SetCluster(v string)

Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.

func (*UdpProxyConfig) SetHashPolicies

func (x *UdpProxyConfig) SetHashPolicies(v []*UdpProxyConfig_HashPolicy)

func (*UdpProxyConfig) SetIdleTimeout

func (x *UdpProxyConfig) SetIdleTimeout(v *durationpb.Duration)

func (*UdpProxyConfig) SetMatcher

func (x *UdpProxyConfig) SetMatcher(v *v32.Matcher)

func (*UdpProxyConfig) SetProxyAccessLog

func (x *UdpProxyConfig) SetProxyAccessLog(v []*v31.AccessLog)

func (*UdpProxyConfig) SetSessionFilters

func (x *UdpProxyConfig) SetSessionFilters(v []*UdpProxyConfig_SessionFilter)

func (*UdpProxyConfig) SetStatPrefix

func (x *UdpProxyConfig) SetStatPrefix(v string)

func (*UdpProxyConfig) SetTunnelingConfig

func (x *UdpProxyConfig) SetTunnelingConfig(v *UdpProxyConfig_UdpTunnelingConfig)

func (*UdpProxyConfig) SetUpstreamSocketConfig

func (x *UdpProxyConfig) SetUpstreamSocketConfig(v *v3.UdpSocketConfig)

func (*UdpProxyConfig) SetUseOriginalSrcIp

func (x *UdpProxyConfig) SetUseOriginalSrcIp(v bool)

func (*UdpProxyConfig) SetUsePerPacketLoadBalancing

func (x *UdpProxyConfig) SetUsePerPacketLoadBalancing(v bool)

func (*UdpProxyConfig) String

func (x *UdpProxyConfig) String() string

func (*UdpProxyConfig) WhichRouteSpecifier

func (x *UdpProxyConfig) WhichRouteSpecifier() case_UdpProxyConfig_RouteSpecifier

type UdpProxyConfig_Cluster

type UdpProxyConfig_Cluster struct {
	// The upstream cluster to connect to.
	// This field is deprecated in favor of
	// :ref:`matcher <envoy_v3_api_field_extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.matcher>`.
	//
	// Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.
	Cluster string `protobuf:"bytes,2,opt,name=cluster,proto3,oneof"`
}

type UdpProxyConfig_HashPolicy

type UdpProxyConfig_HashPolicy struct {

	// Types that are valid to be assigned to PolicySpecifier:
	//
	//	*UdpProxyConfig_HashPolicy_SourceIp
	//	*UdpProxyConfig_HashPolicy_Key
	PolicySpecifier isUdpProxyConfig_HashPolicy_PolicySpecifier `protobuf_oneof:"policy_specifier"`
	// contains filtered or unexported fields
}

Specifies the UDP hash policy. The packets can be routed by hash policy.

func (*UdpProxyConfig_HashPolicy) ClearKey

func (x *UdpProxyConfig_HashPolicy) ClearKey()

func (*UdpProxyConfig_HashPolicy) ClearPolicySpecifier

func (x *UdpProxyConfig_HashPolicy) ClearPolicySpecifier()

func (*UdpProxyConfig_HashPolicy) ClearSourceIp

func (x *UdpProxyConfig_HashPolicy) ClearSourceIp()

func (*UdpProxyConfig_HashPolicy) GetKey

func (x *UdpProxyConfig_HashPolicy) GetKey() string

func (*UdpProxyConfig_HashPolicy) GetPolicySpecifier

func (x *UdpProxyConfig_HashPolicy) GetPolicySpecifier() isUdpProxyConfig_HashPolicy_PolicySpecifier

func (*UdpProxyConfig_HashPolicy) GetSourceIp

func (x *UdpProxyConfig_HashPolicy) GetSourceIp() bool

func (*UdpProxyConfig_HashPolicy) HasKey

func (x *UdpProxyConfig_HashPolicy) HasKey() bool

func (*UdpProxyConfig_HashPolicy) HasPolicySpecifier

func (x *UdpProxyConfig_HashPolicy) HasPolicySpecifier() bool

func (*UdpProxyConfig_HashPolicy) HasSourceIp

func (x *UdpProxyConfig_HashPolicy) HasSourceIp() bool

func (*UdpProxyConfig_HashPolicy) ProtoMessage

func (*UdpProxyConfig_HashPolicy) ProtoMessage()

func (*UdpProxyConfig_HashPolicy) ProtoReflect

func (*UdpProxyConfig_HashPolicy) Reset

func (x *UdpProxyConfig_HashPolicy) Reset()

func (*UdpProxyConfig_HashPolicy) SetKey

func (x *UdpProxyConfig_HashPolicy) SetKey(v string)

func (*UdpProxyConfig_HashPolicy) SetSourceIp

func (x *UdpProxyConfig_HashPolicy) SetSourceIp(v bool)

func (*UdpProxyConfig_HashPolicy) String

func (x *UdpProxyConfig_HashPolicy) String() string

func (*UdpProxyConfig_HashPolicy) WhichPolicySpecifier

func (x *UdpProxyConfig_HashPolicy) WhichPolicySpecifier() case_UdpProxyConfig_HashPolicy_PolicySpecifier

type UdpProxyConfig_HashPolicy_Key

type UdpProxyConfig_HashPolicy_Key struct {
	// A given key will be used to compute the hash used by hash-based load balancing algorithms.
	// In certain cases there is a need to direct different UDP streams jointly towards the selected set of endpoints.
	// A possible use-case is VoIP telephony, where media (RTP) and its corresponding control (RTCP) belong to the same logical session,
	// although they travel in separate streams. To ensure that these pair of streams are load-balanced on session level
	// (instead of individual stream level), dynamically created listeners can use the same hash key for each stream in the session.
	Key string `protobuf:"bytes,2,opt,name=key,proto3,oneof"`
}

type UdpProxyConfig_HashPolicy_SourceIp

type UdpProxyConfig_HashPolicy_SourceIp struct {
	// The source IP will be used to compute the hash used by hash-based load balancing algorithms.
	SourceIp bool `protobuf:"varint,1,opt,name=source_ip,json=sourceIp,proto3,oneof"`
}

type UdpProxyConfig_HashPolicy_builder

type UdpProxyConfig_HashPolicy_builder struct {

	// Fields of oneof PolicySpecifier:
	// The source IP will be used to compute the hash used by hash-based load balancing algorithms.
	SourceIp *bool
	// A given key will be used to compute the hash used by hash-based load balancing algorithms.
	// In certain cases there is a need to direct different UDP streams jointly towards the selected set of endpoints.
	// A possible use-case is VoIP telephony, where media (RTP) and its corresponding control (RTCP) belong to the same logical session,
	// although they travel in separate streams. To ensure that these pair of streams are load-balanced on session level
	// (instead of individual stream level), dynamically created listeners can use the same hash key for each stream in the session.
	Key *string
	// contains filtered or unexported fields
}

func (UdpProxyConfig_HashPolicy_builder) Build

type UdpProxyConfig_Matcher

type UdpProxyConfig_Matcher struct {
	// The match tree to use when resolving route actions for incoming requests.
	// See :ref:`Routing <config_udp_listener_filters_udp_proxy_routing>` for more information.
	Matcher *v32.Matcher `protobuf:"bytes,9,opt,name=matcher,proto3,oneof"`
}

type UdpProxyConfig_SessionFilter

type UdpProxyConfig_SessionFilter struct {

	// The name of the filter configuration.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are valid to be assigned to ConfigType:
	//
	//	*UdpProxyConfig_SessionFilter_TypedConfig
	//	*UdpProxyConfig_SessionFilter_ConfigDiscovery
	ConfigType isUdpProxyConfig_SessionFilter_ConfigType `protobuf_oneof:"config_type"`
	// contains filtered or unexported fields
}

Configuration for UDP session filters.

func (*UdpProxyConfig_SessionFilter) ClearConfigDiscovery

func (x *UdpProxyConfig_SessionFilter) ClearConfigDiscovery()

func (*UdpProxyConfig_SessionFilter) ClearConfigType

func (x *UdpProxyConfig_SessionFilter) ClearConfigType()

func (*UdpProxyConfig_SessionFilter) ClearTypedConfig

func (x *UdpProxyConfig_SessionFilter) ClearTypedConfig()

func (*UdpProxyConfig_SessionFilter) GetConfigDiscovery

func (x *UdpProxyConfig_SessionFilter) GetConfigDiscovery() *v3.ExtensionConfigSource

func (*UdpProxyConfig_SessionFilter) GetConfigType

func (x *UdpProxyConfig_SessionFilter) GetConfigType() isUdpProxyConfig_SessionFilter_ConfigType

func (*UdpProxyConfig_SessionFilter) GetName

func (x *UdpProxyConfig_SessionFilter) GetName() string

func (*UdpProxyConfig_SessionFilter) GetTypedConfig

func (x *UdpProxyConfig_SessionFilter) GetTypedConfig() *anypb.Any

func (*UdpProxyConfig_SessionFilter) HasConfigDiscovery

func (x *UdpProxyConfig_SessionFilter) HasConfigDiscovery() bool

func (*UdpProxyConfig_SessionFilter) HasConfigType

func (x *UdpProxyConfig_SessionFilter) HasConfigType() bool

func (*UdpProxyConfig_SessionFilter) HasTypedConfig

func (x *UdpProxyConfig_SessionFilter) HasTypedConfig() bool

func (*UdpProxyConfig_SessionFilter) ProtoMessage

func (*UdpProxyConfig_SessionFilter) ProtoMessage()

func (*UdpProxyConfig_SessionFilter) ProtoReflect

func (*UdpProxyConfig_SessionFilter) Reset

func (x *UdpProxyConfig_SessionFilter) Reset()

func (*UdpProxyConfig_SessionFilter) SetConfigDiscovery

func (x *UdpProxyConfig_SessionFilter) SetConfigDiscovery(v *v3.ExtensionConfigSource)

func (*UdpProxyConfig_SessionFilter) SetName

func (x *UdpProxyConfig_SessionFilter) SetName(v string)

func (*UdpProxyConfig_SessionFilter) SetTypedConfig

func (x *UdpProxyConfig_SessionFilter) SetTypedConfig(v *anypb.Any)

func (*UdpProxyConfig_SessionFilter) String

func (*UdpProxyConfig_SessionFilter) WhichConfigType

func (x *UdpProxyConfig_SessionFilter) WhichConfigType() case_UdpProxyConfig_SessionFilter_ConfigType

type UdpProxyConfig_SessionFilter_ConfigDiscovery

type UdpProxyConfig_SessionFilter_ConfigDiscovery struct {
	// Configuration source specifier for an extension configuration discovery
	// service. In case of a failure and without the default configuration, the
	// UDP session will be removed.
	ConfigDiscovery *v3.ExtensionConfigSource `protobuf:"bytes,3,opt,name=config_discovery,json=configDiscovery,proto3,oneof"`
}

type UdpProxyConfig_SessionFilter_TypedConfig

type UdpProxyConfig_SessionFilter_TypedConfig struct {
	// Filter specific configuration which depends on the filter being
	// instantiated. See the supported filters for further documentation.
	TypedConfig *anypb.Any `protobuf:"bytes,2,opt,name=typed_config,json=typedConfig,proto3,oneof"`
}

type UdpProxyConfig_SessionFilter_builder

type UdpProxyConfig_SessionFilter_builder struct {

	// The name of the filter configuration.
	Name string
	// Fields of oneof ConfigType:
	// Filter specific configuration which depends on the filter being
	// instantiated. See the supported filters for further documentation.
	TypedConfig *anypb.Any
	// Configuration source specifier for an extension configuration discovery
	// service. In case of a failure and without the default configuration, the
	// UDP session will be removed.
	ConfigDiscovery *v3.ExtensionConfigSource
	// contains filtered or unexported fields
}

func (UdpProxyConfig_SessionFilter_builder) Build

type UdpProxyConfig_UdpAccessLogOptions

type UdpProxyConfig_UdpAccessLogOptions struct {

	// The interval to flush access log. The UDP proxy will flush only one access log when the session
	// is ended by default. If this field is set, the UDP proxy will flush access log periodically with
	// the specified interval.
	// This field does not require on-tunnel-connected access logging enabled, and the other way around.
	// The interval must be at least 1ms.
	AccessLogFlushInterval *durationpb.Duration `` /* 131-byte string literal not displayed */
	// If set to true and UDP tunneling is configured, access log will be flushed when the UDP proxy has successfully
	// established a connection tunnel with the upstream. If the connection failed, the access log will not be flushed.
	FlushAccessLogOnTunnelConnected bool `` /* 163-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*UdpProxyConfig_UdpAccessLogOptions) ClearAccessLogFlushInterval

func (x *UdpProxyConfig_UdpAccessLogOptions) ClearAccessLogFlushInterval()

func (*UdpProxyConfig_UdpAccessLogOptions) GetAccessLogFlushInterval

func (x *UdpProxyConfig_UdpAccessLogOptions) GetAccessLogFlushInterval() *durationpb.Duration

func (*UdpProxyConfig_UdpAccessLogOptions) GetFlushAccessLogOnTunnelConnected

func (x *UdpProxyConfig_UdpAccessLogOptions) GetFlushAccessLogOnTunnelConnected() bool

func (*UdpProxyConfig_UdpAccessLogOptions) HasAccessLogFlushInterval

func (x *UdpProxyConfig_UdpAccessLogOptions) HasAccessLogFlushInterval() bool

func (*UdpProxyConfig_UdpAccessLogOptions) ProtoMessage

func (*UdpProxyConfig_UdpAccessLogOptions) ProtoMessage()

func (*UdpProxyConfig_UdpAccessLogOptions) ProtoReflect

func (*UdpProxyConfig_UdpAccessLogOptions) Reset

func (*UdpProxyConfig_UdpAccessLogOptions) SetAccessLogFlushInterval

func (x *UdpProxyConfig_UdpAccessLogOptions) SetAccessLogFlushInterval(v *durationpb.Duration)

func (*UdpProxyConfig_UdpAccessLogOptions) SetFlushAccessLogOnTunnelConnected

func (x *UdpProxyConfig_UdpAccessLogOptions) SetFlushAccessLogOnTunnelConnected(v bool)

func (*UdpProxyConfig_UdpAccessLogOptions) String

type UdpProxyConfig_UdpAccessLogOptions_builder

type UdpProxyConfig_UdpAccessLogOptions_builder struct {

	// The interval to flush access log. The UDP proxy will flush only one access log when the session
	// is ended by default. If this field is set, the UDP proxy will flush access log periodically with
	// the specified interval.
	// This field does not require on-tunnel-connected access logging enabled, and the other way around.
	// The interval must be at least 1ms.
	AccessLogFlushInterval *durationpb.Duration
	// If set to true and UDP tunneling is configured, access log will be flushed when the UDP proxy has successfully
	// established a connection tunnel with the upstream. If the connection failed, the access log will not be flushed.
	FlushAccessLogOnTunnelConnected bool
	// contains filtered or unexported fields
}

func (UdpProxyConfig_UdpAccessLogOptions_builder) Build

type UdpProxyConfig_UdpTunnelingConfig

type UdpProxyConfig_UdpTunnelingConfig struct {

	// The hostname to send in the synthesized CONNECT headers to the upstream proxy.
	// This field evaluates command operators if set, otherwise returns hostname as is.
	//
	// Example: dynamically set hostname using filter state
	//
	// .. code-block:: yaml
	//
	//	tunneling_config:
	//	  proxy_host: "%FILTER_STATE(proxy.host.key:PLAIN)%"
	ProxyHost string `protobuf:"bytes,1,opt,name=proxy_host,json=proxyHost,proto3" json:"proxy_host,omitempty"`
	// Optional port value to add to the HTTP request URI.
	// This value can be overridden per-session by setting the required port value for
	// the filter state key “udp.connect.proxy_port“.
	ProxyPort *wrapperspb.UInt32Value `protobuf:"bytes,2,opt,name=proxy_port,json=proxyPort,proto3" json:"proxy_port,omitempty"`
	// The target host to send in the synthesized CONNECT headers to the upstream proxy.
	// This field evaluates command operators if set, otherwise returns hostname as is.
	//
	// Example: dynamically set target host using filter state
	//
	// .. code-block:: yaml
	//
	//	tunneling_config:
	//	  target_host: "%FILTER_STATE(target.host.key:PLAIN)%"
	TargetHost string `protobuf:"bytes,3,opt,name=target_host,json=targetHost,proto3" json:"target_host,omitempty"`
	// The default target port to send in the CONNECT headers to the upstream proxy.
	// This value can be overridden per-session by setting the required port value for
	// the filter state key “udp.connect.target_port“.
	DefaultTargetPort uint32 `protobuf:"varint,4,opt,name=default_target_port,json=defaultTargetPort,proto3" json:"default_target_port,omitempty"`
	// Use POST method instead of CONNECT method to tunnel the UDP stream.
	//
	// .. note::
	//
	//	If use_post is set, the upstream stream does not comply with the connect-udp RFC, and
	//	instead it will be a POST request. the path used in the headers will be set from the
	//	post_path field, and the headers will not contain the target host and target port, as
	//	required by the connect-udp protocol. This flag should be used carefully.
	UsePost bool `protobuf:"varint,5,opt,name=use_post,json=usePost,proto3" json:"use_post,omitempty"`
	// The path used with POST method. Default path is “/“. If post path is specified and
	// use_post field isn't true, it will be rejected.
	PostPath string `protobuf:"bytes,6,opt,name=post_path,json=postPath,proto3" json:"post_path,omitempty"`
	// Optional retry options, in case connecting to the upstream failed.
	RetryOptions *UdpProxyConfig_UdpTunnelingConfig_RetryOptions `protobuf:"bytes,7,opt,name=retry_options,json=retryOptions,proto3" json:"retry_options,omitempty"`
	// Additional request headers to upstream proxy. Neither “:-prefixed“ pseudo-headers
	// nor the Host: header can be overridden. Values of the added headers evaluates command
	// operators if they are set in the value template.
	//
	// Example: dynamically set a header with the local port
	//
	// .. code-block:: yaml
	//
	//	headers_to_add:
	//	- header:
	//	    key: original_dst_port
	//	    value: "%DOWNSTREAM_LOCAL_PORT%"
	HeadersToAdd []*v3.HeaderValueOption `protobuf:"bytes,8,rep,name=headers_to_add,json=headersToAdd,proto3" json:"headers_to_add,omitempty"`
	// If configured, the filter will buffer datagrams in case that it is waiting for the upstream to be
	// ready, whether if it is during the connection process or due to upstream buffer watermarks.
	// If this field is not configured, there will be no buffering and downstream datagrams that arrive
	// while the upstream is not ready will be dropped. In case this field is set but the options
	// are not configured, the default values will be applied as described in the “BufferOptions“.
	BufferOptions *UdpProxyConfig_UdpTunnelingConfig_BufferOptions `protobuf:"bytes,9,opt,name=buffer_options,json=bufferOptions,proto3" json:"buffer_options,omitempty"`
	// Save the response headers to the downstream info filter state for consumption
	// by the session filters. The filter state key is “envoy.udp_proxy.propagate_response_headers“.
	PropagateResponseHeaders bool `` /* 137-byte string literal not displayed */
	// Save the response trailers to the downstream info filter state for consumption
	// by the session filters. The filter state key is “envoy.udp_proxy.propagate_response_trailers“.
	PropagateResponseTrailers bool `` /* 140-byte string literal not displayed */
	// contains filtered or unexported fields
}

Configuration for tunneling UDP over other transports or application layers. Tunneling is currently supported over HTTP/2. [#next-free-field: 12]

func (*UdpProxyConfig_UdpTunnelingConfig) ClearBufferOptions

func (x *UdpProxyConfig_UdpTunnelingConfig) ClearBufferOptions()

func (*UdpProxyConfig_UdpTunnelingConfig) ClearProxyPort

func (x *UdpProxyConfig_UdpTunnelingConfig) ClearProxyPort()

func (*UdpProxyConfig_UdpTunnelingConfig) ClearRetryOptions

func (x *UdpProxyConfig_UdpTunnelingConfig) ClearRetryOptions()

func (*UdpProxyConfig_UdpTunnelingConfig) GetBufferOptions

func (*UdpProxyConfig_UdpTunnelingConfig) GetDefaultTargetPort

func (x *UdpProxyConfig_UdpTunnelingConfig) GetDefaultTargetPort() uint32

func (*UdpProxyConfig_UdpTunnelingConfig) GetHeadersToAdd

func (x *UdpProxyConfig_UdpTunnelingConfig) GetHeadersToAdd() []*v3.HeaderValueOption

func (*UdpProxyConfig_UdpTunnelingConfig) GetPostPath

func (x *UdpProxyConfig_UdpTunnelingConfig) GetPostPath() string

func (*UdpProxyConfig_UdpTunnelingConfig) GetPropagateResponseHeaders

func (x *UdpProxyConfig_UdpTunnelingConfig) GetPropagateResponseHeaders() bool

func (*UdpProxyConfig_UdpTunnelingConfig) GetPropagateResponseTrailers

func (x *UdpProxyConfig_UdpTunnelingConfig) GetPropagateResponseTrailers() bool

func (*UdpProxyConfig_UdpTunnelingConfig) GetProxyHost

func (x *UdpProxyConfig_UdpTunnelingConfig) GetProxyHost() string

func (*UdpProxyConfig_UdpTunnelingConfig) GetProxyPort

func (*UdpProxyConfig_UdpTunnelingConfig) GetRetryOptions

func (*UdpProxyConfig_UdpTunnelingConfig) GetTargetHost

func (x *UdpProxyConfig_UdpTunnelingConfig) GetTargetHost() string

func (*UdpProxyConfig_UdpTunnelingConfig) GetUsePost

func (x *UdpProxyConfig_UdpTunnelingConfig) GetUsePost() bool

func (*UdpProxyConfig_UdpTunnelingConfig) HasBufferOptions

func (x *UdpProxyConfig_UdpTunnelingConfig) HasBufferOptions() bool

func (*UdpProxyConfig_UdpTunnelingConfig) HasProxyPort

func (x *UdpProxyConfig_UdpTunnelingConfig) HasProxyPort() bool

func (*UdpProxyConfig_UdpTunnelingConfig) HasRetryOptions

func (x *UdpProxyConfig_UdpTunnelingConfig) HasRetryOptions() bool

func (*UdpProxyConfig_UdpTunnelingConfig) ProtoMessage

func (*UdpProxyConfig_UdpTunnelingConfig) ProtoMessage()

func (*UdpProxyConfig_UdpTunnelingConfig) ProtoReflect

func (*UdpProxyConfig_UdpTunnelingConfig) Reset

func (*UdpProxyConfig_UdpTunnelingConfig) SetBufferOptions

func (*UdpProxyConfig_UdpTunnelingConfig) SetDefaultTargetPort

func (x *UdpProxyConfig_UdpTunnelingConfig) SetDefaultTargetPort(v uint32)

func (*UdpProxyConfig_UdpTunnelingConfig) SetHeadersToAdd

func (x *UdpProxyConfig_UdpTunnelingConfig) SetHeadersToAdd(v []*v3.HeaderValueOption)

func (*UdpProxyConfig_UdpTunnelingConfig) SetPostPath

func (x *UdpProxyConfig_UdpTunnelingConfig) SetPostPath(v string)

func (*UdpProxyConfig_UdpTunnelingConfig) SetPropagateResponseHeaders

func (x *UdpProxyConfig_UdpTunnelingConfig) SetPropagateResponseHeaders(v bool)

func (*UdpProxyConfig_UdpTunnelingConfig) SetPropagateResponseTrailers

func (x *UdpProxyConfig_UdpTunnelingConfig) SetPropagateResponseTrailers(v bool)

func (*UdpProxyConfig_UdpTunnelingConfig) SetProxyHost

func (x *UdpProxyConfig_UdpTunnelingConfig) SetProxyHost(v string)

func (*UdpProxyConfig_UdpTunnelingConfig) SetProxyPort

func (*UdpProxyConfig_UdpTunnelingConfig) SetRetryOptions

func (*UdpProxyConfig_UdpTunnelingConfig) SetTargetHost

func (x *UdpProxyConfig_UdpTunnelingConfig) SetTargetHost(v string)

func (*UdpProxyConfig_UdpTunnelingConfig) SetUsePost

func (x *UdpProxyConfig_UdpTunnelingConfig) SetUsePost(v bool)

func (*UdpProxyConfig_UdpTunnelingConfig) String

type UdpProxyConfig_UdpTunnelingConfig_BufferOptions

type UdpProxyConfig_UdpTunnelingConfig_BufferOptions struct {

	// If set, the filter will only buffer datagrams up to the requested limit, and will drop
	// new UDP datagrams if the buffer contains the max_buffered_datagrams value at the time
	// of a new datagram arrival. If not set, the default value is 1024 datagrams.
	MaxBufferedDatagrams *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=max_buffered_datagrams,json=maxBufferedDatagrams,proto3" json:"max_buffered_datagrams,omitempty"`
	// If set, the filter will only buffer datagrams up to the requested total buffered bytes limit,
	// and will drop new UDP datagrams if the buffer contains the max_buffered_datagrams value
	// at the time of a new datagram arrival. If not set, the default value is 16,384 (16KB).
	MaxBufferedBytes *wrapperspb.UInt64Value `protobuf:"bytes,2,opt,name=max_buffered_bytes,json=maxBufferedBytes,proto3" json:"max_buffered_bytes,omitempty"`
	// contains filtered or unexported fields
}

Configuration for UDP datagrams buffering.

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ClearMaxBufferedBytes

func (x *UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ClearMaxBufferedBytes()

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ClearMaxBufferedDatagrams

func (x *UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ClearMaxBufferedDatagrams()

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) GetMaxBufferedBytes

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) GetMaxBufferedDatagrams

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) HasMaxBufferedBytes

func (x *UdpProxyConfig_UdpTunnelingConfig_BufferOptions) HasMaxBufferedBytes() bool

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) HasMaxBufferedDatagrams

func (x *UdpProxyConfig_UdpTunnelingConfig_BufferOptions) HasMaxBufferedDatagrams() bool

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ProtoMessage

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) ProtoReflect

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) Reset

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) SetMaxBufferedBytes

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) SetMaxBufferedDatagrams

func (*UdpProxyConfig_UdpTunnelingConfig_BufferOptions) String

type UdpProxyConfig_UdpTunnelingConfig_BufferOptions_builder

type UdpProxyConfig_UdpTunnelingConfig_BufferOptions_builder struct {

	// If set, the filter will only buffer datagrams up to the requested limit, and will drop
	// new UDP datagrams if the buffer contains the max_buffered_datagrams value at the time
	// of a new datagram arrival. If not set, the default value is 1024 datagrams.
	MaxBufferedDatagrams *wrapperspb.UInt32Value
	// If set, the filter will only buffer datagrams up to the requested total buffered bytes limit,
	// and will drop new UDP datagrams if the buffer contains the max_buffered_datagrams value
	// at the time of a new datagram arrival. If not set, the default value is 16,384 (16KB).
	MaxBufferedBytes *wrapperspb.UInt64Value
	// contains filtered or unexported fields
}

func (UdpProxyConfig_UdpTunnelingConfig_BufferOptions_builder) Build

type UdpProxyConfig_UdpTunnelingConfig_RetryOptions

type UdpProxyConfig_UdpTunnelingConfig_RetryOptions struct {

	// The maximum number of unsuccessful connection attempts that will be made before giving up.
	// If the parameter is not specified, 1 connection attempt will be made.
	MaxConnectAttempts *wrapperspb.UInt32Value `protobuf:"bytes,1,opt,name=max_connect_attempts,json=maxConnectAttempts,proto3" json:"max_connect_attempts,omitempty"`
	// Sets the backoff strategy. If not set, the retries are performed without backoff.
	BackoffOptions *v3.BackoffStrategy `protobuf:"bytes,2,opt,name=backoff_options,json=backoffOptions,proto3" json:"backoff_options,omitempty"`
	// contains filtered or unexported fields
}

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ClearBackoffOptions

func (x *UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ClearBackoffOptions()

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ClearMaxConnectAttempts

func (x *UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ClearMaxConnectAttempts()

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) GetBackoffOptions

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) GetMaxConnectAttempts

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) HasBackoffOptions

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) HasMaxConnectAttempts

func (x *UdpProxyConfig_UdpTunnelingConfig_RetryOptions) HasMaxConnectAttempts() bool

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ProtoMessage

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) ProtoReflect

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) Reset

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) SetBackoffOptions

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) SetMaxConnectAttempts

func (*UdpProxyConfig_UdpTunnelingConfig_RetryOptions) String

type UdpProxyConfig_UdpTunnelingConfig_RetryOptions_builder

type UdpProxyConfig_UdpTunnelingConfig_RetryOptions_builder struct {

	// The maximum number of unsuccessful connection attempts that will be made before giving up.
	// If the parameter is not specified, 1 connection attempt will be made.
	MaxConnectAttempts *wrapperspb.UInt32Value
	// Sets the backoff strategy. If not set, the retries are performed without backoff.
	BackoffOptions *v3.BackoffStrategy
	// contains filtered or unexported fields
}

func (UdpProxyConfig_UdpTunnelingConfig_RetryOptions_builder) Build

type UdpProxyConfig_UdpTunnelingConfig_builder

type UdpProxyConfig_UdpTunnelingConfig_builder struct {

	// The hostname to send in the synthesized CONNECT headers to the upstream proxy.
	// This field evaluates command operators if set, otherwise returns hostname as is.
	//
	// Example: dynamically set hostname using filter state
	//
	// .. code-block:: yaml
	//
	//	tunneling_config:
	//	  proxy_host: "%FILTER_STATE(proxy.host.key:PLAIN)%"
	ProxyHost string
	// Optional port value to add to the HTTP request URI.
	// This value can be overridden per-session by setting the required port value for
	// the filter state key “udp.connect.proxy_port“.
	ProxyPort *wrapperspb.UInt32Value
	// The target host to send in the synthesized CONNECT headers to the upstream proxy.
	// This field evaluates command operators if set, otherwise returns hostname as is.
	//
	// Example: dynamically set target host using filter state
	//
	// .. code-block:: yaml
	//
	//	tunneling_config:
	//	  target_host: "%FILTER_STATE(target.host.key:PLAIN)%"
	TargetHost string
	// The default target port to send in the CONNECT headers to the upstream proxy.
	// This value can be overridden per-session by setting the required port value for
	// the filter state key “udp.connect.target_port“.
	DefaultTargetPort uint32
	// Use POST method instead of CONNECT method to tunnel the UDP stream.
	//
	// .. note::
	//
	//	If use_post is set, the upstream stream does not comply with the connect-udp RFC, and
	//	instead it will be a POST request. the path used in the headers will be set from the
	//	post_path field, and the headers will not contain the target host and target port, as
	//	required by the connect-udp protocol. This flag should be used carefully.
	UsePost bool
	// The path used with POST method. Default path is “/“. If post path is specified and
	// use_post field isn't true, it will be rejected.
	PostPath string
	// Optional retry options, in case connecting to the upstream failed.
	RetryOptions *UdpProxyConfig_UdpTunnelingConfig_RetryOptions
	// Additional request headers to upstream proxy. Neither “:-prefixed“ pseudo-headers
	// nor the Host: header can be overridden. Values of the added headers evaluates command
	// operators if they are set in the value template.
	//
	// Example: dynamically set a header with the local port
	//
	// .. code-block:: yaml
	//
	//	headers_to_add:
	//	- header:
	//	    key: original_dst_port
	//	    value: "%DOWNSTREAM_LOCAL_PORT%"
	HeadersToAdd []*v3.HeaderValueOption
	// If configured, the filter will buffer datagrams in case that it is waiting for the upstream to be
	// ready, whether if it is during the connection process or due to upstream buffer watermarks.
	// If this field is not configured, there will be no buffering and downstream datagrams that arrive
	// while the upstream is not ready will be dropped. In case this field is set but the options
	// are not configured, the default values will be applied as described in the “BufferOptions“.
	BufferOptions *UdpProxyConfig_UdpTunnelingConfig_BufferOptions
	// Save the response headers to the downstream info filter state for consumption
	// by the session filters. The filter state key is “envoy.udp_proxy.propagate_response_headers“.
	PropagateResponseHeaders bool
	// Save the response trailers to the downstream info filter state for consumption
	// by the session filters. The filter state key is “envoy.udp_proxy.propagate_response_trailers“.
	PropagateResponseTrailers bool
	// contains filtered or unexported fields
}

func (UdpProxyConfig_UdpTunnelingConfig_builder) Build

type UdpProxyConfig_builder

type UdpProxyConfig_builder struct {

	// The stat prefix used when emitting UDP proxy filter stats.
	StatPrefix string
	// Fields of oneof RouteSpecifier:
	// The upstream cluster to connect to.
	// This field is deprecated in favor of
	// :ref:`matcher <envoy_v3_api_field_extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.matcher>`.
	//
	// Deprecated: Marked as deprecated in envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto.
	Cluster *string
	// The match tree to use when resolving route actions for incoming requests.
	// See :ref:`Routing <config_udp_listener_filters_udp_proxy_routing>` for more information.
	Matcher *v32.Matcher
	// -- end of RouteSpecifier
	// The idle timeout for sessions. Idle is defined as no datagrams between received or sent by
	// the session. The default if not specified is 1 minute.
	IdleTimeout *durationpb.Duration
	// Use the remote downstream IP address as the sender IP address when sending packets to upstream hosts.
	// This option requires Envoy to be run with the “CAP_NET_ADMIN“ capability on Linux.
	// And the IPv6 stack must be enabled on Linux kernel.
	// This option does not preserve the remote downstream port.
	// If this option is enabled, the IP address of sent datagrams will be changed to the remote downstream IP address.
	// This means that Envoy will not receive packets that are sent by upstream hosts because the upstream hosts
	// will send the packets with the remote downstream IP address as the destination. All packets will be routed
	// to the remote downstream directly if there are route rules on the upstream host side.
	// There are two options to return the packets back to the remote downstream.
	// The first one is to use DSR (Direct Server Return).
	// The other one is to configure routing rules on the upstream hosts to forward
	// all packets back to Envoy and configure iptables rules on the host running Envoy to
	// forward all packets from upstream hosts to the Envoy process so that Envoy can forward the packets to the downstream.
	// If the platform does not support this option, Envoy will raise a configuration error.
	UseOriginalSrcIp bool
	// Optional configuration for UDP proxy hash policies. If hash_policies is not set, the hash-based
	// load balancing algorithms will select a host randomly. Currently the number of hash policies is
	// limited to 1.
	HashPolicies []*UdpProxyConfig_HashPolicy
	// UDP socket configuration for upstream sockets. The default for
	// :ref:`prefer_gro <envoy_v3_api_field_config.core.v3.UdpSocketConfig.prefer_gro>` is true for upstream
	// sockets as the assumption is datagrams will be received from a single source.
	UpstreamSocketConfig *v3.UdpSocketConfig
	// Perform per packet load balancing (upstream host selection) on each received data chunk.
	// The default if not specified is false, that means each data chunk is forwarded
	// to upstream host selected on first chunk receival for that "session" (identified by source IP/port and local IP/port).
	// Only one of use_per_packet_load_balancing or session_filters can be used.
	UsePerPacketLoadBalancing bool
	// Configuration for session access logs emitted by the UDP proxy. Note that certain UDP specific data is emitted as :ref:`Dynamic Metadata <config_access_log_format_dynamic_metadata>`.
	AccessLog []*v31.AccessLog
	// Configuration for proxy access logs emitted by the UDP proxy. Note that certain UDP specific data is emitted as :ref:`Dynamic Metadata <config_access_log_format_dynamic_metadata>`.
	ProxyAccessLog []*v31.AccessLog
	// Optional session filters that will run for each UDP session.
	// Only one of use_per_packet_load_balancing or session_filters can be used.
	// [#extension-category: envoy.filters.udp.session]
	SessionFilters []*UdpProxyConfig_SessionFilter
	// If set, this configures UDP tunneling. See `Proxying UDP in HTTP <https://www.rfc-editor.org/rfc/rfc9298.html>`_.
	// More information can be found in the UDP Proxy and HTTP upgrade documentation.
	TunnelingConfig *UdpProxyConfig_UdpTunnelingConfig
	// Additional access log options for UDP Proxy.
	AccessLogOptions *UdpProxyConfig_UdpAccessLogOptions
	// contains filtered or unexported fields
}

func (UdpProxyConfig_builder) Build

Source Files

  • route.pb.go
  • udp_proxy.pb.go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL