Re: [DNSOP] Another look - draft-ietf-dnsop-attrleaf-05.txt

John C Klensin <> Mon, 26 March 2018 16:14 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 17CAC124B17; Mon, 26 Mar 2018 09:14:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id o0f_n43H-usk; Mon, 26 Mar 2018 09:14:14 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 744AC126CC4; Mon, 26 Mar 2018 09:14:09 -0700 (PDT)
Received: from [] (helo=PSB) by with esmtp (Exim 4.82 (FreeBSD)) (envelope-from <>) id 1f0Ul6-000Fx5-D2; Mon, 26 Mar 2018 12:14:08 -0400
Date: Mon, 26 Mar 2018 12:14:02 -0400
From: John C Klensin <>
To: Martin Hoffmann <>
Message-ID: <32837C4DF5CB5BDD00DAD0FD@PSB>
In-Reply-To: <>
References: <> <> <> <> <> <alpine.OSX.2.21.1803211104210.9553@ary.local> <> <5F44FA5B42805C52479DE491@PSB> <> <1DF1564CC2B88726B2B54CF4@PSB> <>
X-Mailer: Mulberry/4.0.8 (Win32)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
X-SA-Exim-Scanned: No (on; SAEximRunCond expanded to false
Archived-At: <>
Subject: Re: [DNSOP] Another look - draft-ietf-dnsop-attrleaf-05.txt
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IETF DNSOP WG mailing list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 26 Mar 2018 16:14:19 -0000

--On Monday, March 26, 2018 17:18 +0200 Martin Hoffmann
<> wrote:

> John C Klensin wrote:
>> From that point of view, namespaces are actually
>> per-RRTYPE and the right way to design this document would be
>> as a registry of "_"-introduced keywords, with subregistries
>> for each RRTYPE with which those keywords can be used.  Given
>> the way the DNS works, at least as I understand it, there is
>> no DNS protocol conflict between
>>      _foo IN XYZ Data1
>> and
>>      _foo IN ABC Data2
>> Using the same keyword in both cases may be a bad idea [...]
> This sort of thing already happens: Both SRV and TLSA use the
> _tcp and _udp labels. Perhaps the difference is subtle since in
> both cases the label denotes the transport protocol. But names
> do represent different things -- a service provided for a
> logical entity v. a port of a physical host.

The current text of the I-D, as I read it, is intended to bind
the use of a given string to a given RRTYPE.  From the abstract:

	"The purpose of the Underscore registry is to avoid
	collisions resulting from the use of the same
	underscore-based name, for different services."

Subtle or not, that is a collision.   I would much prefer to see:

  SRV [sub]registry
     _tcp  [RFC2782]

  TLSA subregistry
     _tcp  [RFCnnnn]

rather than
      _tcp SRV  [RFC2782][RFCnnnn]

the former would also make it easy to say whatever needs to be
said about second-level strings.

> Which also reminds me: The DANE RRtypes, ie., TLSA, SMIMEA, and
> OPENPGPKEY all use underscore labels and are currently missing
> from the initial table in section 3.1.



p.s. Some nit-picking in the hope of general improvements to the
document.  At least for me, the terminology and background
explanation needs careful review.  In particular 

(1) The text in Section 1.1 says

	'the DNS rules for a "host" (host name) are not allowed
	to use the underscore character... legal host names

1035 does not say that.  Its section 2.3.1 is about what is
preferred, not what is required (or "legal").  It says "should"
and "preferred", but there is no requirement.  As far as I know,
there has never been a serious attempt to turn that preference
into a requirement.  Indeed, RFC 8121 says exactly the opposite
and, if there were a prohibition, RFC 6055 would have been
largely unnecessary.

(2) While, AFAICT, it is correct or close to it, the terminology
describing the DNS tree structure is awkward.  For example, in
"", it is probably incorrect to refer to
"_tcp" as a leaf node because it has substructure.  The

	"Each globally-registered underscore name owns a
	distinct, subordinate name space"

does not work if is valid for one RRTYPE
but not for a different one (this is another argument for both
associating "namespace" terminology with a keyword-RRTYPE pair
and a subregistry approach, but the current language is
problematic even if we stick with the current model.   And,
because a casual reader might associate "global" and
"right-most" with TLDs and get confused about whether the DNS
tree is considered "root up", "root down", or "root right",
those terms would probably benefit from an explicit terminology
section that describes this documents view of the tree.