I am using a machine with the 2.4.26 kernel, and trying to compare the performance of the HTB qdisc with the HFSC one. I have the following simple script that allows me to have a video stream on port 1234 while it limits a ttcp UDP stream so that the video stream is unimpaired.
#!/bin/bash
tc qdisc add dev eth0 root handle 1: htb default 12
tc class add dev eth0 parent 1: classid 1:1 htb rate 30mbit ceil 30mbit tc class add dev eth0 parent 1:1 classid 1:10 htb rate 20mbit ceil 30mbit tc class add dev eth0 parent 1:1 classid 1:11 htb rate 10mbit ceil 30mbit
tc qdisc add dev eth0 parent 1:10 handle 20: pfifo limit 5 tc qdisc add dev eth0 parent 1:11 handle 30: pfifo limit 5
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 1234 0xffff flowid 1:10
tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip dport 5001 0xffff flowid 1:11
Now I would like to try H-FSC. I'm not sure exactly how to go about this. I thought that creating a ul class with two ls classes inside and then putting an rt class in one of the ls classes for the video might work, but I can't seem to get it to work. For example,
#!/bin/bash
/usr/local/bin/tc qdisc add dev eth0 root handle 1: hfsc
/usr/local/bin/tc class add dev eth0 parent 1: classid 1:1 hfsc ul m1 30mbit d 0 m2 30mbit ls m1 30mbit d 0 m2 30mbit
When the second command is executed, the machine simply drops all packets going through it. I would like to try the 2.6 kernel, but my machine has an Adaptec SCSI controller that has a broken driver for the 2.6 kernel.
I don't understand why this statement causes the machine to drop all packets on the eth0 interface.
--
Lawrence MacIntyre 865.574.8696 lpz@xxxxxxxx
Oak Ridge National Laboratory
High Performance Information Infrastructure Technology Group
_______________________________________________
LARTC mailing list / LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/