[aqm] draft-ietf-aqm-pie-01: review

Bob Briscoe <bob.briscoe@bt.com> Fri, 08 May 2015 10:09 UTC

Return-Path: <bob.briscoe@bt.com>
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 CA24A1A8AC8 for <aqm@ietfa.amsl.com>; Fri, 8 May 2015 03:09:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.61
X-Spam-Level:
X-Spam-Status: No, score=-2.61 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] 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 zp4orx5Vy92d for <aqm@ietfa.amsl.com>; Fri, 8 May 2015 03:09:18 -0700 (PDT)
Received: from hubrelay-by-03.bt.com (hubrelay-by-03.bt.com [62.7.242.139]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9C25D1A8BB1 for <aqm@ietf.org>; Fri, 8 May 2015 03:09:17 -0700 (PDT)
Received: from EVMHR71-UKRD.domain1.systemhost.net (10.36.3.109) by EVMHR03-UKBR.bt.com (10.216.161.35) with Microsoft SMTP Server (TLS) id 8.3.348.2; Fri, 8 May 2015 11:09:13 +0100
Received: from EPHR02-UKIP.domain1.systemhost.net (147.149.100.81) by EVMHR71-UKRD.domain1.systemhost.net (10.36.3.109) with Microsoft SMTP Server (TLS) id 8.3.348.2; Fri, 8 May 2015 11:09:14 +0100
Received: from bagheera.jungle.bt.co.uk (132.146.168.158) by EPHR02-UKIP.domain1.systemhost.net (147.149.100.81) with Microsoft SMTP Server id 14.3.181.6; Fri, 8 May 2015 11:09:14 +0100
Received: from BTP075694.jungle.bt.co.uk ([10.111.176.32]) by bagheera.jungle.bt.co.uk (8.13.5/8.12.8) with ESMTP id t48A9ADl005953; Fri, 8 May 2015 11:09:12 +0100
Message-ID: <201505081009.t48A9ADl005953@bagheera.jungle.bt.co.uk>
X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9
Date: Fri, 08 May 2015 11:08:03 +0100
To: Richard Scheffenegger <rs@netapp.com>, "Eddy Wesley M. [VZ]" <Wesley.M.Eddy@nasa.gov>, draft-ietf-aqm-pie@tools.ietf.org
From: Bob Briscoe <bob.briscoe@bt.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="=====================_510247680==.ALT"
X-Scanned-By: MIMEDefang 2.56 on 132.146.168.158
Archived-At: <http://mailarchive.ietf.org/arch/msg/aqm/_LJ8_7-iIZlX2fn7SKRTHMDvDO0>
Cc: AQM IETF list <aqm@ietf.org>
Subject: [aqm] draft-ietf-aqm-pie-01: review
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: <http://www.ietf.org/mail-archive/web/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, 08 May 2015 10:09:21 -0000

Richard, Wes, (and Rong plus all the PIE authors),

In Dallas you 'volunteered' me to review draft-ietf-aqm-pie-01

First, thanks to the draft authors for developing this, writing it 
up, evaluating it and maintaining it.

I read an early draft when it just described the basics and it was 
fine. However, now we have the pseudocode and enhancements, I have a 
number of concerns...

My full review is here:
<http://www.bobbriscoe.net/projects/latency/piervw_tr.pdf>

My technical points run to 15 pages. I could have turned it into I-D 
format, but I chose to use PDF for a tech report format, 'cos the 
review includes charts and maths. I've put significant work into this 
over the past couple of weeks, particularly preparing charts to 
justify my technical points in the body of the review. So I hope it 
gets read thoroughly.  The review ends with a 7 page tailpiece of 
editorial nits, references, etc.

Over the next few days I may break it down, by pasting the important 
points into manageable bite-sized emails to the list. But I recommend 
the tech report format for a proper read.

==Exec Summary==

The PIE draft ends with two assertions in the Discussion section:
    "PIE is simple to implement"
    "PIE does not require any user configuration"
I am afraid I have to say that I do not believe either statement is 
warranted any more. PIE has lost its way a bit. The implementation 
has not retained the elegance of the theory. The performance benefit 
from so-called `enhancements' is questionable or non-existent, 
whereas the added complexity is very apparent. Also PIE now contains 
a large number of hard-coded constants (I counted 20) that ought to 
be scenario-dependent configuration variables.

==Main concerns==

This is a table of contents of the technical part of the review:
    * Proposed Standard, but no normative language
        *   work needed to distinguish between design intent and 
specific implementation
        *   unclear how strongly the enhancements are recommended
    * Has PIE been separately tested with and without each 
enhancement, to justify each?
    * Needs to enumerate whether it satisfies each AQM Design Guideline
        * If not, say why or fix.
        * Particular concerns:
            * No spec of ECN behaviour
            * No autotuning of the two main parameters
            * Transport specific (Reno-based?) autotuning of alpha & beta
    * Rationale for a PI controller not properly articulated
    * Technical flaws/concerns
        * Turning PIE off
        * So-called `autotuning' of alpha & beta parameters
        * Averaging problems
        * Burst allowance unnecessary?
        * Needs a Large Delay to Make the Delay Small
        * Derandomization: a waste of cycles
        * Bound drop probability at 100% --> DoS vulnerability?
        * Avoiding Large Packet Lock-Out under Extreme Load.
    * Numerous magic numbers
        * ~20 constants, 13 of which are not in the header block.
        * About half ought to be made to depend on other constants
        * Need to state how to set the remaining constants for 
different environments
    * Implementation suggestion for Autotuning alpha & beta


Bob


________________________________________________________________
Bob Briscoe,                                                  BT