[Last-Call] Re: Dnsdir last call review of draft-ietf-emailcore-rfc5321bis-31

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ted,

Thanks for the careful reading and review.  Responses inline below.

--On Tuesday, October 15, 2024 07:13 -0700 Ted Lemon via Datatracker
<noreply@xxxxxxxx> wrote:

> Reviewer: Ted Lemon
> Review result: Ready with Nits
> 
> The introduction references RFC1035. This may have been exactly the
> right thing to do, but RFC1035 is a fairly old representation of the
> state of the art of the domain name system at this point. When it
> was written, RFC1034 might have been a better entry point unless the
> authors assumed that the readers would necessarily already be
> familiar with it (a not unreasonable assumption).
> 
> However, in this modern time, I think that it might make sense to
> reference RFC9499 first and RFC1035 second. That might sound like an
> odd choice, but please read the introduction to RFC9499 before
> dismissing it entirely! The particular reason I think this is
> relevant is that RFC9499 doesn't update RFC1035, so the reader
> won't get a clue to reference it from the metadata for RFC1035, and
> I think RFC 9499 adds significant value.
> 
> I don't feel strongly about this--I think it's likely that most
> readers will already have the information they need. However, this
> document updates a fairly core document in the suite of internet
> standards, and so it might make sense to account for the occasional
> naive reader. Needless to say, I leave it up to the authors and ADs
> whether this is a good idea, but I think it might be.

Let me see if I can walk through the problem.  RFC 1035 is referenced
in many places.  A quick scan got me Sections 1.1, 1.2, 2.3.5
(several times), 4.1.2, 4.2.4.2, and 5.1, but no guarantees I didn't
miss one.   In most of those cases, including the two in the
introduction, they are referring to specific features, not to
terminology.  For them, I believe that a reference to RFC 9499 would
be incorrect and might add confusion.  

Then we get to Section 2.3.5.  The first mention of RFC 1035 is a
definition of "labels".  I think that citation could be replaced by a
pointer to 9499, but SMTP does not allow zero-length labels (the
notorious "foo..bar.example" case) and the graph theory explanation
might be opaque to the audience for the current draft, so some
explanation might be required in addition to just swapping out the
citations.  The second mention is about the notorious "preferred name
syntax" terminology.   RFC 9499 does not define it, it just circles
around it in the definition of "Host name" with a number of
statements that include handwaving qualifiers like "often meant to
be", "is also called", and "might include".  Maybe that would be ok,
but there is a certain simplicity in a definition that is ok for SMTP
and at least appears (in RFCs 1034 and 1035) to be unambiguous.

In Section 4.1.2, we are back to a specific normative requirement of
RFC 1035, not a terminology reference.

None of that makes it a bad idea, but there are questions as to
whether implementing it is worth the trouble.  Even without looking
at the other sections, my point is that altering the current
references to use RFC 9499 is going to require examination of each
case where RFC 1035 is now mentioned or invoked and making decisions
about whether the topic is terminology or a reference to a specific
operation or requirement.  Even where something is clearly a
reference, the definition in RFC 9499 should be examined to be sure
that referencing it instead would not add to, rather than reducing
confusion. Some of those decisions might be very subjective and
painful judgment calls.  

As discussed in part of my response to Donald Eastlake's/SECDIR
review, for at least some of these references (I have not taken the
time to check) the text was in RFC 5321 or earlier, there is no
evidence that it caused confusion or harm, and messing with it now
may not be justified.

My tentative conclusion is that, while there are probably places were
referencing RFC 9499 instead of, or in addition to, 1035 would add
some small amount of clarity, it would not justify the amount of time
and effort needed to work through all the cases and then do enough
review to be sure that any changes are correct.  I believe that is
consistent with decisions the WG has made about conditions for
altering established text and avoiding making changes that are not
strictly necessary, even if they might be nice.

> ---
> 
> Non-DNS question: why is the "SHOULD NOT" in paragraph 2 of 4.1.1.1
> not a MUST NOT? What is the exception?

I'll like to hear from others in the WG, but there was a certain
reluctance to invalidate (i.e., render completely non-conforming)
existing conforming implementations without clear evidence of harm.
There is no harm here if servers accept it (rather than treating it
as an error), even if they then ignore it, which is what the first
part of the sentence essentially says.  At the other extreme, SMTP
servers are basically allowed to decline to accept a message for any
reason(s) they find appropriate, so why should this be the exception?
I don't have any idea how many SMTP clients do send that information
or whether people who think market size is important would consider
any such client worth considering.
 
> --
> 
> Section 5.1 doesn't say what to do with chained CNAMEs. It might be
> worth saying more here. A strict reading of the spec here would I
> think treat chained CNAMES correctly in the sense that if the target
> of the CNAME is treated as the initial name, then each target would
> be processed the same way, by first looking for a CNAME. And of
> course a full-service resolver will do the CNAME work for the SMTP
> client. So perhaps clarifying that the "resulting name" is the
> result of fully following the CNAME as described in RFC1035 section
> 7.1. Or maybe this is unnecessary--I leave this to the judgment of
> the authors and ADs.

I _think_ the WG's conclusion was that, if a more extensive
discussion on this subject was needed at all, it should be in the
Applicability Statement.  I do think there was some concern about
CNAME loops, e.g.,
   A IN CNAME B
   B IN CNAME C
   C IN CNAME A
especially if A, B, and C were in different domains.  Again, this is
unchanged text from RFC 5321 and essentially unchanged from RFC 2821,
so we have gone a very long time without evidence of confusion or
other harm.

> 
> --
> 
> Does section 5.1 need to talk about the NULL MX? This was discussed
> earlier, but isn't mentioned here.

No opinion.  I don't think it would be either hard or dangerous to
add a sentence there, perhaps as a second sentence in paragraph 2,
indicating that, if one of those is encountered, the lookup is over
and include a reference to those earlier discussions.  WG?

> --
> 
> I found this text in 5.1 to be a bit more obscure than necessary:
> 
>    Any other
>    response, specifically including a value that will return a CNAME
>    record when queried, lies outside the scope of this Standard.
> 
> Why not just say that any other response, including a CNAME even if
> it ultimately points to an A or AAAA record, is not a valid
> response and MUST be ignored?

Don't remember.  We might have been concerned about possible further
DNS extensions or the advent of IPvX and AAAAAAAAA records.


> 
> --
> 
> My general experience of this document as a DNS directorate reviewer
> is that I found a lot of questions that had answers, and very few
> that did not. :)

Thanks.  That was certainly the WG's intention, to say nothing of the
author's :-)
On the other hand, it is long, complex, and suffers from the
paste-together integration discussed in Sections 1.2 and 1.3 so it is
a relief but, in a way, a bit surprising that careful readings with
fresh eyes, yours and Donald's included, have not turned up even more
issues.

  john


-- 
last-call mailing list -- last-call@xxxxxxxx
To unsubscribe send an email to last-call-leave@xxxxxxxx




[Index of Archives]     [IETF Annoucements]     [IETF]     [IP Storage]     [Yosemite News]     [Linux SCTP]     [Linux Newbies]     [Mhonarc]     [Fedora Users]

  Powered by Linux