Jump to content
XPEnology Community

Limitar velocidad descarga FTP según hora (Download Station)


R91

Recommended Posts

Hola,

 

Tengo Xpenology con DMS 5.0 4528 Update 2 (aunque probé la 5.1 hasta que se descubrió el bug y tampoco pude).

 

El caso es que uso Download Station para descargar desde un servidor FTP al NAS y lo que quiero es limitar la descarga por el día y subir la limitación por la noche. En Download Station solo se puede hacer eso para las decargas bt mediante su planificador, pero no para el FTP, para FTP y HTTP solo puedo limitar la descarga por tarea (es decir por descarga) y el número de tareas que pueden descargar a la vez.

 

El problema es que si no limito la bajada por el día se me come todo el ancho de banda, una opción sería limitarlo siempre pero por la noche prefiero que descargue al máximo. Mi router no tiene opciones de QoS por lo que no puedo controlar el trafico para priorizar otros y se come todo el ancho. Desde la opción de control del tráfico de DSM tampoco me sirve puesto que solo es para controlar el trafico del nas.

En las opciones de limite de velocidad de los usuarios solo puedo limitar algunos servicios que ya salen pero no añadir yo un puerto ni decir ninguna aplicación (o no se).

 

La verdad es que ya no se que hacer, por ahora la solución esta en programar tarea que detiene Download Station por la mañana y lo ejecuta por la noche pero claro, así durante el día no descarga nada.

 

Un saludo.

Link to comment
Share on other sites

Bueno me he hecho un apaño.

 

Download Station usa wget para las descargas FTP y HTTP, por lo tanto lo que hecho ha sido crear un fichero de configuración de wget con el limite de velocidad.

El archivo es un archivo de texto normal llamado .wgetrc en este archivo pongo:

limit_rate = 2000k

Para limitar a 2000Kbps

 

Este archivo lo tenemos que guardar en /root/

 

Bien pues lo que he hecho ha sido crearme dos de estos archivos, uno llamado .wgetrcdia y otro .wgetrcnoche y guardarlos también /root y después dos scripts en sh, uno llamado dia.sh que contiene:

#!/bin/sh

cp -f /root/.wgetrcdia /root/.wgetrc

 

Y lo que hace es copiar el archivo .wgetrcdia a .wgetrc sobreescribiendo si ya existe. Y otro script llamado noche.sh, haciendo lo mismo pero con el otro archivo:

.#!/bin/sh

cp -f /root/.wgetrcnoche /root/.wgetrc

 

Y por ultimo ya solo queda desde el Panel de Control de DSM crear una nueva tarea programa a la hora que quieras para que ejecute el script dia.sh y otra para noche.sh

Para que el cambio haga efecto tienes que programar otra tarea que detenga el servico Download Station y otra para que lo vuelva a arrancar, si no no cogerá los cambios en /root/.wgetrc

 

Saludos!

Link to comment
Share on other sites

Ya veo que has dado con la solución.

 

:mrgreen:

 

Aún no lo he probado, pero debería funcionar, a ver si tengo tiempo y lo hago. También vi un script para usar Download Station por línea de comandos:

http://downloadstation.jroene.de/

 

Si funciona bien, se puede usar para pausar las descargas, cambiar el archivo .wgetrc para aplicar el límite de velocidad y volver a reanudarlas.

Al final la cosa quedaría así:

#!/bin/sh
downloadstation pause all
sleep 15
rm -f /root/.wgetrc
echo "limit_rate = 800k" >> /root/.wgetrc
sleep 15
downloadstation resume all

 

Así pausaría las descargas, esperaría 15 segundos, borraría el archivo /root/.wgetrc si existe, luego crearía un nuevo /root/.wgetrc con el limite, esperaría otros 15 segundos y reanudaría las descargas. Así no haría falta lo del archivo .wgetrcdia y .wgetrcnoche que era un aún más chapuza la verdad :lol: .

 

Saludos!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...