Trickle: limitador de ancho de banda para Linux

Trickle es una interesante herramienta con la cual es posible limitar el ancho de banda tanto de subida como de bajada de TODAS nuestras aplicaciones. Es posible ejecutarlo “a petición” para controlar una aplicación en concreto, o como un demonio, controlando así todas las aplicaciones que intenten conectarse a Internet.

Instalación

sudo apt-get install trickle

Cómo usar trickle

La sintaxis de Trickle es la siguiente:

trickle -d Download_Bandwidth -u Upload_Bandwidth Comando

Aquí algunos ejemplos:

a) Limitar el ancho de banda de descarga a 10kbps utilizado para la transferencia de un archivo utilizando ssh:

trickle -d 10 scp archivo.mp3 10.0.0.1:/home/puntolibre/musica/

b) Limitar el ancho de banda a 200kpbs de descarga de una actualización del sistema a traves de Apt:

trickle -d 200 apt-get upgrade

c) Para modificar el ancho de banda a una aplicación, como por ejemplo Firefox:

trickle -d 10 -u 10 firefox %u

d) Usando trickle para limitar el ancho de banda de wget

trickle -d 50 wget -O “planeta tierra.divx” http://video.stage6.com/1402821/.divx

Correr trickle como un demonio

Para iniciar trickle como un demonio y limitar TODO el ancho de banda, usá el comando trickled:

sudo trickled -d 20 -u 20

…donde los parámetros -d y -u responden al límite de descarga y subida, respectivamente.

Configurando trickle

Trickle tiene un archivo de configuración que nos permitira afinar algunos parametros y hacerlos permanentes individualmente para cada servicio.

El archivo de configuración es el siguiente: /etc/trickled.conf

El archivo de configuración mas simple que se puede hacer tiene esta pinta:

[ssh]Priority = 1

[www]Priority = 8

Con este método conseguimos velocidades de descarga bastante buenas y al mismo tiempo podemos hacer sesiones ssh a la máquina que está descargando. Básicamente, un archivo de configuración como el anterior le indica a trickle que priorice las transferencias ssh por sobre las www.

La documentación de trickle recomienda el uso de los parámetros Time-Smoothing y Lenght-Smoothing para evitar fluctuaciones en las tasas de transferencia.

[ssh]Priority = 1
Time-Smoothing = 0.1
Length-Smoothing = 2

[www]Priority =8
Time-Smoothing = 5
Length-Smoothing = 20

Estos valores definen el tiempo y longitud de normalización que Trickle aplica al programa que está controlando.

Fuente: trickle


14 comentarios

  1.   Usemos Linux dijo

    El parámetro -u es para limitar el ancho de banda de subida. El -d el de bajada.
    Saludos! Pablo.

  2.   Alonso Herrera dijo

    hola Pablo ¿qué significa “%u” ? y ¿cómo quedaría entonces para Google Chrome? gracias

  3.   Usemos Linux dijo

    Es posible que sea porque no hay paquetes para la última versión de Ubuntu. :S
    Habrá que esperar o hacerlos uno mismo. 🙂 Esa es la magia del software libre.
    Saludos! Pablo.

  4.   Seba dijo

    lo intente instalar en xububtu 12.04 y no instala, alguna solución?

  5.   Envi dijo

    Interesante. Yo conocí hace tiempo wondershaper (http://lartc.org/wondershaper/), una herramienta para balancear nuestras conexiones asíncronas y así obtenter una mayor eficiencia en la gestión de paquetes y latencia de la conexión, sobre todo en la subida. También permite limitar el ancho de banda.

  6.   Usemos Linux dijo

    Esa tambien funciona de lo más bien.

  7.   Andres dijo

    Gracias, muy interesante
    a mi me gustaría saber si hay un comando o este programa del post o algún programa que nos diga todas las aplicaciones que están consumiendo internet
    que seria un complemento con este
    gracias

  8.   Usemos Linux dijo

    Tal ves esto te sirva:

    http://www.ubuntugeek.com/bandwidth-monitoring-tools-for-linux.html

    Saludos! Pablo.

  9.   Andres dijo

    muchas gracias !

  10.   wiggin dijo

    Muchas gracias por el tutorial, es muy útil cuando compartes ancho de banda con entre varios ordenadores; sin embargo me gustaría saber si hay alguna manera automática de limintar el ancho de banda para todas las aplicaciones, como en netlimiter que te permite limitar el ancho de banda de todas las conexiones entrantes y salientes del PC.

    gracias de antemano;
    tambien conozco wondershaper sin embargo, sin embargo no se como configurarlo para que tambien limite las conexiones p2p

    1.    usemoslinux dijo

      La verdad que no te sabría decir.
      No obstante, tal vez te interesen estos artículos:
      http://blog.desdelinux.net/nethogs-conoce-cuanto-ancho-de-banda-consume-cada-aplicacion/
      http://blog.desdelinux.net/que-aplicacion-consume-mas-ancho-de-banda/
      Abrazo! Pablo.

  11.   KuroKaze dijo

    Primeramente Gracias por el Tutorial, estaba buscando este tipo de aplicaciones para mi ubuntu 14.04, instale Wondershaper pero no me funcionó, y no he instalado esta aplicación que me parece de lo mas útil, porque prácticamente todos dicen la misma información de como instalarlo y de como limitar la conexión, pero no dicen como desactivarlo, y en ingles hubo uno pero creo que no estaba seguro (o por lo menos es lo que entendí como mi ingles básico). Si alguien me puede responder esta duda, yo con gusto instalare esta aplicación.

  12.   Federico dijo

    Excelente erramienta. Me funcina de maravilla. Ahora bien, si quiero limitar el ancho de banda de mi Hotspot wifi ? Seria algo asi “trickle -d 10 -u 10 wlp0s29u1u2 %u” (wlp0s29u1u2es el nombre de mi interfaz wifi)

  13.   Federico dijo

    Estoy tratando de ejecutar los comando como vos indicas, pero cuando lo hago obtengo el siguiente mensaje:
    “trickled: Skipping configuration file: ${prefix}/etc/trickled.conf: No such file or directory”
    procedo a editar dicho archivo de configuracion y repito los comandos. Pero vuelvo a recibir el mismo mensaje.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.