TCP Congestion Control Comparison

Сравнение TCP-контроля заторов

Сравните пропускную способность CUBIC, BBR и Reno с различными показателями потерь и RTT. Включает матрицу рекомендаций по рабочей нагрузке.

Рекомендуемая рабочая нагрузка Матрица
Рабочая нагрузка рекомендованный избегать Причина
Bulk WAN (высокий BDP) BBR Рино BBR заполняет BDP без завышения очередей; Reno останавливается на продуктах с высоким RTT × BW
Интерактивный SSH/telnet Кубик - Низкий BDP; все алгоритмы похожи; CUBIC по умолчанию в Linux в порядке
потоковое видео (устойчивое) BBR Reno BBR поддерживает стабильную скорость отправки без потерь
Дата-центр Восток-Запад (низкий RTT) CUBIC BBR Очень низкий RTT; CUBIC быстро сходится; исследование BBR добавляет ненужный трепет
Мобильная связь с высокой потерей BBR Рино BBR использует оценку BW не на основе потерь; не неправильно истолковывает беспроводные падения как перегрузку.
Справедливость с унаследованными конечными точками CUBIC BBR BBR может несправедливо доминировать в потоках CUBIC/Reno в общих узких местах (выпуск BBRv1)
Обзор алгоритма
Алгоритм Подход Сигнал перегрузки Лучшее для
Кубик Кубический полиномиальный рост кроны после потери Потеря пакета Общее назначение; по умолчанию Linux с 2.6.19
BBR Модель на основе, оценки узкое место BW + RTT Насыщение BW + увеличение RTT High-BDP WAN, потеря ссылок, потоковое видео
Reno AIMD — увеличение добавок, мультипликативное снижение Packet loss Наследственная совместимость; избегайте ссылок с высоким BDP