[aqm] Questioning the goal of a hard delay target

Bob Briscoe <ietf@bobbriscoe.net> Fri, 03 July 2015 12:20 UTC

Return-Path: <ietf@bobbriscoe.net>
X-Original-To: aqm@ietfa.amsl.com
Delivered-To: aqm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6B2D41B2EAA for <aqm@ietfa.amsl.com>; Fri, 3 Jul 2015 05:20:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.799
X-Spam-Level:
X-Spam-Status: No, score=0.799 tagged_above=-999 required=5 tests=[BAYES_50=0.8, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id F3TkN7t-_WcQ for <aqm@ietfa.amsl.com>; Fri, 3 Jul 2015 05:20:31 -0700 (PDT)
Received: from server.dnsblock1.com (server.dnsblock1.com [85.13.236.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DAEE01B2EA8 for <aqm@ietf.org>; Fri, 3 Jul 2015 05:20:27 -0700 (PDT)
Received: from 140.186.199.146.dyn.plus.net ([146.199.186.140]:53104 helo=[192.168.0.3]) by server.dnsblock1.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.85) (envelope-from <ietf@bobbriscoe.net>) id 1ZAzxB-0004KJ-22; Fri, 03 Jul 2015 13:20:25 +0100
Message-ID: <55967E08.8040907@bobbriscoe.net>
Date: Fri, 03 Jul 2015 13:20:24 +0100
From: Bob Briscoe <ietf@bobbriscoe.net>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: "Eddy, Wesley M. (GRC-RCN0)[VZ]" <Wesley.M.Eddy@nasa.gov>, "Scheffenegger, Richard" <rs@netapp.com>, AQM IETF list <aqm@ietf.org>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server.dnsblock1.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - bobbriscoe.net
X-Get-Message-Sender-Via: server.dnsblock1.com: authenticated_id: in@bobbriscoe.net
Archived-At: <http://mailarchive.ietf.org/arch/msg/aqm/WUNj3reUIugv9Kpf3Ox6DSuQ1UI>
Cc: "De Schepper, Koen (Koen)" <koen.de_schepper@alcatel-lucent.com>
Subject: [aqm] Questioning the goal of a hard delay target
X-BeenThere: aqm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discussion list for active queue management and flow isolation." <aqm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/aqm>, <mailto:aqm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/aqm/>
List-Post: <mailto:aqm@ietf.org>
List-Help: <mailto:aqm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/aqm>, <mailto:aqm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 03 Jul 2015 12:20:33 -0000

AQM chairs and list,

1) Delay-loss tradeoff

We (Koen de Schepper and I) have designed an AQM aimed at removing the 
need for low delay QoS classes, initially as a cost/complexity reduction 
exercise for broadband remote access servers (BRASs). One of the 
requirements given to us was:
* As background load increases, delay-sensitive apps previously given 
priority QoS treatment (e.g. voice, conversational video) should 
continue to get the same QoS as they got with Diffserv.

We found that AQMs with a hard delay threshold (PIE, CoDel) have to 
drive up loss really high in order to maintain the hard cap on delay. 
The levels of loss start to cause QoS problems for voice, even tho delay 
is fine. Indeed, we found that the high levels of loss become the 
dominant cause of delay for Web traffic, due to tail losses and timeouts.

Everyone has been focusing on delay, but we've not been noticing 
consequent really bad loss levels at high load.

Once you know where to look, the problem is easy to grasp: As load 
increases, the bottleneck link has to get each TCP flow to go slower to 
use a smaller share of the link. The network can increase either drop or 
RTT. If it holds queuing delay (and therefore RTT) constant (as PIE and 
CoDel do), it has to increase drop more.

We found that by softening the delay threshold a little, at high load we 
don't need crazy loss levels to keep delay within bounds.
BTW, the implementation needs fewer operations per packet than RED, PIE 
or CoDel.

Conversely, at low load, a hard queuing delay threshold also means that 
delay will be /higher/ than it needs to be.

I've written up a brief (4pp) tech report quantifying the problem 
analytically.
<http://www.bobbriscoe.net/projects/latency/credi_tr.pdf>

Koen and colleagues have since done thousands of experiments on their 
broadband testbed with real equipment. It's looking good, even before 
we've explored varying what we call the 'curviness' parameter (which 
varies how hard the target it). We have a paper under submission with 
all the results, which we'll post as soon as it's not sub judice.


2) Does Flow Aggregation Increase or Decrease the Queue?

Something else had been bugging me about how queue lengths vary with 
load: The above argument explains how more TCP flows /increase/ the 
queue. But queues are meant to get /smaller/ at higher levels of 
aggregation.

The second half of the above tech report explains why there's no 
paradox. And it goes on to explain when you have to configure an AQM 
with different parameters for higher link capacity, and when you don't. 
It gives the formula for how to set the config too.

Writing this all down cleared up a lot of nagging doubts I had in my 
mind. I hope it helps others too.



Bob

PS. Note my new interim email @.



>
>
> -- 
> ________________________________________________________________
> Bob Briscoe                               http://bobbriscoe.net/