Skip to content

Add --dscp flag and omit_secs config support#49

Merged
lance0 merged 5 commits intomasterfrom
quick-wins
Mar 18, 2026
Merged

Add --dscp flag and omit_secs config support#49
lance0 merged 5 commits intomasterfrom
quick-wins

Conversation

@lance0
Copy link
Owner

@lance0 lance0 commented Mar 18, 2026

Summary

  • --dscp — DSCP/TOS marking on TCP and UDP client sockets for QoS policy testing. Accepts numeric (0-255) or DSCP names (EF, AF11-AF43, CS0-CS7, VA). Uses IP_TOS for IPv4, IPV6_TCLASS for IPv6. Warns for QUIC (socket managed by quinn) and non-Unix platforms.
  • omit_secs config[client] omit_secs = N in config.toml sets default --omit. CLI --omit (including --omit 0) takes precedence.
  • Per-interval jitter in TUI and plain text (Feature request: show average jitter in TUI #48) — TUI stream bars show jitter: X.XXms for UDP instead of rtx: 0. Plain text interval lines show jitter: X.XXms lost: N for UDP, rtx: N rtt: Xms for TCP. Multi-stream jitter is averaged, lost is summed.

Test plan

  • cargo fmt, cargo clippy, all 178 tests pass
  • DSCP name mappings verified against RFC 2474/2597/3246/5865
  • New unit tests: parse_dscp_numeric, parse_dscp_names, parse_client_omit_secs
  • Local TUI verification: jitter visible in stream bars and stats panel for UDP

lance0 added 5 commits March 18, 2026 06:21
--dscp sets IP_TOS (IPv4) or IPV6_TCLASS (IPv6) on TCP and UDP
sockets for QoS policy testing. Accepts numeric (0-255) or DSCP
names (EF, AF11-AF43, CS0-CS7, VA). Warns when used with QUIC
(socket managed by quinn) or on non-Unix platforms.

omit_secs in [client] config sets default --omit value. CLI
--omit takes precedence when explicitly passed (including --omit 0).
@lance0 lance0 merged commit d701d7b into master Mar 18, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant