Skip to main content

Last Call Review of draft-ietf-tsvwg-rfc5405bis-13
review-ietf-tsvwg-rfc5405bis-13-genart-lc-kyzivat-2016-05-28-00

Request Review of draft-ietf-tsvwg-rfc5405bis
Requested revision No specific revision (document currently at 19)
Type Last Call Review
Team General Area Review Team (Gen-ART) (genart)
Deadline 2016-05-31
Requested 2016-05-19
Authors Lars Eggert , Gorry Fairhurst , Greg Shepherd
I-D last updated 2016-05-28
Completed reviews Genart Last Call review of -13 by Paul Kyzivat (diff)
Genart Telechat review of -18 by Paul Kyzivat (diff)
Secdir Last Call review of -13 by Takeshi Takahashi (diff)
Secdir Telechat review of -17 by Takeshi Takahashi (diff)
Opsdir Last Call review of -11 by Tim Chown (diff)
Rtgdir Early review of -13 by Ron Bonica (diff)
Assignment Reviewer Paul Kyzivat
State Completed
Request Last Call review on draft-ietf-tsvwg-rfc5405bis by General Area Review Team (Gen-ART) Assigned
Reviewed revision 13 (document currently at 19)
Result Ready w/issues
Completed 2016-05-28
review-ietf-tsvwg-rfc5405bis-13-genart-lc-kyzivat-2016-05-28-00
I am the assigned Gen-ART reviewer for this draft. The General Area
Review Team (Gen-ART) reviews all IETF documents being processed by the
IESG for the IETF Chair. Please treat these comments just like any other
last call comments. For more information, please see the FAQ at
<http://wiki.tools.ietf.org/area/gen/trac/wiki/GenArtfaq>.

Document: draft-ietf-tsvwg-rfc5405bis
Reviewer: Paul Kyzivat
Review Date: 2016-04-27
IETF LC End Date: 2016-05-31
IESG Telechat date:

Summary:

This draft is on the right track but has open issues, described in the
review.

Issues:

(Note: I am having difficulty assigning severity levels to these issues.
So take the leveling with a grain of salt.)

Major: 1?
Minor: 1
Nits:  3

(1) Major? - Scope and Audience

I had difficulty understanding the intended scope of this document, and
the intended audience. It seems to want to be a variety of things.

* It seems to be a fine reference about congestion control for
applications of UDP.

* It also seems to be pretty helpful in challenging developers about
whether they should be using UDP or something else.

Probably everyone contemplating using UDP ought to read this for that
stuff. Those topics would be a good focus for the document.

Beyond that it delves into a seeming random assortment of additional
specialized uses of UDP. These may be of interest to some, but I suspect
many won't find these things useful. And the topics covered seem to be
simply what came to mind rather than being in some way exhaustive.

Also, some applicability to congestion control for non-UDP protocols
(those layered directly on IP) is claimed. This seems a bit of an
afterthought, and incompletely covered.

After diffing this document against RFC5405 I see that it really is an
incremental change that leaves the scope largely unchanged except for
the addition of multicast. So perhaps I am too late to question the
scope of the document. But since this *is* a bis, it might be worth
considering whether the scope could be focused by splitting some of the
material off into a different document(s).

(2) MINOR? - use of SHOULD

I was struck by how much SHOULD is used in this document, and how
infrequently MUST is used. And while possible justifications for
violating SHOULD are sometimes provided, they often are not. In my
experience there has been a growing awareness that such vagueness is
problematic, because many implementers take it as free license to treat
SHOULD as MAY, and just not do it.

(IIUC, in a BCP the normative language is relative to best practice. So
if MUST is written and you don't do it then you aren't following best
practice. But if SHOULD is written without qualification, and you don't
follow it then you can probably claim that you are still following the
best practice as documented by the document.)

I note that most of the SHOULD usage is inherited from RFC5405, so there
is some justification for just leaving it be. But it could be a helpful
exercise to review all this usage, and consider whether usages of SHOULD
can be changed to MUST, or if valid justifications for violating the
SHOULD can be stated.

(3) NITs: Section 3.1.7

In the following:

    The set of mechanisms requires for an application to use ECN over UDP
    are:

s/requires/required/

In the following:

    [RFC6679] provides guidance an example of this support, by describing

s/guidance/guidance and/

In the following:

    In general, packets may be forwarded across multiple networks the
    between source and destination.

s/ the//

(4) NIT: Appendix A:

I couldn't parse the following sentence as written:

    MPLS-in-UDP endpoints must check the source IPv6 address in addition
    to the destination IPv6 address, plus the strong recommendation
    against reuse of source IPv6 addresses among MPLS-in-UDP tunnels
    collectively provide some mitigation for the absence of UDP checksum
    coverage of the IPv6 header.

I think it would better reflect the intent if it is changed as follows:

s/MPLS-in-UDP endpoints must/The requirement for MPLS-in-UDP endpoints to/

(5) NITs - unlinked references

I found a number of cases where, in the html format, references are not
hyperlinked:

[RFC5405] section 1
[RFC4342] section 3
[RFC6679] section 3.1.7
[RFC1981] section 3.2
[RFC6935] section 3.4.1