Commit Graph

6 Commits

Author SHA1 Message Date
neuronori 2dffb5acbe feat(vp8channel): auto-discover wire rate via delay-based pacer
the hardcoded 400kb/s was a stability compromise and the previous knob
just moved the guesswork to operators: they had to hand-measure each
sfu's policer knee by ramping until stalls. replace both with a
delay-based aimd controller that finds the knee at runtime.

the sfu policer queues before it drops, so kcp's smoothed rtt inflates
ahead of the throughput collapse from #95/#107. the pacer folds one
srtt sample per writer tick: probe the rate up additively while delay
sits near the path baseline, back off multiplicatively once it
inflates. it settles just under the per-sfu knee on its own, both on
the client->server writerLoop and each server->client peer pump.

vp8.max_bytes_per_sec is now just the probe ceiling (default 1mb/s);
a fresh session still starts from the old 400kb/s operating point so a
healthy path only ramps up. no per-service hand-tuning left.

refs #107
2026-06-29 02:25:28 +00:00
neuronori 443f97edb0 feat(vp8channel): expose tunable wire byte-rate via vp8.max_bytes_per_sec
the pacer was pinned at a hardcoded 400kb/s stability compromise, so
operators could not reach their sfu's real throughput ceiling without
recompiling. the options.maxbytespersec knob already existed but was
never wired from yaml. plumb it through config -> session -> transport,
keeping 400kb/s as the conservative default.

refs #107
2026-06-29 01:38:15 +00:00
sbramn 8192802a3c Remove Docker support and reduce runtime load 2026-06-05 19:39:32 +03:00
zarazaex69 6b9a69c100 docs(jitsi): update default server references 2026-06-04 00:03:42 +03:00
Yuriy Samorodov a8ea938dc8 (docs) Updated links to examples in 27 files 2026-05-25 19:30:35 +04:00
Yuriy Samorodov fb5f62a313 (docs) Reorganize docs/examples section for clarity 2026-05-25 19:14:07 +04:00