Class BackendServiceConnectionTrackingPolicy

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.cloud.compute.v1.BackendServiceConnectionTrackingPolicy
All Implemented Interfaces:
BackendServiceConnectionTrackingPolicyOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

@Generated public final class BackendServiceConnectionTrackingPolicy extends com.google.protobuf.GeneratedMessage implements BackendServiceConnectionTrackingPolicyOrBuilder
 Connection Tracking configuration for this BackendService.
 
Protobuf type google.cloud.compute.v1.BackendServiceConnectionTrackingPolicy
See Also:
  • Field Details

    • CONNECTION_PERSISTENCE_ON_UNHEALTHY_BACKENDS_FIELD_NUMBER

      public static final int CONNECTION_PERSISTENCE_ON_UNHEALTHY_BACKENDS_FIELD_NUMBER
      See Also:
    • ENABLE_STRONG_AFFINITY_FIELD_NUMBER

      public static final int ENABLE_STRONG_AFFINITY_FIELD_NUMBER
      See Also:
    • IDLE_TIMEOUT_SEC_FIELD_NUMBER

      public static final int IDLE_TIMEOUT_SEC_FIELD_NUMBER
      See Also:
    • TRACKING_MODE_FIELD_NUMBER

      public static final int TRACKING_MODE_FIELD_NUMBER
      See Also:
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • hasConnectionPersistenceOnUnhealthyBackends

      public boolean hasConnectionPersistenceOnUnhealthyBackends()
       Specifies connection persistence when backends are unhealthy. The default
       value is DEFAULT_FOR_PROTOCOL.
      
       If set to DEFAULT_FOR_PROTOCOL, the existing connections
       persist on unhealthy backends only for connection-oriented protocols
       (TCP and SCTP) and only if the Tracking Mode isPER_CONNECTION (default tracking mode) or the Session
       Affinity is configured for 5-tuple. They do not persist forUDP.
      
       If set to NEVER_PERSIST, after a backend becomes unhealthy,
       the existing connections on the unhealthy backend are never persisted on
       the unhealthy backend. They are always diverted to newly selected healthy
       backends (unless all backends are unhealthy).
      
       If set to ALWAYS_PERSIST, existing connections always
       persist on unhealthy backends regardless of protocol and session
       affinity. It is generally not recommended to use this mode overriding the
       default.
      
       For more details, see [Connection Persistence for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#connection-persistence)
       and [Connection Persistence for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#connection-persistence).
       Check the ConnectionPersistenceOnUnhealthyBackends enum for the list of possible values.
       
      optional string connection_persistence_on_unhealthy_backends = 152439033;
      Specified by:
      hasConnectionPersistenceOnUnhealthyBackends in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      Whether the connectionPersistenceOnUnhealthyBackends field is set.
    • getConnectionPersistenceOnUnhealthyBackends

      public String getConnectionPersistenceOnUnhealthyBackends()
       Specifies connection persistence when backends are unhealthy. The default
       value is DEFAULT_FOR_PROTOCOL.
      
       If set to DEFAULT_FOR_PROTOCOL, the existing connections
       persist on unhealthy backends only for connection-oriented protocols
       (TCP and SCTP) and only if the Tracking Mode isPER_CONNECTION (default tracking mode) or the Session
       Affinity is configured for 5-tuple. They do not persist forUDP.
      
       If set to NEVER_PERSIST, after a backend becomes unhealthy,
       the existing connections on the unhealthy backend are never persisted on
       the unhealthy backend. They are always diverted to newly selected healthy
       backends (unless all backends are unhealthy).
      
       If set to ALWAYS_PERSIST, existing connections always
       persist on unhealthy backends regardless of protocol and session
       affinity. It is generally not recommended to use this mode overriding the
       default.
      
       For more details, see [Connection Persistence for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#connection-persistence)
       and [Connection Persistence for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#connection-persistence).
       Check the ConnectionPersistenceOnUnhealthyBackends enum for the list of possible values.
       
      optional string connection_persistence_on_unhealthy_backends = 152439033;
      Specified by:
      getConnectionPersistenceOnUnhealthyBackends in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The connectionPersistenceOnUnhealthyBackends.
    • getConnectionPersistenceOnUnhealthyBackendsBytes

      public com.google.protobuf.ByteString getConnectionPersistenceOnUnhealthyBackendsBytes()
       Specifies connection persistence when backends are unhealthy. The default
       value is DEFAULT_FOR_PROTOCOL.
      
       If set to DEFAULT_FOR_PROTOCOL, the existing connections
       persist on unhealthy backends only for connection-oriented protocols
       (TCP and SCTP) and only if the Tracking Mode isPER_CONNECTION (default tracking mode) or the Session
       Affinity is configured for 5-tuple. They do not persist forUDP.
      
       If set to NEVER_PERSIST, after a backend becomes unhealthy,
       the existing connections on the unhealthy backend are never persisted on
       the unhealthy backend. They are always diverted to newly selected healthy
       backends (unless all backends are unhealthy).
      
       If set to ALWAYS_PERSIST, existing connections always
       persist on unhealthy backends regardless of protocol and session
       affinity. It is generally not recommended to use this mode overriding the
       default.
      
       For more details, see [Connection Persistence for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#connection-persistence)
       and [Connection Persistence for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#connection-persistence).
       Check the ConnectionPersistenceOnUnhealthyBackends enum for the list of possible values.
       
      optional string connection_persistence_on_unhealthy_backends = 152439033;
      Specified by:
      getConnectionPersistenceOnUnhealthyBackendsBytes in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The bytes for connectionPersistenceOnUnhealthyBackends.
    • hasEnableStrongAffinity

      public boolean hasEnableStrongAffinity()
       Enable Strong Session Affinity for external passthrough Network Load
       Balancers. This option is not available publicly.
       
      optional bool enable_strong_affinity = 24539924;
      Specified by:
      hasEnableStrongAffinity in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      Whether the enableStrongAffinity field is set.
    • getEnableStrongAffinity

      public boolean getEnableStrongAffinity()
       Enable Strong Session Affinity for external passthrough Network Load
       Balancers. This option is not available publicly.
       
      optional bool enable_strong_affinity = 24539924;
      Specified by:
      getEnableStrongAffinity in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The enableStrongAffinity.
    • hasIdleTimeoutSec

      public boolean hasIdleTimeoutSec()
       Specifies how long to keep a Connection Tracking entry while there is no
       matching traffic (in seconds).
      
       For internal passthrough Network Load Balancers:
      
       - The minimum (default) is 10 minutes and the maximum is 16 hours.
       - It can be set only if Connection Tracking is less than 5-tuple
       (i.e. Session Affinity is CLIENT_IP_NO_DESTINATION,CLIENT_IP or CLIENT_IP_PROTO, and Tracking
       Mode is PER_SESSION).
      
      
      
       For external passthrough Network Load Balancers the default is 60
       seconds. This option is not available publicly.
       
      optional int32 idle_timeout_sec = 24977544;
      Specified by:
      hasIdleTimeoutSec in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      Whether the idleTimeoutSec field is set.
    • getIdleTimeoutSec

      public int getIdleTimeoutSec()
       Specifies how long to keep a Connection Tracking entry while there is no
       matching traffic (in seconds).
      
       For internal passthrough Network Load Balancers:
      
       - The minimum (default) is 10 minutes and the maximum is 16 hours.
       - It can be set only if Connection Tracking is less than 5-tuple
       (i.e. Session Affinity is CLIENT_IP_NO_DESTINATION,CLIENT_IP or CLIENT_IP_PROTO, and Tracking
       Mode is PER_SESSION).
      
      
      
       For external passthrough Network Load Balancers the default is 60
       seconds. This option is not available publicly.
       
      optional int32 idle_timeout_sec = 24977544;
      Specified by:
      getIdleTimeoutSec in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The idleTimeoutSec.
    • hasTrackingMode

      public boolean hasTrackingMode()
       Specifies the key used for connection tracking. There are two
       options:
      
       - PER_CONNECTION: This is the default mode. The Connection
       Tracking is performed as per the Connection Key (default Hash Method) for
       the specific protocol.
       - PER_SESSION: The Connection Tracking is performed as per
       the configured Session Affinity. It matches the configured Session
       Affinity.
      
      
      
       For more details, see [Tracking Mode for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#tracking-mode)
       and [Tracking Mode for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#tracking-mode).
       Check the TrackingMode enum for the list of possible values.
       
      optional string tracking_mode = 127757867;
      Specified by:
      hasTrackingMode in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      Whether the trackingMode field is set.
    • getTrackingMode

      public String getTrackingMode()
       Specifies the key used for connection tracking. There are two
       options:
      
       - PER_CONNECTION: This is the default mode. The Connection
       Tracking is performed as per the Connection Key (default Hash Method) for
       the specific protocol.
       - PER_SESSION: The Connection Tracking is performed as per
       the configured Session Affinity. It matches the configured Session
       Affinity.
      
      
      
       For more details, see [Tracking Mode for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#tracking-mode)
       and [Tracking Mode for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#tracking-mode).
       Check the TrackingMode enum for the list of possible values.
       
      optional string tracking_mode = 127757867;
      Specified by:
      getTrackingMode in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The trackingMode.
    • getTrackingModeBytes

      public com.google.protobuf.ByteString getTrackingModeBytes()
       Specifies the key used for connection tracking. There are two
       options:
      
       - PER_CONNECTION: This is the default mode. The Connection
       Tracking is performed as per the Connection Key (default Hash Method) for
       the specific protocol.
       - PER_SESSION: The Connection Tracking is performed as per
       the configured Session Affinity. It matches the configured Session
       Affinity.
      
      
      
       For more details, see [Tracking Mode for Network Load
       Balancing](https://cloud.google.com/load-balancing/docs/network/networklb-backend-service#tracking-mode)
       and [Tracking Mode for Internal TCP/UDP Load
       Balancing](https://cloud.google.com/load-balancing/docs/internal#tracking-mode).
       Check the TrackingMode enum for the list of possible values.
       
      optional string tracking_mode = 127757867;
      Specified by:
      getTrackingModeBytes in interface BackendServiceConnectionTrackingPolicyOrBuilder
      Returns:
      The bytes for trackingMode.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static BackendServiceConnectionTrackingPolicy parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static BackendServiceConnectionTrackingPolicy parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static BackendServiceConnectionTrackingPolicy parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

    • newBuilder

    • toBuilder

      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected BackendServiceConnectionTrackingPolicy.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static BackendServiceConnectionTrackingPolicy getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<BackendServiceConnectionTrackingPolicy> parser()
    • getParserForType

      public com.google.protobuf.Parser<BackendServiceConnectionTrackingPolicy> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public BackendServiceConnectionTrackingPolicy getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder