Newsgroup: it.comp.os.linux.sys
Titolo: traffic shaping

dopo aver gironzolato in rete alla ricerca di come effettuare il traffic 
shaping in linux ho trovato questo pacchetto che mi è sembrato interessante.
dsl_qos_queue-0.9.2.tar.gz
purtroppo sembra che tutto faccia, tranne darmi i risultati sperati.
la situazione è la seguente:
La linea ADSL è 640/256
il computer x.x.x.3 è linux 2.4.19-16mdk, il supporto Qos è abilitato
x.x.x.3/ppp0 - modem ADSL usb, interfaccia pubblica
x.x.x.3/eth0 - interfaccia alla rete locale
x.x.x.3 natta le connessioni della lan verso l'esterno.
Su x.x.x.3 ho diverse regole iptables, alcune per filtrare le porte, 
alcune per fare port forwarding verso la rete lan.
Il mio problema è che un PC della lan (x.x.x.2) è sempre in download 
saturando la banda.
Quello che voglio ottenere sono 2 cose:
- vorrei che il traffico proveniente da x.x.x.1 abbia la precedenza sul 
resto della rete. In pratica vorrei che x.x.x.1 utilizzasse la 
connessione verso l'esterno come se la banda fosse libera (o quasi).
- inoltre vorrei che il traffico sulle porte http, pop3 e nntp sia 
quello a massima priorità, mentre quello sulle porte tcp 14661/14665 e 
udp 14671/14675 abbia priorità minima, ovvero agisca solo in assenza di 
ulteriore traffico sulla rete.
- il resto del traffico deve avere una priorità intermedia.
Modificando lo script ipt_rules ho partorito questo:
#!/bin/bash
DEV=ppp0
# Reset everything to a known state (cleared)
iptables -t mangle -D POSTROUTING -o $DEV -j MYSHAPER-OUT 2> /dev/null > 
/dev/null
iptables -t mangle -F MYSHAPER-OUT 2> /dev/null > /dev/null
iptables -t mangle -X MYSHAPER-OUT 2> /dev/null > /dev/null
if [ "$1" != "install" ]
then
         exit
fi
iptables -t mangle -N MYSHAPER-OUT
iptables -t mangle -I POSTROUTING -o $DEV -j MYSHAPER-OUT
# add fwmark entries to classify different types of traffic - Set fwmark 
from 20-26 according to desired class. 20 is highest prio.
# default per le porte basse
iptables -t mangle -A MYSHAPER-OUT -p tcp --sport 0:1024 -j MARK 
--set-mark 24
iptables -t mangle -A MYSHAPER-OUT -p tcp --dport 0:1024 -j MARK 
--set-mark 24
# Web browsing ad alta priorità
iptables -t mangle -A MYSHAPER-OUT -p tcp --dport http -j MARK --set-mark 22
# ping e NTP ad alta priorità
iptables -t mangle -A MYSHAPER-OUT -p icmp -j MARK --set-mark 20
iptables -t mangle -A MYSHAPER-OUT -p tcp --dport 123 -j MARK --set-mark 21
iptables -t mangle -A MYSHAPER-OUT -p udp --dport 123 -j MARK --set-mark 21
# Newsgroup e posta ad alta priorità
iptables -t mangle -A MYSHAPER-OUT -p udp --dport 119 -j MARK --set-mark 23
iptables -t mangle -A MYSHAPER-OUT -p tcp --dport 119 -j MARK --set-mark 23
iptables -t mangle -A MYSHAPER-OUT -p tcp --dport 110 -j MARK --set-mark 23
# DNS
iptables -t mangle -A MYSHAPER-OUT -p udp --dport 53 -j MARK --set-mark 21
iptables -t mangle -A MYSHAPER-OUT -p tcp -m length --length :64 -j MARK 
--set-mark 21 # small packets (probably just ACKs)
iptables -t mangle -A MYSHAPER-OUT -m mark --mark 0 -j MARK --set-mark 
26      # redundant- mark any unmarked packets as 26 (low pri
A questo punto lancio
./ipt_rules install
./dsl_qos_queue -d -i ppp0 -r 31800
Sembra funzionare, ma non come speravo, restano comunque lag evidenti.
C'è un modo migliore di operare per ottenere quello che voglio ?
grazie mille
Alesi_27

 C'è un modo migliore di operare per ottenere quello che voglio ?
Ti consiglio di usare qualcosa come "wonder shaper" se vuoi uno script
preconfezionato, oppure cercando tra la mailing list del lartc trovi
qualche altra soluzione. Quella che proponi tu non l'ho mai provata
quindi non posso dirti niente a riguardo.
Per approfondire l'argomento puoi andare qui:
http://linux-net.osdl.org
http://www.docum.org/docum.org/tests/htb/parent/
http://lartc.org/
 [contiene qualche errore]
Gufo
-- 
  ,___,		Never trust an operating system.
  (9v9)
  (_^((\		    .: May the owl be with you :.
-^-"-"-\\-^--	 	 -- Remove -me- to reply in email --

 C'è un modo migliore di operare per ottenere quello che voglio ?
C'è sempre un modo migliore, ma purtroppo io non lo conosco :-)
-- 
Flavio Visentin
Membro del CICAP
Comitato Italiano per il Controllo delle Affermazioni di P4

 C'è sempre un modo migliore, ma purtroppo io non lo conosco :-)
grazie ad entrambi, il problema è che se mi metto a smanettare incasino 
il server al 100% :D
comunque una soluzione prima o poi la trovo
ciao
Alesi_27

 quindi non posso dirti niente a riguardo.
mercì, provato ora wondershaper, ottimo.
Riesco a mantenere i download ad una velocità accettabile mentre 
l'interattività dei principali servizi resta alta
ciao
Alesi_27