Re: HTB does not respect the prio parameter

Linux Advanced Routing and Traffic Control

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

 



Martin Björnsson pisze:
Hi all,

I'm experimenting with HTB and the prio parameter and it does not give me results I
expect. I've created 4 HTB classes:

1:10 TCP ACKs                       (prio 0)
1:20 TCP traffic on dst port 10001  (prio 1)
1:30 TCP traffic on dst port 10000  (prio 2)
1:40 Default                        (prio 3)

ceil and rate parameters are the same for all 4 classes (rate is 1000kbit and ceil is
55000kbit).

Then I start 2 TCP flows on src/dst ports 10000 and 10001. The packets seem to be
correctly classified by the filter (I get hits on classes 10, 20 and 30).

The problem is that I get the same throughput on both TCP flows. Shouldn't I get about
1000kbit through class 30 and much more through class 20 since it has higher priority?


Here's my setup script:

#!/bin/sh
/bin/tc qdisc add dev eth0 root handle 1: htb default 40 && \
/bin/tc class add dev eth0 parent 1:0 classid 1:1 htb rate 55000kbit ceil 55000kbit
quantum 60000 && \
/bin/tc class add dev eth0 parent 1:1 classid 1:10 htb rate 1000kbit ceil 55000kbit prio 0
quantum 60000 && \
/bin/tc class add dev eth0 parent 1:1 classid 1:20 htb rate 1000kbit ceil 55000kbit prio 1
quantum 60000 && \
/bin/tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1000kbit ceil 55000kbit prio 2
quantum 60000 && \
/bin/tc class add dev eth0 parent 1:1 classid 1:40 htb rate 1000kbit ceil 55000kbit prio 3
quantum 60000 && \
/bin/tc filter add dev eth0 parent 1:0 prio 99 handle 2: protocol ip u32 divisor 256 && \
/bin/tc filter add dev eth0 parent 1:0 protocol ip prio 10 u32 \
  ht 2:0: \
  match u8 0x06 0xff at 9 \
  match u8 0x10 0xff at nexthdr+13 \
  flowid 1:10 && \
/bin/tc filter add dev eth0 parent 1:0 protocol ip prio 10 u32 \
  ht 2:0: \
  match u8 0x06 0xff at 9 \
  match u16 0x2711 0xffff at nexthdr+2 \
  flowid 1:20 && \
/bin/tc filter add dev eth0 parent 1:0 protocol ip prio 10 u32 \
  ht 2:0: \
  match u8 0x06 0xff at 9 \
  match u16 0x2710 0xffff at nexthdr+2 \
  flowid 1:30 && \
/bin/tc filter add dev eth0 parent 1:0 protocol ip prio 99 u32 ht 800:: offset at 0 mask
0x0f00 shift 6 plus 0 match u8 0x40 0xf0 at 0 link 2: && \
/bin/tc qdisc add dev eth0 parent 1:10 handle 20: red limit 1000KB min 10KB max 300KB
avpkt 1000 burst 100 probability 0.02 && \
/bin/tc qdisc add dev eth0 parent 1:20 handle 30: red limit 1000KB min 10KB max 300KB
avpkt 1000 burst 100 probability 0.02 && \
/bin/tc qdisc add dev eth0 parent 1:30 handle 40: red limit 1000KB min 10KB max 300KB
avpkt 1000 burst 100 probability 0.02 && \
/bin/tc qdisc add dev eth0 parent 1:40 handle 50: red limit 1000KB min 10KB max 300KB
avpkt 1000 burst 100 probability 0.02 && \

Regards,
Martin
_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc


As far as I know lower prio numbers (as 0) means higher priority and higher prio numbers (as 7) means lower priority.

http://luxik.cdi.cz/~devik/qos/htb/manual/userg.htm



Bartek


----------------------------------------------------------------------
Mobilne wiadomo¶ci w Twojej komórce

http://link.interia.pl/f1b71

_______________________________________________
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