BULMA

Bulma se une a la protesta contra SOPA y PIPA

Bergantells Usuaris de GNU/Linux de Mallorca i Afegitons   |   Bisoños Usuarios de GNU/Linux de Mallorca y Alrededores
CONTENIDOS
. Jornadas de software libre
. Version para PDA
. Enlaces breves
. La asociacion
. Los mas leidos
. Autores [Actividad]
. Ultimos Comentarios
. Todos los titulares!
. Estadisticas
. Guia de estilo
. ¿Sugerencias?
. Wiki
. XML [Ayuda]
Listas de correo
. Archivos bulmailing
. Archivos BulmaGes
Radio libre :-)
. Des de la Xarxa (Archivos)
. Mallorca en Xarxa
Busquedas

+ Enlaces Linux
Ultimos kernels
(31/07/2014 10:11:20)
    
Google


En bulma.net
En internet
Script para modificar los parámetros de subida y bajada del MLDonkey (20733 lectures)
Por Ricardo Galli Granada
gallir (http://mnm.uib.es/gallir/)
Creado el 26/11/2004 17:56 modificado el 26/11/2004 17:56

Desde hace meses quería hace un pequeño script para poder cambiar el ancho de banda del MLDonkey y así poder ponerlo en el crontab para que sea automático (quiero subir a la noche y bajar durante el día). Ahora me puse a hacerlo Como Toca (TM), es decir en Perl :-) y accediendo a la interfaz telnet del MLDonkey. Lo hice de tal manera que sea fácil modificarlo para cambiar otros parámetros.

Pagina1/1

El script, mldonkey_bw.pl, toma dos argumentos, el ancho de banda para subida (upload) y el de bajada (download). Como resultado imprimirá los valores anteriores y los nuevos después de la modificación. Por ejemplo:

$ mldonkey_bw.pl 4 10
Old: upload=8 download=16
New: upload=4 download=10

Si queréis podéis ponerlo en viustro crontab para que lo haga automáticamente como el mío:

$ crontab -l
...
0 2 * * *   /usr/local/bin/mldonkey_bw.pl 8 16 &> /dev/null
0 9 * * *   /usr/local/bin/mldonkey_bw.pl 4 9 &> /dev/null

Espero que os sirva.

Casi me olvido: Hace falta el módulo de Perl Net::Telnet. En Debian está en el paquete libnet-telnet-perl.

Actualizado: Si no se pone ningún parámetro sólo muestra los límites actuales.


#! /usr/bin/perl
# by Ricardo Galli (gallir at uib dot es)
# This software is licensed under the GNU General Public License

use strict;
use Net::Telnet;

if (scalar @ARGV < 2 and scalar @ARGV > 0) {
 &usage;
}

my $upload = shift;
my $download = shift;

my $addr = "127.0.0.1";
my $port = 4000;
my $prompt = '/> $/';


my $telnet;
my %options;

$telnet = new Net::Telnet ( Host => $addr, Port => $port,
   Prompt => $prompt) or die "Error opening connection";
$telnet->waitfor($prompt);


&get_options;
print "Old: upload=$options{max_hard_upload_rate}";
print " download=$options{max_hard_download_rate}\n";

if ( $upload and $download ) {
 &set_option("max_hard_upload_rate", $upload);
 &set_option("max_hard_download_rate", $download);
 &get_options;
 print "New: upload=$options{max_hard_upload_rate}";
	print " download=$options{max_hard_download_rate} \n";
}

# Disconnect
$telnet->print('q');




sub get_options {
 my ($name, $value);
 my @output = $telnet->cmd('vo');
 foreach $_ (@output) {
  chomp;
  # Clean ANSI escape sequences
  s/\x1b\x5b[^\x6d]+\x6d//g;
  if( ($name, $value) = /([\w\.]+)\W+=\W+([\w\.]+)/) {
   $options{$name} = $value;
  }
 }
}


sub set_option {
 my ($name, $value) = @_;
 $telnet->cmd("set $name $value");
}

sub usage {
 die "Usage:\n\t$0 upload download\n\n";
}



Imprimir
Version para
imprimir

Imprimir
Version
PDF
Comentarios
Es posible que se hayan omitido algunos comentarios considerados poco constructivos
1.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (26/11/2004 20:14, #24484)
  Por: Anónimo
Tú eres un inmoral; comentas abiertamente que usas redes P2P, sin ningún tipo de cuidado. ;-)

¡¡Buen artículo!!.... o debería decir ¡¡Buen scrip!! :-D

No es pot respondre
 
2.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (26/11/2004 20:28, #24487)
  Por: gallir (http://mnm.uib.es/~gallir/)
Tú eres un inmoral; comentas abiertamente que usas redes P2P, sin ningún tipo de cuidado. ;-)

¿Por qué debería tener cuidado? No es ilegal, ni "inmoral", no antiético (en realidad es _muy_ ético) y se pueden hacer muchas cosas "legales" y útiles :-)

No es pot respondre
 
3.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 04:12, #24499)
  Por: Freddie® (http://www.cristalab.com/)
Se me hace que estaba siendo ironico, ¿No?
No es pot respondre
 
4.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (26/11/2004 20:50, #24488)
  Por: Marcos González (http://mgtroyas.home.dyndns.org/)

En Gentoo se han añadido, a los scripts que inician y detienen el servicio mldonkey, opciones que permiten alternar entre unas velocidades "low" y "high", que son definidas en un fichero de configuración del propio servicio:

Mutsumi root # /etc/init.d/mldonkey slow
* Reducing bandwidth to 6k/2k... [ ok ]

Mutsumi root # /etc/init.d/mldonkey fast
* Increasing bandwidth to 17k/6k... [ ok ]

Puedes echarles un vistazo a ver si te son de utilidad. Luego con cron se puede hacer que cambie de velocidad a ciertas horas, como bien comentas.

No es pot respondre
 
5.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (26/11/2004 21:08, #24490)
  Por: gallir (http://mnm.uib.es/~gallir/)
EN Debian no está, pero tampoco lo uso (y no creo que haya mucha gente que lo haga). En mi caso uso el kmldonkey, que arranca él el mlnet.

En estos casos no sirve el método del Gentoo, a menos que lo adaptes... pero no te preocupes, usa este script que te irá mejor :-)
No es pot respondre
 
6.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (26/11/2004 23:08, #24492)
  Por: Anònim

No ho puc evitar. M'emociono quan veig aquestes coses.

Aquestes ratlles de Perl ;-) m'han arribat al cor. Desgraciadament, no és gaire fàcil veure codi a Bulma i sóc dels que pensa que les branques d'informàtica de sistemes i la de gestió haurien d'estar més lligades (al món "real", és a dir, no acadèmic i que no s'enfadin els acadèmics)...

No es pot respondre
 
7.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 01:04, #24494)
  Por: gallir (http://mnm.uib.es/~gallir/)
Tu creus que hi ha poc de codi? Per exemple, coses de Perl. Crec que hi ha molt de codi, a més de http://bulma.net/cgi-bin/cvsweb/.

Sí, podria haver hi més, però és el que hi ha amb els que hi som... que fem el que podem ;-)

No es pot respondre
 
8.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 13:32, #24502)
  Por: Anónimo
Pero hombre, si esto se puede hacer con un sencillo shell-script, ¿para qué tanto rollo con Perl y su módulo?
No es pot respondre
 
9.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 13:46, #24503)
  Por: Noname
Nos muestras el codigo?
No es pot respondre
 
10.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 17:50, #24506)
  Por: Anònim
/bin/nc -q 2 localhost 4000 set max_hard_upload_rate 5 set max_hard_download_rate 44 q Por ejemplo...
No es pot respondre
 
11.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 17:51, #24507)
  Por: Anònim
estoo....faltaba el max_donkey :p set max_hard_upload_rate 5 set max_hard_download_rate 44 q
No es pot respondre
 
12.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 18:34, #24509)
  Por: Anónimo
Esto... que tonterías que has puesto.
No es pot respondre
 
13.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 18:33, #24508)
  Por: Anónimo
Eso que pones ni siquiera es un script (y necesitas tener instalado el netcat, ya que te quejas de "módulos").

Además de que NO funciona, NO hace ni la mitad de lo que hace el programa en Perl (como mostrar los valores anteriores y verificar los nuevos, o dejarte prepara las opciones en el hash %options). Además, si funcionase, puede fallar al nos esperar por el prompt del mldonkey y por lo tanto no hace control de flujo.

O sea: antes de criticar y decir tonterías, estudia un poco más como va el protocolo Telnet y el Perl, que lo que hay aquí es muy sencillo.

Si lo que quieres algo parecido a un script en todo caso será algo como:

# /bin/bash
/bin/nc -q 2 localhost 4000
set max_hard_upload_rate $1
set max_hard_download_rate $2
q

Vaya con los ignorantes y fantasmas. Ahora intenta mostrar los valores que tenía antes y los nuevos... a ver que te sale.
No es pot respondre
 
14.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 19:17, #24511)
  Por: gallir (http://mnm.uib.es/~gallir/)
Sí, pero falta el << EOF, por ejemplo
No es pot respondre
 
15.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (11/03/2005 12:18, #25624)
  Por: Anónimo
La verdad es que no me parece solución cambiar el módulo de perl por netcat. Lo ideal es un script en BASH que no use más programas que los que trae la instalación básica de debian... así que me he hecho uno con estas característica, ahí os lo dejo por si os es útil:

----
#!/bin/sh

#
# vdonk: permite cambiar los ratios de transferencia del
# mldonkey
#
# Autor: aRDi
#

# --- Configuracion ---
HOST=localhost
PUERTO=4000

USER=admin
PASS=

# Ratios totales
TURATE=0
TDRATE=0

# Ratios altos
AURATE=7
ADRATE=21

# RAtios bajos
BURATE=2
BDRATE=6


# ---
case "$1" in

total)
URATE=$TURATE
DRATE=$TDRATE
;;
alto)
URATE=$AURATE
DRATE=$ADRATE
;;
bajo)
URATE=$BURATE
DRATE=$BDRATE
;;
*)
if [ $# -ne "2" ]
then
echo "Uso: "
echo " $0 total # Todo el ancho de banda"
echo " $0 alto # Ratios altos de ancho de banda"
echo " $0 bajo # Ratios bajos de ancho de banda"
echo " $0 up down # Ratios a medida, ej: $0 10 30"
echo
exit
else
URATE=$1
DRATE=$2
fi

esac


{
sleep 1
echo auth $USER "$PASS"
sleep 1
echo set max_hard_upload_rate $URATE
sleep 1
echo set max_hard_download_rate $DRATE
sleep 1
echo q
} | telnet $HOST $PUERTO
---
No es pot respondre
 
16.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey **SCRIPT GENIAL** (07/03/2007 13:31, #38919)
  Por: Anónimo
Quiero agradeceros a todos compartir vuestros conocimientos y buen hacer con los demás, pobres usuarios novatos que todavía no os llegamos a los talones. En concreto este script BASH creo es GENIAL: es el que me ha funcionado :) ademas de estar escrito con sencillez claridad extemas. Un 10 a su autor. Ah, y unas preguntas: sólo me funciona con el usuario admin ¿un usuario creado puede tener autorización para cambiar los ratios? ¿qué hay del comando ese de calendario que dicen existe?
No es pot respondre
 
17.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 18:56, #24510)
  Por: Saiyine (http://clubdelphi.com/saiyine)
Aunque seria algo más complicado, ¿no seria mejor usar algo de QOS tipo el wondershaper y ponerle prioridad mínima al mldonkey?

O tambien, para quien les resulte importante tener el canal de subida libre durante un rato, podrias meterle al script una opción que aproveche el comando "nu" (imagino que de No Upload) que permite no subir nada durante un tiempo máximo de 5 horas.
No es pot respondre
 
18.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/11/2004 19:59, #24512)
  Por: gallir (http://mnm.uib.es/~gallir/)
La prioridad no te resuelve el problema si estás jugando al ET por la red ;-) (pero poner a 1 KB sí que me deja jugar bien :-)

En cuanto al nu, me lo voy a mirar, es fácil pero complicaría el código demasiado (para los no iniciados). Para el que sepa algo de Perl, está tirado modificar este scrip para que lo haga (sólo hay que tener cuidado porque es acumulativo, cada llamada incrementa por los minutos indicados).

No es pot respondre
 
19.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (28/11/2004 02:32, #24514)
  Por: Anónimo
#!/usr/bin/perl -w
#
# Por si a alguien le interesa un script que haga un "nu 300", también vale
# ponerlo en el cron para que se ejecute cada 5 horas :)
# Nota: en mi caso uso la autentificación del mldonkey.
#
# by Adrián Santos (lagoon at gulic dot org)
#
# Based in a script by Ricardo Galli (gallir at uib dot es)
#
# This software is licensed under the GNU General Public License

use strict;
use Net::Telnet;

my $addr = '127.0.0.1';
my $port = 4000;
my $prompt = '/> $/';

my $user = 'user';
my $pass = 'pass';

my $nu_arg = $ARGV[0] || 300;

my $telnet = new Net::Telnet ( Host => $addr, Port => $port, Prompt => $prompt)
or die "Error opening connection";
$telnet->waitfor($prompt);

my @output = $telnet->cmd("auth $user $pass");
chomp(@output);
grep(/^\s*Full access enabled\s*$/, @output) or die('Bad login/password');

@output = $telnet->cmd("nu $nu_arg");
chomp(@output);
my $time;
grep {print "$_\n" if /^\s*upload disabled for (\d+) minutes/} @output
or die('Error executing "nu" command');

# Disconnect
$telnet->print('q');
No es pot respondre
 
20.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (06/12/2004 00:09, #24560)
  Por: Anónimo
Eso en las redes P2P tiene un nombre: leecher (de leech, sanguijuela). Parásitos como tú, que no la RIAA ni la SGAE, son los que hacen peligrar estas redes.
No es pot respondre
 
21.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (11/02/2007 18:02, #38409)
  Por: Anònim
Thanks for that scripts guys!
No es pot respondre
 
22.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (28/11/2004 13:43, #24515)
  Por: Hirs
Sabeis que en el MLDonkey existe un parámetro q se llama calendar_add ?

calendar_add hour "command": add a command to be executed every day
No es pot respondre
 
23.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (27/09/2005 02:06, #28601)
  Por: Enrique
Existe la posibilidad de limitar las descargas de archivos y dejar maxima prioridad a la navegación, de forma que se pueda acceder a paginas web, webmail, msn, etc. Y hacer que las descargas de .exe, mp3 videos, etc sea limitado al minimo posible. He probado el QoS que viene con Linux Coyote y al definir clases ej. define_class "1:1" "1:10" 128 128 128 128 192,168,0,0/24 # SuperClass define_class_qos "1:10" "1:20" 28 128 28 64 192,168,0,2/32 # PC 1 La velocida no solo se limita a las descargas sino a toda la navegacion. Gracias
No es pot respondre
 
24.  Re: Script para modificar los parámetros de subida y bajada del MLDonkey (30/03/2007 23:38, #39390)
  Por: Anónimo
Yo creo que ninguno de los que escribe en este foro tiene novia. . .
No es pot respondre
 
GRACIAS
Distribuciones Universal
Por el servidor
Dpto. de Matematicas e Informatica
Calificacion
**00
Vots: 18
Danos tu opinion:
**** Excelente
***0 Muy Bueno
**00 Bueno
*000 Regular
0000 Malo
SECCIONES
Noticia
Breve
Truco
Enlace
Participa
Proyecto
Articulo
Webbulma
Manoletada :-)
Seguridad
Modificado: 23/4/2009 04:52:51 | Tiempo Total: 0.101 segs | Kernel: Linux - i686 - 2.6.26-1-686 | Last boot: too much time ago!!
Powered by Apache    MySQL    PHP    Gimp