AFS_AETHER_TRANSPORT_STREAM_WINDOW_BYTES
Deep-dive reference for:
AFS_AETHER_TRANSPORT_STREAM_WINDOW_BYTES
Status
active
Audience
mixed
Type and Default
- Type: unsigned integer bytes (
u64in config parsing; converted tou32for endpoint tuning). - Default:
16777216bytes (16 MiB). - Must be greater than
0.
What It Does
Sets the HTTP/2 stream-level flow-control window used when Aether builds bridge-mode gRPC channels.
Larger stream windows can improve throughput for large per-stream transfers. Smaller stream windows can reduce per-stream in-flight buffering.
This is applied in remote mount channel setup and passed to tonic endpoint tuning as:
.initial_stream_window_size(...)
Where It Applies
- Bridge/remote channel construction path (not standalone local-only paths).
- Works with:
AFS_AETHER_TRANSPORT_CONN_WINDOW_BYTESAFS_AETHER_TRANSPORT_HEARTBEAT_INTERVAL_MSAFS_AETHER_TRANSPORT_IDLE_TIMEOUT_MS
Input Surfaces
- Env:
AFS_AETHER_TRANSPORT_STREAM_WINDOW_BYTES=<bytes> - Config file (
aether.toml):[transport]stream_window_bytes = <bytes>
Resolution and Validation
Resolution path:
- Built-in default (
16 MiB) aether.tomltransport block- Environment override
Validation:
- Env/file/overrides reject
0with "value must be greater than zero". - Runtime channel construction rejects values above
u32::MAXbecause tonic endpoint API requiresu32.
Practical Guidance
- Keep this near default unless you are tuning for specific network/throughput behavior.
- For balanced behavior, tune connection and stream windows together.
- Very large values increase in-flight buffering; very small values can increase flow-control stalls.
Example
- Env:
AFS_AETHER_TRANSPORT_STREAM_WINDOW_BYTES=33554432
- TOML:
[transport]stream_window_bytes = 33554432
Related Variables
AFS_AETHER_TRANSPORT_CONN_WINDOW_BYTESAFS_AETHER_TRANSPORT_HEARTBEAT_INTERVAL_MSAFS_AETHER_TRANSPORT_IDLE_TIMEOUT_MS
Primary Implementation Sources
packages/aether/src/config/types/model_defaults.rspackages/aether/src/config/types/file_config_loader.rspackages/aether/src/config/types/apply_env.rspackages/aether/src/config/types/config_resolution.rspackages/aether-remote/src/mount/orchestrator.rspackages/aether-remote/src/mount/transport_channel_tests.rspackages/afs-grpc-utils/src/lib.rs