Document multipath acceptance criteria and reproduced protocol limitations

This commit is contained in:
evgeny committed 2026-10-22 23:36:21 +02:00
1 parent 076016f34a
commit 0b5a892a88
2 files changed
+37 -11

No files matched your search

+19
View File
@@ -4,6 +4,25 @@
## Текущие задачи
[ ] **ETCP: полезная утилизация нескольких каналов и доставка при зависании части линков** — тестовый стенд добавлен 22.10.2026:
test_dummynet_channels калибрует BWlim 2/8 Мбит/с на смешанных размерах, delay, ограниченный HOLD,
выпуск с BWlim, DROP ожидающих пакетов и уничтожение с активными delay/shaper. Включён в обычный Linux-набор.
dummynet хранит все delay callbacks, сериализация не теряет доли миллисекунды, добавлены режимы RUN/DROP/HOLD.
test_etcp_multipath использует настоящие instance/NCD/ETCP/BBR, независимые UDP-прокси и пассивное наблюдение пакетов.
Полный запуск: make -C tests check-multipath; один сценарий: tests/test_etcp_multipath <имя>.
Профили: equal, bandwidth, rtt, fast-distant, slow-distant, three, bidirectional;
отказы: drop, hold, drop-forward, drop-reverse, short-hold, slow-drop, two-stuck, load-drop, load-hold.
UTUN_MULTIPATH_CSV=/tmp/multipath.csv сохраняет очереди, RTT, pacing, inflight/cwnd, повторы и доставку по фазам.
Пороги: wire >=90% BWlim каждого канала, уникальные DATA >=80%, полезная скорость >=85% суммы BWlim
и >=90% суммы отдельных измерений. Выдача старой очереди сборки не может завысить полезную скорость.
При отказе: доставка до восстановления пути, пауза <=100мс и latency <=100мс при ограниченном источнике;
при насыщении оставшийся набор должен давать >=85% своей ёмкости после переходного периода.
Начальные прогоны выявили нарушения: RTT 20/20мс, DROP одного пути — пауза 204мс, latency 344мс;
при разных RTT/BWlim не выполняются требования утилизации, в том числе из-за повторов и переполнения очередей.
Протокольный фикс не вносился. Отдельно проверить выбор пути повторов, общий RTO, BBR/pacing и блокировку сборки.
После исправлений добавить смену профилей на ходу, повторяющиеся отказы и смешанный UDP/STCP со stalled TCP write.
Полная матрица дольше 90s общего runner и запускается отдельной целью; нарушения завершают её с ошибкой.
[+] **ETCP: единый установщик прямого транспорта через NCD** — исправлено 22.10.2026:
Удалён неиспользуемый рабочим кодом etcp_connect с EARLY/LATE, отдельными линками и таймерами;
три тестовых файла переведены на NCD handles с начала подключения. Сохранены проверки независимых владельцев,