On Mon, Aug 29, 2022 at 12:33:55PM -0400, Erik Nygren wrote:

> On paths forward on the draft as it stands to clarify without making
> significant technical changes (which I don't think are necessary):
> 
> * Are there particular clarifications we can/should add to help make
> the current behavior more clear to readers?  For example, would having
> some examples of the failure cases (without changing the semantics)
> help?  Note that since the fallback behavior is a SHOULD not a MUST
> for clients, it can't necessarily be relied upon.


Likely so, especially to illustrate:

    * SVCB/HTTPS lookup failure in the initial SVCB query (i.e. not 
NOERROR/NODATA
      or NXDOMAIN).

    * SVCB/HTTPS lookup failure after some non-zero number of AliasMode records
      that result in a new target $QNAME.

    * A/AAAA lookup failure of the "final" target name (does this lookup still
      happen if SVCB/HTTPS lookup fails after a non-zero number of
      AliasMode records are processed?)

    * Connection failure to some or all of the targets/ports resolved via 
SVCB/HTTPS
      records (should/may happy eyeballs probe the resolved SVCB/HTTPS
      targets in parallel with the fallback original name or $QNAME
      fallback?)

Clarify which $QNAME is appended to the target list as a fallback.


> * This might be too much of a technical change at this point,
>   but would it make sense to change the SHOULD to a MAY on client
>   fallback behavior?  Clients implementations may choose to ignore the
>   SHOULD so this doesn't change the contract.

Given the stated permissive stance (to quote Paul Vixie from another
forum/thread: browsers gonna browse), perhaps "MAY" is more appropriate.

> * For the rfc1123 section 2 topic, it may make sense to clarify the text
>  to say "domain name" rather than "hostname":
>
>    > An "alternative endpoint" is a hostname, port number, and other
>    > associated instructions to the client on how to reach an instance
>    > of service.
>
>   Everywhere else in the normative sections such as 1.2 and 2.1 we say
>   that the TargetName is a "domain name" (aligned with the
>   clarification in rfc8499 on the difference between host and domain
>   names).
>
> On the rfc1123s2 front. a corner-case that might be encountered is
> that Proxies might be confused by "When connecting using a SVCB
> record, clients MUST provide the final TargetName and port to the
> proxy" in the case where proxies don't expect a domain name (eg, with
> an underscore prefix).  I don't know if there is any warning we should
> provide about this corner-case, or cover that in the future if it
> turns out to be a problem?

Just saying that it is a domain name does not fundamentally address the
issue, since the draft (almost RFC) in multiple places suggests that
even domain names adorned with attrleaf prefixes are potential owner
names of A/AAAA records, which runs into conflict with 1123 (and as
you note potential issues with proxies, or other software that expects
"hostnames" as valid names for A/AAAA records).

> For the future, there are subsequent drafts that could be introduced:
> 
> * We could add an optional "nofallback" SvcParam to AliasMode as Brian
> suggests, but in a future draft. (This would be the first SvcParam on
> AliasMode, but they are allowed and introducing them might help
> prevent ossification of this extension point.)

Sounds reasonable.

> * Introducing an optional "Alt-Used" equivalent (eg, "Service-Used")
>   that provides information about the SVCB/HTTPS RR path followed
>   would be very useful to service operators.  We got stuck on not
>   finding the right content vs privacy balance here, and experience
>   with Alt-Used is that not all clients will implement it regardless.
>   But if we had this and got enough clients to implement then it could
>   help address some of Brian's concerns about getting better
>   visibility in the fallback case.  (eg, "Service-Used: type=fallback"
>   as an HTTP header)

An interesting idea.  Certainly such signals can be helpful to operators
to detect problems and/or guage when infrastructure changes become
viable.

-- 
    Viktor.

_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop

Reply via email to