Re: [aqm] updated draft charter

"Rong Pan (ropan)" <> Fri, 12 July 2013 02:05 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 2A5BA21E8083 for <>; Thu, 11 Jul 2013 19:05:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -10.371
X-Spam-Status: No, score=-10.371 tagged_above=-999 required=5 tests=[AWL=-0.000, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8, SARE_SUB_OBFU_Q1=0.227]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id k6+OxKrq7lu4 for <>; Thu, 11 Jul 2013 19:05:19 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id 83A7021E8063 for <>; Thu, 11 Jul 2013 19:05:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=29912; q=dns/txt; s=iport; t=1373594719; x=1374804319; h=from:to:cc:subject:date:message-id:in-reply-to: mime-version; bh=AOTV2iS8bX0LJxgIwQcH8xsNGFQzwpqCpJrFKC1itwk=; b=hV6JI32UnVXEcV6NELELeXlmLcW9P95HgLtdYT8aThN9RQ1lhRvUuvTs 5TZ0kAmoFb2N2f7awwby2+Um4PsRowEEbOLydIn2qQuBpbc+T1Z5oJtZw 11hCy5fSEds4+7rjOFmP7juUIQuQZ0zXPbGre48p4V25VZXpDESW8nYup I=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos; i="4.89,649,1367971200"; d="scan'208,217"; a="230857483"
Received: from ([]) by with ESMTP; 12 Jul 2013 02:05:18 +0000
Received: from ( []) by (8.14.5/8.14.5) with ESMTP id r6C25ImT004988 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Fri, 12 Jul 2013 02:05:18 GMT
Received: from ([]) by ([]) with mapi id 14.02.0318.004; Thu, 11 Jul 2013 21:05:17 -0500
From: "Rong Pan (ropan)" <>
To: Bob Briscoe <>, Wesley Eddy <>
Thread-Topic: [aqm] updated draft charter
Thread-Index: AQHOfqL6bveF21Zpe06m41RGOs2m1JlhJSgA
Date: Fri, 12 Jul 2013 02:05:17 +0000
Message-ID: <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
user-agent: Microsoft-MacOutlook/
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_BF2CBE9A994B89438F7F3B9FD58C2B7F26D319BFxmbalnx15ciscoc_"
MIME-Version: 1.0
Cc: Gorry Fairhurst <>, "" <>, Jim Gettys <>, David Ros <>
Subject: Re: [aqm] updated draft charter
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Discussion list for active queue management and flow isolation." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 12 Jul 2013 02:05:24 -0000

From: Bob Briscoe <<>>
Date: Friday, July 12, 2013 9:56 AM
To: Wesley Eddy <<>>
Cc: Gorry Fairhurst <<>>, Jim Gettys <<>>, David Ros <<>>, "<>" <<>>
Subject: Re: [aqm] updated draft charter

1/ Name suggestion: How about just "Queue Management (QMAN)"?
Otherwise, if we coin the term smart queue mgmt, merely by proposing an SQM algorithm, every idiot gets to have everyone else call his/her algo smart.

2/ Scope: "Internet routers, lower-layer switches, other middleboxes."
Can we have host buffers in scope pls? This is the transport area, afterall.

3/ "routers, ... include buffers or queues" Buffers and queues are not members of the same set (IMO). I don't think this is a picky terminology point. Can we adopt the convention that the buffer is the fixed memory allocation (hardware or software), and the queue is the software construct within the buffer?

It already caused confusion when the problem got called bufferbloat, so people thought we were implying the solution was small buffers, so they tune out, because they rightly believe this will lead to unnecessarily high loss. Actually, on a high speed line with high in-degree, it's good practice to have a very large buffer to absorb bursts, as long as you have a adaptive queue threshold within it that rapidly clamps a tight limit on a standing queue.

Same problem in next para:
" Extremely large buffers have been noticed in some software and
  equipment.  When these queues fill, ..." ->
" Extremely large unmanaged buffers have been noticed in some software and
  equipment.  When these buffers fill, ..." ->

4/ "...proactively managing queues ..."
Picky: I think you mean reactively. Proactively maybe a bit ambitious.

5/ I suggest the enumerated bullets are changed to those below:

"The Active Queue Management and Packet Scheduling working group
  works on algorithms for proactively managing queues in
  order to:

  (1) Minimise standing queues

  (2) help flow sources control their sending rates without unnecessary
  losses, e.g. through ECN

  (3) help minimize delays for interactive applications

  (4) /consider the merits of various techniques/ to protect flows from negative impacts of other more
  aggressive or misbehaving flows


ECN: The original text was:
"(1) help flow sources control their sending rates before the
  onset of necessary losses, e.g. through ECN"
is not accepted wisdom. What's written in RFC3168 makes sense: that marking for ECN traffic has to start at exactly the same point as loss for non-ECN traffic. Otherwise ECN traffic starves itself. Certainly, under v heavy load everyone has to take losses, whether ECN or not, but I don't think that's what you're talking about here.

Protecting flows:
The question of whether/how to recommend flow isolation or not is part of chartered work - the outcome shouldn't be prejudged in the charter.

"  The AQM working group will publish Informational and Best Current
  Practices documents that cover the design, use, and configuration
  of algorithms for managing queues in Internet devices and software.
Add: The scope will include both how best to configure existing equipment / software as well as recommendations on designing new equipment / software.

7/ "  The working group will not make changes to ECN, DiffServ, or other
  IETF protocols, though existing ECN, DiffServ, and other mechanisms
  may be used within the algorithms proposed.
Add: The proper place for changes to ECN & Diffserv is TSVWG, but clearly any such changes will need to be co-ordinated with the AQM WG, given the code is likely to be entwined with AQM code.

8/  "Many AQM algorithms have been proposed in academic literature, but
  very few are widely implemented and deployed.  "

Is this trying to say very few types of AQM are deployed, or very few instances? I think it is trying to say the latter, but that just isn't true (IMO). WRED is very widely deployed in enterprise networks. And RED is implemented near-univerally by the main equipment vendors, and less widely deployed, but not insignificant.

9/ Gap in charter coverage?

"Merits of whether to isolate flows and if so how."

There are multiple functions that often get lumped under "AQM":
a) minimising a standing queue
b) desynchronising losses (/marks)
c) preventing large packet lock-out
d) detecting and policing flows with excessive rate
e) isolating flows from each other (e.g. SFQ)

a,b,c) can be done neutrally and imply no possible policy control.
d,e) depend on policy (which may or may not be hard-coded rather than configurable, e.g. all flows get equal scheduler priority).

There's been significant discussion on the list about the merits of different ways of doing flow isolation. This is the area where I think there is most latent disagreement. We have pretty good consensus already around the recommendations in Fred's doc. We will have to grasp the flow-isolation and policing nettles, so the charter ought to say we're going to.

For instance, my stance is that policy-related functions (d+e) should only be deployed at edge-policy enforcement points, not in every buffer. Altho SFQ clearly makes an associated AQM like CoDel work nicely, I preferred the direction Fred described in:
in which there's a distinguished shared queue, then anything that starts causing delay in that queue gets either isolated in its own queue or focused policing. Rather than isolating every flow into separate queues from the start, because that requires prejudging the share of the scheduler everyone gets.

We have found that with multiple real-time video streams, they all have highly variable rates, so they multiplex really well together in a FIFO. However, if you put them through FQ or WRR, they all get forced into ruts that are always the wrong size for all of them. This isn't a problem if the sum is not often close to capacity (which is why SFQ can appear to be OK with multiple videos). However, the whole point of isolation is to protect flows when the system /is/ close to capacity.

>>>>> Totally Agreeā€¦.


At 18:35 11/07/2013, Jim Gettys wrote:

On Thu, Jul 11, 2013 at 12:21 PM, David Ros <<>> wrote:

On 11 juil. 2013, at 18:06,<> wrote:

> I agreed that AQM has to some extent already been deployed in some places
> and this could be confusing to then redefine or obsolete this.


> For what it's worth I don't like "smart" queueing as a name - implying
> it's sounds like a marketing term rather than a combination of "AQM"
> mark/drop and flow scheduling.


> If SQM was short for  scheduling and queue management I may have liked the
> abbreviation more, ... let's see where this discussion ends.

Scheduling and Queue Management is fine with me...

Since we're looking for acronyms that (a) are pronounceable, (b) do not sound like a marketing gimmick, (c) match to a WG name that conveys the essence of what the WG will do, then why not simply: QMAPS? (Queue Management And Packet Scheduling).

I'm not willing to bikeshed working group names and will live with whatever people like.  I'm certainly not great at selecting names, having bound the free variable with a window system name.

Names can be important: one of the problems with the "RED" algorithm, whose initial formation was, IIRC, "Random Early Discard".  The name's connotation implied it "randomly" discarded your packets and does so sooner rather than later; not what most network operators want to hear. Kathie and Van named CoDel both because "Constant Delay" describes its intended behavior, but also because "coddling" your packets sounds warm and fuzzy, rather than nasty and random. The great unwashed fail to understand that packet drops can be good for their network's health...

I will not reply further to this thread.
                                           - Jim


> Gorry
>> On Thu, Jul 11, 2013 at 12:50 AM, Wesley Eddy <<>> wrote:
>>> I think the attached updated draft charter reflects most of the
>>> feedback that we've heard so far.
>>> Note that Dave Taht suggested we might want to go with something
>>> like "Smarter Queue Management" (SQM) for the WG name, because
>>> purely AQM as a name may not capture FQ type of mechanisms that we
>>> may want to have in-scope.  I think that scoping discussion may
>>> still be going on into Berlin, but it's a good point, and likely
>>> some other people have cute ideas for a name that could capture
>>> the potential broader scope.
>> Both Dave's and my experience as relative newcomers to this area is that
>> the term AQM is pretty tightly bound to mark/drop algorithms in the minds
>> of many people in the IETF, who also categorize other algorithms as
>> queuing
>> algorithms. and make a pretty strong mental distinction between them.
>> As my blog post this week
>> ,
>> the killer combination is a cross between rapidly autotuning
>> mark/drop algorithms with what we're calling flow queueing (since it isn't
>> "fair" in the also traditional sense of TCP fair queueing at all, and may
>> not involve TCP flows necessarily either).
>> So while I'd be happy to lump this all into the AQM name bucket
>> personally,
>> I do think that a name that makes clear we're considering algorithms that
>> may marry both lines of intellectual thought together will avoid confusion
>> among many who have worked in one area or the other, but not both.  "Smart
>> queue management" or SQM is the best we've come up with for a term.
>>                                                               - Jim
>>> --
>>> Wes Eddy
>>> MTI Systems
>>> _______________________________________________
>>> aqm mailing list
>> _______________________________________________
>> aqm mailing list
> _______________________________________________
> aqm mailing list

David ROS

I love deadlines. I like the whooshing sound they make as they fly by. -- Douglas Adams

aqm mailing list<>

aqm mailing list<>

Bob Briscoe,                                                  BT