From 05ae467b53708439f1e245ac73235c0fc2ae073a Mon Sep 17 00:00:00 2001
From: Rama Chavali The idle timeout for TCP connections.
-The idle timeout is defined as the period in which there are no bytes sent or received on either
-the upstream or downstream connection.
+ The idle timeout for TCP connections. This is applied to the outbound TCP proxy
+filter on the listener for the upstream cluster.
+The idle timeout is defined as the period in which there are no bytes sent or received on the
+upstream connection.
If not set, the default idle timeout is 1 hour. If set to 0s, the timeout will be disabled.
Idle timeout is not configured per each cluster individually when weighted destinations are used,
because idleTimeout is a property of a listener, not a cluster. In that case, idleTimeout
specified in a destination rule for the first weighted route is configured in the listener,
-which means also for all weighted routes. The idle timeout for TCP connections. This is applied to the outbound TCP proxy
-filter on the listener for the upstream cluster.
+ The idle timeout for TCP connections. This is applied to the outbound connections to the upstream service.
The idle timeout is defined as the period in which there are no bytes sent or received on the
upstream connection.
If not set, the default idle timeout is 1 hour. If set to 0s, the timeout will be disabled.
@@ -1120,10 +1119,9 @@ TCPSettings
-
diff --git a/networking/v1alpha3/destination_rule.proto b/networking/v1alpha3/destination_rule.proto
index ff76a60204..1125f6edba 100644
--- a/networking/v1alpha3/destination_rule.proto
+++ b/networking/v1alpha3/destination_rule.proto
@@ -630,14 +630,19 @@ message ConnectionPoolSettings {
// is reached the connection will be closed. Duration must be at least 1ms.
google.protobuf.Duration max_connection_duration = 4;
- // The idle timeout for TCP connections.
- // The idle timeout is defined as the period in which there are no bytes sent or received on either
- // the upstream or downstream connection.
+ // The idle timeout for TCP connections. This is applied to the outbound TCP proxy
+ // filter on the listener for the upstream cluster.
+ // The idle timeout is defined as the period in which there are no bytes sent or received on the
+ // upstream connection.
// If not set, the default idle timeout is 1 hour. If set to 0s, the timeout will be disabled.
// Idle timeout is not configured per each cluster individually when weighted destinations are used,
// because idleTimeout is a property of a listener, not a cluster. In that case, idleTimeout
// specified in a destination rule for the first weighted route is configured in the listener,
// which means also for all weighted routes.
+ // To set the idle timeout for downstream (inbound) TCP connections, use the
+ // `idleTimeout` field in the proxy configuration (e.g., via the `proxy.istio.io/config`
+ // annotation) or use an EnvoyFilter to patch the inbound listener's
+ // `envoy.filters.network.tcp_proxy` network filter.
// +protoc-gen-crd:duration-validation:none
google.protobuf.Duration idle_timeout = 5;
}
From fe045441c2946e5df730dfd28181a8f4adbadd4d Mon Sep 17 00:00:00 2001
From: Rama Chavali idleTimeout field in the proxy configuration (e.g., via the proxy.istio.io/config
+annotation) or use an EnvoyFilter to patch the inbound listener’s
+envoy.filters.network.tcp_proxy network filter.
TCPSettings
-
diff --git a/networking/v1alpha3/destination_rule.proto b/networking/v1alpha3/destination_rule.proto
index 1125f6edba..d132fdc15d 100644
--- a/networking/v1alpha3/destination_rule.proto
+++ b/networking/v1alpha3/destination_rule.proto
@@ -630,8 +630,7 @@ message ConnectionPoolSettings {
// is reached the connection will be closed. Duration must be at least 1ms.
google.protobuf.Duration max_connection_duration = 4;
- // The idle timeout for TCP connections. This is applied to the outbound TCP proxy
- // filter on the listener for the upstream cluster.
+ // The idle timeout for TCP connections. This is applied to the outbound connections to the upstream service.
// The idle timeout is defined as the period in which there are no bytes sent or received on the
// upstream connection.
// If not set, the default idle timeout is 1 hour. If set to 0s, the timeout will be disabled.
@@ -639,10 +638,9 @@ message ConnectionPoolSettings {
// because idleTimeout is a property of a listener, not a cluster. In that case, idleTimeout
// specified in a destination rule for the first weighted route is configured in the listener,
// which means also for all weighted routes.
- // To set the idle timeout for downstream (inbound) TCP connections, use the
+ // To set the idle timeout for downstream (inbound) connections, use the
// `idleTimeout` field in the proxy configuration (e.g., via the `proxy.istio.io/config`
- // annotation) or use an EnvoyFilter to patch the inbound listener's
- // `envoy.filters.network.tcp_proxy` network filter.
+ // annotation) which applies to all inbound connections.
// +protoc-gen-crd:duration-validation:none
google.protobuf.Duration idle_timeout = 5;
}
From 4befce1479a4c73b728007505aaa14bf44ab06b2 Mon Sep 17 00:00:00 2001
From: Rama Chavali TCPSettings
because idleTimeout is a property of a listener, not a cluster. In that case, idleTimeout
specified in a destination rule for the first weighted route is configured in the listener,
which means also for all weighted routes.
-To set the idle timeout for downstream (inbound) TCP connections, use the
+To set the idle timeout for downstream (inbound) connections, use the
idleTimeout field in the proxy configuration (e.g., via the proxy.istio.io/config
-annotation) or use an EnvoyFilter to patch the inbound listener’s
-envoy.filters.network.tcp_proxy network filter.
+annotation) which applies to all inbound connections.
TCPSettings
specified in a destination rule for the first weighted route is configured in the listener,
which means also for all weighted routes.
To set the idle timeout for downstream (inbound) connections, use the
-idleTimeout field in the proxy configuration (e.g., via the proxy.istio.io/config
+ISTIO_META_IDLE_TIMEOUT field in the proxy configuration (e.g., via the proxy.istio.io/config
annotation) which applies to all inbound connections.
proxy.istio.io/config: |-
+ proxyMetadata:
+ ISTIO_META_IDLE_TIMEOUT: "100s"
+
diff --git a/networking/v1alpha3/destination_rule.proto b/networking/v1alpha3/destination_rule.proto
index d132fdc15d..13da2da6ec 100644
--- a/networking/v1alpha3/destination_rule.proto
+++ b/networking/v1alpha3/destination_rule.proto
@@ -639,8 +639,13 @@ message ConnectionPoolSettings {
// specified in a destination rule for the first weighted route is configured in the listener,
// which means also for all weighted routes.
// To set the idle timeout for downstream (inbound) connections, use the
- // `idleTimeout` field in the proxy configuration (e.g., via the `proxy.istio.io/config`
+ // `ISTIO_META_IDLE_TIMEOUT` field in the proxy configuration (e.g., via the `proxy.istio.io/config`
// annotation) which applies to all inbound connections.
+ // ```
+ // proxy.istio.io/config: |-
+ // proxyMetadata:
+ // ISTIO_META_IDLE_TIMEOUT: "100s"
+ // ```
// +protoc-gen-crd:duration-validation:none
google.protobuf.Duration idle_timeout = 5;
}