OVH Cloud OVH Cloud

QoS : qqun a déjà essayé sur des petits debits ?

4 réponses
Avatar
Emmanuel Doguet
Salut à tous,

N'ayant une qu'une connectivité RNIS chez moi ( 64 Kbits symetrique ),
j'aurais voulu mettre un système de QoS afin d'avoir tjrs SSH/ICMP de
rapide meme si les emails se telechargent.

J'ai essayé plusieurs script (wondershaper, htb, etc...) qui se lance
sans erreurs, voir me donne des stats ... mais je ne ressent aucune
difference.

Ma debit est trop petit peut etre pour la QoS ?

A+++


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

4 réponses

Avatar
Frédéric BOITEUX
Le Mon, 06 Jun 2005 09:19:07 +0200, Emmanuel Doguet a écr it :

Salut à tous,

N'ayant une qu'une connectivité RNIS chez moi ( 64 Kbits symetrique ),
j'aurais voulu mettre un système de QoS afin d'avoir tjrs SSH/ICMP de
rapide meme si les emails se telechargent.

J'ai essayé plusieurs script (wondershaper, htb, etc...) qui se lance
sans erreurs, voir me donne des stats ... mais je ne ressent aucune
difference.

Ma debit est trop petit peut etre pour la QoS ?



Salut,

Il me semble que les connexions type SSH sont d'office privilégiées p ar
rapport
aux chargement style ftp/http... J'avais vu cela en regardant le 'advanced
routing howto'...

Fred.
Avatar
François Boisson
Le Mon, 06 Jun 2005 09:19:07 +0200
Emmanuel Doguet a écrit:

Salut à tous,

N'ayant une qu'une connectivité RNIS chez moi ( 64 Kbits symetrique ),
j'aurais voulu mettre un système de QoS afin d'avoir tjrs SSH/ICMP de
rapide meme si les emails se telechargent.

J'ai essayé plusieurs script (wondershaper, htb, etc...) qui se lance
sans erreurs, voir me donne des stats ... mais je ne ressent aucune
difference.

Ma debit est trop petit peut etre pour la QoS ?




Deux choses, l'estimation de l'upload est moins fiable avec le ppp, par
ailleurs, pour que ça soit efficace, il faut réserver une bande
passante en marge de sécurité de 10% (peut être + en ppp mais dans la
pratique ça marchait). Donc avec 64Kbits symétrique, cela fait un upload
max de 8K, il faut faire tes scripts pour gérer une bande maximale de
7K. Je suggère un script comme suit(adapté d'un de mes scripts). Bien
évidemment, il faut adapter avec la fonction affecte qui est de la forme

affecte Nom_du_service type_du_port port priorité

avec

Nom_du_service = chaine de caractères pour l'affichage lors du lancement
type_du_port = d ou s suivant que le port spécifié soit celui en
réception (sur la machine distante) où émission (sur la machine
locale)
port = numéro du port (si)
priorité = numéro de la file de priorité


J'avais des scripts découpant la bande passante en deux étanches mais si
en fait, si tes paramètres sont bien fait, la gestion des priorités peut
suffire: Avec 3 téléchargement sur le serveur, le ping ne bouge pas d'un
iota sur «Counter Strike», ce qui est le meilleur des tests. Par contre
si tu essayes de te passer de la marge de sécurité de 10%, ça devient
moins efficace.

--------- le script ----------
#!/bin/sh
# Limiteur de bande passante inspiré du travail de
# Dan Singletary lui meme inspiré de
# Inspiré de WonderShaper (www.lartc.org)
# François Boisson (2003-2005)

DEV=ppp0
P0=2
P1=5
P2=5
P3=2
P4=6
P5=6
P6=2
PART=$[$P0+$P1+$P2+$P3+$P4+$P5+$P6]
UNITE=2
RATEUP=$[$PART*$UNITE]
# ça doit faire 56Kbits/s


affecte()
{
iptables -t mangle -A MONLIMITEUR-OUT -p $4 --$2port $3
-j MARK--set-mark 2$5}


if [ "$1" = "status" ]
then
echo "[qdisc]"
tc -s qdisc show dev $DEV
echo "[class]"
tc -s class show dev $DEV
echo "[filter]"
tc -s filter show dev $DEV
echo "[iptables]"
iptables -t mangle -L MONLIMITEUR-OUT -v -x 2> /dev/null
exit
fi

tc qdisc del dev $DEV root 2> /dev/null > /dev/null
iptables -t mangle -D POSTROUTING -o $DEV -j MONLIMITEUR-OUT
2> /dev/null > /dev/null
iptables -t mangle -F MONLIMITEUR-OUT
2>/dev/null> /dev/null
iptables -t mangle -X MONLIMITEUR-OUT 2> /dev/null > /dev/null

if [ "$1" = "stop" ]
then
echo "Limitation de débit désactivée sur $DEV."
exit
fi


ip link set dev $DEV qlen 30

tc qdisc add dev $DEV root handle 1: htb default 26

tc class add dev $DEV parent 1: classid 1:1 htb rate ${RATEUP}kbit

tc class add dev $DEV parent 1:1 classid 1:20 htb
rate $[($RATEUP*$P0)/$PART]kbit
ceil ${RATEUP}kbit prio 0
tc class add dev $DEV parent 1:1 classid 1:21 htb
rate $[($RATEUP*$P1)/$PART]kbit
ceil ${RATEUP}kbit prio 1
tc class add dev $DEV parent 1:1 classid 1:22 htb
rate $[($RATEUP*$P2)/$PART]kbit
ceil ${RATEUP}kbit prio 2
tc class add dev $DEV parent 1:1 classid 1:23 htb
rate $[($RATEUP*$P3)/$PART]kbit
ceil ${RATEUP}kbit prio 3
tc class add dev $DEV parent 1:1 classid 1:24 htb
rate $[($RATEUP*$P4)/$PART]kbit
ceil ${RATEUP}kbit prio 4
tc class add dev $DEV parent 1:1 classid 1:25 htb
rate $[($RATEUP*$P5)/$PART]kbit
ceil ${RATEUP}kbit prio 5
tc class add dev $DEV parent 1:1 classid 1:26 htb
rate $[($RATEUP*$P6)/$PART]kbit
ceil ${RATEUP}kbit prio 6

tc qdisc add dev $DEV parent 1:20 handle 20: sfq perturb 10
tc qdisc add dev $DEV parent 1:21 handle 21: sfq perturb 10
tc qdisc add dev $DEV parent 1:22 handle 22: sfq perturb 10
tc qdisc add dev $DEV parent 1:23 handle 23: sfq perturb 10
tc qdisc add dev $DEV parent 1:24 handle 24: sfq perturb 10
tc qdisc add dev $DEV parent 1:25 handle 25: sfq perturb 10
tc qdisc add dev $DEV parent 1:26 handle 26: sfq perturb 10

tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 20 fw flowid 1:20
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 21 fw flowid 1:21
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 22 fw flowid 1:22
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 23 fw flowid 1:23
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 24 fw flowid 1:24
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 25 fw flowid 1:25
tc filter add dev $DEV parent 1:0 prio 0
protocol ip handle 26 fw flowid 1:26


iptables -t mangle -N MONLIMITEUR-OUT
iptables -t mangle -I POSTROUTING -o $DEV -j MONLIMITEUR-OUT

# Trafic sur les ports bas
affecte "port bas" s 0:1024 tcp 3
affecte "port bas" d 0:1024 tcp 3

# Petits paquets (des ACK probablement)
iptables -t mangle -A MONLIMITEUR-OUT -p tcp -m length --length :64 -j
MARK --set-mark 21
iptables -t mangle -A MONLIMITEUR-OUT -p tcp -m length --length 65:128
-j MARK --set-mark 22

# Port ftp-data, faible priorité
affecte "FTP data" s 20 tcp 4
affecte "FTP data" d 20 tcp 4
affecte "FTP" s 21 tcp 3
affecte "FTP" d 21 tcp 3

# Messagerie Immédiate AOL
affecte AOL d 5190 tcp 3
# Messagerie Immédiate MSN

affecte "MSN" d 1863 tcp 3
affecte "MSN" d 6891 udp 4
affecte "MSN" d 6891 tcp 4
affecte "MSN" s 1863 tcp 3
affecte "MSN" s 6891 udp 4
affecte "MSN" s 6891 tcp 4
# ICMP (ping) - forte priorité (impressionnez vos amis)
iptables -t mangle -A MONLIMITEUR-OUT -p icmp -j MARK
--set-mark 20
# DNS (petits paquets)
affecte "DNS" d 53 udp 1
# shell sécurisé
affecte "SSH" d ssh tcp 2
affecte "SSH" s ssh tcp 2
# telnet
affecte "telnet" d telnet tcp 2
affecte "telnet" s telnet tcp 2

# Serveur WWW local
affecte "Apache" s http tcp 5

# Serveur WWW local
affecte "Apache jury agreg" s 344 tcp 3
affecte "X11" d 6000 tcp 2
affecte "X11" d 6000 udp 2
affecte "VNC" s 5901:5905 tcp 2
affecte "VNC" s 5901:5905 udp 2
affecte "BattleNet" d 6112:6119 tcp 1
affecte "BattleNet" d 6112:6119 udp 1
affecte "BattleNet" s 6112:6119 tcp 1
affecte "BattleNet" s 6112:6119 udp 1
affecte "BattleNet" s 4000 tcp 1
affecte "BattleNet" d 4000 tcp 1
affecte "BattleNet" d 4000 udp 1
affecte "BattleNet" s 4000 udp 1
affecte "CounterStrike" d 27000:27045 udp 0
affecte "CounterStrike" s 27000:27030 udp 0
affecte "Quake3" d 27960 udp 1
affecte "Quake3" s 27960 udp 1
affecte "Xmule" s 3662 tcp 6
affecte "Xmule" s 3672 udp 6
affecte "Xmule" d 5259 udp 2
# reste
iptables -t mangle -A MONLIMITEUR-OUT -m mark --mark 0 -j MARK
--set-mark 26

echo "Limitation de trafic sortant activé sur $DEV.
Débit: ${RATEUP}kbit/sec."


François Boisson


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
François Boisson
Emmanuel Doguet a écrit:
Salut à tous,

N'ayant une qu'une connectivité RNIS chez moi ( 64 Kbits symetrique ),
j'aurais voulu mettre un système de QoS afin d'avoir tjrs SSH/ICMP de
rapide meme si les emails se telechargent.

J'ai essayé plusieurs script (wondershaper, htb, etc...) qui se lance
sans erreurs, voir me donne des stats ... mais je ne ressent aucune
difference.

Ma debit est trop petit peut etre pour la QoS ?




1) L'estimation du débit est plus délicate pour une interface ppp,
j'ignore si un débit trop petit rend les choses + délicates.

2) Pour que cela soit efficace, il convient de s'assurer une marge de
sécurité d'en gros 10% à 15%. J'ai une bande passante en sortie d'en
gros 46-50K/s . J'ai prévu une marge de 10% et mis le taquet à 42K/s par
seconde. Cela s'est avéré très efficace contre les à coups de traffic
(en clair le. Pour du ppp, il faut sans doute une marge de 15% soit donc
avec un débit de 64Kb/s = 8K/s, je mettrais le taquet à 7K/s au plus
haut (voire 6,5K/s). Tu y perds mais tu auras un ping stable en toute
circonstances.

François Boisson

PS: J'ai fait en son temps un script assez général
http://boisson.homeip.net/limiteur et un autre avec 2 tranches
distinctes qui peut t'intéresser http://boisson.homeip.net/limiteur2tranches


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
François Boisson
Emmanuel Doguet a écrit:
Salut à tous,

N'ayant une qu'une connectivité RNIS chez moi ( 64 Kbits symetrique ),
j'aurais voulu mettre un système de QoS afin d'avoir tjrs SSH/ICMP de
rapide meme si les emails se telechargent.

J'ai essayé plusieurs script (wondershaper, htb, etc...) qui se lance
sans erreurs, voir me donne des stats ... mais je ne ressent aucune
difference.

Ma debit est trop petit peut etre pour la QoS ?




1) L'estimation du débit est plus délicate pour une interface ppp,
j'ignore si un débit trop petit rend les choses + délicates.

2) Pour que cela soit efficace, il convient de s'assurer une marge de
sécurité d'en gros 10% à 15%. J'ai une bande passante en sortie d'en
gros 46-50K/s . J'ai prévu une marge de 10% et mis le taquet à 42K/s par
seconde. Cela s'est avéré très efficace contre les à coups de traffic
(en clair le. Pour du ppp, il faut sans doute une marge de 15% soit donc
avec un débit de 64Kb/s = 8K/s, je mettrais le taquet à 7K/s au plus
haut (voire 6,5K/s). Tu y perds mais tu auras un ping stable en toute
circonstances.

François Boisson

PS: J'ai fait en son temps un script assez général
http://boisson.homeip.net/limiteur et un autre avec 2 tranches
distinctes qui peut t'intéresser http://boisson.homeip.net/limiteur2tranches


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact