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 a los persistentes intentos de Google de hacer que Internet sea más rápido a través del protocolo TCP, el caballo de batalla de Internet.
El objetivo principal de BBR es impulsar la utilización de la red y reducir las colas (que resultan en una actividad lenta de la red): debe implementarse en los servidores, pero no en la red ni 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.
Requisitos
Debería tener instalada la versión 4.9 o superior del kernel de Linux, compilado con estas opciones (ya sea como módulo o integradas en él):
- CONFIG_TCP_CONG_BBR
- CONFIG_NET_SCH_FQ
- CONFIG_NET_SCH_FQ_CODEL
Cómo comprobar 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:
- Cómo actualizar el kernel a la última versión en Ubuntu
- 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 se debe utilizar junto con el programador de paquetes sin clases fq qdisc para el ritmo del tráfico. Para encontrar más información sobre fq qdisc, escriba:
man tc-fq
Con un buen conocimiento de BBR, ahora puede configurarlo en su servidor. Abra el archivo /etc/sysctl.conf usando 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
En la captura de pantalla, puede ver que las opciones se han agregado con los valores apropiados.
Prueba de la configuración del control de congestión TCP BBR
Luego de realizar las configuraciones necesarias, podrás probar si prácticamente está funcionando. Existen varias herramientas para medir la velocidad del ancho de banda como Speedtest-CLI:
- Cómo probar su velocidad de Internet de forma bidireccional desde la línea de comandos utilizando la herramienta 'Speedtest-CLI'
Otras herramientas incluyen bmon (monitor de ancho de banda), nload, Wget, descargador de archivos basado en comandos y cURL, que muestran el ancho de banda de la red; puedes usarlos para realizar pruebas.
Repositorio BBR Github: https://github.com/google/bbr
También te puede interesar leer los siguientes artículos relacionados.
- Configure su propio “Mini servidor Speedtest” para probar la velocidad del ancho de banda de Internet
- Cómo limitar el ancho de banda de red utilizado por las aplicaciones en un sistema Linux con Trickle
- 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 cualquier comentario importante a través del formulario de comentarios a continuación.
Crédito: Nixcraft