keyless_quic

A keyless quic connect backend.

This will only work with keyless tasks.

Config Keys

The following common keys are supported:

tls_client

required, type: rustls client config

Set TLS parameters for this local QUIC client.

default: not set

tls_name

optional, type: tls name

Set the tls server name to verify tls certificate for all peers.

If not set, the peer IP will be used.

default: not set

duration_stats

optional, type: histogram metrics

Histogram metrics config for the tcp connect duration stats.

default: set with default value

request_buffer_size

optional, type: usize

Set the request buffer size of the local queue. New connections will be opened when the queue is full.

default: 128

response_recv_timeout

optional, type: humanize duration

Set the timeout value for the waiting of the response.

If timeout, the request will be dropped for the local buffer and an internal error response will be send to client.

default: 4s

connection_max_request_count

optional, type: usize

Set the max number of requests that can ben handled by a single upstream stream.

default: 4000

Added in version 0.3.4.

connection_alive_time

optional, type: humanize duration

Set the max alive time for a single upstream stream.

default: 1h

Added in version 0.3.4.

graceful_close_wait

optional, type: humanize duration

Set the graceful wait time duration before we close an alive connection.

default: 10s

connection_pool

optional, type: connection pool

Set the connection pool config.

default: set with max idle 2048 min idle 128

Added in version 0.3.5.

quic_transport

optional, type: quinn transport

Set the transport config for quinn.

default: set with default value

Added in version 0.3.5.

concurrent_streams

optional, type: usize

Set how many bidirectional streams we will use on a single QUIC connection.

default: 4

wait_new_channel

optional, type: bool

Set if we should wait for new working streams when no alive streams available.

default: false

Added in version 0.3.5.

socket_buffer

optional, type: socket buffer config

Set the buffer config for the udp socket.

default: not set