Define and test the BBR steady-state queue time budget

This commit is contained in:
evgeny committed 2026-10-23 01:00:36 +02:00
1 parent 5f406c2a41
commit 4035794631
2 files changed
+49 -1

No files matched your search

+3
View File
@@ -23,6 +23,7 @@ extern "C" {
#define BBR_STARTUP_CWND_GAIN (BBR_UNIT * 2)
#define BBR_DRAIN_GAIN (BBR_UNIT * 1000 / 2885)
#define BBR_CWND_GAIN (BBR_UNIT * 2)
#define BBR_QUEUE_BUDGET_US 20000 // целевая добавочная очередь после STARTUP; минимум 4*MSS сохраняется
#define BBR_PROBE_RTT_CWND_GAIN (BBR_UNIT * 1 / 2)
#define BBR_CWND_MIN_TARGET 4
#define BBR_FULL_BW_THRESH (BBR_UNIT * 5 / 4)
@@ -68,6 +69,8 @@ struct bbr {
uint32_t inflight_hi;
uint32_t bw_latest;
uint32_t inflight_latest;
uint32_t queue_budget_us; // целевое время очереди в PROBE_BW, мкс; init задаёт 20мс, 0 отключает ограничение
uint32_t queue_cwnd_cap; // последний предел DATA: max(4*MSS, BW*(min_rtt+budget)); 0 — ограничение не активно
uint8_t mode;
uint8_t cycle_idx;
uint16_t pacing_gain;