Настройка TCP BBR
BBR (Bottleneck Bandwidth and Round-trip propagation time) — это алгоритм управления перегрузкой TCP, разработанный Google. Он значительно улучшает пропускную способность сети и снижает задержку (пинг) по сравнению со стандартным алгоритмом CUBIC, который используется в Linux по умолчанию.
Зачем это нужно?
BBR особенно полезен для игровых серверов, так как он лучше справляется с потерей пакетов и обеспечивает более стабильное соединение для игроков. Это может заметно снизить пинг и уменьшить количество лагов, связанных с сетью.
1. Проверка текущего алгоритма
Подключитесь к серверу по SSH и выполните команду:
sysctl net.ipv4.tcp_congestion_control
Если в ответ вы увидите net.ipv4.tcp_congestion_control = cubic, значит используется стандартный алгоритм и есть смысл переключиться на BBR.
2. Проверка поддержки BBR
BBR доступен в ядрах Linux версии 4.9 и выше. Проверьте версию вашего ядра:
uname -r
Убедитесь, что модуль BBR доступен:
sudo modprobe tcp_bbr
Если модуль не найден
Если команда выдала ошибку FATAL: Module tcp_bbr not found, ваше ядро собрано без поддержки BBR. Обратитесь к хостинг-провайдеру или обновите ядро до версии 4.9+.
3. Включение BBR
Откройте файл /etc/sysctl.conf:
sudo nano /etc/sysctl.conf
Добавьте в конец файла следующие строки:
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
Про алгоритм очереди
fq (Fair Queue) — рекомендуемый алгоритм управления очередями для работы с BBR. Он обеспечивает справедливое распределение пропускной способности между потоками и необходим для корректной работы BBR.
Примените изменения:
sudo sysctl -p
4. Проверка
Убедитесь, что BBR успешно активирован:
sysctl net.ipv4.tcp_congestion_control
Ожидаемый вывод:
net.ipv4.tcp_congestion_control = bbr
Также можно проверить, что модуль загружен:
lsmod | grep bbr
Ожидаемый вывод:
tcp_bbr 20480 X
BBR2 и BBR3
Существуют более новые версии алгоритма — BBR2 и BBR3, но они не включены в стандартные ядра Linux и доступны только через кастомные ядра (например, XanMod). Для подавляющего большинства серверов BBR v1 более чем достаточен и даёт значительный прирост по сравнению с CUBIC.
