Subject: [aqm] Spencer Dawkins' Yes on draft-ietf-aqm-recommendation-09: (with COMMENT)

From: "Spencer Dawkins" <[email-masked]>
Date: Mon, 16 Feb 2015 12:41:43 -0800

Spencer Dawkins has entered the following ballot position for
draft-ietf-aqm-recommendation-09: Yes

When responding, please keep the subject line intact and reply to all
email addresses included in the To and CC lines. (Feel free to cut this
introductory paragraph, however.)

Please refer to http://www.ietf.org/iesg/statement/discuss-criteria.html
for more information about IESG DISCUSS and COMMENT positions.

The document, along with other ballot positions, can be found here:
http://datatracker.ietf.org/doc/draft-ietf-aqm-recommendation/

----------------------------------------------------------------------
COMMENT:
----------------------------------------------------------------------

I appreciate very much the work on this document. I'm a Yes, with some
niggling.

In this text:

Abstract

   The note largely repeats the recommendations of RFC 2309, and
   replaces these after fifteen years of experience and new research.
   
I'm thinking that doesn't match the "replaces" language in section 1.4,
which I think is about right. Perhaps something like

   The note replaces the recommendations of RFC 2309 based on 
   fifteen years of experience and new research.

In this text:

1.1.  Congestion Collapse

   The original fix for Internet meltdown was provided by Van Jacobsen.
   Beginning in 1986, Jacobsen developed the congestion avoidance
   mechanisms [Jacobson88] that are now required for implementations of
   the Transport Control Protocol (TCP) [RFC0768] [RFC1122].  

I'm wondering if RFC 7414 would be a helpful reference here, and
elsewhere in the document. I'm bemused by the use of RFC 793 as the
reference for TCP later in this document, since RFC 793 TCP behaves
nothing like TCP as characterized here. 

I know I'm confused by the reference to RFC 768 - that's UDP, as cited
correctly elsewhere in the document.

In this text:

   2.  Non-Responsive Flows

       The User Datagram Protocol (UDP) [RFC0768] provides a minimal,
       best-effort transport to applications and upper-layer protocols
       (both simply called "applications" in the remainder of this
       document) and does not itself provide mechanisms to prevent
       congestion collapse and establish a degree of fairness [RFC5405].

I'm not entirely comfortable with the idea that non-responsive flows use
UDP transport (especially in our tunneled world). If you guys think this
is OK, I'll hold my nose, but if you wanted to say anything about "other
flows that are as non-responsive as UDP transport", I'd think that would
be helpful. 

It certainly fits at least as well as the "large number of short-lived
TCP flows that are much less responsive" paragraph that you end this
section with, which probably fits better under the following list item, 

   3.  Transport Flows that are less responsive than TCP
   
In this text:

   It is essential that all Internet hosts respond to loss [RFC5681],
   [RFC5405][RFC4960][RFC4340].  Packet dropping by network devices that
   are under load has two effects: It protects the network, which is the
   primary reason that network devices drop packets.  The detection of
   loss also provides a signal to a reliable transport (e.g.  TCP, SCTP)
   that there is potential congestion using a pragmatic heuristic; "when
   the network discards a message in flight, it may imply the presence
   of faulty equipment or media in a path, and it may imply the presence
   of congestion.  To be conservative, a transport must assume it may be
   the latter."  Unreliable transports (e.g. using UDP) need to
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   similarly react to loss [RFC5405]
   ^^^^^^^^^^^^^^^^^^^^^^^
   
would it be more correct to say "Applications using unreliable transports
(e.g. UDP)"?