Subject: [DNSOP] draft-ietf-dnsop-dns-terminology needs to define "label"?

From: Suzanne Woolf <[email-masked]>
Date: Wed, 29 Apr 2015 17:44:47 -0400

Hi,

(no hats)

As the outcome of an offline discussion a couple of weeks ago, I'm suggesting a modest addition to the DNS terminology draft.

Sec. 2, "Names," uses the word "label" in several definitions, but doesn't define it. RFC 1034 does the same thing-- the definition of "domain name" imported into dns-terminology uses "label" but appears to assume a definition. Like "hostname", even though it's not defined in the core DNS RFCs, "label" seems to be widely used and would benefit from a citable definition. In particular, it seems to have a reasonably common, consistent meaning, easily derived from the usage in RFC 1034-- and a significant range of misuses.

I'm suggesting a new definition in Sec. 2, as follows: 

"Label -- The portion of a domain name at each node in the tree making up a fully-qualified domain name" 

(Andrew Sullivan gets full credit for the words, this is better than my initial attempt.)

I'd also like to thank the authors for causing me to ignore other work I should be doing in order to go refresh my memory on the details of usage in English for the words "between" and "among."

thanks,
Suzanne

---

From: Paul Hoffman <[email-masked]>
Date: Wed, 29 Apr 2015 15:39:15 -0700

> "Label -- The portion of a domain name at each node in the tree making up a fully-qualified domain name" 

Works for me. What do others think?

--Paul Hoffman

---

From: Eric Brunner-Williams <[email-masked]>
Date: Wed, 29 Apr 2015 21:29:45 -0700

i'd like to think of it as a sequence of bits having having no infix 
dots and having no semantics, e.g., directionality, arising externally 
to itself.

On 4/29/15 2:44 PM, Suzanne Woolf wrote:
> _______________________________________________
> DNSOP mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/dnsop
>
>

---

From: Lyman Chapin <[email-masked]>
Date: Thu, 30 Apr 2015 11:14:24 -0400

> Works for me. What do others think?

I'm uncomfortable with both "portion" and "making up." Labels are the "atoms" from which FQDN compounds are constructed, and "portion" isn't precise enough to capture that; and I don't think that "making up" will translate well beyond English. How about:

"Label - The identifier of an individual node in the sequence of nodes that comprise a fully-qualified domain name."

- Lyman

---

From: Paul Hoffman <[email-masked]>
Date: Thu, 30 Apr 2015 08:22:47 -0700

> "Label - The identifier of an individual node in the sequence of nodes that comprise a fully-qualified domain name."

This looks even better to me. Other opinions welcome.

--Paul Hoffman

---

From: Suzanne Woolf <[email-masked]>
Date: Thu, 30 Apr 2015 11:24:09 -0400

> This looks even better to me. Other opinions welcome.

+1. Ship it.

Suzanne

---

From: Andrew Sullivan <[email-masked]>
Date: Thu, 30 Apr 2015 17:02:45 +0100

> "Label - The identifier of an individual node in the sequence of nodes that comprise a fully-qualified domain name."

I am not sure this is quite right, or if it is it's circular with the
other definitions in RFC 1034.

1034 says this:

    Each node has a label, which is zero to 63 octets in length.
    Brother nodes may not have the same label, although the same label
    can be used for nodes which are not brothers.  One label is
    reserved, and that is the null (i.e., zero length) label used for
    the root.

    The domain name of a node is the list of the labels on the path
    from the node to the root of the tree.  By convention, the labels
    that compose a domain name are printed or read left to right, from
    the most specific (lowest, farthest from the root) to the least
    specific (highest, closest to the root).

The problem therefore that I see is that the identifier of the node is
the domain name (which we have clarified as the "fully-qualified
domain name").  This is why the text I'd previously sent to Suzanne
used "portion".  For while I agree that it's not great, it does anchor
this in the discussion already in 1034.

What about

Label - the identifier of an individual node in the DNS namespace
taken apart from its location in a fully-qualified domain name.

I think this is consistent with the "Each node has a label" language.
But it's pretty hard to understand, and still faintly circular.

A

-- 
Andrew Sullivan
[email-masked]

---

From: Paul Hoffman <[email-masked]>
Date: Thu, 30 Apr 2015 09:31:23 -0700

> But it's pretty hard to understand, and still faintly circular.

These are all circular, and I think we have to live with that. This last one is fine with me too.

We now have:

	The portion of a domain name at each node in the tree making up a fully-qualified domain name.
	The identifier of an individual node in the sequence of nodes that comprise a fully-qualified domain name.
	The identifier of an individual node in the DNS namespace taken apart from its location in a fully-qualified domain name.

--Paul Hoffman

---

From: Shumon Huque <[email-masked]>
Date: Thu, 30 Apr 2015 13:06:05 -0400

I think these definitions are missing the fact that domain names and the
labels that comprise them can be spoken about abstractly and exist apart
from the actual domain name space. For example, the domain name that
appears in the question section of a DNS message may or may not exist in
the actual name space. It is still a domain name in either case.

I think it is best to define a domain name simply as a sequence of labels
terminating in the null label. And a label as a sequence of octets with an
initial length/type octet. Then define the domain name space as described
in RFC 1034 Section 3.1 etc.

Shumon Huque

On Thu, Apr 30, 2015 at 12:31 PM, Paul Hoffman <[email-masked]>
wrote:

> >> "Label - The identifier of an individual node in the sequence of nodes
> that comprise a fully-qualified domain name."
> >>
> >
>         The identifier of an individual node in the DNS namespace taken
> apart from its location in a fully-qualified domain name.
>
> --Paul Hoffman