Cómo aumentar la velocidad de Internet del servidor Linux con TCP BBR


BBR (Bottleneck Bandwidth and RTT) es un algoritmo de control de congestión relativamente nuevo escrito por ingenieros de software de Google. Es la última solución de los persistentes intentos de Google de hacer que Internet sea más rápida a través del protocolo TCP, el caballo de batalla de Internet.

El objetivo principal de BBR es iniciar la utilización de la red y reducir las colas (que resultan en una actividad de red lenta): debe implementarse en los servidores, pero no en la red o en el lado del cliente. En Linux, BBR se implementa en la versión del kernel 4.9 o superior.

En este artículo, explicaremos brevemente TCP BBR y luego mostraremos cómo aumentar la velocidad de Internet de un servidor Linux utilizando el control de congestión TCP BBR en Linux.

Debe tener instalada la versión 4.9 o superior del kernel de Linux, compilada con estas opciones (ya sea como módulo o incorporadas en él):

  • CONFIG_TCP_CONG_BBR
  • CONFIG_NET_SCH_FQ
  • CONFIG_NET_SCH_FQ_CODEL

Cómo verificar los módulos del kernel en Linux

Para comprobar si las opciones anteriores están compiladas en su kernel, ejecute estos comandos:

# cat /boot/config-$(uname -r) | grep 'CONFIG_TCP_CONG_BBR'
# cat /boot/config-$(uname -r) | grep 'CONFIG_NET_SCH_FQ'

Para actualizar su kernel, consulte estas guías:

  1. Cómo actualizar el kernel a la última versión en Ubuntu
  2. Cómo instalar o actualizar a la última versión del kernel en CentOS 7

Habilitación del control de congestión TCP BBR en Linux

BBR funciona eficazmente con el ritmo, por lo que debe emplearse junto con el programador de paquetes sin clase fq qdisc para el ritmo del tráfico. Para encontrar más información sobre fq qdisc, escriba:

# man tc-fq

Con un conocimiento razonable de BBR, ahora puede configurarlo en su servidor. Abra el archivo /etc/sysctl.conf con su editor favorito.

# vi /etc/sysctl.conf

Agregue las siguientes opciones al final del archivo.

net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr

Guarde y cierre el archivo. Luego, efectúe los cambios en el sistema usando el comando sysctl.

# sysctl --system

Desde el golpe de captura de pantalla, puede ver que las opciones se han agregado con los valores apropiados.

Prueba de la configuración de control de congestión TCP BBR

Después de realizar las configuraciones necesarias, puede probar si está prácticamente funcionando. Hay varias herramientas para medir la velocidad del ancho de banda, como Speedtest-CLI:

  1. Cómo probar la velocidad de Internet de forma bidireccional desde la línea de comandos mediante la herramienta "Speedtest-CLI"

Otras herramientas incluyen el descargador de archivos basado en comandos Wget y cURL, que muestran el ancho de banda de la red; puede utilizarlos para realizar pruebas.

Repositorio BBR Github: https://github.com/google/bbr

También te puede interesar leer los siguientes artículos relacionados.

  1. Configure su propio "Mini servidor Speedtest" para probar la velocidad del ancho de banda de Internet
  2. Cómo limitar el ancho de banda de red utilizado por las aplicaciones en un sistema Linux con Trickle
  3. Cómo cambiar los parámetros de tiempo de ejecución del kernel de forma persistente y no persistente

En este artículo, mostramos cómo aumentar la velocidad de Internet del servidor Linux utilizando el control de congestión TCP BBR en Linux. Pruébelo exhaustivamente en diferentes escenarios y envíenos sus comentarios importantes a través del formulario de comentarios a continuación.