Re: [aqm] Please review: Benefits and Pitfalls of using ECN

Greg Skinner <> Wed, 18 March 2015 00:38 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 3B4DC1A86E2 for <>; Tue, 17 Mar 2015 17:38:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id zCMWLjGhlOJT for <>; Tue, 17 Mar 2015 17:38:13 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 82A8D1A8035 for <>; Tue, 17 Mar 2015 17:38:13 -0700 (PDT)
Received: from ([]) by (Oracle Communications Messaging Server 64bit (built Dec 4 2014)) with ESMTP id <> for; Wed, 18 Mar 2015 00:38:13 +0000 (GMT)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.13.68,1.0.33,0.0.0000 definitions=2015-03-17_05:2015-03-17,2015-03-17,1970-01-01 signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=1 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=7.0.1-1412110000 definitions=main-1503180004
MIME-version: 1.0
Content-type: multipart/alternative; boundary="Boundary_(ID_yzDT5roGthd5t1P5SLHBcw)"
Received: from localhost ([]) by (Oracle Communications Messaging Server 7u4-27.08( 64bit (built Aug 22 2013)) with ESMTP id <>; Wed, 18 Mar 2015 00:38:12 +0000 (GMT)
From: Greg Skinner <>
Date: Wed, 18 Mar 2015 00:38:11 +0000 (GMT)
X-Mailer: iCloud MailClient15B.9bb3ce9 MailServer15B76.18307
X-Originating-IP: []
Message-id: <>
Archived-At: <>
Subject: Re: [aqm] Please review: Benefits and Pitfalls of using ECN
X-Mailman-Version: 2.1.15
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: Wed, 18 Mar 2015 00:38:16 -0000

I noticed that the RFC 2119 boilerplate text (Key words for use in RFCs to Indicate Requirement Levels such as "MUST") is missing.  IMO, several issues in Section 6 (and possibly Section 7) should have the uncapitalized text replaced with the requirement levels.  (For example, the beginning of the last paragraph of Section 6.1 would start with "A network device MUST NOT change a packet with a CE mark to a zero codepoint ...")

Removing "pitfalls" in the title, and replacing its use in the draft with "operational difficulties", or words to that effect, seems reasonable to me.


On Mar 17, 2015, at 11:46 AM, Gorry Fairhurst <> wrote:

On 17/03/2015 15:11, Wesley Eddy wrote:
On 3/11/2015 4:10 PM, wrote:

Alas, due to a slight technical mistake by me, we missed the ID deadline.
So I have posted an interim version here:

I've reviewed this copy and have some comments, one larger and
the rest smaller.

Large comment:

I (personally) really do not like using the word "pitfall" in this
document, given that we want people to use ECN, and not scare them
about this list of pitfalls that await them the day they start using

We could call these "operational difficulties that have been
encountered" or "challenges due to misbehaving network devices and

I worry about someone that doesn't have time to carefully read and
consider all the benefits and whether they outweigh the "pitfalls",
and may not fully grok that the pitfalls have known mitigations and
will hopefully go away over time.

We *should* be more clear that there are mitigations and that plenty of
nodes are able to use ECN happily today because it is implemented in
the major OSes and network devices.

See below.

For instance, there is no mention of things like ECN blackhole
detection, and measurements of this, such as:

OK - Happy to cite this.

We *definitely* need to stress that bleaching, lying, and cheating
behaviors are non-conformant, in some cases may be from legacy code,
and should be expected to go away over time rather than proliferate,
because these behaviors will cause problems for the growing critical
mass of conforming nodes.

Agree, we can emphasise this.

So, in summary, I would really suggest that we go through the document
searching for every instance of "pitfall" and try to be more gentle,
and even change the title just to "The Benefits of Using Explicit
Congestion Notification (ECN)". There is way more text in the document
about benefits than pitfalls anyways, and I think we could consider the
section discussing pitfalls as just fairly presenting possible
challenges to successfully using ECN.

That's just my opinion ... I'd be curious what others think.

Personally, I'd be really happy to do rework this language.

I would also like to revert the title (to just say "benefits", as in the 
original Individual ID submission), I believe we changed the title in 
response to comments from the group, but this was at a time when we had 
not describe some of the realities of deploying ECN. I'd like to think 
these have been addressed, and revert to the original title.

Note: If any people prefer to keep the "pitfall" word, then send an 
email asap - and give me some advice, otherwise I'll likely follow the 
edits suggested above.

Small comments:
- In section 1, paragraph 3, I suggest changing the text:
"where the exact combination of AQM/ECN algorithms is generally
not known by the transport endpoints."
"where the exact combination of AQM/ECN algorithms does not need
to be known by the transport endpoints."


Since the document is for people that might not be familiar with
this, it seems worth rewording so they don't think it's somehow
bad or suboptimal that the endpoints don't know if AQM or ECN is
supported within the network.

- section 1, paragraph 4, I suggest changing:
"that would otherwise have been dropped"
"that would otherwise have been dropped if the application or
transport did not support ECN"


I think this kind of wording will emphasize that they need to
make sure they're enabling it at the endpoint.

- section 2, paragraph 3 should be changed:
"Applications that experience congestion in such endpoints"
"Applications that experience congestion in such network devices"

Oh dear, yes will fix -- or we could just say "experience congestion"?

Even smaller comments:
- section 1, paragraph 2, "forward" -> "forwards"
- section 1, paragraph 2, "this packet" -> "packets"
- section 1, paragraph 3,
"The focus of this document is on usage of ECN"
"The focus of this document is on usage of ECN by transport and
application flows"
- section 2, paragraph 2, I think the ECN RFC (3168) could also be cited
in addition to 2309bis for the recommended behavior for network

I'll also fix these in the draft before we upload.


aqm mailing list