Re: [Cake] Does the latest cake support "tc filter"?
Georgios Amanakis writes: > :) excellent work! > Now it works as expected! Great! Thanks for testing :) -Toke ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake
Re: [Cake] Does the latest cake support "tc filter"?
Georgios Amanakis writes: >> Yes, the version submitted to upstream supports this. You can override >> which tin packets goes in by setting skb->priority from a filter or >> application (the major number needs to be set to the qdisc ID, and the >> minor number becomes the tin to queue packets in). > > Toke could you give an example how to do this? > > I am trying to put all traffic into tin 0: > #tc qdisc add dev enp1s0 root handle 8001 cake diffserv3 bandwidth 2mbit > #tc filter add dev enp1s0 parent 8001: protocol all \ > u32 match u32 0 0 \ > action skbedit priority 8001:1 > > However as soon as the second command is executed all traffic drops, > and it only resumes once I remove the filter. > > What am I doing wrong? Hmm, nothing apart from using the classifiers in an unexpected (by me) way ;) Basically, what is happening is that the skbedit filter doesn't do classification. In which case Cake will cheerfully drop the packet. I just pushed a change to the upstream-4.18 branch which reworks the filter classification so it'll still hash packets if the filter doesn't make a decision, and also moves the tin selection to after the filter has run, to give priority selection a chance to work (even if the packets had not been dropped, you wouldn't have gotten the result you wanted, since the skb->priority field was checked before the filters we run...) Please see if that works better :) -Toke ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake
Re: [Cake] Does the latest cake support "tc filter"?
> Yes, the version submitted to upstream supports this. You can override > which tin packets goes in by setting skb->priority from a filter or > application (the major number needs to be set to the qdisc ID, and the > minor number becomes the tin to queue packets in). Toke could you give an example how to do this? I am trying to put all traffic into tin 0: #tc qdisc add dev enp1s0 root handle 8001 cake diffserv3 bandwidth 2mbit #tc filter add dev enp1s0 parent 8001: protocol all \ u32 match u32 0 0 \ action skbedit priority 8001:1 However as soon as the second command is executed all traffic drops, and it only resumes once I remove the filter. What am I doing wrong? Thank you, George On Thu, May 17, 2018 at 6:42 AM, Toke Høiland-Jørgensen wrote: > Fushan Wen writes: > >> Hello developers, >> I've seen the mail in the netdev mailing list, saying "other tc >> filters supported". So can I use "tc filter" to attach specified >> traffic to a specified tin without DSCP marks? It's helpful when >> dealing with ingress traffic where iptables DSCP mark won't work. > > Yes, the version submitted to upstream supports this. You can override > which tin packets goes in by setting skb->priority from a filter or > application (the major number needs to be set to the qdisc ID, and the > minor number becomes the tin to queue packets in). > > However, these changes have not been backported, so they are not > available in the cobalt branch. You can pull them from the upstream-4.18 > branch instead. That should build against a current net-next tree, and > possibly a bit older. Alternatively, you can pull the current patches > from patchwork and use those. Or wait for a backport after we're done > with the upstream submission :) > > -Toke > ___ > Cake mailing list > Cake@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/cake ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake
Re: [Cake] Does the latest cake support "tc filter"?
Fushan Wenwrites: > Hello developers, > I've seen the mail in the netdev mailing list, saying "other tc > filters supported". So can I use "tc filter" to attach specified > traffic to a specified tin without DSCP marks? It's helpful when > dealing with ingress traffic where iptables DSCP mark won't work. Yes, the version submitted to upstream supports this. You can override which tin packets goes in by setting skb->priority from a filter or application (the major number needs to be set to the qdisc ID, and the minor number becomes the tin to queue packets in). However, these changes have not been backported, so they are not available in the cobalt branch. You can pull them from the upstream-4.18 branch instead. That should build against a current net-next tree, and possibly a bit older. Alternatively, you can pull the current patches from patchwork and use those. Or wait for a backport after we're done with the upstream submission :) -Toke ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake
[Cake] Does the latest cake support "tc filter"?
Hello developers, I've seen the mail in the netdev mailing list, saying "other tc filters supported". So can I use "tc filter" to attach specified traffic to a specified tin without DSCP marks? It's helpful when dealing with ingress traffic where iptables DSCP mark won't work. Thanks in advance. ___ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake