Cake - FQ_codel the next generation
 help / color / mirror / Atom feed
From: "Toke Høiland-Jørgensen" <toke@redhat.com>
To: Jonathan Morton <chromatix99@gmail.com>,
	Avakash bhat <avakash261@gmail.com>
Cc: cake@lists.bufferbloat.net,
	"Mohit P. Tahiliani" <tahiliani@nitk.edu.in>,
	Vybhav Pai <vybhavpai1999.vp@gmail.com>,
	Deepak K <deepakkavoor99@gmail.com>,
	Shrinidhi Varna <shrinidhivarna.171co145@nitk.edu.in>
Subject: Re: [Cake] Query on ACK
Date: Wed, 06 May 2020 21:13:15 +0200	[thread overview]
Message-ID: <87wo5okhbo.fsf@toke.dk> (raw)
In-Reply-To: <C24C4CCB-C30D-452A-9386-5AA533F11CEE@gmail.com>

Jonathan Morton <chromatix99@gmail.com> writes:

>> On 6 May, 2020, at 9:43 pm, Avakash bhat <avakash261@gmail.com> wrote:
>> 
>> We are trying to implement the ACK filtering module of CAKE in ns-3 (Network Simulator).
>
> Ah yes.  Sorry I didn't respond to the introduction earlier - we were right in the middle of preparing for an IETF virtual meeting.  The debris is still falling from orbit…
>
>> We had a question on the working of ack filtering. 
>> If an incoming ack which can replace an eligible ack in the queue is about to be enqueued, do we replace the ack in the queue with the incoming ack 
>> or do we enqueue the ack to the tail of the queue and remove the eligible ack from the queue?
>
> That sounds like an implementation detail. But what we do in Cake is
> to simply enqueue all the packets, and deal with everything
> complicated on dequeue.

The ACK filter is run on enqueue, actually :)

> At that point, we check whether the two packets at the head of the
> queue are acks for the same flow, and if so, we further check whether
> the information in the first packet is redundant given the presence of
> the second packet. If there is information in the first packet that is
> not also provided by the second packet, the first packet is delivered.
> Otherwise the first packet is dropped, and the second packet moves to
> the head of the queue. This process may repeat several times if there
> are several consecutive, redundant acks in the queue.
>
> The important part is the set of rules determining whether the ack is
> redundant.

Yes, indeed. Please feel free to go through cake_ack_filter() in
sch_cake.c and make sure you get all those edge cases in your
eligibility check...

-Toke


  reply	other threads:[~2020-05-06 19:13 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-06 18:43 Avakash bhat
2020-05-06 19:01 ` Jonathan Morton
2020-05-06 19:13   ` Toke Høiland-Jørgensen [this message]
2020-05-07  6:44     ` Avakash bhat
2020-05-07  6:59       ` Jonathan Morton
2020-05-07  7:07       ` Sebastian Moeller
2020-05-08  6:36         ` Avakash bhat
2020-05-08  6:50           ` Dave Taht
2020-05-08  7:41             ` Sebastian Moeller
2020-05-08 15:08             ` Toke Høiland-Jørgensen
2020-05-08 15:11               ` Dave Taht
2020-05-08 15:20                 ` Jonathan Morton
2020-05-08 15:40                   ` Dave Taht
2020-05-25  5:17                     ` Avakash bhat
2020-05-25  9:42                       ` Jonathan Morton
2020-05-25 11:58                         ` Toke Høiland-Jørgensen
2020-06-14 12:43                           ` Avakash bhat
2020-06-14 14:43                             ` Jonathan Morton
2020-06-16  5:22                               ` Avakash bhat
2020-06-16  5:31                                 ` Dave Taht
2020-06-16  5:32                                   ` Dave Taht
2020-05-08 17:43             ` [Cake] Curious regarding Cake sensitivity to hardware queue depth David P. Reed
2020-05-08  8:23         ` [Cake] Query on ACK Sebastian Moeller
2020-05-06 19:08 ` Toke Høiland-Jørgensen

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=87wo5okhbo.fsf@toke.dk \
    --to=toke@redhat.com \
    --cc=avakash261@gmail.com \
    --cc=cake@lists.bufferbloat.net \
    --cc=chromatix99@gmail.com \
    --cc=deepakkavoor99@gmail.com \
    --cc=shrinidhivarna.171co145@nitk.edu.in \
    --cc=tahiliani@nitk.edu.in \
    --cc=vybhavpai1999.vp@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