.. _envoy_v3_api_file_envoy/type/v3/hash_policy.proto: Hash Policy =========== .. _envoy_v3_api_msg_type.v3.HashPolicy: type.v3.HashPolicy ------------------ :repo:`[type.v3.HashPolicy proto] ` Specifies the hash policy .. code-block:: json { "source_ip": "{...}", "filter_state": "{...}" } .. _envoy_v3_api_field_type.v3.HashPolicy.source_ip: source_ip (:ref:`type.v3.HashPolicy.SourceIp `) Precisely one of :ref:`source_ip `, :ref:`filter_state ` must be set. .. _envoy_v3_api_field_type.v3.HashPolicy.filter_state: filter_state (:ref:`type.v3.HashPolicy.FilterState `) Precisely one of :ref:`source_ip `, :ref:`filter_state ` must be set. .. _envoy_v3_api_msg_type.v3.HashPolicy.SourceIp: type.v3.HashPolicy.SourceIp --------------------------- :repo:`[type.v3.HashPolicy.SourceIp proto] ` The source IP will be used to compute the hash used by hash-based load balancing algorithms. .. _envoy_v3_api_msg_type.v3.HashPolicy.FilterState: type.v3.HashPolicy.FilterState ------------------------------ :repo:`[type.v3.HashPolicy.FilterState proto] ` An Object in the :ref:`filterState ` will be used to compute the hash used by hash-based load balancing algorithms. .. code-block:: json { "key": "..." } .. _envoy_v3_api_field_type.v3.HashPolicy.FilterState.key: key (`string `_, *REQUIRED*) The name of the Object in the filterState, which is an Envoy::Hashable object. If there is no data associated with the key, or the stored object is not Envoy::Hashable, no hash will be produced.