udp_proxyv3

package
v0.11.3 Latest Latest
Warning

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

Go to latest
Published: Jun 6, 2023 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

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) Descriptor deprecated

func (*Route) Descriptor() ([]byte, []int)

Deprecated: Use Route.ProtoReflect.Descriptor instead.

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) String

func (x *Route) String() string

func (*Route) Validate

func (m *Route) Validate() error

Validate checks the field values on Route with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Route) ValidateAll

func (m *Route) ValidateAll() error

ValidateAll checks the field values on Route with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in RouteMultiError, or nil if none found.

type RouteMultiError

type RouteMultiError []error

RouteMultiError is an error wrapping multiple validation errors returned by Route.ValidateAll() if the designated constraints aren't met.

func (RouteMultiError) AllErrors

func (m RouteMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (RouteMultiError) Error

func (m RouteMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type RouteValidationError

type RouteValidationError struct {
	// contains filtered or unexported fields
}

RouteValidationError is the validation error returned by Route.Validate if the designated constraints aren't met.

func (RouteValidationError) Cause

func (e RouteValidationError) Cause() error

Cause function returns cause value.

func (RouteValidationError) Error

func (e RouteValidationError) Error() string

Error satisfies the builtin error interface

func (RouteValidationError) ErrorName

func (e RouteValidationError) ErrorName() string

ErrorName returns error name.

func (RouteValidationError) Field

func (e RouteValidationError) Field() string

Field function returns field value.

func (RouteValidationError) Key

func (e RouteValidationError) Key() bool

Key function returns key value.

func (RouteValidationError) Reason

func (e RouteValidationError) Reason() string

Reason function returns reason value.

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 assignable 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 *duration.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).
	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"`
	// contains filtered or unexported fields
}

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

func (*UdpProxyConfig) Descriptor deprecated

func (*UdpProxyConfig) Descriptor() ([]byte, []int)

Deprecated: Use UdpProxyConfig.ProtoReflect.Descriptor instead.

func (*UdpProxyConfig) GetAccessLog

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

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() *duration.Duration

func (*UdpProxyConfig) GetMatcher

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

func (*UdpProxyConfig) GetProxyAccessLog

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

func (*UdpProxyConfig) GetRouteSpecifier

func (m *UdpProxyConfig) GetRouteSpecifier() isUdpProxyConfig_RouteSpecifier

func (*UdpProxyConfig) GetStatPrefix

func (x *UdpProxyConfig) GetStatPrefix() string

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) ProtoMessage

func (*UdpProxyConfig) ProtoMessage()

func (*UdpProxyConfig) ProtoReflect

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

func (*UdpProxyConfig) Reset

func (x *UdpProxyConfig) Reset()

func (*UdpProxyConfig) String

func (x *UdpProxyConfig) String() string

func (*UdpProxyConfig) Validate

func (m *UdpProxyConfig) Validate() error

Validate checks the field values on UdpProxyConfig with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*UdpProxyConfig) ValidateAll

func (m *UdpProxyConfig) ValidateAll() error

ValidateAll checks the field values on UdpProxyConfig with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in UdpProxyConfigMultiError, or nil if none found.

type UdpProxyConfigMultiError

type UdpProxyConfigMultiError []error

UdpProxyConfigMultiError is an error wrapping multiple validation errors returned by UdpProxyConfig.ValidateAll() if the designated constraints aren't met.

func (UdpProxyConfigMultiError) AllErrors

func (m UdpProxyConfigMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (UdpProxyConfigMultiError) Error

func (m UdpProxyConfigMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type UdpProxyConfigValidationError

type UdpProxyConfigValidationError struct {
	// contains filtered or unexported fields
}

UdpProxyConfigValidationError is the validation error returned by UdpProxyConfig.Validate if the designated constraints aren't met.

func (UdpProxyConfigValidationError) Cause

Cause function returns cause value.

func (UdpProxyConfigValidationError) Error

Error satisfies the builtin error interface

func (UdpProxyConfigValidationError) ErrorName

func (e UdpProxyConfigValidationError) ErrorName() string

ErrorName returns error name.

func (UdpProxyConfigValidationError) Field

Field function returns field value.

func (UdpProxyConfigValidationError) Key

Key function returns key value.

func (UdpProxyConfigValidationError) Reason

Reason function returns reason value.

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 assignable 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) Descriptor deprecated

func (*UdpProxyConfig_HashPolicy) Descriptor() ([]byte, []int)

Deprecated: Use UdpProxyConfig_HashPolicy.ProtoReflect.Descriptor instead.

func (*UdpProxyConfig_HashPolicy) GetKey

func (x *UdpProxyConfig_HashPolicy) GetKey() string

func (*UdpProxyConfig_HashPolicy) GetPolicySpecifier

func (m *UdpProxyConfig_HashPolicy) GetPolicySpecifier() isUdpProxyConfig_HashPolicy_PolicySpecifier

func (*UdpProxyConfig_HashPolicy) GetSourceIp

func (x *UdpProxyConfig_HashPolicy) GetSourceIp() 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) String

func (x *UdpProxyConfig_HashPolicy) String() string

func (*UdpProxyConfig_HashPolicy) Validate

func (m *UdpProxyConfig_HashPolicy) Validate() error

Validate checks the field values on UdpProxyConfig_HashPolicy with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*UdpProxyConfig_HashPolicy) ValidateAll

func (m *UdpProxyConfig_HashPolicy) ValidateAll() error

ValidateAll checks the field values on UdpProxyConfig_HashPolicy with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in UdpProxyConfig_HashPolicyMultiError, or nil if none found.

type UdpProxyConfig_HashPolicyMultiError

type UdpProxyConfig_HashPolicyMultiError []error

UdpProxyConfig_HashPolicyMultiError is an error wrapping multiple validation errors returned by UdpProxyConfig_HashPolicy.ValidateAll() if the designated constraints aren't met.

func (UdpProxyConfig_HashPolicyMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (UdpProxyConfig_HashPolicyMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type UdpProxyConfig_HashPolicyValidationError

type UdpProxyConfig_HashPolicyValidationError struct {
	// contains filtered or unexported fields
}

UdpProxyConfig_HashPolicyValidationError is the validation error returned by UdpProxyConfig_HashPolicy.Validate if the designated constraints aren't met.

func (UdpProxyConfig_HashPolicyValidationError) Cause

Cause function returns cause value.

func (UdpProxyConfig_HashPolicyValidationError) Error

Error satisfies the builtin error interface

func (UdpProxyConfig_HashPolicyValidationError) ErrorName

ErrorName returns error name.

func (UdpProxyConfig_HashPolicyValidationError) Field

Field function returns field value.

func (UdpProxyConfig_HashPolicyValidationError) Key

Key function returns key value.

func (UdpProxyConfig_HashPolicyValidationError) Reason

Reason function returns reason value.

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_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"`
}

Jump to

Keyboard shortcuts

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