PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : QOS - Bandbreitenbeschränkung



King_of_Irrsinn
16.06.02, 21:34
Hallo alle zusammen,

seit nen paar Tagen lese ich bei Euch mit. Jetzt würde ich gerne mal eine Frage stellen.

Etwas zu meiner "Vorbildung". Momentan habe ich ein gesundes Vorwissen, was Linux angeht. Samba installationen und konfigurieren sind kein Problem mehr. Netzwerke habe ich bis jetzt nur unter MS aufgebaut (Windows 2000 Server).

Momentan läuft ein MS Rechner als Proxy (Privat), das soll sich aber ändern!
In meinem Heimnetzwerk befinden sich 3 Rechner Proxy), diese sollen alle ins Internet. Mit Netcope(?) oder Mandrake oder Suse alles kein Problem. NUR
Wie kann ich allen 3 Rechnern, eine bestimmte Bandbreite (DSL Flat) zuweisen.
Die Zuweisung soll über die IP Adresse laufen.
Dieses System sollte auf einer Suse 8.0 laufen. Wenn es was für Fli gibt, bin ich auch nicht böse! ;-)

Habt Ihr Vorschläge??

grüße King

:p

geronet
16.06.02, 22:37
Beim squid kannst du delay pools einsetzen, das wär dann aber nur für http requests. Wenn du alle Protokolle beschränken willst kommst du nicht um das Advanced-Routing-Howto von linuxdoc.org herum.

Grüsse, Stefan

masterblaster
18.06.02, 14:02
hi,

ich hab vor kurzem ein änliches System wie du aufgesetzt und mir mit dem Advanced Routing Howto etwas schwer getan, habs dann allerdings doch noch hinbekommen :D

ich poste dir einfach mal meine config, vielleicht hilfts dir ja :


// Markierung der Pakete aus 192.168.113.0/24
/usr/local/sbin/iptables -A PREROUTING -t mangle -s 192.168.113.0/24 -j MARK --set-mark 3 &&
// Markierung der Pakete aus 192.168.111.0/24
/usr/local/sbin/iptables -A PREROUTING -t mangle -s 192.168.111.0/24 -j MARK --set-mark 1 &&
// Markierung der Pakete aus 192.168.112.0/24
/usr/local/sbin/iptables -A PREROUTING -t mangle -s 192.168.112.0/24 -j MARK --set-mark 2 &&
// root klasse
/usr/sbin/tc qdisc add dev ppp0 root handle 1: cbq bandwidth 128Kbit avpkt 1000 mpu 64 &&
// Klasse fuer dir volle Bandbreite (um traffic vorbeuschleusen zu koennen)
/usr/sbin/tc class add dev ppp0 parent 1:0 classid 1:1 cbq bandwidth 128Kbit rate 128Kbit allot 1514 prio 4 maxburst 1 avpkt 1000 bounded &&
//Klasse fuer das Subnet 192.168.113.0
/usr/sbin/tc class add dev ppp0 parent 1:1 classid 1:2 cbq bandwidth 128Kbit rate 42Kbit allot 1514 prio 4 maxburst 1 avpkt 1000 bounded &&
// Klasse fuer das Subnetz 192.168.112.0
/usr/sbin/tc class add dev ppp0 parent 1:1 classid 1:3 cbq bandwidth 128Kbit rate 42Kbit allot 1514 prio 4 maxburst 20 avpkt 1000 bounded &&
// Klasse fuer das Subnetz 192.168.111.0
/usr/sbin/tc class add dev ppp0 parent 1:1 classid 1:4 cbq bandwidth 128Kbit rate 42Kbit allot 1514 prio 7 maxburst 20 avpkt 1000 bounded &&
// Filter der alle mit 3 Markierten Palete in die Klasse 1:2 routed usw.
/usr/sbin/tc filter add dev ppp0 prio 100 protocol ip handle 3 fw classid 1:2 &&
/usr/sbin/tc filter add dev ppp0 prio 100 protocol ip handle 2 fw classid 1:3 &&
/usr/sbin/tc filter add dev ppp0 prio 100 protocol ip handle 1 fw classid 1:4


Das setup hat allergings einen Nachteil, da die bandbreiten statisch zugewiesen werden, d.h sollte nur das Subnetz 192.168.113.0 upstream benoetigen und die anderne 2 Subnetze nicht, so werden trozdem nur 42KBit benutzt, obwohl zu diesem zeitpunkt 128Kbit (beiTDSL) zu Verfuegung stünden.
Wenn du ereichen willst das sich die eine Klasse freie bandbreite von der anderen leihen willst musst du einen tieferen Baum mit Zwischenklassen aufbauen, dann kommst du um das Adv-Routing-Howto nicht herum
:D :D

King_of_Irrsinn
20.06.02, 20:45
Hi,

danke für die Infos! Mal schauen, was die nächsten Tage (Wochen??) bringen!

Welchen Kernel würdet Ihr empfehlen? (2.4.18?) (welche Distri)

grüße King

masterblaster
20.06.02, 23:28
bei mir läfft ein 2.4.14er, allerdings haengt er sich auf sobald ich das u32 filter module (wenn dus nicht kennst nicht kennst nicht so wichtig, wirst es warscheinlich sowiso nicht brauchen) benutzen will, mit dem 2.4.18er hab ich's noch nicht getestet

greetz