Network System 0.1.1
High-performance modular networking library for scalable client-server applications
Loading...
Searching...
No Matches
kcenon::network::protocol::quic::quic_config Struct Reference

Configuration options for QUIC connections. More...

#include <quic.h>

Collaboration diagram for kcenon::network::protocol::quic::quic_config:
Collaboration graph

Public Attributes

std::string server_name
 Server name for TLS SNI (required for client connections)
 
std::string cert_file
 Path to certificate file (required for server)
 
std::string key_file
 Path to private key file (required for server)
 
std::vector< std::string > alpn_protocols
 ALPN (Application-Layer Protocol Negotiation) protocols.
 
std::chrono::milliseconds idle_timeout {0}
 Maximum idle timeout (0 = use default)
 
uint64_t max_bidi_streams {100}
 Maximum number of bidirectional streams.
 
uint64_t max_uni_streams {100}
 Maximum number of unidirectional streams.
 
uint64_t initial_max_data {10 * 1024 * 1024}
 Initial maximum data (connection-level flow control)
 
uint64_t initial_max_stream_data_bidi {1024 * 1024}
 Initial maximum stream data for bidirectional streams.
 
uint64_t initial_max_stream_data_uni {1024 * 1024}
 Initial maximum stream data for unidirectional streams.
 
bool enable_early_data {false}
 Enable 0-RTT (early data)
 
bool enable_pmtud {true}
 Enable Path MTU Discovery.
 
bool insecure_skip_verify {false}
 Disable certificate verification (for testing only)
 

Detailed Description

Configuration options for QUIC connections.

QUIC-specific configuration parameters that affect connection behavior, security settings, and performance characteristics.

Thread Safety

Immutable after construction, safe for concurrent read access.

Definition at line 45 of file quic.h.

Member Data Documentation

◆ alpn_protocols

std::vector<std::string> kcenon::network::protocol::quic::quic_config::alpn_protocols

ALPN (Application-Layer Protocol Negotiation) protocols.

Definition at line 56 of file quic.h.

◆ cert_file

std::string kcenon::network::protocol::quic::quic_config::cert_file

Path to certificate file (required for server)

Definition at line 50 of file quic.h.

◆ enable_early_data

bool kcenon::network::protocol::quic::quic_config::enable_early_data {false}

Enable 0-RTT (early data)

Definition at line 77 of file quic.h.

77{false};

◆ enable_pmtud

bool kcenon::network::protocol::quic::quic_config::enable_pmtud {true}

Enable Path MTU Discovery.

Definition at line 80 of file quic.h.

80{true};

◆ idle_timeout

std::chrono::milliseconds kcenon::network::protocol::quic::quic_config::idle_timeout {0}

Maximum idle timeout (0 = use default)

Definition at line 59 of file quic.h.

59{0};

◆ initial_max_data

uint64_t kcenon::network::protocol::quic::quic_config::initial_max_data {10 * 1024 * 1024}

Initial maximum data (connection-level flow control)

Definition at line 68 of file quic.h.

68{10 * 1024 * 1024}; // 10 MB

◆ initial_max_stream_data_bidi

uint64_t kcenon::network::protocol::quic::quic_config::initial_max_stream_data_bidi {1024 * 1024}

Initial maximum stream data for bidirectional streams.

Definition at line 71 of file quic.h.

71{1024 * 1024}; // 1 MB

◆ initial_max_stream_data_uni

uint64_t kcenon::network::protocol::quic::quic_config::initial_max_stream_data_uni {1024 * 1024}

Initial maximum stream data for unidirectional streams.

Definition at line 74 of file quic.h.

74{1024 * 1024}; // 1 MB

◆ insecure_skip_verify

bool kcenon::network::protocol::quic::quic_config::insecure_skip_verify {false}

Disable certificate verification (for testing only)

Definition at line 83 of file quic.h.

83{false};

◆ key_file

std::string kcenon::network::protocol::quic::quic_config::key_file

Path to private key file (required for server)

Definition at line 53 of file quic.h.

◆ max_bidi_streams

uint64_t kcenon::network::protocol::quic::quic_config::max_bidi_streams {100}

Maximum number of bidirectional streams.

Definition at line 62 of file quic.h.

62{100};

◆ max_uni_streams

uint64_t kcenon::network::protocol::quic::quic_config::max_uni_streams {100}

Maximum number of unidirectional streams.

Definition at line 65 of file quic.h.

65{100};

◆ server_name

std::string kcenon::network::protocol::quic::quic_config::server_name

Server name for TLS SNI (required for client connections)

Definition at line 47 of file quic.h.

Referenced by kcenon::network::protocol::quic::connect(), and kcenon::network::protocol::quic::connect().


The documentation for this struct was generated from the following file: