Thread (22 messages) 22 messages, 6 authors, 2011-12-30

Re: netem and hierarchical ingress traffic shaping

From: Eric Dumazet <hidden>
Date: 2011-12-23 17:39:14

Le vendredi 23 décembre 2011 à 18:33 +0100, Eric Dumazet a écrit :
Le dimanche 18 décembre 2011 à 11:55 -0800, Stephen Hemminger a écrit :
quoted
On Sun, 18 Dec 2011 00:12:12 -0500
"John A. Sullivan III" [off-list ref] wrote:
quoted
Since netem appears to be classless, we realized we would need to
replace the SFQ on each leaf with netem which we really didn't want to
do - not only to not lose SFQ but because we didn't want to maintain the
netem parameters on each leaf.  So, we activated our ifb1 interface,
placed netem on it and redirected all the egress traffic to ifb1.  Taht
worked fine.
Current versions of netem can take one class.
--
Hmm, I can see that (commit 10f6dfcfde884441) 

But it wont work very well, it assumes qdisc uses a single queue if
netem reordering is requested :

(__skb_queue_head(&q->qdisc->q, skb))

We should allow reordering if netem queue is changed from tfifo, only if
new qdisc is compatible with __skb_queue_head(&q->qdisc->q, skb)

(maybe providing a new ->queue_at_head() new ops)
Also, child qdisc must not scratch skb->cb[], since netem stores
time_to_send in it.

I guess nobody actually tried this netem mis-feature :(

I'll send a fix.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help