Ubuntu 20.04 - как включить TCP BBR - алгоритм управления перегрузки сети
Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
Ubuntu 20.04 - как включить TCP BBR - алгоритм управления перегрузки сети
TCP BBR (Bottleneck Bandwidth and Round Trip Time) уже используется на серверах google.com, и теперь вы можете это сделать, если на вашем компьютере с Linux установлено ядро 4.9 или новее.
Проверяем какие алгоритмы доступны по-умолчанию:
# sysctl net.ipv4.tcp_available_congestion_control net.ipv4.tcp_available_congestion_control = reno cubic
Меняем на BBR (Bottleneck Bandwidth and Round Trip Time):
# vi /etc/sysctl.conf net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr # systemctl -p
Проверяем результат:
# sysctl net.ipv4.tcp_congestion_control net.ipv4.tcp_congestion_control = bbr
Расшифровка:
FQ - это планировщик пакетов BBR - сам congestion control
"Пропускная способность узкого места" (Bottleneck Bandwidth) и "время в пути туда и обратно" (Round Trip Time, RTT) - это два понятия, связанные с сетевой передачей данных. Пропускная способность узкого места (Bottleneck Bandwidth): Пропускная способность узкого места относится к самому узкому участку сети, через который проходят данные. Этот узкий участок ограничивает скорость передачи данных через всю сеть. По сути, это наименьшая доступная скорость передачи данных в сети между двумя узлами. Пропускная способность узкого места может быть ограничена различными факторами, такими как пропускная способность сетевого интерфейса, пропускная способность маршрутизатора или коммуникационных линий. Для оптимальной передачи данных в сети важно учитывать пропускную способность узкого места и настраивать сетевые ресурсы соответствующим образом. Время в пути туда и обратно (Round Trip Time, RTT): Время в пути туда и обратно (RTT) - это время, которое затрачивается на отправку данных от отправителя к получателю и обратно. Оно измеряется в миллисекундах и включает в себя задержку в сети, вызванную временем передачи данных и временем обработки узлами сети. RTT важно для определения задержки в сети и для управления сетевой производительностью. Например, в приложениях, где низкая задержка критична (например, видеозвонки или онлайн-игры), RTT должно быть минимальным. Измерение и управление как пропускной способностью узкого места, так и временем в пути туда и обратно, являются важными аспектами проектирования и поддержки сетей, чтобы обеспечить эффективную передачу данных и удовлетворительное качество обслуживания для пользователей.