Peter Varkoly wrote:
Am Freitag, 14. Mai 2004 20:37 schrieb Frank Wein:
Hallo (Peter), also ich hätte da mal einen Vorschlag für die default-config vom SLSS, aber schicke das mal an die Mailingliste, da auch ein allgemeines Problem in dem Posting enthalten ist :). Also es geht darum, dass das Internet surfen ziemlich langsam geht, wenn viele Leute (so ca. 16) im Internet surfen und evtl. auch Dateien hochladen um sie per email zu verschicken. Hierbei bin ich mir ziemlich sicher, dass es daran liegt das die ACK-Packete nicht mehr richtig durchkommen, da der Upload überlastet ist und solange keine ACK Packete durchkommen bricht der Download so gut wie zusammen. An CPU und Festplatte kann es nicht liegen, die Überwachung zeigt an das die CPU-Last relativ gering ist und die Festplatte auch bei weitem nicht am Limit läuft. Hingegen bei der Übertragungsrate im Netzwerk sieht man, dass die ADSL Leitung nur zur Hälfte im Downstream ausgelastet ist, also auch nicht am Limit, der Upstream hingegen ziemlich ausgelastet war. Mein Wunsch wäre jetzt das standardmäßig (also gleich nach der Standardinstallation, zumindest wenn man als inet-Zugang pppoe auswählt) mittels iptables und tc ACK-Pakete bevorzugt werden vor anderen Paketen bevorzugt behandelt werden.
Klingt vernünftig, muss allerdings mit dem SuSEFirewall zusammenarbeiten. Hanbe Sie schon getestet ob es geht?
Ich hab es mal irgendwann vor ein paar Monaten getestet, aber nicht weiter verfolgt (in Hinsicht auf performance-Tests, aber es müsste schon etwas bringen). Mit der SuSEFirewall es zum zusammenarbeiten kriegen, das ist wohl nicht so einfach, zuerst muss man in der Datei /etc/sysconfig/scripts/SuSEfirewall2-custom im Bereich fw_custom_before_antispoofing() { die entsprechenden Pakete (ACK) markieren: iptables -A POSTROUTING -t mangle -o $FW_DEV_EXT -p tcp -m length --length :64 -j *MARK* --set-*mark* 10 Allerdings können in der variable FW_DEV_EXT anscheinend mehrere Devices definiert werden (z.B. ein ipsec-Tunnel und eine Wählverbindung), da weiß ich nicht was dann dem Kommando da übergeben wird. Auch weiß ich nicht was diese Variable enthält wenn man offline ist. Ich denke aber das dann das Script gar nicht ausgeführt wird, aber was passiert dann wenn man offline geht? Von daher denke ich die bessere Regel wäre einfach ACK Pakete auf allen Interfaces zu bevorzugen mittels iptables -A POSTROUTING -t mangle -p tcp -m length --length :64 -j *MARK* --set-*mark* 10 Und dann muss man ein paar tc Befehle mit reinpacken ;), aber da hat man wieder das Problem mit den Interfaces. Außerdem muss man hier die Bandbreite der Verbindung angeben, von daher ist das ganze wohl etwas zu kompliziert für den Schoolserver. Frank