Interface UdpProxyConfigOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
UdpProxyConfig, UdpProxyConfig.Builder

public interface UdpProxyConfigOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Details

    • getStatPrefix

      String getStatPrefix()
       The stat prefix used when emitting UDP proxy filter stats.
       
      string stat_prefix = 1 [(.validate.rules) = { ... }
      Returns:
      The statPrefix.
    • getStatPrefixBytes

      com.google.protobuf.ByteString getStatPrefixBytes()
       The stat prefix used when emitting UDP proxy filter stats.
       
      string stat_prefix = 1 [(.validate.rules) = { ... }
      Returns:
      The bytes for statPrefix.
    • hasCluster

      @Deprecated boolean hasCluster()
      Deprecated.
      envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.cluster is deprecated. See envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto;l=205
       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>`.
       
      string cluster = 2 [deprecated = true, (.validate.rules) = { ... }
      Returns:
      Whether the cluster field is set.
    • getCluster

      @Deprecated String getCluster()
      Deprecated.
      envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.cluster is deprecated. See envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto;l=205
       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>`.
       
      string cluster = 2 [deprecated = true, (.validate.rules) = { ... }
      Returns:
      The cluster.
    • getClusterBytes

      @Deprecated com.google.protobuf.ByteString getClusterBytes()
      Deprecated.
      envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.cluster is deprecated. See envoy/extensions/filters/udp/udp_proxy/v3/udp_proxy.proto;l=205
       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>`.
       
      string cluster = 2 [deprecated = true, (.validate.rules) = { ... }
      Returns:
      The bytes for cluster.
    • hasMatcher

      boolean hasMatcher()
       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.
       
      .xds.type.matcher.v3.Matcher matcher = 9 [(.xds.annotations.v3.field_status) = { ... }
      Returns:
      Whether the matcher field is set.
    • getMatcher

      Matcher getMatcher()
       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.
       
      .xds.type.matcher.v3.Matcher matcher = 9 [(.xds.annotations.v3.field_status) = { ... }
      Returns:
      The matcher.
    • getMatcherOrBuilder

      MatcherOrBuilder getMatcherOrBuilder()
       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.
       
      .xds.type.matcher.v3.Matcher matcher = 9 [(.xds.annotations.v3.field_status) = { ... }
    • hasIdleTimeout

      boolean hasIdleTimeout()
       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.
       
      .google.protobuf.Duration idle_timeout = 3;
      Returns:
      Whether the idleTimeout field is set.
    • getIdleTimeout

      com.google.protobuf.Duration getIdleTimeout()
       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.
       
      .google.protobuf.Duration idle_timeout = 3;
      Returns:
      The idleTimeout.
    • getIdleTimeoutOrBuilder

      com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder()
       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.
       
      .google.protobuf.Duration idle_timeout = 3;
    • getUseOriginalSrcIp

      boolean getUseOriginalSrcIp()
       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.
       
      bool use_original_src_ip = 4;
      Returns:
      The useOriginalSrcIp.
    • getHashPoliciesList

      List<UdpProxyConfig.HashPolicy> getHashPoliciesList()
       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.
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.HashPolicy hash_policies = 5 [(.validate.rules) = { ... }
    • getHashPolicies

      UdpProxyConfig.HashPolicy getHashPolicies(int index)
       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.
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.HashPolicy hash_policies = 5 [(.validate.rules) = { ... }
    • getHashPoliciesCount

      int getHashPoliciesCount()
       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.
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.HashPolicy hash_policies = 5 [(.validate.rules) = { ... }
    • getHashPoliciesOrBuilderList

      List<? extends UdpProxyConfig.HashPolicyOrBuilder> getHashPoliciesOrBuilderList()
       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.
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.HashPolicy hash_policies = 5 [(.validate.rules) = { ... }
    • getHashPoliciesOrBuilder

      UdpProxyConfig.HashPolicyOrBuilder getHashPoliciesOrBuilder(int index)
       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.
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.HashPolicy hash_policies = 5 [(.validate.rules) = { ... }
    • hasUpstreamSocketConfig

      boolean hasUpstreamSocketConfig()
       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.
       
      .envoy.config.core.v3.UdpSocketConfig upstream_socket_config = 6;
      Returns:
      Whether the upstreamSocketConfig field is set.
    • getUpstreamSocketConfig

      UdpSocketConfig getUpstreamSocketConfig()
       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.
       
      .envoy.config.core.v3.UdpSocketConfig upstream_socket_config = 6;
      Returns:
      The upstreamSocketConfig.
    • getUpstreamSocketConfigOrBuilder

      UdpSocketConfigOrBuilder getUpstreamSocketConfigOrBuilder()
       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.
       
      .envoy.config.core.v3.UdpSocketConfig upstream_socket_config = 6;
    • getUsePerPacketLoadBalancing

      boolean getUsePerPacketLoadBalancing()
       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.
       
      bool use_per_packet_load_balancing = 7;
      Returns:
      The usePerPacketLoadBalancing.
    • getAccessLogList

      List<AccessLog> getAccessLogList()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog access_log = 8;
    • getAccessLog

      AccessLog getAccessLog(int index)
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog access_log = 8;
    • getAccessLogCount

      int getAccessLogCount()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog access_log = 8;
    • getAccessLogOrBuilderList

      List<? extends AccessLogOrBuilder> getAccessLogOrBuilderList()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog access_log = 8;
    • getAccessLogOrBuilder

      AccessLogOrBuilder getAccessLogOrBuilder(int index)
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog access_log = 8;
    • getProxyAccessLogList

      List<AccessLog> getProxyAccessLogList()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog proxy_access_log = 10;
    • getProxyAccessLog

      AccessLog getProxyAccessLog(int index)
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog proxy_access_log = 10;
    • getProxyAccessLogCount

      int getProxyAccessLogCount()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog proxy_access_log = 10;
    • getProxyAccessLogOrBuilderList

      List<? extends AccessLogOrBuilder> getProxyAccessLogOrBuilderList()
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog proxy_access_log = 10;
    • getProxyAccessLogOrBuilder

      AccessLogOrBuilder getProxyAccessLogOrBuilder(int index)
       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>`.
       
      repeated .envoy.config.accesslog.v3.AccessLog proxy_access_log = 10;
    • getSessionFiltersList

      List<UdpProxyConfig.SessionFilter> getSessionFiltersList()
       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]
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter session_filters = 11;
    • getSessionFilters

      UdpProxyConfig.SessionFilter getSessionFilters(int index)
       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]
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter session_filters = 11;
    • getSessionFiltersCount

      int getSessionFiltersCount()
       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]
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter session_filters = 11;
    • getSessionFiltersOrBuilderList

      List<? extends UdpProxyConfig.SessionFilterOrBuilder> getSessionFiltersOrBuilderList()
       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]
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter session_filters = 11;
    • getSessionFiltersOrBuilder

      UdpProxyConfig.SessionFilterOrBuilder getSessionFiltersOrBuilder(int index)
       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]
       
      repeated .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.SessionFilter session_filters = 11;
    • hasTunnelingConfig

      boolean hasTunnelingConfig()
       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.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpTunnelingConfig tunneling_config = 12;
      Returns:
      Whether the tunnelingConfig field is set.
    • getTunnelingConfig

      UdpProxyConfig.UdpTunnelingConfig getTunnelingConfig()
       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.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpTunnelingConfig tunneling_config = 12;
      Returns:
      The tunnelingConfig.
    • getTunnelingConfigOrBuilder

      UdpProxyConfig.UdpTunnelingConfigOrBuilder getTunnelingConfigOrBuilder()
       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.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpTunnelingConfig tunneling_config = 12;
    • hasAccessLogOptions

      boolean hasAccessLogOptions()
       Additional access log options for UDP Proxy.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpAccessLogOptions access_log_options = 13;
      Returns:
      Whether the accessLogOptions field is set.
    • getAccessLogOptions

      UdpProxyConfig.UdpAccessLogOptions getAccessLogOptions()
       Additional access log options for UDP Proxy.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpAccessLogOptions access_log_options = 13;
      Returns:
      The accessLogOptions.
    • getAccessLogOptionsOrBuilder

      UdpProxyConfig.UdpAccessLogOptionsOrBuilder getAccessLogOptionsOrBuilder()
       Additional access log options for UDP Proxy.
       
      .envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig.UdpAccessLogOptions access_log_options = 13;
    • getRouteSpecifierCase

      UdpProxyConfig.RouteSpecifierCase getRouteSpecifierCase()