testsAndMisc/linux_configuration/scripts/diagnostics
Krzysztof kuhy Rudnicki 836f4ef2de Add network diagnostics: duty-cycle and line-speed probes
Diagnosing "Steam downloads are slow" kept pointing at the ISP because
every averaged measurement showed a steady ~170 Mbps. Sampling at 1s
instead of 5s showed that plateau does not exist: the link alternates
between ~450 Mbps bursts and multi-second stalls. Effective rate is
burst x duty_cycle, and only the second factor was wrong.

steam-download-duty.sh reports those two factors separately, which is
what the Steam UI cannot do. line-speed-probe.sh separates burst from
sustained throughput, because a single stream tops out near 180 Mbps on
this line and reads convincingly as ISP shaping when it is not — a
many-connection swarm reaches 986 Mbps with zero retransmits.

Arithmetic is extracted into pure helpers with main() behind a
BASH_SOURCE guard so the bats suite can source them without starting a
measurement. install.sh installs bats and links both scripts onto PATH.

Note: no CI workflow runs .sh/.bats tests, including the four shell
tests that predate this one, so the suite is manual-only for now.
2026-07-19 18:46:18 +02:00
..
install.sh Add network diagnostics: duty-cycle and line-speed probes 2026-07-19 18:46:18 +02:00
line-speed-probe.sh Add network diagnostics: duty-cycle and line-speed probes 2026-07-19 18:46:18 +02:00
steam-download-duty.sh Add network diagnostics: duty-cycle and line-speed probes 2026-07-19 18:46:18 +02:00