Qos, HFSC and VoIP

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello, 
I'm using Linux kernel 2.6.x and tc (from iproute2 package).
I'm trying to use HTB or HFSC scheduler in order to limite the rate of outgoing packets and also in order to minimiez delay for RTP stream.
But I didn't suceed in having this 2 QoS services working.

I use Iptables in order to classify packets. Here is my HFSC  conf.
In fact the pings that i send from this box should be the most highly priorised packet, but there are delayed when i add load on the link (with a scp  upload).
What is strange is that the delay of thoses ping is not constant:
Does someone have an idea about this issue?

Thx for any help
romary

64 bytes from 10.10.0.10: icmp_seq=1 ttl=63 time=10.4 ms
64 bytes from 10.10.0.10: icmp_seq=2 ttl=63 time=52.8 ms
64 bytes from 10.10.0.10: icmp_seq=3 ttl=63 time=40.4 ms
64 bytes from 10.10.0.10: icmp_seq=4 ttl=63 time=90.1 ms
64 bytes from 10.10.0.10: icmp_seq=5 ttl=63 time=77.6 ms
64 bytes from 10.10.0.10: icmp_seq=6 ttl=63 time=127 ms
64 bytes from 10.10.0.10: icmp_seq=7 ttl=63 time=177 ms
64 bytes from 10.10.0.10: icmp_seq=8 ttl=63 time=227 ms
64 bytes from 10.10.0.10: icmp_seq=9 ttl=63 time=277 ms
64 bytes from 10.10.0.10: icmp_seq=10 ttl=63 time=326 ms
64 bytes from 10.10.0.10: icmp_seq=11 ttl=63 time=11.5 ms<<===================="time hole"
64 bytes from 10.10.0.10: icmp_seq=12 ttl=63 time=11.0 ms
64 bytes from 10.10.0.10: icmp_seq=13 ttl=63 time=43.6 ms
64 bytes from 10.10.0.10: icmp_seq=14 ttl=63 time=93.7 ms
64 bytes from 10.10.0.10: icmp_seq=15 ttl=63 time=142 ms
64 bytes from 10.10.0.10: icmp_seq=16 ttl=63 time=136 ms
64 bytes from 10.10.0.10: icmp_seq=17 ttl=63 time=206 ms
64 bytes from 10.10.0.10: icmp_seq=18 ttl=63 time=199 ms
64 bytes from 10.10.0.10: icmp_seq=19 ttl=63 time=243 ms
64 bytes from 10.10.0.10: icmp_seq=20 ttl=63 time=293 ms
64 bytes from 10.10.0.10: icmp_seq=21 ttl=63 time=343 ms
64 bytes from 10.10.0.10: icmp_seq=22 ttl=63 time=22.5 ms
64 bytes from 10.10.0.10: icmp_seq=23 ttl=63 time=11.1 ms <<===================="time hole"
64 bytes from 10.10.0.10: icmp_seq=24 ttl=63 time=10.5 ms
64 bytes from 10.10.0.10: icmp_seq=25 ttl=63 time=48.4 ms
64 bytes from 10.10.0.10: icmp_seq=26 ttl=63 time=98.8 ms
64 bytes from 10.10.0.10: icmp_seq=27 ttl=63 time=147 ms
64 bytes from 10.10.0.10: icmp_seq=28 ttl=63 time=196 ms
64 bytes from 10.10.0.10: icmp_seq=29 ttl=63 time=246 ms
64 bytes from 10.10.0.10: icmp_seq=30 ttl=63 time=234 ms
64 bytes from 10.10.0.10: icmp_seq=31 ttl=63 time=284 ms
64 bytes from 10.10.0.10: icmp_seq=32 ttl=63 time=334 ms
64 bytes from 10.10.0.10: icmp_seq=33 ttl=63 time=13.4 ms<<===================="time hole"
64 bytes from 10.10.0.10: icmp_seq=34 ttl=63 time=10.1 ms
64 bytes from 10.10.0.10: icmp_seq=35 ttl=63 time=50.6 ms
64 bytes from 10.10.0.10: icmp_seq=36 ttl=63 time=100 ms



=>tc -s -d qdisc show dev $MYDEV
>qdisc hfsc 1: default 7 
> Sent 179610 bytes 2299 pkts (dropped 0, overlimits 967)
>qdisc sfq 15:
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
>qdisc sfq 16:
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
>qdisc sfq 17:
> Sent 1857 bytes 24 pkts (dropped 0, overlimits 0)


=>tc -s -d class show dev $MYDEV
>class hfsc 1: root
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
> period 0 level 2
>
>class hfsc 1:10 parent 1: sc m1 0bit d 0us m2 243208bit ul m1 0bit d 0us m2 243208bit
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
> period 26 work 179610 bytes level 1
>
>class hfsc 1:1 parent 1:10 rt m1 0bit d 0us m2 2000bit
> Sent 173952 bytes 2232 pkts (dropped 0, overlimits 0)
> period 0 work 173952 bytes rtwork 173952 bytes level 0
>
>class hfsc 1:2 parent 1:10 rt m1 0bit d 0us m2 229136bit
> Sent 3649 bytes 41 pkts (dropped 0, overlimits 0)
> period 0 work 3649 bytes rtwork 3649 bytes level 0
>
>class hfsc 1:3 parent 1:10 ls m1 0bit d 0us m2 2408bit ul m1 0bit d 0us m2 192960bit
> Sent 152 bytes 2 pkts (dropped 0, overlimits 0)
> period 2 work 152 bytes level 0
>
>class hfsc 1:4 parent 1:10 ls m1 0bit d 0us m2 2408bit ul m1 0bit d 0us m2 192960bit
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
> period 0 level 0
>
>class hfsc 1:5 parent 1:10 leaf 15: ls m1 0bit d 0us m2 2408bit ul m1 0bit d 0us m2 192960bit
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
> period 0 level 0
>
>class hfsc 1:6 parent 1:10 leaf 16: ls m1 0bit d 0us m2 2408bit ul m1 0bit d 0us m2 192960bit
> Sent 0 bytes 0 pkts (dropped 0, overlimits 0)
> period 0 level 0
>
>class hfsc 1:7 parent 1:10 leaf 17: ls m1 0bit d 0us m2 2408bit ul m1 0bit d 0us m2 192960bit
> Sent 1857 bytes 24 pkts (dropped 0, overlimits 0)
> period 24 work 1857 bytes level 0
>



=>iptables -v -t mangle -L POSTROUTING
>1    35627   15M CLASSIFY   all  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           CLASSIFY set 1:7
>2        0     0 CLASSIFY   tcp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           multiport dports 25,110,143,993 CLASSIFY set 1:6
>3        0     0 CLASSIFY   tcp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           multiport dports 80,443 CLASSIFY set 1:5
>4      233 14266 CLASSIFY   tcp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           tcp dpt:22 length 0:400 CLASSIFY set 1:4
>5     2717  228K CLASSIFY   icmp --  *      ppp0    0.0.0.0/0            0.0.0.0/0           CLASSIFY set 1:3
>6        2   152 CLASSIFY   udp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           multiport dports 123,53 CLASSIFY set 1:3
>7        0     0 CLASSIFY   tcp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           multiport dports 123,53 CLASSIFY set 1:3
>8    19261 1160K CLASSIFY   udp  --  *      ppp0    0.0.0.0/0            10.25.0.201         CLASSIFY set 1:2
>9      256 22364 CLASSIFY   udp  --  *      ppp0    0.0.0.0/0            10.22.0.200         CLASSIFY set 1:2
>10    2717  228K CLASSIFY   icmp --  *      ppp0    0.0.0.0/0            10.10.0.10          CLASSIFY set 1:1
>11       0     0 CLASSIFY   icmp --  *      ppp0    0.0.0.0/0            10.10.0.5           CLASSIFY set 1:1
>12    4200  302K CLASSIFY   udp  --  *      ppp0    0.0.0.0/0            0.0.0.0/0           udp dpt:520 CLASSIFY set 1:1
_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux