[LARTC] HFSC
Lawrence MacIntyre
lpz@ornl.gov
Wed, 12 May 2004 12:36:28 -0400
Hi:
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@ornl.gov
Oak Ridge National Laboratory
High Performance Information Infrastructure Technology Group