Aller au contenu

qos sous linux ??? ça a l'air puissant


Dark26

Messages recommandés

Je suis pas super bon à ce sujet mais vérifie deja si ton noyaux supporte ce genre de chose tu as des options spécifique au niveau reseaux pour la QOS souvent desactivé

si il faut recompiler le noyau, c'est pas très grave :yes: ...

maisbon l'histoire de marquer le paquets et autre technique batarde.... :mad2:

Lien vers le commentaire
Partager sur d’autres sites

j'ai patche le kernel install la version instable de iproute

et mis ce script .....

maintenant comment savoir si ça marche ???

#!/bin/sh

tc qdisc add dev ppp0 root handle 1: htb default 20

tc class add dev ppp0 parent 1: classid 1:1 htb rate 56kbps burst 15k

tc class add dev ppp0 parent 1:1 classid 1:10 htb rate 1kbps ceil 56kbps burst 1

5k

tc class add dev ppp0 parent 1:1 classid 1:20 htb rate 55kbps ceil 56kbps burst

15k

tc qdisc add dev ppp0 parent 1:10 handle 10: sfq perturb 10

tc qdisc add dev ppp0 parent 1:20 handle 20: sfq perturb 10

U32="tc filter add dev ppp0 protocol ip parent 1:0 prio 1 u32"

$U32 match ip dport 6666 0xffff flowid 1:10

$U32 match ip sport 6666 0xffff flowid 1:10

Lien vers le commentaire
Partager sur d’autres sites

  • 7 mois après...

je fais un up, car avec le script wshaper, i semblerait qu'il ne fasse pas ce qu'on lui demande :pleure:

vous utiliser quoi ???? ( besoin d'avoir un bon ping )...

Mon problème étant le suivant

ping www.pcinpact.com

PING www.pcinpact.com (213.186.41.46) 56(84) bytes of data.

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=1 ttl=58 time=96.6 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=3 ttl=58 time=208 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=4 ttl=58 time=192 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=8 ttl=58 time=292 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=9 ttl=58 time=222 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=11 ttl=58 time=68.1 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=12 ttl=58 time=69.6 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=13 ttl=58 time=81.8 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=14 ttl=58 time=195 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=15 ttl=58 time=144 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=16 ttl=58 time=212 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=17 ttl=58 time=220 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=18 ttl=58 time=157 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=19 ttl=58 time=259 ms

64 bytes from www.pcinpact.com (213.186.41.46): icmp_seq=22 ttl=58 time=74.7 ms

--- www.pcinpact.com ping statistics ---

22 packets transmitted, 15 received, 31% packet loss, time 21024ms

rtt min/avg/max/mdev = 68.197/166.526/292.399/71.219 ms

sur cet exemple, mon upload ( connexion 512 /128 adsl ) sature ( 17 kbs :-D )

malheureusement mon ping subit les conséquence avec une moyenne de 166 ms sur in pact, alors que si l'upload est à zero, alors normalment je suis à 70 ms , le ping a donc doublé ....

j'utilise ce script

#!/bin/bash

# Wonder Shaper

# please read the README before filling out these values

#

# Set the following values to somewhat less than your actual download

# and uplink speed. In kilobits. Also set the device that is to be shaped.

DOWNLINK=500

#UPLINK=90

UPLINK=166

DEV=ppp0

# low priority OUTGOING traffic - you can leave this blank if you want

# low priority source netmasks

NOPRIOHOSTSRC=

# low priority destination netmasks

NOPRIOHOSTDST=

# low priority source ports

NOPRIOPORTSRC=6666

# low priority destination ports

NOPRIOPORTDST=6666

# Now remove the following two lines :-)

#echo Please read the documentation in 'README' first

#exit

if [ "$1" = "status" ]

then

        tc -s qdisc ls dev $DEV

        tc -s class ls dev $DEV

        exit

fi

# clean existing down- and uplink qdiscs, hide errors

tc qdisc del dev $DEV root    2> /dev/null > /dev/null

tc qdisc del dev $DEV ingress 2> /dev/null > /dev/null

if [ "$1" = "stop" ]

then

        exit

fi

###### uplink

# install root HTB, point default traffic to 1:20:

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

# shape everything at $UPLINK speed - this prevents huge queues in your

# DSL modem which destroy latency:

tc class add dev $DEV parent 1: classid 1:1 htb rate ${UPLINK}kbit burst 6k

# high prio class 1:10:

tc class add dev $DEV parent 1:1 classid 1:10 htb rate ${UPLINK}kbit \

  burst 6k prio 1

# bulk & default class 1:20 - gets slightly less traffic,

# and a lower priority:

tc class add dev $DEV parent 1:1 classid 1:20 htb rate $[9*$UPLINK/10]kbit \

  burst 6k prio 2

tc class add dev $DEV parent 1:1 classid 1:30 htb rate $[8*$UPLINK/10]kbit \

  burst 6k prio 2

# all get Stochastic Fairness:

tc qdisc add dev $DEV parent 1:10 handle 10: sfq perturb 10

tc qdisc add dev $DEV parent 1:20 handle 20: sfq perturb 10

tc qdisc add dev $DEV parent 1:30 handle 30: sfq perturb 10

# TOS Minimum Delay (ssh, NOT scp) in 1:10:

tc filter add dev $DEV parent 1:0 protocol ip prio 10 u32 \

      match ip tos 0x10 0xff  flowid 1:10

# ICMP (ip protocol 1) in the interactive class 1:10 so we

# can do measurements & impress our friends:

tc filter add dev $DEV parent 1:0 protocol ip prio 10 u32 \

        match ip protocol 1 0xff flowid 1:10

# To speed up downloads while an upload is going on, put ACK packets in

# the interactive class:

tc filter add dev $DEV parent 1: protocol ip prio 10 u32 \

  match ip protocol 6 0xff \

  match u8 0x05 0x0f at 0 \

  match u16 0x0000 0xffc0 at 2 \

  match u8 0x10 0xff at 33 \

  flowid 1:10

# rest is 'non-interactive' ie 'bulk' and ends up in 1:20

# some traffic however suffers a worse fate

for a in $NOPRIOPORTDST

do

        tc filter add dev $DEV parent 1: protocol ip prio 14 u32 \

          match ip dport $a 0xffff flowid 1:30

done

for a in $NOPRIOPORTSRC

do

        tc filter add dev $DEV parent 1: protocol ip prio 15 u32 \

          match ip sport $a 0xffff flowid 1:30

done

for a in $NOPRIOHOSTSRC

do

        tc filter add dev $DEV parent 1: protocol ip prio 16 u32 \

          match ip src $a flowid 1:30

done

for a in $NOPRIOHOSTDST

do

        tc filter add dev $DEV parent 1: protocol ip prio 17 u32 \

          match ip dst $a flowid 1:30

done

# rest is 'non-interactive' ie 'bulk' and ends up in 1:20

tc filter add dev $DEV parent 1: protocol ip prio 18 u32 \

  match ip dst 0.0.0.0/0 flowid 1:20

########## downlink #############

# slow downloads down to somewhat less than the real speed  to prevent

# queuing at our ISP. Tune to see how high you can set it.

# ISPs tend to have *huge* queues to make sure big downloads are fast

#

# attach ingress policer:

tc qdisc add dev $DEV handle ffff: ingress

# filter *everything* to it (0.0.0.0/0), drop everything that's

# coming in too fast:

tc filter add dev $DEV parent ffff: protocol ip prio 50 u32 match ip src \

  0.0.0.0/0 police rate ${DOWNLINK}kbit burst 10k drop flowid :1

et malheureusement ça ne chnage rien :kill:

vous avez une solution miracle ???? :craint:

Lien vers le commentaire
Partager sur d’autres sites

Regarde ton utilisation cpu, je sais que dans l'industrie il existe des algo de QoS assez complexes et que la charge cpu est parfois très importante. Par contre c'est vrai que pour un adsl 512/128 ton serveur devrait suffir (je suppose que c'est sur le serveur, très belle machine au passage :incline:). Il n'est donc pas exclu qu'il existe des optimisations à apporter à ton script où à la configuration mais là ce n'est pas de mon niveau.

Lien vers le commentaire
Partager sur d’autres sites

Regarde ton utilisation cpu, je sais que dans l'industrie il existe des algo de QoS assez complexes et que la charge cpu est parfois très importante. Par contre c'est vrai que pour un adsl 512/128 ton serveur devrait suffir (je suppose que c'est sur le serveur, très belle machine au passage :chinois:). Il n'est donc pas exclu qu'il existe des optimisations à apporter à ton script où à la configuration mais là ce n'est pas de mon niveau.

j'ai toujours pas réussi... mais bon ça pose problème si vraiment 100 % d ela bande passante avec apache

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...