is LLQ and CBWFQ implementation reliable (CBQ) ? - my results does not show that

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

 



I desperately need somebodys advice on my LLQ implementation (using CBQ). I
want to get priority queueing (is this the low letency queueing?) on linux
(as lonng as there is packet in the priority queue it is served first).

HOW should I do traffic differentitation to get WORKING priority queueing on
linux?

My tests showed that there was NO DIFFERENCE between LLQ and CBWFQ (both via
means of CBQ)

Underneath there is LLQ iproute - script (for IPv4 and IPv6 flows)

tc qdisc add dev eth1 root handle 1:0 cbq bandwidth 10mbit avpkt 1000 mpu 64

tc class add dev eth1 parent 1:0 classid 1:1 cbq bandwidth 10mbit rate 2mbit
maxburst 1 allot 1000 avpkt 1000 bounded isolated
tc class add dev eth1 parent 1:0 classid 1:2 cbq bandwidth 10mbit rate
200kbit weight 200  allot 1000 prio 1/* <-- priority queue */ maxburst 10
avpkt 1000
tc class add dev eth1 parent 1:0 classid 1:3 cbq bandwidth 10mbit rate
1.3mbit weight 1300 allot 1000 prio 2 /*  <-- */ maxburst 10 avpkt 1000

#IPv4
#tc filter add dev eth1 parent 1:0 protocol ipv4 prio 1 u32 match ip tos
0x18 0xff classid 1:2
#tc filter add dev eth1 parent 1:0 protocol ipv4 prio 3 u32 match ip tos
0x00 0xff classid 1:3

#IPv6
tc filter add dev eth1 parent 1:0 protocol ipv6 prio 2 u32 match ip6 src
2001:6a8:802:7::2 classid 1:2
tc filter add dev eth1 parent 1:0 protocol ipv6 prio 4 u32 match ip6 src
2001:6a8:802:6::2 classid 1:3

router is configured like this....                H-------R--------H
					H------/

which means there are two generators (2Mb/s and 200Kb/s) and single sink.
Router  output link is 2Mb/s.
200Kb/s flow SHOULD be prioritized (EF PHB) whereas 2Mb/s is interference
flow (BE PHB) JUST to see whether QoS works.

Underneath there is CBWFQ configuration i used:

tc qdisc add dev eth1 root handle 1:0 cbq bandwidth 10mbit avpkt 1000 mpu 64

tc class add dev eth1 parent 1:0 classid 1:1 cbq bandwidth 10mbit rate 2mbit
maxburst 1 allot 1000 avpkt 1000 bounded isolated
tc class add dev eth1 parent 1:0 classid 1:2 cbq bandwidth 10mbit rate
200kbit weight 200  allot 1000 maxburst 10 avpkt 1000
tc class add dev eth1 parent 1:0 classid 1:3 cbq bandwidth 10mbit rate
1.3mbit weight 1300 allot 1000 maxburst 10 avpkt 1000

#IPv4
#tc filter add dev eth1 parent 1:0 protocol ipv4 prio 1 u32 match ip tos
0x18 0xff classid 1:2
#tc filter add dev eth1 parent 1:0 protocol ipv4 prio 3 u32 match ip tos
0x00 0xff classid 1:3

#IPv6
tc filter add dev eth1 parent 1:0 protocol ipv6 prio 2 u32 match ip6 src
2001:6a8:802:7::2 classid 1:2
tc filter add dev eth1 parent 1:0 protocol ipv6 prio 4 u32 match ip6 src
2001:6a8:802:6::2 classid 1:3

what is wrong that I can not see service differentiation (cycles count for
packet queueing at output interfaces are the same for CBWFQ and LLQ)

Do you have any clue ?? is there sth wrong in config. files? should LLQ work
the same as PQ?
Shouldn't there BE different one way delay distribution for CBWFQ and
LLQ?????

DOES anyone knows PQ implementation for Linux that works?

regards

Adam

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux