CoDel AQM discussions
 help / color / mirror / Atom feed
From: Jonathan Morton <chromatix99@gmail.com>
To: Richard Scheffenegger <rscheff@gmx.at>
Cc: "<codel@lists.bufferbloat.net>" <codel@lists.bufferbloat.net>
Subject: Re: [Codel] CoDel and Phantom Queues?
Date: Fri, 18 May 2012 19:28:03 +0300	[thread overview]
Message-ID: <B680C657-05EE-45A8-BD72-2842C5C485FB@gmail.com> (raw)
In-Reply-To: <9C19270966BA4B0F8011BF990D7BAD5E@srichardlxp2>

Given that one of the more subtle features in the codel algorithm is specifically to achieve 100% utilisation instead of 95-98%, by keeping the queue populated with one full-size packet without penalty...

I would characterise PQ as being a workaround rather than a true solution. One disadvantage is that it requires a good estimate of the underlying link capacity, which might be easy to come by in a wired switched environment but is far more difficult to arrange for wireless (which behaves more like bus or hub Ethernet, only worse). 

By contrast what codel requires is a first-order estimate of the typical RTT, which can be more than an order of magnitude wrong without significantly reducing performance. So we say 100ms for general purpose because it is close to reality for the Internet and it still works okay for most LAN traffic. 

The key to knowledge is not to rely on others to teach you it. 

On 18 May 2012, at 19:03, "Richard Scheffenegger" <rscheff@gmx.at> wrote:

> Hi,
> 
> I assume some of the members of this list, working with AQM schemes are also familiar with the work at Stanford around DCTCP.
> 
> In a recent paper of Balaji Prabakhan (DCTCP/ QCN), Phantom Queues are mentioned as another means to significantly reduce (real queue) occupancy. I think the concept (as virtual queues) stems from ATM times.However, phantom queues are only a logical (accounting) entitiy, and unlike VQs they are set in series with the real queue, but drained at a rate (1-eps), slightly slower than the real queue (i.e. at 95-98 of the link capacity - when there is a defined link capacity).
> 
> The idea, if I can repeat it properly, is that any standing queue would form in the phantom queue first, before that standing queue would actually show on the real queue.
> 
> I was wondering if phantom queues and CoDel would work synergistically together.  Or if Phantom Queues should rather be regarded as a workaround for the (so far) poor AQM schemes proposed.
> 
> As you are probably aware, DCTCP achieves more than an order of magnitude better network delays by adjusting both the end host TCP stack (alike ECN(alpha,beta) to adjust the CWnd dynamically based on the signaled congestion / queue depth), and by utilizing a step-function marking scheme in the network, instead of a probabilistic marking scheme.
> 
> According to the latest paper, http://www.stanford.edu/~balaji/papers/nsdi12-final187.pdf, the utilization of Phantom Queues in a DCTCP environment cut the network latency once more by one order of magnitude. Effectively, all buffers run virtually empty (except for slow-start / initial window) bursts, at only a very minuscle loss of effective network capacity.
> 
> I would like to learn your thoughts around that!
> If anyone has a proper ns2 / ns3 environment (mine is currently broken) where Phantom Queues plus CoDel can be simulated, if any odd interactions arise...
> 
> Best regards, 
> _______________________________________________
> Codel mailing list
> Codel@lists.bufferbloat.net
> https://lists.bufferbloat.net/listinfo/codel

      reply	other threads:[~2012-05-18 16:27 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-18 16:03 Richard Scheffenegger
2012-05-18 16:28 ` Jonathan Morton [this message]

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/codel.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=B680C657-05EE-45A8-BD72-2842C5C485FB@gmail.com \
    --to=chromatix99@gmail.com \
    --cc=codel@lists.bufferbloat.net \
    --cc=rscheff@gmx.at \
    /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