ietf
[Top] [All Lists]

TSVDIR review of draft-ietf-nfsv4-federated-dns-srv-namespace

2011-09-11 15:13:33
Hi, all,

I've reviewed this document as part of the transport area directorate's ongoing 
effort to review key IETF documents. These comments were written primarily for 
the transport area directors, but are copied to the document's authors for 
their information and to allow them to address any issues raised. The authors 
should consider this review together with any other last-call comments they 
receive. Please always CC tsv-dir(_at_)ietf(_dot_)org if you reply to or 
forward this review.

This document describes the use of DNS SRV records to coordinate NFS4 use and a 
global file namespace across a groups of clients and servers.

There are no transport protocol issues in this document. The key transport 
issue is the definition of a new DNS SRV record and its associated syntax.

There are issues with the intended syntax of the proposed DNS SRV record. The 
current syntax is defined in RFC 2782 as:

        _service._transport.NAME

        service is an IANA SRV name, the namespace of which is defined in RFC 
6335

        transport is _TCP or _UDP

        NAME is a DNS FQDN

Given other considerations below (on versioning), the record should be one of 
the following

        _nfs._tcp.example.com TTL Class SRV Priority Weight Port Target
        _nfs._udp.example.com TTL Class SRV Priority Weight Port Target

All other information specific to the exchange, e.g., organization (which may 
or may not be a suffix of the Target, FWIW), desired mount point, and various 
NFS-specific capabilities (e.g., mount options) ought to be expressed in an 
associated TXT record as defined fields, as is the case with other services 
that use SRV records. These options can have defaults if not otherwise present.

Some other issues are discussed below.

Overall, the above is the key concern, and needs to be addressed before 
proceeding. Issues below are indicated as either critical or suggestions for 
clarification.

Joe

------------------------

Critical issues:

- the IANA section is incomplete
This document needs to request IANA assign an SRV service name, e.g.:

        SRV     nfs     TCP
        SRV     nfs     UDP

It is not clear whether an additional assignment of "SRV nfs SCTP" is required; 
recent discussions on other SCTP SRV uses suggest that UDP is indexed in these 
cases instead. This might warrant further discussion.

- the service name should not include the version number
As per RFC 6335, and to be consistent with the existing port assignments for 
NFS Version 4.

- the discussion of list of organizations as with root.afs should be described 
in a little more detail
The current sentence is a bit cryptic; this could be a full paragraph, perhaps 
with an example.

- there is no appropriate place to indicate write vs read-only in the DNS 
request
The DNS request should return all available options, and indicate write vs. 
read-only in the associated TXT records. The client should then determine which 
is desired.

----------------------

Other issues (intended as suggestions):

- version 4
Throughout this document, "version 4" is used wherever NFS is used. Since V4 
(more specifically, 4.1) is the current common version, it does not seem 
necessary to include this marking in most places except where differences in 
the NFS versions are being highlighted.

- colloquial advice
Terms like "appropriate" and "useful" should be removed throughout. They 
represent judgements whose evaluation criteria is not discussed.

- overall writing style
The document is written in the tense and style of a proposal. It should be 
revised to read as the intended specification it will become. "We propose" and 
"We use", and similar styles should be replaced with "this document specifies" 
and "this record uses".

- clarify overloaded terms
Terms like "root" and "name space" are widely used in different ways in the DNS 
and file systems. Because this document combines the two, each use should be 
clarified by a preceding term, e.g., DNS name space or file system name space, 
DNS root or file system root.

- the use of RFC 2119 terms should be reviewed
In particular, SHOULD should be used only where a specific exception is 
currently known or suspected, and that exception described. This provides the 
motivation for the selection of SHOULD vs. MAY or MUST.

- the discussion of client vs server implementation (sec 4.3, as well as partly 
in sec 4.2) should consider client-specific DNS responses
The DNS could provide responses that vary based on the IP of the client. This 
could be a desirable feature. Further, the client knows whether it wants write 
or read-write copies. AFAICT, the client is not only the better place to 
implement this capability, it is the only viable place.

- I found the hidden directory name discussion odd
It does not make sense to overload read-only with directory visibility; these 
are orthogonal issues. The desired mount point should be indicated in the TXT 
record; if a default convention is desired, it should be indicated in the 
description of that field.

- the AMD reference is only a web page
Not sure which particular reference is best, but a permanent reference would be 
useful, e.g.: Matthew Crosby. 1997. AMD—AutoMount Daemon. Linux J. 1997, 35es, 
Article 4 (March 1997).

-----


_______________________________________________
Ietf mailing list
Ietf(_at_)ietf(_dot_)org
https://www.ietf.org/mailman/listinfo/ietf