aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: Bandbreite dynamisch nach Tagesz. anpassen  (Read 9642 times)

elder_donkey

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 6
Bandbreite dynamisch nach Tagesz. anpassen
« on: August 04, 2004, 09:37:58 AM »

Hallo,

Ich habe zur Zeit einen SDSL-Tarif, bei dem die Bandbreite tagsüber im Down-Upload drastisch eingeschränkt ist. Ab Abends bzw. am Wochenende habe ich die volle Datenrate.

Bisher ist es immer so, das ich immer morgens/abends manuell umstellen muss. Ärgerlich nur, wenn die Möglichkeit nicht besteht. So verliere ich abends ein paar Stunden vollen Down/Upload bzw. Der Upload drückt morgens den Down-, von der Restbandbreite an die Wand.

Wäre super, wenn ihr das einbauen würdet.

So das aMule automatisch zwei verschiedene Bandbreiten, je nach Tageszeit einstellt: z.B.: Wochentags zwischen 8.00 -20.00 Uhr 24/16 und ab Abend/WO: 160/80 KByte.  

Grüße
EDonkey
« Last Edit: August 04, 2004, 09:44:37 AM by elder_donkey »
Logged

CellarDoor

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 14
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #1 on: August 04, 2004, 12:55:56 PM »

hm gibts nich irgendwie ne möglichkeit mit ner Shell die Preferences zu verändern ? (@dev)
Weil dann könnte man sich ja so 2 Shells schreiben
eine zum runtersetzen des Speeds eine zum wieder hochsetzen
und dann
hoch lebe Cron ;)
Logged

elder_donkey

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 6
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #2 on: August 04, 2004, 01:07:56 PM »

Die Up/Downloadrate steht ja in der .eMule Datei des jew. Home-Directorys. Würde ja schon reichen, wenn man die per Cron jeweils "neu" erzeugt bzw. überschreibt und dann z.B. eine Funktion ala

amule -reload

diesen"zwingt" die Konfiguration neu einzulesen.

Man sollte nur vorher die Statistik auslesen und sichern, sonst wird die ja jedemal wieder mit den Anfangswerten überschrieben.

Und per Cron amule zweimal am Tag abzuschiessen und mit den neuen Werten zu starten ist auch keine Lösung. Meine armen .met Dateien.

@deltaHF: Bitteeee ! :D Noch kann ich mir keine studentische Hilfskraft für 5 € die Stunde leisten, die den Job übernimmt.

Grüße
EDonkey
Logged

deltaHF

  • Evil Admin
  • Former Developer
  • Hero Member
  • *****
  • Karma: 6
  • Offline Offline
  • Posts: 3920
  • .. Legends may sleep, but they never die ..
    • http://www.amule.org
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #3 on: August 05, 2004, 09:03:23 PM »

hi,

wirds geben, kann ich allerdings nicht sagen wann ..

gruss

hariolf

  • Jr. Member
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 50
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #4 on: August 30, 2004, 12:00:03 PM »

In der Zwischenzeit kannst du dir mit dem Paket ,,iproute'' behelfen, indem du Amule nur die gewünschte Bandbreite zugestehst. Per cron steuerst du das Ganze tageszeitabhängig.
Die Verwendung des Pakets Iproute bzw. des tc-Kommandos verlangt etwas Einarbeitungszeit, aber es gibt einige Anleitungen im Netz, z.B. hier:

http://tldp.org/HOWTO/Adv-Routing-HOWTO/

Oder hier:

http://pupa.da.ru/imq/tc_tutorial.htm

Mit ein wenig googeln finden sich auch noch jede Menge Beispielskripte. Einfach nach den Begriffen "tc rate ceil" (ohne Anführungsstriche) suchen.

Gruß Hariolf
Logged

hariolf

  • Jr. Member
  • **
  • Karma: 0
  • Offline Offline
  • Posts: 50
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #5 on: August 30, 2004, 12:09:58 PM »

Als Skript könntest du z.B. das hier nehmen:
Code: [Select]
#!/bin/sh
export amule_bb=$1

# Erst alle qdiscen loeschen
/opt/htb3.6-020525/tc qdisc del dev eth0 root    2> /dev/null > /dev/null
/opt/htb3.6-020525/tc qdisc del dev eth0 ingress 2> /dev/null > /dev/null
/opt/htb3.6-020525/tc qdisc del dev eth0 root    2> /dev/null > /dev/null
/opt/htb3.6-020525/tc qdisc del dev lo root      2> /dev/null > /dev/null

# Wurzel
/opt/htb3.6-020525/tc qdisc add dev eth0 root handle 1:0 htb default 12 r2q 10

/opt/htb3.6-020525/tc class add dev eth0 parent 1:0 classid 1:1 htb rate 20kbit ceil ${amule_bb}kbit prio 3
iptables -A OUTPUT -t mangle -o eth0 -m owner --cmd-owner amule -j MARK --set-mark 1
/opt/htb3.6-020525/tc filter add dev eth0 parent 1:0 prio 0 protocol ip handle 1 fw flowid 1:1

Als Parameter muß dem Skript die Bandbreite in kbit übergeben werden. Den Gerätenamen eth0 und den Pfad /opt/htb3.6-020525/tc mußt du ggf. anpassen. Achte darauf, daß du ein ,,tc'' vom 25.5.2002 oder neuer nimmst, sonst funktioniert die Sache nicht.

Gruß Hariolf
« Last Edit: August 30, 2004, 12:10:46 PM by hariolf »
Logged

Thailok

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 5
Ebenfalls wünschenswert...
« Reply #6 on: September 06, 2004, 02:51:37 AM »

Wenn wir schon bei dem Thema sind: Würde es viel Aufwand/Mühe kosten, das aus eMule bekannte USS (Upload Speed Sense) zu intengrieren? Fande das bei eMule immer ganz nützlich...
Logged

elder_donkey

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 6
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #7 on: September 07, 2004, 10:09:34 AM »

Hi hariolf,

Danke für den Tip. Hatte/Habe im Augenblick viel um die Ohren. Kanns daher erst am Wochenende testen, wenn ich ein bißchen mehr Zeit habe. Habe das HOWTO mal überflogen. Gibt's auch die Möglichkeit verschiedene Dienste zu priorisieren, habe nichts gefunden.

Meine z.B. E-Mail (Pop/SMTP) läuft mit höchster Priorität, dann die "Restbandbreite" für WWW, amule, usw.

So das amule dann nicht alles blockiert. Ansonsten muss ich immer ein paar KB reserviert halten, die ich aber nicht ständig brauche.

@thailok. Ist schon "drin", wird mit configure --help bereits angezeigt, allerdings im Kommentar noch nicht als voll? funktionsfähig.

Grüße
eDonkey
« Last Edit: September 07, 2004, 10:15:51 AM by elder_donkey »
Logged

hannibal218bc

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 11
RE: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #8 on: December 05, 2004, 12:54:09 PM »

Hellas,


ich stehe gerade vor der selben Aufgabe; amuleweb kann ja über das Webinterface die Bandbreiten bei laufendem eMule einstellen, aber ich habe nichts gefunden wie/ob das zB amuelcmd direkt kann -- der ließe sich ja gut über einen cronjob ansprechen.
Wisst ihr da was!? ;-)

Traffic shapen ist ja gut und schön, aber wozu wenns die Applikation eh selber auch kann!? ;-)


thx,
lg
-h
Logged

hannibal218bc

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 11
Re: Bandbreite dynamisch nach Tagesz. anpassen
« Reply #9 on: December 08, 2004, 07:17:25 PM »

Hellas,


ich hab nun ein kleines Perl-Skript geschrieben, das über externe Connections die Bandbreiten-Limits setzt. Das ganze ist im englischen Thread, hier: http://forum.amule.org/thread.php?postid=22975&sid=#post22975 , abgelegt.


lg,
-hannes
Logged