sávszélesség korlátozás adott gépen

Sziasztok !

Van egy kis otthoni hálózatom,
a bejövő net megy egy router-be, az oszja szét a netet. A net 2M - 256K -os kábelnet.
Van rajta egy un. szerver gép statikus ip-vel amin megy torrentflux, és azt szeretném megoldani,
hogy ez a gép korlátozza a saját sávszél.-jét monjuk 15.00 - tól 21.00 ig monjuk a felére.
Erre azért lenne szükség mert az egyik gépen a gyerek netes játékkal játszik, és ha a szerveren mennek a seed-ek,
a játék nem müxik. Amúgy egyéb progikkal nincs gond, a router nagyon jól osztja a lapokat.
A router egy wifis TP-LINK tipus, nincs rajta lehetőség ilyen jellegű beállításra.

Előre is köszönöm a segítséget.

Hozzászólások

A korlátozáshoz nem értek sajna, csak azt tudom havasolni, hogy a torrent programot függeszd fel teljesen ebben az időpontban. Bár ez nem szerencsés, mert mi van, ha inkább szorgalmasan tanul a gyerek, és be sem kapcsolja a gépet? ;-)

Nálam olyan helyzet volt, hogy a saját felhasználómmal belépve maradtam, miközben ment az azureus, de a képernyőm zároltam. Ha feleségem is belépett, akkor nem tudott netezni. Ezért csináltam neki két ikont, meg egy szkriptet. A szkript azt csinálta, hogy megkereste a futó processek listájából az azureus pid-jét, aztán az ikonban kapott paraméterekkel (18 vagy 19) a kill parancsnak átadta, s az leállította, vagy tovább engedte az azureust. Ehhez persze a sudoers file-t is meg kellett bügykölni, hogy a kill az én nevemben fusson, de a feleségem indíthassa.

Ha hálóban mennek a gépek, ez nálad is megoldható. Márcsak az a kérdés, hogy mennyire feledékeny a gyerkőc, mert ha úgy felejti... bár cron-al be lehet kapcsoltatni adott időben.

Gondolom lesz az igényeidnek jobban megfelelő megoldási javaslat is, én is várom, mi az!

Kodmen
-------------------
...a Linux filozófiája: "Keresd a veszélyt". Hopp! Nem így van. "Csináld magad!" Ez az! (Linus Torvalds)

Ez a megoldás nem járható út, mert egyrészt nem egy gép több ember hanem ahány ember anyi +1 gép, és így egy kicsit feleslegesen túlbonyolított megoldás lenne szerintem,
mivel esetleg sok progit kellene felfüggesteni, meg különben is had mejenek csak, és a feledékenység is fontos tényező... :)
Azért nagyon köszönöm a tippet !

Köszönöm, de sajnos nem ismerem a perl nyelvet, ezért nem tudom hogy is működik, azt meg nem szeretem.
Egyébként a torrentflux minden torrenthez külön torrent klienst indít, tehát lényegtelen hogy a kliens tud-e sávszél. korlátozást, mert ha több torrent is megy akkor értelmetlen. Jó tudom, lehetne számolgatni hogy pl. megy 4 , akkor mindnek adok fel 2 -t akkor max 8 lesz, de mi van ha a 4 -ből csak egyet húznak és mehetne egyedül 8 -al...

Ha esetleg te érted hogy működnek ezek a perl progik, leírhatnád, had tanuljunk...

ez egy darab szkript:


#!/usr/bin/perl

use strict;
use warnings;

my ($uprate, $downrate, $completion, $sharekill) = (undef, undef, undef, undef);

# CONFIG VARIABLES - Comment any variables you don't want to update with cron.

$uprate = shift;
$downrate = shift;
#$completion = shift;
#$sharekill = shift;

# PATHS VARIABLES - adjust these to your own system.
my $PHP = "/usr/bin/php5";
my $FLUXCLI = "/var/www/tf/bin/fluxcli.php";
my $AWK = "/usr/bin/original-awk";

my @output;

my @transfers = `$PHP $FLUXCLI transfers | $AWK '/torrent/ {print \$2}'`;
chomp(@transfers);

foreach (@transfers) {
push(@output, `$PHP $FLUXCLI tset $_ uprate $uprate`) if (defined($uprate));
push(@output, `$PHP $FLUXCLI tset $_ downrate $downrate`) if (defined($downrate));
push(@output, `$PHP $FLUXCLI tset $_ completion $completion`) if (defined($completion));
push(@output, `$PHP $FLUXCLI tset $_ sharekill $sharekill`) if (defined($sharekill));
}

# Comment this to suppress output.
print @output;

csak annyit csinál, hogy a futó letöltéseket módosítja a megadott paraméterekkel. elnevezed vminek pl. set_limit.pl, futtathatóvá teszed és csinálsz egy cron job-ot, ami lefuttatja bizonyos időközönként pl.:


0 21 * * * /.../set_limit.pl 0 0
0 15 * * * /.../set_limit.pl 128 1024

globális limit valőban nincs, queue manager-rel megadhatod a max. ranszfer számot, ezzel eloszthatod az összsebességet, de ettől még áll amit írtál.
traffic shaping szükséges a probléma megoldására, de az már egy komolyabb feladat.