Búsqueda de sitios web

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:

  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 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:

  1. 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.

  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 cualquier comentario importante a través del formulario de comentarios a continuación.

Crédito: Nixcraft