Expand description
§Configuration Management
Centralized configuration for the network protocol library.
This module provides structured configuration for servers and clients, including connection parameters, timeouts, compression settings, and security options.
§Configuration Sources
- TOML files via
from_toml_file() - Direct instantiation with defaults
- Environment-specific overrides
§Security Considerations
- Default compression threshold (512 bytes) balances performance and CPU
- Recommended timeout values prevent slowloris attacks
- TLS settings enforce modern cryptography (TLS 1.2+)
Structs§
- Client
Config - Client-specific configuration
- Logging
Config - Logging configuration
- Network
Config - Main network configuration structure that contains all configurable settings
- Server
Config - Server-specific configuration
- Transport
Config - Transport configuration
Constants§
- ENABLE_
COMPRESSION - Whether to enable compression by default
- ENABLE_
ENCRYPTION - Whether to enable encryption by default
- MAGIC_
BYTES - Magic bytes to identify protocol packets (e.g., 0x4E50524F → “NPRO”)
- MAX_
PAYLOAD_ SIZE - Max allowed payload size (e.g. 16 MB)
- PROTOCOL_
VERSION - Current supported protocol version