[MMUSIC] AD Evaluation of draft-ietf-mmusic-data-channel-sdpneg-20

Ben Campbell <ben@nostrum.com> Tue, 28 August 2018 03:06 UTC

Return-Path: <ben@nostrum.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A9739130E2C; Mon, 27 Aug 2018 20:06:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.88
X-Spam-Level:
X-Spam-Status: No, score=-1.88 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_SPF_HELO_PERMERROR=0.01, T_SPF_PERMERROR=0.01] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id V6L5vKnMPXk8; Mon, 27 Aug 2018 20:06:09 -0700 (PDT)
Received: from nostrum.com (raven-v6.nostrum.com [IPv6:2001:470:d:1130::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1B3F0128CF2; Mon, 27 Aug 2018 20:06:05 -0700 (PDT)
Received: from [10.0.1.95] (cpe-70-122-203-106.tx.res.rr.com [70.122.203.106]) (authenticated bits=0) by nostrum.com (8.15.2/8.15.2) with ESMTPSA id w7S364hk039914 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Mon, 27 Aug 2018 22:06:05 -0500 (CDT) (envelope-from ben@nostrum.com)
X-Authentication-Warning: raven.nostrum.com: Host cpe-70-122-203-106.tx.res.rr.com [70.122.203.106] claimed to be [10.0.1.95]
From: Ben Campbell <ben@nostrum.com>
Content-Type: multipart/signed; boundary="Apple-Mail=_833E198A-A0EA-4799-B78F-F8D3BCDA1DB6"; protocol="application/pgp-signature"; micalg="pgp-sha512"
Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\))
Message-Id: <E028869C-2FE4-44D1-985B-7B3FD58D352A@nostrum.com>
Date: Mon, 27 Aug 2018 22:06:03 -0500
Cc: mmusic@ietf.org
To: draft-ietf-mmusic-data-channel-sdpneg.all@ietf.org
X-Mailer: Apple Mail (2.3445.9.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/mmusic/orgB2tMqdh2aO8asAwK33TCISfE>
Subject: [MMUSIC] AD Evaluation of draft-ietf-mmusic-data-channel-sdpneg-20
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.27
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 28 Aug 2018 03:06:12 -0000

Hi,

This is my AD evaluation of draft-ietf-mmusic-data-channel-sdpneg-20. I think the draft is in pretty good shape, but I have some comments and questions I would like to discuss prior to IETF last call.

Please note that I have a question for the MMUSIC chairs in my second substantive comment.

Thanks!

Ben.

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

Substantive Comments:

- There are 6 authors listed. Normally the limit is 5 unless there is a really good reason. Did all of the authors contribute substantial text? Could the author list be reduced to just editors, and have the rest in a “contributors” section?

- I understand the MSRP data channel usage draft is effectively dead. Please consider whether you want continue to use it as an example if it is not likely to progress.  (MMUSIC chairs: do you have thoughts on the likely future of the MSRP data channel usage draft?)

§2: Unless you have a specific reason not to do so, please use the updated boilerplate from RFC 8174.

§5.1: " It is assumed that the data channel properties
   (reliable/partially reliable, ordered/unordered) are suitable per the
   subprotocol transport requirements.”

What does it mean to assume that? Consider a statement to the effect that the “properties need to be suitable”

§5.1.7: I suspect the “MUST” in the first sentence is a statement of fact. Isn’t the actual normative requiremeint defined in rtcweb-data-protocol? If so, please use descriptive language here.

§8: I am skeptical that this adds no security considerations above those in sctp-sdp. In particular, it seems worth mentioning that each subprotocol may come with it’s own security considerations that need to be documented as part of the subprotocol definition. (As an example, MSRP has security considerations about the URL used in the a=path attribute that would apply to any definition of the use of “path” at the dcsa level.)

§9.1: What is the rational for sharing the websocket subprotocol registry rather than creating a new one for data channels? The websocket subprotocol name registry has a policy of “First Come First Served”. This draft seems to state requirements for subprotocol specifications, but FCFS does not require specifications.

§12.2: It seems like the references to [I-D.ietf-rtcweb-data-protocol] and [RFC4960] should be normative. It’s not necessary to include references to IANA registries; just mention them in the text.

Editorial Comments:

- Abstract: The abstract will not age well. Years from now, no one will think in terms of what RTCWeb vs some other working group defined. I suggest recasting this in terms of the documents and protocols, not the working groups.  (Comment repeats for introduction.)


§1:
- " Data channels are created by endpoint applications
through the WebRTC API (Application Programming Interface), or other
users of a data channel like CLUE [I-D.ietf-clue-datachannel]”

Incomplete sentence--are there missing words?

- “They can be used to transport proprietary or well-defined protocols, which...”

The antecedent to “They” is ambiguous. Also, proprietary protocols can still be well-defined. I think you mean “proprietary or standardized”

- Please include a citation for the first mention of WebSocket.

§3:

- "If an SDP offer/answer exchange is used as specified in
      this document to negotiate the establishment of data channels,
      corresponding data channel properties, associated data channel
      subprotocols and data channel subprotocol properties, then the
      data channel subprotocols may be identified by the values of the
      "subprotocol" parameters of the SDP "a=dcmap" attribute as
      described in Section 5.1.4.”

Convoluted sentence. Please consider breaking it into simpler sentences.

§4: Improper comma use after “... the Session
   Description Protocol (SDP) [RFC4566]”

§5: Improper comma use after “attributes” and “parameters”.

§5.1, 2nd paragraph: I can’t parse the first sentence.

§5.1.1, last paragraph:
s/ “... either only one...” /  “... only one ...”
The “MAY” is not a normal “normative” use of MAY; consider lower case. (The following “MUST NOT” is sufficient.)

§6.2: “ By definition max-retr and max-time are mutually exclusive, so at
   most one of them MAY be present...”

This would be better formulated as a MUST NOT. (MAY is typically used to give permission, not create constraints.)

§6.5, first bullet: s/closes/close

§6.6: Improper comma use after “subsequent offer”

§6.6.1, first paragraph: Comma needed after “data channel”.

§7: Please refer to the figures by number rather than relative position. (e.g. “The example in figure 2” rather than “The above example”.)

§9.3, first paragraph: " SDP attributes that are defined for use at the dcsa
   usage level only SHALL use the dcsa usage level when registering the
   attribute.”

I don’t understand this sentence. Consider a MUST NOT/SHALL NOT construction.