[Netem] Unable to prevent re-order when using variable delay.

James, David W (David) dwjames at avaya.com
Mon Aug 31 16:02:14 PDT 2009


For my application I need to provide variable delay, without reordering.

Netem worked fine until the enhancement allowing reorder of packets based on variable delay.
https://lists.linux-foundation.org/pipermail/netem/2005-November/000865.html

After the enhancement was put in to allow re-ordering (tfifo qdisc) I modified my system to changed the internal qdisc  for netem from tfifo to pfifo. (http://www.linuxfoundation.org/en/Net:Netem#How_to_reorder_packets_based_on_jitter.3F)

However, when I upgraded to the Fedora 11 distribution ( kernel 2.6.29.5-191.fc11.i686.PAE, iproute: 2.6.29-2.fc11.i586) I was no longer able to add the pfifo qdisc.

My test script:
/sbin/tc qdisc del dev eth2 root 2>&1
/sbin/tc qdisc add dev eth2 root handle 1: prio 2>&1
/sbin/tc qdisc add dev eth2 parent 1:3 handle 30: netem delay 1ms 2>&1
/sbin/tc qdisc add dev eth2 handle 40: parent 30:1 pfifo limit 16000 2>&1
/sbin/tc qdisc show dev eth2 2>&

reports:
RTNETLINK answers: Invalid argument
qdisc prio 1: root bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
qdisc netem 30: parent 1:3 limit 1000 delay 999u


After working with the folks at redhat [Bug 515522], I discover that netem has been changed in a way that it appears pfifo will not be supported. 
"sch_netem: Remove classful functionality" http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02201464119334690fe209849843881b8e9cfa9f

Has anyone else experienced this issue?
Perhaps there is a different way to set netem up to provide variable delay, without reorder; any suggestions are welcome.

David
David W. James | Solution Verification - Automation Team | Avaya | 1300 W. 120th Ave. | B2-B42  | Westminster, CO 80234 | Voice/Fax (303) 538 3986 | dwjames at avaya.com | 


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.linux-foundation.org/pipermail/netem/attachments/20090831/9d5ac70c/attachment.htm 


More information about the Netem mailing list