Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: Sebastian Moeller <moeller0@gmx.de>
To: "Dave Täht" <dave.taht@gmail.com>
Cc: cake@lists.bufferbloat.net
Subject: Re: [Cake] Announce - possible new feature - DSCP cleaning
Date: Mon, 16 Nov 2015 16:33:08 +0100	[thread overview]
Message-ID: <CD9F277F-B4F8-47C3-AA93-AE12F0E95E0A@gmx.de> (raw)
In-Reply-To: <CAA93jw5myLePsqvLf=VTsC71OduF-dNz4Pq1EgOzeGkZyR8C3g@mail.gmail.com>

Hi Dave,

On Nov 16, 2015, at 16:03 , Dave Taht <dave.taht@gmail.com> wrote:

> I have not been doing any active development until... tomorrow.
> 
> A goal I have for today is to actually build a version of openwrt +
> all this stuff for the linksys ac1200.
> 
> I was not particularly huge on using another field (q->squash) to
> trigger squashing, and I cannot come up with a use case that makes
> sense to me.
> 
> Under what circumstances do you think separating these two functions
> to be useful?

	Well, if I want to use DSCP values internally on my egress interface, but do not want to leak them out to my ISP. Totally contrived example, I might want to keep bit torrent at CS1/BK internally but do not want to make it easier for the ISP to differentially restrict my bit torrent traffic (I neither use bit torrent enough nor do know whether ISPs actually still throttle). More realistically it would be nice to separate the 6 DSCP bits into two groups of 3, one for sender intent and one for current network usage, and then copy the intent bits to the local bits on egress or remap local bits to zero, but I digress.
	And similarly on ingress I might want to use DSCP markings but remap them to zero on ingress so that no internal AP does the VO/VI/BE/BK qos thing on air (there are certainly better ways to assure such behavior).

Best Regards
	Sebastian

> 
> Dave Täht
> Let's go make home routers and wifi faster! With better software!
> https://www.gofundme.com/savewifi
> 
> 
> On Mon, Nov 16, 2015 at 3:59 PM, Kevin Darbyshire-Bryant
> <kevin@darbyshire-bryant.me.uk> wrote:
>> Does anyone have any feedback on this?  Good idea/bad idea?  Good/bad
>> implementation?
>> 
>> Any reason why 'squash' branches of both sch-cake & tc-adv shouldn't be
>> merged?
>> 
>> On 10/11/15 15:00, Kevin Darbyshire-Bryant wrote:
>>> Greetings :-)
>>> 
>>> A bit of a blast from the past this one, but one Sebastian Moeller of
>>> this list fame wrote a while ago "
>>> 
>>> Just played a bit with the shiny new squash option. For my limited testing it seems to work. I do wonder whether the automatic default to besteffort is the ideal behavior though. For example on egress it would be nice to be able to use the internal set DSCP markings but clean them from the outgoing packets as not to leak “information” to the ISP, similarly but more contrived the same could be agued for ingress  "
>>> 
>>> Well Mr Moeller, today is your lucky day because I've just pushed 'squash' branches to both cake & tc-adv that separate the 'DSCP squashing' behaviour from diffserv behaviour.  Specifying 'squash' sets diffserv mode to 'besteffort' (ie 1 tin only) and squashes DSCP as before, however if you specify something like 'diffserv4 squash' then DSCP codings are noted at qdisc enqueue so tins/bandwidths are used as marked, then the DSCP marking is squashed so on dequeue DSCP has been removed.
>>> 
>>> The active bit of the change is (diff):
>>> 
>>>        /* extract the Diffserv Precedence field, if it exists */
>>> -       if (q->tin_mode != CAKE_MODE_SQUASH) {
>>> +       if (q->tin_mode != CAKE_MODE_BESTEFFORT) {
>>>                tin = q->tin_index[cake_get_diffserv(skb)];
>>>                if (unlikely(tin >= q->tin_cnt))
>>>                        tin = 0;
>>>        } else {
>>> -               cake_squash_diffserv(skb);
>>>                tin = 0;
>>>        }
>>> 
>>> +       /* now clear DSCP bits if squashing */
>>> +       if (q->squash)
>>> +               cake_squash_diffserv(skb);
>>> 
>>> 
>>> https://github.com/dtaht/sch_cake/tree/squash  &  https://github.com/dtaht/tc-adv/tree/squash
>>> 
>>> Needs testing (I've not managed to break it yet) and *thought before merging*
>>> 
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> 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
>> 
> _______________________________________________
> Cake mailing list
> Cake@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/cake


  parent reply	other threads:[~2015-11-16 15:33 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-10 15:00 Kevin Darbyshire-Bryant
2015-11-16 14:59 ` Kevin Darbyshire-Bryant
2015-11-16 15:03   ` Dave Taht
2015-11-16 15:20     ` Kevin Darbyshire-Bryant
2015-11-16 15:57       ` Dave Taht
2015-11-16 16:25         ` Kevin Darbyshire-Bryant
2015-11-16 17:47         ` Kevin Darbyshire-Bryant
2015-11-16 17:59           ` Dave Taht
2015-11-16 18:11             ` Kevin Darbyshire-Bryant
2015-11-16 18:25               ` Dave Taht
2015-11-16 18:32                 ` Sebastian Moeller
2015-11-16 18:35                   ` Dave Taht
2015-11-16 18:43                     ` Kevin Darbyshire-Bryant
2015-11-16 18:47                       ` Dave Taht
2015-11-16 20:09                         ` Kevin Darbyshire-Bryant
2015-11-17 10:12                           ` Dave Taht
2015-11-17 18:52                             ` Kevin Darbyshire-Bryant
2015-11-16 15:33     ` Sebastian Moeller [this message]
2015-11-17 19:05 Dave Taht
2015-11-18 11:17 ` Kevin Darbyshire-Bryant
2015-11-18 11:57   ` Toke Høiland-Jørgensen
2015-11-18 18:56     ` Kevin Darbyshire-Bryant

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.bufferbloat.net/postorius/lists/cake.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CD9F277F-B4F8-47C3-AA93-AE12F0E95E0A@gmx.de \
    --to=moeller0@gmx.de \
    --cc=cake@lists.bufferbloat.net \
    --cc=dave.taht@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox