Re: netem and hierarchical ingress traffic shaping
From: Stephen Hemminger <hidden>
Date: 2011-12-23 19:07:52
On Fri, 23 Dec 2011 19:28:27 +0100 Eric Dumazet [off-list ref] wrote:
Le vendredi 23 décembre 2011 à 18:54 +0100, Dave Taht a écrit :quoted
Are there any place where all 48 bytes of cb are used?Yes, but on in qdisc layer. struct tcp_skb_cb is known to be 44 bytes (when IPv6 is enabled) In qdisc layer, we use a small part of it, for the moment.quoted
I wouldn't mind if 'time_to_send' became a separate skb field for a more generic 'time_in_queue'...This wont happen. As I posted in an earlier patch, this can be added in "struct qdisc_skb_cb"
skb_cb is the dumping ground of the networking layer. The assumption was that the qdisc could use the skb_cb for it's own scratchpad. Netem is using it for tagging packets in the queue. So basically, netem, choke, and sfb are incompatible with each other. This is not that bad, why not add a flag to qdisc ops to indicate which qdisc are using cb and block user from trying to do something bogus.