QUIC listener config

This documentation is for the Envoy v3 API.

As of Envoy v1.18 the v2 API has been removed and is no longer supported.

If you are upgrading from v2 API config you may wish to view the v2 API documentation:

api/v2/listener/quic_config.proto

config.listener.v3.QuicProtocolOptions

[config.listener.v3.QuicProtocolOptions proto]

Configuration specific to the UDP QUIC listener.

  1. {
  2. "quic_protocol_options": "{...}",
  3. "idle_timeout": "{...}",
  4. "crypto_handshake_timeout": "{...}",
  5. "enabled": "{...}",
  6. "packets_to_read_to_connection_count_ratio": "{...}",
  7. "crypto_stream_config": "{...}",
  8. "proof_source_config": "{...}"
  9. }

quic_protocol_options

(config.core.v3.QuicProtocolOptions)

idle_timeout

(Duration) Maximum number of milliseconds that connection will be alive when there is no network activity.

If it is less than 1ms, Envoy will use 1ms. 300000ms if not specified.

crypto_handshake_timeout

(Duration) Connection timeout in milliseconds before the crypto handshake is finished.

If it is less than 5000ms, Envoy will use 5000ms. 20000ms if not specified.

enabled

(config.core.v3.RuntimeFeatureFlag) Runtime flag that controls whether the listener is enabled or not. If not specified, defaults to enabled.

packets_to_read_to_connection_count_ratio

(UInt32Value) A multiplier to number of connections which is used to determine how many packets to read per event loop. A reasonable number should allow the listener to process enough payload but not starve TCP and other UDP sockets and also prevent long event loop duration. The default value is 32. This means if there are N QUIC connections, the total number of packets to read in each read event will be 32 * N. The actual number of packets to read in total by the UDP listener is also bound by 6000, regardless of this field or how many connections there are.

crypto_stream_config

(config.core.v3.TypedExtensionConfig) Configure which implementation of quic::QuicCryptoClientStreamBase to be used for this listener. If not specified the QUICHE default one configured by will be used.

Tip

This extension category has the following known extensions:

proof_source_config

(config.core.v3.TypedExtensionConfig) Configure which implementation of quic::ProofSource to be used for this listener. If not specified the default one configured by will be used.

Tip

This extension category has the following known extensions: