[v6ops] Adam Roach's No Objection on draft-ietf-v6ops-rfc6555bis-06: (with COMMENT)

Adam Roach <adam@nostrum.com> Tue, 24 October 2017 00:56 UTC

Return-Path: <adam@nostrum.com>
X-Original-To: v6ops@ietf.org
Delivered-To: v6ops@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 2DAC613AB66; Mon, 23 Oct 2017 17:56:29 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Adam Roach <adam@nostrum.com>
To: The IESG <iesg@ietf.org>
Cc: draft-ietf-v6ops-rfc6555bis@ietf.org, Ron Bonica <rbonica@juniper.net>, v6ops-chairs@ietf.org, rbonica@juniper.net, v6ops@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.63.2
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <150880658917.25191.212978282483160174.idtracker@ietfa.amsl.com>
Date: Mon, 23 Oct 2017 17:56:29 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/v6ops/2vpTSeJrGq5Wd3OEZ4MQa54u4e0>
Subject: [v6ops] Adam Roach's No Objection on draft-ietf-v6ops-rfc6555bis-06: (with COMMENT)
X-BeenThere: v6ops@ietf.org
X-Mailman-Version: 2.1.22
List-Id: v6ops discussion list <v6ops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/v6ops>, <mailto:v6ops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/v6ops/>
List-Post: <mailto:v6ops@ietf.org>
List-Help: <mailto:v6ops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/v6ops>, <mailto:v6ops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 24 Oct 2017 00:56:29 -0000

Adam Roach has entered the following ballot position for
draft-ietf-v6ops-rfc6555bis-06: No Objection

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 https://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:
https://datatracker.ietf.org/doc/draft-ietf-v6ops-rfc6555bis/



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

Summary:

I think it's great that we continue to refine the means for making rapid
connections in dual-stack environments, and want to thank the authors and
working group for putting together a well-written and easy-to-follow document.
I have some concerns about distinguishing normative requirements from an
"example algorithm" that can be used to meet them, and would like to see better
clarity around the relationship between this document and existing, deployed
implementations of RFC6555.

Details:

The abstract claims that the document provides an "example" algorithm, while
the main text of the document describes the algorithm as "RECOMMENDED" (using
normative language), as well as having a variety of other normative statements
made regarding its implementation. Given that the document is serving the dual
purpose of laying out requirements and giving an exemplary (which I would take
to mean "non-normative") algorithm that satisfies that algorithm, I would
*strongly* recommend removing normative language from the description of the
exemplary algorithm.

In order to make that task easier -- and to clarify the intention of the
lower-cased word "recommended" in phrases like "The recommended minimum value
is 100 milliseconds" -- I would further suggest that this document adopt the
new RFC8174 template instead of using the old RFC2119 template.

That said, there appears to be a random mix of uppercase and non-uppercase
"recommended" even when describing the same general concept (e.g., the timer
cited above is "recommended," while the timeout for processing DNS responses
after a connection is "RECOMMENDED") -- I suggest an editing pass that
generally looks at how these terms are used and ensures that normative versus
non-normative uses are properly distinguished.

The reason I'm focusing so carefully on normative versus non-normative language
use in general, and on carefully making the algorithm itself non-normative in
particular ties to the rationale for obsoleting RFC6555. In an earlier response
to Mirja's DISCUSS, Tommy Pauly said:

> A "simple" implementation of the 6555bis algorithm is still
> aligned with the algorithm in 6555, and we would like to see
> new implementations taking the nuances of the new algorithm
> description into account.

Which makes perfect sense. I've seen evidence that this point -- that an
implementation of the RFC6555 algorithm is fully compliant with the v2 document
-- has been broadly missed by the implementation community. See, for example:
https://groups.google.com/a/chromium.org/forum/m/#!topic/net-dev/GQaqi5WVlPY 
(and, FWIW, I've had similar private feedback from the relevant decision makers
inside Mozilla regarding web browser implementations).

To clarify this situation, I think it is really necessary to include text in
Appendix A that indicates roughly the same thing as Tommy's text above does.